openapi: 3.2.0 info: description: Card Issuing, Switching, and Transaction Processing groups together the activities surrounding creating card programs, issuing cards to customers, managing those cards, and processing the transactions those customers make. version: v1.3 title: Cards Issuance API servers: - description: Sandbox url: https://sandbox-api.novopayment.com/api/v1.3 security: - oAuth2ClientCredentials: [] tags: - name: Issuance paths: /cards/issuance: post: tags: - Issuance summary: Card And Account Bundled description: 'The main mechanism for issuing cards, the Card and Account Bundled endpoint combines the creation of an account with its respective account holder and the issuance of a card. If an account for the cardholder already exists (for example if the customer already onboarded onto your application) then the account number you’ve assigned can be submitted to NovoPayment to create the registry and issue the card. A lower level of information needs to be transmitted to NovoPayment in this scenario. Alternatively, when NovoPayment is the one creating the account, the data collected as part of account and cardholder creation can be submitted to an AML/KYC provider to review the applicant. NovoPayment orchestrates the service and sends the relevant data. Cards issued can be named or unnamed. Unnamed cards do not have a cardholder associated with them. This process is typically done to have a stack of assignable prepaid cards which can be provided to consumers and then assigned via the Cardholder Creation endpoint. Once card and account information has been submitted, virtual cards can be issued instantly. Card embossing for physical cards can also begin immediately depending on your process configuration.' operationId: CardAndAccountBundled requestBody: $ref: '#/components/requestBodies/RQCardAndAccountBundled' responses: '200': $ref: '#/components/responses/RSCardAndAccountBundled200' '400': $ref: '#/components/responses/RSCardAndAccountBundled400' '401': $ref: '#/components/responses/RS401' '500': $ref: '#/components/responses/RS500' /cards/{cardId}: get: tags: - Issuance summary: Card Information description: 'Enable a cardholder to retrieve and view information about a card. This operation would be performed to show card details in a UI, or to retrieve a Dynamic CVV2 when shopping online with a virtual card. Using the Card ID, NovoPayment will return information regarding the cardholder, CVV2, card type, card status, and more.' operationId: CardInformation parameters: - $ref: '#/components/parameters/cardId' - $ref: '#/components/parameters/cvvNumber' - $ref: '#/components/parameters/dynCvvNumber' responses: '200': $ref: '#/components/responses/RSCardInformation200' '400': $ref: '#/components/responses/RSCardInformation400' '401': $ref: '#/components/responses/RS401' '500': $ref: '#/components/responses/RS500' /cards/{cardId}/status: put: tags: - Issuance summary: Card Active Status description: A cardholder can activate a card in several ways, based on program configurations and mechanism you wish to extend. Whether it is by keying in card information into a mobile or web UI, inputting their PIN in an ATM, or calling your customer support line, this endpoint allows you to send confirmation to NovoPayment that the card is active and can be used for transactions. operationId: CardActiveStatus parameters: - $ref: '#/components/parameters/cardId' requestBody: $ref: '#/components/requestBodies/RQCardActiveStatus' responses: '200': $ref: '#/components/responses/RSCardActiveStatus200' '400': $ref: '#/components/responses/RSCardActiveStatus400' '401': $ref: '#/components/responses/RS401' '500': $ref: '#/components/responses/RS500' /cards/{cardId}/tophysical: put: tags: - Issuance summary: Virtual To Physical Card description: 'Depending on your program configurations, a virtual and/or physical is created upon application approval. When both types of cards are issued immediately upon approval, they each receive a different PAN number, though both are associated to the same underlying account. In a case when only a virtual card is issued, through the Virtual to physical card endpoint a cardholder can convert their virtual card into a physical card which will have the same PAN number. The virtual card is blocked until unblocked by the physical card being activated.' operationId: VirtualToPhysicalCard parameters: - $ref: '#/components/parameters/cardId' requestBody: $ref: '#/components/requestBodies/RQVirtualToPhysicalCard' responses: '200': $ref: '#/components/responses/RSVirtualToPhysicalCard200' '400': $ref: '#/components/responses/RSVirtualToPhysicalCard400' '401': $ref: '#/components/responses/RS401' '500': $ref: '#/components/responses/RS500' /cards/replacement: post: tags: - Issuance summary: Card Replacement description: 'If a card has been lost, stolen, or generally needs to be replaced, this functionality is leveraged by an end user or a back-office administrator to request a replacement card for a cardholder (with a new PAN number). Only physical cards can be replaced with this endpoint. Cards must be blocked to be replaced. If an attempt is made to replace an active unblocked card, an error message will be received. If a temporary block is needed instead of a card replacement, that can be accomplished using the Block Card endpoint.' operationId: CardReplacement requestBody: $ref: '#/components/requestBodies/RQCardReplacement' responses: '200': $ref: '#/components/responses/RSCardReplacement200' '400': $ref: '#/components/responses/RSCardReplacement400' '401': $ref: '#/components/responses/RS401' '500': $ref: '#/components/responses/RS500' /cards/cardholders: post: tags: - Issuance summary: Cardholder Association description: 'After (prepaid) unnamed cards have been issued and provided to the holder of the card, they can be assigned to that holder by creating a record of that cardholder in the system. It should be noted that if the cardholder is not yet registered, a new one will be created, however, if the cardholder already exists, their data will be update. Once linked, a cardholder can activate the card.' operationId: CardCardholdersAssociation requestBody: $ref: '#/components/requestBodies/RQCardCardholders' responses: '200': $ref: '#/components/responses/RSCardIdUserId200' '400': $ref: '#/components/responses/RSCardHolderCreate400' '401': $ref: '#/components/responses/RS401' '500': $ref: '#/components/responses/RS500' components: examples: InvalidProgramId: value: code: 400.01.006 message: Invalid program Id datetime: 2020-01-03 16:05:56.517000+00:00 TheCardIsNotAssociatedWithTheAccount: value: code: 400.01.485 message: The card is not associated with the account datetime: 2020-01-03 16:05:56.517000+00:00 InvalidCardId: value: code: 400.01.009 message: Invalid Card ID datetime: 2020-01-03 16:05:56.517000+00:00 InvalidTenantId: value: code: 400.01.004 message: Invalid tenant ID datetime: 2020-01-03 16:05:56.517000+00:00 ItWasNotPossibleToGetTheCardDetail: value: code: 400.01.375 message: It was not possible to get the card detail datetime: 2020-01-03 16:05:56.517000+00:00 InvalidAccessToken: value: code: 401.01.990 message: Invalid Access Token datetime: 2020-01-03 16:05:56.517000+00:00 ClientAlreadyRegisteredInThisProgram: value: code: 400.01.005 message: Client already registered in this program datetime: 2020-01-03 16:05:56.517000+00:00 CardActivated: value: code: 400.01.378 message: Card activated. You must cancel the card to complete the replenishment flow. datetime: 2020-01-03 16:05:56.517000+00:00 InvalidCardType: value: code: 400.01.394 message: Invalid Card Type datetime: 2020-01-03 16:05:56.517000+00:00 CardIsExpired: value: code: 400.01.407 message: Card is expired datetime: 2020-01-03 16:05:56.517000+00:00 InvalidTransactionType: value: code: 400.01.361 message: Invalid transaction type datetime: 2020-01-03 16:05:56.517000+00:00 TheCardIsNotActive: value: code: 400.01.367 message: The card is not active datetime: 2020-01-03 16:05:56.517000+00:00 InvalidParametersCardReplacement: value: code: 400.01.396 message: Invalid parameters datetime: 2020-01-03 16:05:56.517000+00:00 data: - message: 'Field programId: is required, it must be not empty or blank' - message: 'Field userId: exceeded character limit (36)' - message: 'Field type: is not valid' InvalidSignature: value: code: 401.01.992 message: Invalid signature datetime: 2020-01-03 16:05:56.517000+00:00 CardIsBlocked: value: code: 400.01.008 message: Card is blocked datetime: 2020-01-03 16:05:56.517000+00:00 InvalidUserId: value: code: 400.01.377 message: Invalid User ID datetime: 2020-01-03 16:05:56.517000+00:00 ProductStatusCouldNotBeUpdated: value: code: 400.01.317 message: Product status could not be updated datetime: 2020-01-03 16:05:56.517000+00:00 InvalidParametersCardHolderCreate: value: code: 400.01.396 message: Invalid parameters datetime: 2020-01-03 16:05:56.517000+00:00 data: - message: 'Field accountNumber: exceeded character limit (28)' - message: 'Field verificationDigit: is not valid' - message: 'Field cardId: is required, it must be not empty or blank' InvalidParameters: value: code: 400.01.396 message: Invalid parameters data: - message: 'Field email: must not be blank' - message: 'Field email: must not be null' - message: 'Field to: must not be blank' - message: 'Field to: must not be null' - message: 'Field subject: must not be blank' - message: 'Field subject: must not be null' datetime: 2020-01-03 16:05:56.517000+00:00 InvalidBlockCode: value: code: 400.01.014 message: Invalid block code datetime: 2020-01-03 16:05:56.517000+00:00 InvalidParametersCardStatus: value: code: 400.01.396 message: Invalid parameters datetime: 2020-01-03 16:05:56.517000+00:00 data: - message: 'Field cardStatus: invalid value, allow only A' InvalidParametersCardAndAccount: value: code: 400.01.396 message: Invalid parameters datetime: 2020-01-03 16:05:56.517000+00:00 data: - message: 'Field programId: is required, it must be not empty or blank' - message: 'Field cardHolder.documentNumber: exceeded character limit (23)' - message: 'Field cardHolder.maternalSurname: is not valid' AccountIsAlreadyRegistered: value: code: 400.01.015 message: Account is already registered datetime: 2020-01-03 16:05:56.517000+00:00 TheCardIsAlreadyLinkedToAnAccount: value: code: 400.01.486 message: The card is already linked to an account datetime: 2020-01-03 16:05:56.517000+00:00 TheCardDoesNotHaveALinkedAccount: value: code: 400.01.374 message: The card does not have a linked account datetime: 2020-01-03 16:05:56.517000+00:00 BranchIsNotRegistered: value: code: 400.01.016 message: Branch is not registered datetime: 2020-01-03 16:05:56.517000+00:00 InternalServerError: value: code: 500.01.999 message: Internal Server Error datetime: 2020-01-03 16:05:56.517000+00:00 NoResultsFound: value: code: 200.00.364 message: No results found datetime: 2020-01-03 16:05:56.517000+00:00 CardInformationOk: value: code: 200.01.000 message: Process Ok datetime: '2020-01-03T16:05:56.517Z' data: cardToken: acd/Pzd5vXKdL9Ndy5NfOmtFpCUWlY23xnzuvSOXVzw= userToken: z644+UkTtgJyBpyvluZf2SeACehU5urUSHMEl/Bx17M= accountNumber: '*****4107' mask: '***********6778' holderName: FNAME LNAME cvvNumber: NtJeltpWKD7Vf1laGK7nPg== dynCvvNumber: zdE2bZJzN/likYFBuI4xng== cardStatus: ACTIVE cardType: VIRTUAL blockType: code: PB msg: Preventive blockage HeaderParamsRequired: value: code: 400.01.001 message: Header Params Required datetime: 2020-01-03 16:05:56.517000+00:00 AccessTokenExpired: value: code: 401.01.993 message: Access token expired datetime: 2020-01-03 16:05:56.517000+00:00 AccessTokenNotApproved: value: code: 401.01.991 message: Access Token not approved datetime: 2020-01-03 16:05:56.517000+00:00 CardIsAlreadyActivated: value: code: 400.01.007 message: Card is already activated datetime: 2020-01-03 16:05:56.517000+00:00 responses: RSCardIdUserId200: description: Ok content: application/json: schema: $ref: '#/components/schemas/RSCardIdUserId200' examples: Default: value: code: 200.01.000 message: Process Ok datetime: '2020-01-03T16:05:56.517Z' data: cardId: d2cb2441-0034-4211-93af-dcddc892a680 userId: d2cb2441-0034-4211-93af-dcddc892a680 RS401: description: Unauthorized content: application/json: schema: $ref: '#/components/schemas/RS401' examples: Invalid Access Token: $ref: '#/components/examples/InvalidAccessToken' Access Token Not Approved: $ref: '#/components/examples/AccessTokenNotApproved' Invalid Signature: $ref: '#/components/examples/InvalidSignature' Access Token Expired: $ref: '#/components/examples/AccessTokenExpired' RSCardInformation200: description: OK content: application/json: schema: $ref: '#/components/schemas/RSCardInformation200' examples: No Results Found: $ref: '#/components/examples/NoResultsFound' Card Information Ok: $ref: '#/components/examples/CardInformationOk' RSVirtualToPhysicalCard400: description: Bad Request content: application/json: schema: $ref: '#/components/schemas/RSVirtualToPhysicalCard400' examples: Header Params Required: $ref: '#/components/examples/HeaderParamsRequired' Invalid Tenant Id: $ref: '#/components/examples/InvalidTenantId' Card Is Blocked: $ref: '#/components/examples/CardIsBlocked' Invalid Parameters: $ref: '#/components/examples/InvalidParameters' Product Status Could Not Be Updated: $ref: '#/components/examples/ProductStatusCouldNotBeUpdated' Invalid Card Type: $ref: '#/components/examples/InvalidCardType' Invalid Transaction Type: $ref: '#/components/examples/InvalidTransactionType' RSCardInformation400: description: Bad Request content: application/json: schema: $ref: '#/components/schemas/RSCardInformation400' examples: Header Params Required: $ref: '#/components/examples/HeaderParamsRequired' Invalid Tenant Id: $ref: '#/components/examples/InvalidTenantId' Invalid Parameters: $ref: '#/components/examples/InvalidParameters' The Card Does Not Have A Linked Account: $ref: '#/components/examples/TheCardDoesNotHaveALinkedAccount' It Was Not Possible To Get The Card Detail: $ref: '#/components/examples/ItWasNotPossibleToGetTheCardDetail' Invalid CardId: $ref: '#/components/examples/InvalidCardId' RS500: description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/RS500' examples: Internal Server Error: $ref: '#/components/examples/InternalServerError' RSCardReplacement400: description: Bad Request content: application/json: schema: $ref: '#/components/schemas/RSCardReplacement400' examples: Header Params Required: $ref: '#/components/examples/HeaderParamsRequired' Invalid Tenant Id: $ref: '#/components/examples/InvalidTenantId' Client Already Registered In This Program: $ref: '#/components/examples/ClientAlreadyRegisteredInThisProgram' Invalid Program Id: $ref: '#/components/examples/InvalidProgramId' Invalid User Id: $ref: '#/components/examples/InvalidUserId' Card Activated: $ref: '#/components/examples/CardActivated' Invalid Parameters: $ref: '#/components/examples/InvalidParametersCardReplacement' The Card Is Not Associated With The Account: $ref: '#/components/examples/TheCardIsNotAssociatedWithTheAccount' Invalid Block Code: $ref: '#/components/examples/InvalidBlockCode' RSCardAndAccountBundled400: description: Bad Request content: application/json: schema: $ref: '#/components/schemas/RSCardAndAccountBundled400' examples: Header Params Required: $ref: '#/components/examples/HeaderParamsRequired' Invalid Tenant Id: $ref: '#/components/examples/InvalidTenantId' Invalid Program Id: $ref: '#/components/examples/InvalidProgramId' Account Is Already Registered: $ref: '#/components/examples/AccountIsAlreadyRegistered' Branch Is Not Registered: $ref: '#/components/examples/BranchIsNotRegistered' Invalid Parameters: $ref: '#/components/examples/InvalidParametersCardAndAccount' RSCardHolderCreate400: description: Bad Request content: application/json: schema: $ref: '#/components/schemas/RSCardHolderCreate400' examples: Invalid Tenant Id: $ref: '#/components/examples/InvalidTenantId' Header Params Required: $ref: '#/components/examples/HeaderParamsRequired' Invalid Parameters: $ref: '#/components/examples/InvalidParametersCardHolderCreate' The Card Is Already Linked To An Account: $ref: '#/components/examples/TheCardIsAlreadyLinkedToAnAccount' The Card Is Not Active: $ref: '#/components/examples/TheCardIsNotActive' Card Is Expired: $ref: '#/components/examples/CardIsExpired' Card Activated: $ref: '#/components/examples/CardActivated' Card Is Blocked: $ref: '#/components/examples/CardIsBlocked' Account Is Already Registered: $ref: '#/components/examples/AccountIsAlreadyRegistered' Invalid Card Id: $ref: '#/components/examples/InvalidCardId' RSCardReplacement200: description: OK content: application/json: schema: $ref: '#/components/schemas/RSCardReplacement200' examples: Default: value: code: 200.01.000 message: Process Ok datetime: '2020-01-03T16:05:56.517Z' data: cardId: d2cb2441-0034-4211-93af-dcddc892a680 userId: d2cb2441-0034-4211-93af-dcddc892a680 userToken: FUC0yNTYiLCJlbmMiOiJBMjU2R0NNIn0 RSCardActiveStatus200: description: OK content: application/json: schema: $ref: '#/components/schemas/RSCardActiveStatus200' examples: Default: value: code: 200.01.000 message: Process Ok datetime: '2020-01-03T16:05:56.517Z' RSCardActiveStatus400: description: Bad Request content: application/json: schema: $ref: '#/components/schemas/RSCardActiveStatus400' examples: Header Params Required: $ref: '#/components/examples/HeaderParamsRequired' Invalid Tenant Id: $ref: '#/components/examples/InvalidTenantId' Card Is Blocked: $ref: '#/components/examples/CardIsBlocked' Invalid Parameters: $ref: '#/components/examples/InvalidParametersCardStatus' Invalid CardId: $ref: '#/components/examples/InvalidCardId' The Card Does Not Have A Linked Account: $ref: '#/components/examples/TheCardDoesNotHaveALinkedAccount' Card is already activated: $ref: '#/components/examples/CardIsAlreadyActivated' RSCardAndAccountBundled200: description: OK content: application/json: schema: $ref: '#/components/schemas/RSCardAndAccountBundled200' examples: Default: value: code: 200.00.000 message: Process Ok datetime: '2020-01-03T16:05:56.517Z' data: cardId: d2cb2441-0034-4211-93af-dcddc892a680 userId: d2cb2441-0034-4211-93af-dcddc892a680 userToken: FUC0yNTYiLCJlbmMiOiJBMjU2R0NNIn0 RSVirtualToPhysicalCard200: description: OK content: application/json: schema: $ref: '#/components/schemas/RSVirtualToPhysicalCard200' examples: Default: value: code: 200.01.000 message: Process Ok datetime: '2020-01-03T16:05:56.517Z' requestBodies: RQCardCardholders: required: true content: application/json: schema: $ref: '#/components/schemas/RQCardCardholders' RQCardReplacement: content: application/json: schema: $ref: '#/components/schemas/RQCardReplacement' required: true RQCardAndAccountBundled: content: application/json: schema: $ref: '#/components/schemas/RQCardAndAccountBundled' required: true RQCardActiveStatus: content: application/json: schema: $ref: '#/components/schemas/RQCardActiveStatus' required: true RQVirtualToPhysicalCard: content: application/json: schema: $ref: '#/components/schemas/RQVirtualToPhysicalCard' required: true schemas: RSCardReplacement400: type: object required: - code - message - datetime properties: code: type: string example: 400.01.005 description: Operation response code minLength: 10 maxLength: 10 message: type: string description: Response code description example: Client already registered in this program maxLength: 140 datetime: type: string example: 2020-01-03 16:05:56.517000+00:00 description: Operation Timestamp format: date-time RSCardInformation200: type: object required: - code - message - datetime - data properties: code: type: string example: 200.01.000 description: Operation response code maxLength: 10 message: type: string example: Process Ok description: Response code description maxLength: 140 datetime: type: string example: 2020-01-03 16:05:56.517000+00:00 description: Operation Timestamp format: date-time data: type: object required: - cardToken - userToken - accountNumber - mask - holderName - cardStatus - cardType properties: cardToken: type: string example: amDfBsZl6gw5giqm10rf6FaKKeEOeYopAQccozz7nk= description: 'Card data encrypted with the [AES256 Algorithm](https://www.rfc-editor.org/rfc/rfc3565) The cardToken attribute is composed of the following values: - PAN: Card''s primary account number - Expiration Date: Card expiration date - SALT: Random Value String ' maxLength: 44 minLength: 44 userToken: type: string example: camDfBsZl6gw5giqm10rfyPqi/vfK3KvGyHpcVqWYoE= description: 'User data encrypted with the [AES256 Algorithm](https://www.rfc-editor.org/rfc/rfc3565) __Encrypted information:__ Document number | document type | account number ' maxLength: 32 minLength: 32 accountNumber: type: string example: '*****1234' description: Unique register for the account maxLength: 28 mask: type: string description: Masked card number example: 463521******4123 minLength: 16 maxLength: 16 holderName: type: string description: Custom field for the card example: John Doe maxLength: 32 cvvNumber: type: string description: 'Encrypted form [AES256 Algorithm](https://www.rfc-editor.org/rfc/rfc3565) of the card''s static security code ' example: zWNTka0/Pvl8MnFGqPhE5A== minLength: 32 maxLength: 32 dynCvvNumber: type: string description: 'Encrypted form [AES256 Algorithm](https://www.rfc-editor.org/rfc/rfc3565) of the card''s dynamic security code ' example: zWNTka0/Pvl8MnFGqPhE5A== minLength: 32 maxLength: 32 cardStatus: type: string description: 'Current status of the card **Possible values**: ACTIVE INACTIVE ' enum: - ACTIVE - INACTIVE example: ACTIVE minLength: 6 maxLength: 8 cardType: type: string description: 'Type of card **Possible values:** VIRTUAL PHYSICAL ' enum: - VIRTUAL - PHYSICAL example: VIRTUAL minLength: 7 maxLength: 8 blockType: type: object required: - code - msg properties: code: type: string description: 'Type of lock presented by the card **Allowed values**: 41: Lost card 43: Stolen card PB: Preventive Block 17: Cancelled card ' enum: - '41' - '43' - PB - '17' example: PB minLength: 2 maxLength: 2 msg: type: string description: 'Message associated to the block **Allowed characters**: alphabetic ' example: Temporary block maxLength: 32 RQCardAndAccountBundled: type: object required: - programId - type - cardHolder properties: programId: type: string description: Card Program Identifier to which the card to be issued belongs, this data is provided by NovoPayment. example: 454165454 maxLength: 10 type: type: string description: Type of issuance example: named enum: - unnamed - named maxLength: 10 termsAcceptanceDate: type: string description: 'Date and time when the user accepts the client''s terms and conditions. date-time – the date-time notation as defined by [RFC 3339, section 5.6](https://tools.ietf.org/html/rfc3339#section-5.6), for example, 2017-07-21T17:32:28Z ' example: 2020-01-03 16:05:56.517000+00:00 minLength: 24 maxLength: 24 cardHolder: type: object required: - documentType - documentNumber - firstName - lastName description: Cardholder identification (Customized Object) properties: accountNumber: type: string description: 'Unique record for registered account **Allowed characters**: Alphanumeric ' example: 123456789 maxLength: 28 documentType: type: string description: 'Type of identification used by the person registering. **Possible values**: CC: National ID PP: Passport EX: Residency (Green Card) ' example: CC enum: - CC - PP - EX minLength: 2 maxLength: 2 documentNumber: type: string description: 'Document number that will be combined with the documentType to generate a unique identification **Allowed characters**: alphanumeric ' example: 16084704 maxLength: 23 verificationDigit: type: string description: 'Verification digit of the identification document, which depends on the country of issuance. **Allowed characters**: numeric ' example: 6 maxLength: 1 firstName: type: string description: 'First name of the person registering. **Allowed characters**: alphabetic ' example: John maxLength: 32 middleName: type: string description: 'Middle name of the person registering, optional field as some individuals may have only one name. **Allowed characters**: alphabetic ' example: Jesse maxLength: 32 lastName: type: string description: 'Last name of the person registering **Allowed characters**: alphabetic ' example: Doe maxLength: 32 maternalSurname: type: string description: 'Maternal surname of the person registering, optional field as some individuals may have only one surname. **Allowed characters**: alphabetic ' example: Anders maxLength: 32 birthDate: type: string description: 'Birth date of the person registering. User birth date in ISO 8601 format date – full-date notation as defined by [RFC 3339, section 5.6](https://tools.ietf.org/html/rfc3339#section-5.6), for example, 2017-07-21 ' example: 2017-07-21 minLength: 10 maxLength: 10 birthPlace: type: string description: 'A specific place, whether it be a city, town, or state, where the person was born. **Allowed characters**: alphabetic, special characters (. # -) ' example: New Orleans, EEUU maxLength: 32 nationality: type: string description: 'Indicates the citizenship or place of origin of the person registering. **Refer to**: [List Of Nationalities](https://www.gov.uk/government/publications/nationalities/list-of-nationalities) ' example: American maxLength: 20 gender: type: string description: 'Gender identification personal in relation to the traditional categories of male or female. **Allowed values**: M: male F: female ' example: M enum: - M - F maxLength: 1 maritalStatus: type: string description: 'Legal or social status of a person in terms of their marital relationship. **Allowed values**: S: single D: divorced M: married ' example: S enum: - S - D - M maxLength: 1 phone: type: string description: 'Number used for customer contact. Can be provided with or without country code in parentheses. **Allowed formats**: - 963856324 (local number) - (57)963856324 (with country code in parentheses) **Allowed characters**: numeric, parentheses ' example: (57)963856324 maxLength: 20 email: type: string description: Email owned by the person registering. example: username@domain.com maxLength: 50 address: type: string description: 'The physical location where the person usually resides. **Allowed characters**: alphabetic, special characters (. # -) ' example: 666, 5TH Avenue, 35th Floor, New York maxLength: 150 codeAddress: type: string description: "The postal code is a scheme assigned to different areas or locations within a country, a code that serves to facilitate and mechanize the routing of a piece of mail. Generally, it is a series of digits, although in some countries, it includes letters.\n\n **Allowed characters**: Alphanumeric.\n" example: '12401' maxLength: 8 city: type: string description: 'City to which the provided address belongs **Allowed characters**: alphabetic, special characters (. # -) ' example: New York maxLength: 20 state: type: string description: 'Represents the state/department to which the city of the provided address belongs. **Allowed characters**: alphabetic, special characters (. # -) ' example: New York State maxLength: 20 country: type: string description: 'It is the alpha-2 or alpha-3 code of the ISO-3166-1 standard. **Refer to**: [ISO Country Codes](https://developer.novopayment.com/api/request-and-response-codes#item-isocountrycodes) ' example: CAN maxLength: 3 branchId: type: string description: "Unique identifier of the office/branch representing the client\n\n **Allowed values**: numeric\n" example: 1 maxLength: 2 RSCardInformation400: type: object required: - code - message - datetime properties: code: type: string example: 400.01.004 description: Operation response code minLength: 10 maxLength: 10 message: type: string description: Response code description example: Invalid tenant ID maxLength: 140 datetime: type: string example: 2020-01-03 16:05:56.517000+00:00 description: Operation Timestamp format: date-time RQVirtualToPhysicalCard: type: object required: - observation properties: observation: type: string description: 'Description of the reason for the change of card type. **Note**: This field can be empty ' example: change per customer request. maxLength: 100 RSCardAndAccountBundled400: type: object required: - code - message - datetime properties: code: type: string example: 400.00.003 description: Operation response code minLength: 10 maxLength: 10 message: type: string description: Response code description example: Params required maxLength: 140 datetime: type: string example: 2020-01-03 16:05:56.517000+00:00 description: Operation Timestamp format: date-time RS500: type: object required: - code - message - datetime properties: code: type: string example: 500.01.999 description: Operation response code minLength: 10 maxLength: 10 message: type: string example: Internal Server Error description: Response code description maxLength: 140 datetime: type: string example: 2020-01-03 16:05:56.517000+00:00 minLength: 24 maxLength: 24 RS401: type: object required: - code - message - datetime properties: code: type: string example: 401.01.990 description: Operation response code minLength: 10 maxLength: 10 message: type: string example: Invalid Access Token description: Response code description maxLength: 140 datetime: type: string example: 2020-01-03 16:05:56.517000+00:00 minLength: 24 maxLength: 24 RSCardAndAccountBundled200: type: object required: - code - message - datetime - data properties: code: type: string example: 200.01.000 description: Operation response code maxLength: 10 message: type: string example: Process Ok description: Response code description maxLength: 140 datetime: type: string example: 2020-01-03 16:05:56.517000+00:00 description: Operation Timestamp format: date-time data: required: - cardId - userId - userToken type: object properties: cardId: type: string description: Unique card identification (uuid format) example: d2cb2441-0034-4211-93af-dcddc892a680 minLength: 36 maxLength: 36 userId: type: string description: Unique user identification (uuid format) example: t2cb2442-0035-4211-93af-xcddx893a681 minLength: 36 maxLength: 36 userToken: type: string description: 'Encrypted form for a user created with a [AES256 algorithm](https://www.rfc-editor.org/rfc/rfc3565) __Encrypted information:__ Document number | document type | account number ' example: FUC0yNTYiLCJlbmMiOiJBMjU2R0NNIn0 minLength: 32 maxLength: 32 RQCardActiveStatus: type: object required: - cardStatus properties: cardStatus: type: string description: 'Indicate card activation through the field. **Allowed values**: A: active ' example: A enum: - A maxLength: 1 RSCardIdUserId200: type: object required: - code - message - datetime - data properties: code: type: string maxLength: 10 description: Operation response code example: 200.01.000 message: type: string maxLength: 140 description: Response code description example: Process Ok datetime: type: string format: date-time minLength: 24 maxLength: 24 description: 'Operation Time Stamp in ISO 8601 format. date-time – the date-time notation as defined by [RFC 3339, section 5.6](https://tools.ietf.org/html/rfc3339#section-5.6), for example: 2017-07-21T17:32:28Z ' example: 2020-01-03 16:05:56.517000+00:00 data: type: object $ref: '#/components/schemas/ObjCardIdUserIdData' RSCardActiveStatus400: type: object required: - code - message - datetime properties: code: type: string example: 400.01.004 description: Operation response code minLength: 10 maxLength: 10 message: type: string description: Response code description example: Invalid tenant ID maxLength: 140 datetime: type: string example: 2020-01-03 16:05:56.517000+00:00 description: Operation Timestamp format: date-time RSCardActiveStatus200: type: object required: - code - message - datetime properties: code: type: string example: 200.01.000 description: Operation response code maxLength: 10 message: type: string example: Process Ok description: Response code description maxLength: 140 datetime: type: string example: 2020-01-03 16:05:56.517000+00:00 description: Operation Timestamp format: date-time RQCardReplacement: type: object required: - programId - type - userId properties: programId: type: string description: 'Card Program Identifier to which the card to be issued belongs, this data is provided by NovoPayment. __Allowed characters:__ alphanumeric ' example: 454165454 maxLength: 10 type: type: string description: 'Type of issuance __Allowed values: unnamed, named__ ' example: named maxLength: 8 enum: - unnamed - named userId: type: string description: "Field indicating the unique user identifier, provided by NovoPayment during issuance (uuid format). \n" example: d78ddf88-d5eb-11ec-9d64-0242ac120003 minLength: 36 maxLength: 36 RSVirtualToPhysicalCard400: type: object required: - code - message - datetime properties: code: type: string example: 400.01.004 description: Operation response code minLength: 10 maxLength: 10 message: type: string description: Response code description example: Invalid tenant ID maxLength: 140 datetime: type: string example: 2020-01-03 16:05:56.517000+00:00 description: Operation Timestamp format: date-time RQCardCardholders: type: object required: - accountNumber - cardId - documentType - documentNumber - firstName - lastName properties: accountNumber: type: string maxLength: 28 description: Unique record for registered account example: 123456789 cardId: type: string maxLength: 36 description: Unique card identification (uuid format) example: 123456789 documentType: type: string description: 'Type of identification used by the person registering. **Possible values**: CC: National ID PP: Passport EX: Residency (Green Card) ' example: CC enum: - CC - PP - EX minLength: 2 maxLength: 2 documentNumber: type: string description: 'Document number that will be combined with the documentType to generate a unique identification **Allowed characters**: Alphanumeric ' example: 16084704 maxLength: 23 verificationDigit: type: string description: 'Verification digit of the identification document, which depends on the country of issuance. **Allowed characters**: Numeric ' example: 6 maxLength: 1 firstName: type: string description: 'First name of the person registering. **Allowed characters**: Alphabetic **Conditionals**: To update names, firstName and lastName are mandatory ' example: John maxLength: 32 middleName: type: string description: 'Middle name of the person registering, optional field as some individuals may have only one name. **Allowed characters**: Alphabetic **Conditionals**: To update names, firstName and lastName are mandatory ' example: Jesse maxLength: 32 lastName: type: string description: 'Last name of the person registering **Allowed characters**: Alphabetic **Conditionals**: To update names, firstName and lastName are mandatory ' example: Doe maxLength: 32 maternalSurname: type: string description: 'Maternal surname of the person registering, optional field as some individuals may have only one surname. **Allowed characters**: Alphabetic **Conditionals**: To update names, firstName and lastName are mandatory ' example: Anders maxLength: 32 birthDate: type: string description: 'Birth date of the person registering. User birth date in ISO 8601 format date – full-date notation as defined by [RFC 3339, section 5.6](https://tools.ietf.org/html/rfc3339#section-5.6), for example, 2017-07-21 ' example: 2017-07-21 minLength: 10 maxLength: 10 birthPlace: type: string description: 'A specific place, whether it be a city, town, or state, where the person was born. **Allowed characters**: Alphabetic, special characters (. # -) ' example: New Orleans, EEUU maxLength: 32 nationality: type: string description: 'Indicates the citizenship or place of origin of the person registering. **Refer to**: [List Of Nationalities](https://www.gov.uk/government/publications/nationalities/list-of-nationalities) ' example: American maxLength: 20 gender: type: string description: 'Gender identification personal in relation to the traditional categories of male or female. **Allowed values**: M: male F: female ' example: M enum: - M - F maxLength: 1 maritalStatus: type: string description: 'Legal or social status of a person in terms of their marital relationship. **Allowed values**: S: single D: divorced M: married ' example: S enum: - S - D - M maxLength: 1 phone: type: string description: 'Number used for customer contact. Can be provided with or without country code in parentheses. **Allowed formats**: - 963856324 (local number) - (57)963856324 (with country code in parentheses) **Allowed characters**: numeric, parentheses ' example: (57)963856324 maxLength: 20 email: type: string description: Email owned by the person registering. example: username@domain.com maxLength: 50 address: type: string description: 'The physical location where the person usually resides. **Allowed characters**: Alphabetic, special characters (. # -) **Conditionals**: To update address, the fields address, codeAddress, city, state and country are mandatory ' example: 666, 5TH Avenue, 35th Floor, New York maxLength: 150 codeAddress: type: string description: "The postal code is a scheme assigned to different areas or locations within a country, a code that serves to facilitate and mechanize the routing of a piece of mail. Generally, it is a series of digits, although in some countries, it includes letters.\n\n**Allowed characters**: Alphanumeric.\n\n**Conditionals**: To update address, the fields address, codeAddress, city, state and country are mandatory \n" example: '12401' maxLength: 8 city: type: string description: "City to which the provided address belongs\n\n**Allowed characters**: Alphabetic, special characters (. # -)\n\n**Conditionals**: To update address, the fields address, codeAddress, city, state and country are mandatory \n" example: New York maxLength: 20 state: type: string description: "Represents the state/department to which the city of the provided address belongs.\n\n**Allowed characters**: Alphabetic, special characters (. # -)\n\n**Conditionals**: To update address, the fields address, codeAddress, city, state and country are mandatory \n" example: New York State maxLength: 20 country: type: string description: "It is the alpha-2 or alpha-3 code of the ISO-3166-1 standard.\n\n**Refer to**: [ISO Country Codes](https://developer.novopayment.com/api/request-and-response-codes#item-isocountrycodes).\n\n**Conditionals**: To update address, the fields address, codeAddress, city, state and country are mandatory \n" example: CAN maxLength: 3 branchId: type: string description: 'Unique identifier of the office/branch representing the client **Allowed values**: Numeric ' example: 1 maxLength: 2 RSCardReplacement200: type: object required: - code - message - datetime - data properties: code: type: string example: 200.01.000 description: Operation response code maxLength: 10 message: type: string example: Process Ok description: Response code description maxLength: 140 datetime: type: string example: 2020-01-03 16:05:56.517000+00:00 description: Operation Timestamp format: date-time data: type: object required: - cardId - userId - userToken properties: cardId: type: string description: Unique card identification (uuid format) minLength: 36 maxLength: 36 example: f25d7a9e-d5eb-11ec-9d64-0242ac120002 userId: type: string description: Unique user identification (uuid format) minLength: 36 maxLength: 36 example: d78ddf88-d5eb-11ec-9d64-0242ac120003 userToken: type: string description: 'Encrypted form for a user created with a [AES256 algorithm](https://www.rfc-editor.org/rfc/rfc3565) __Encrypted information:__ Document number | document type | account number ' minLength: 32 maxLength: 32 example: DLUhTMjU2IiwiYWxnIjoiUlNBLU9BRVA RSCardHolderCreate400: type: object required: - code - message - datetime properties: code: type: string minLength: 10 maxLength: 10 description: Operation response code message: type: string maxLength: 140 description: Response code description datetime: type: string format: date-time minLength: 24 maxLength: 24 description: "Operation Time Stamp in ISO 8601 format.\ndate-time – the date-time notation as defined by\n[RFC 3339, section 5.6](https://tools.ietf.org/html/rfc3339#section-5.6),\nfor example: 2017-07-21T17:32:28Z \n" RSVirtualToPhysicalCard200: type: object required: - code - message - datetime properties: code: type: string example: 200.01.000 description: Operation response code maxLength: 10 message: type: string example: Process Ok description: Response code description maxLength: 140 datetime: type: string example: 2020-01-03 16:05:56.517000+00:00 description: Operation Timestamp format: date-time ObjCardIdUserIdData: type: object required: - cardId - userId properties: cardId: type: string maxLength: 36 description: 'Unique card identification (uuid format) ' example: d2cb2441-0034-4211-93af-dcddc892a680 userId: type: string maxLength: 36 description: 'Unique user identification (uuid format) ' example: d2cb2441-0034-4211-93af-dcddc892a680 parameters: cvvNumber: name: cvvNumber in: query description: 'Use this value to show the static security code. **Default value**: false ' required: false schema: type: boolean example: false dynCvvNumber: name: dynCvvNumber in: query description: 'Use this value to show the dynamic security code. **Default value**: false **Note**: You can only retrieve the dynamic CVV if you have this configuration in NovoPayment''s system. ' required: false schema: type: boolean example: false cardId: name: cardId in: path description: Unique card identification (uuid format) required: true example: 502c2656-7110-4994-a820-f593e468c6b4 schema: type: string maxLength: 36 minLength: 36 securitySchemes: oAuth2ClientCredentials: type: oauth2 description: 'See [Oauth2 API](https://developer.novopayment.com/api/authentication-method-and-encryption/oauth2-api) ' flows: clientCredentials: tokenUrl: https://sandbox-api.novopayment.com/oauth2/token scopes: {}