openapi: 3.2.0 info: title: Push Provisioning Credentials API description: '## Use Cases ## If you are a Bank that wants to give your customers the possibility to seamless register their debit and credit cards in payment platforms such as Apple Pay, Samsung Pay and Google Pay, as easily as including only one button on your website or app, this API is the solution.' version: v1.0 servers: - description: Sandbox url: https://sandbox-api.novopayment.com/pushprovisioning/v1 security: - oAuth2ClientCredentials: [] tags: - name: Credentials paths: /credentials/enrolldata: post: summary: Enroll Data description: 'This endpoint is used to send customer and associated card data to the provisioning service. It is consumed by both internal and external issuers.' operationId: EnrollData parameters: - name: X-Transaction-Id in: header description: "Unique ID for every API request - an optional header. Generated by the API client. \nUsed for end-to-end tracing/debugging.\n" required: false schema: type: string minLength: 1 maxLength: 36 example: 123e4567-e89b-12d3-a456-426614174000 requestBody: $ref: '#/components/requestBodies/RQEnrollData' responses: '202': $ref: '#/components/responses/RSEnrollData202' '400': $ref: '#/components/responses/RS400' '500': $ref: '#/components/responses/RS500' tags: - Credentials /credentials/addpayments: post: summary: Add Payment Credentials description: 'This API is consumed by any issuer, both internal and external, and is used to send customer data and all associated card information to VISA.' operationId: addPaymentCredentials parameters: - name: X-Transaction-Id in: header description: "Unique ID for every API request - an optional header. Generated by the API client. \nUsed for end-to-end tracing/debugging.\n" required: false schema: type: string minLength: 1 maxLength: 36 example: 123e4567-e89b-12d3-a456-426614174000 requestBody: $ref: '#/components/requestBodies/RQAddPayments' responses: '202': $ref: '#/components/responses/RSAddPayments202' '400': $ref: '#/components/responses/RS400' '500': $ref: '#/components/responses/RS500' tags: - Credentials /credentials/removeconsumerinformation: post: summary: Remove Consumer Information description: 'This API is consumed by any issuer, both internal and external, and is used to delete customer data and all associated card information to VISA.' operationId: removeConsumerInformation parameters: - name: X-Transaction-Id in: header description: "Unique ID for every API request. Generated by the API client. \nUsed for end-to-end tracing/debugging.\n" required: true schema: type: string minLength: 1 maxLength: 36 example: 123e4567-e89b-12d3-a456-426614174000 - name: X-Tenant-Id in: header description: 'Tenant identificator ' required: true schema: type: string minLength: 1 maxLength: 36 example: co-dale requestBody: $ref: '#/components/requestBodies/RQDeleteConsumerInfo' responses: '202': $ref: '#/components/responses/RSAddPayments202' '400': $ref: '#/components/responses/RS400' '500': $ref: '#/components/responses/RS500' tags: - Credentials /credentials/updateconsumerinformation: put: summary: Update Consumer Information description: This API is consumed by any issuer, both internal and external, and is used to update customer data to VISA. operationId: updateConsumerInformation parameters: - name: X-Transaction-Id in: header description: "Unique ID for every API request. Generated by the API client. \nUsed for end-to-end tracing/debugging.\n" required: true schema: type: string minLength: 1 maxLength: 36 example: 123e4567-e89b-12d3-a456-426614174000 - name: X-Tenant-Id in: header description: 'Tenant identificator ' required: true schema: type: string minLength: 1 maxLength: 36 example: co-dale requestBody: $ref: '#/components/requestBodies/RQUpdateConsumerInfo' responses: '202': $ref: '#/components/responses/RSAddPayments202' '400': $ref: '#/components/responses/RS400' '500': $ref: '#/components/responses/RS500' tags: - Credentials /credentials/removepayments: post: summary: Remove payment instruments description: This API is consumed by any issuer, both internal and external, and is used to delete paymente instrument data to VISA. operationId: removePaymentInstruments parameters: - name: X-Transaction-Id in: header description: "Unique ID for every API request. Generated by the API client. \nUsed for end-to-end tracing/debugging.\n" required: true schema: type: string minLength: 1 maxLength: 36 example: 123e4567-e89b-12d3-a456-426614174000 - name: X-Tenant-Id in: header description: 'Tenant identificator ' required: true schema: type: string minLength: 1 maxLength: 36 example: co-dale requestBody: $ref: '#/components/requestBodies/RQDeletePaymentInstrument' responses: '202': $ref: '#/components/responses/RSAddPayments202' '400': $ref: '#/components/responses/RS400' '500': $ref: '#/components/responses/RS500' tags: - Credentials /credentials/updatepayments: put: summary: Update Payment Instruments description: This API is consumed by any issuer, both internal and external, and is used to update payment instrument data to VISA. operationId: updatePaymentInstruments parameters: - name: X-Transaction-Id in: header description: "Unique ID for every API request. Generated by the API client. \nUsed for end-to-end tracing/debugging.\n" required: true schema: type: string minLength: 1 maxLength: 36 example: 123e4567-e89b-12d3-a456-426614174000 - name: X-Tenant-Id in: header description: 'Tenant identificator ' required: true schema: type: string minLength: 1 maxLength: 36 example: co-dale requestBody: $ref: '#/components/requestBodies/RQUpdatePayment' responses: '202': $ref: '#/components/responses/RSAddPayments202' '400': $ref: '#/components/responses/RS400' '500': $ref: '#/components/responses/RS500' tags: - Credentials /credentials/querydata: get: summary: Query Data description: This API is consumed by any issuer, both internal and external, and is used to get paymentcredential and consumer info for a given product to VISA. operationId: queryData parameters: - name: X-Transaction-Id in: header description: "Unique ID for every API request. Generated by the API client. \nUsed for end-to-end tracing/debugging.\n" required: true schema: type: string minLength: 1 maxLength: 36 example: 123e4567-e89b-12d3-a456-426614174000 - name: X-Tenant-Id in: header description: 'Tenant identificator ' required: true schema: type: string minLength: 1 maxLength: 36 example: co-dale - name: type in: query required: true description: Type of the intent schema: type: string example: PRODUCT_CODE - name: value in: query required: true description: Value associated with the intent schema: type: string example: CLICK_TO_PAY - name: externalConsumerIDOwnerBID in: query required: false description: Business ID of the external consumer's owner schema: type: string example: '10098765' - name: externalConsumerID in: query required: true description: External consumer ID schema: type: string example: 63421837-d597-4f0f-89e4-930c1a7b9e85 responses: '200': $ref: '#/components/responses/RSQueryData200' '400': $ref: '#/components/responses/RS400' '404': description: Request not found content: application/json: schema: $ref: '#/components/schemas/RS404' '500': $ref: '#/components/responses/RS500' tags: - Credentials /credentials/requeststatus/{requestTraceId}: get: summary: Check Request Status description: 'This endpoint allows internal and external issuers to check the current status of a previously submitted request using the request trace identifier.' operationId: GetRequestStatus parameters: - name: requestTraceId in: path required: true description: 'Unique identifier of the request to retrieve its current processing status. ' schema: type: string format: uuid minLength: 36 maxLength: 36 example: 351562ba-83cf-11ee-b962-0242ac120002 - name: X-Transaction-Id in: header description: "Unique ID for every API request - an optional header. Generated by the API client. \nUsed for end-to-end tracing/debugging.\n" required: false schema: type: string minLength: 1 maxLength: 36 example: 123e4567-e89b-12d3-a456-426614174000 responses: '200': $ref: '#/components/responses/RSRequestStatus200' '400': $ref: '#/components/responses/RS400' '404': description: Request not found content: application/json: schema: $ref: '#/components/schemas/RS404' '500': $ref: '#/components/responses/RS500' tags: - Credentials /credentials/consumervulnerable: post: summary: Consumer Vulnerable description: This API is consumed by any issuer, both internal and external, and is used to update payment instrument data to VISA. operationId: consumerVulnerable parameters: - name: X-Transaction-Id in: header description: "Unique ID for every API request. Generated by the API client. \nUsed for end-to-end tracing/debugging.\n" required: true schema: type: string minLength: 1 maxLength: 36 example: 123e4567-e89b-12d3-a456-426614174000 - name: X-Tenant-Id in: header description: 'Tenant identificator ' required: true schema: type: string minLength: 1 maxLength: 36 example: co-dale requestBody: $ref: '#/components/requestBodies/RQConsumerVulnerable' responses: '202': $ref: '#/components/responses/RSAddPayments202' '400': $ref: '#/components/responses/RS400' '500': $ref: '#/components/responses/RS500' tags: - Credentials components: requestBodies: RQDeleteConsumerInfo: required: true content: application/json: schema: $ref: '#/components/schemas/RQDeleteConsumerInfo' RQAddPayments: required: true content: application/json: schema: $ref: '#/components/schemas/RQAddPayments' RQUpdatePayment: required: true content: application/json: schema: $ref: '#/components/schemas/RQUpdatePayment' RQConsumerVulnerable: required: true content: application/json: schema: $ref: '#/components/schemas/RQConsumerVulnerable' RQUpdateConsumerInfo: required: true content: application/json: schema: $ref: '#/components/schemas/RQUpdateConsumerInfo' RQDeletePaymentInstrument: required: true content: application/json: schema: $ref: '#/components/schemas/RQDeletePaymentInstrument' RQEnrollData: required: true content: application/json: schema: $ref: '#/components/schemas/RQEnrollData' examples: InvalidCardId: value: code: 404.00.009 message: Invalid Card ID datetime: '2022-04-25T23:19:12.000Z' NotFound: value: code: 404.00.900 message: Not Found datetime: '2022-04-25T23:19:12.000Z' InvalidParameters: value: code: 400.00.396 message: Invalid parameters. datetime: '2022-04-25T23:19:12.000Z' data: errors: - message: 'Field fielName: must not be blank' UnableProcessRequest: value: code: 400.00.324 message: We were unable to process your request datetime: '2022-04-25T23:19:12.000Z' InternalServerError: value: code: 500.00.999 message: Internal Server Error datetime: '2022-04-25T23:19:12.000Z' JWEInvalidFormat: value: code: 400.00.002 message: JWE Invalid format datetime: '2022-04-25T23:19:12.000Z' HeaderParamsRequired: value: code: 400.00.001 message: Header Params Required datetime: '2022-04-25T23:19:12.000Z' schemas: GetCardPaymentInstrument: type: object required: - accountNumber - billingAddress - expirationDate - nameOnCard - type properties: accountNumber: type: string minLength: 16 maxLength: 19 example: '4111111145551140' billingAddress: $ref: '#/components/schemas/BillingAddress' expirationDate: type: string example: 2030-01 nameOnCard: type: string maxLength: 120 example: John Doe type: type: string example: CARD cardType: type: string maxLength: 70 example: Visa Platinum issuerName: type: string maxLength: 150 example: Bank A status: type: string enum: - ACTIVE - DISABLED example: ACTIVE tokenDetails: $ref: '#/components/schemas/TokenDetails' panReferenceID: type: string maxLength: 32 example: '3123123123122' paymentAccountReference: type: string maxLength: 50 minLength: 29 example: '3123123123123123123123123123123123' RSAddPayments202: type: object properties: code: type: string description: Operation response code example: 202.00.000 maxLength: 10 message: type: string description: Response code description example: Accepted for processing maxLength: 140 datetime: type: string 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, 2022-04-25T23:19:12.000Z ' example: '2022-04-25T23:19:12.000Z' minLength: 24 maxLength: 24 data: type: object properties: successResponse: type: object properties: requestTraceId: type: string format: uuid description: Unique identifier of the request example: 351562ba-83cf-11ee-b962-0242ac120002 minLength: 36 maxLength: 36 RQDeleteConsumerInfo: type: object required: - consumerInformation properties: consumerInformation: type: object properties: externalConsumerID: type: string format: uuid description: 'Client-provided unique identifier of a consumer. ' example: 63421837-d597-4f0f-89e4-930c1a7b9e85 minLength: 1 maxLength: 100 nationalIdNumber: type: string description: 'Only available to Issuers who are customers of NovoPayment issuing services, it corresponds to the Identification Number used at the time of Account/Card creation. By submitting this value no externalConsumerID is required. ' example: '1090516789' minLength: 1 maxLength: 32 externalConsumerIDOwnerBID: type: string description: "Visa Business Identifier (BID) of the entity to which an External Consumer ID belongs.\n\nThis field is optional for clients integrated prior to its introduction. \nRequired otherwise. Questions should be directed to your Visa Integration Specialist.\n" example: '10098765' minLength: 1 maxLength: 8 pattern: ^\d*$ intent: $ref: '#/components/schemas/ObjIntent' DeleteCardPaymentInstrument: type: object required: - type properties: accountNumber: type: string minLength: 16 maxLength: 19 example: '4111111145551140' description: Primary account number of the card cardId: type: string minLength: 16 maxLength: 50 example: 01995412-d75f-26e8-a452-656e23f287e1 description: Card Id By submitting this value no accountNumber is required. type: type: string example: CARD RS500: type: object properties: code: type: string example: 500.00.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: '2022-04-25T23:19:12.000Z' minLength: 24 maxLength: 24 RS404: type: object properties: code: type: string example: 404.00.900 description: Operation response code minLength: 10 maxLength: 10 message: type: string example: Not Found description: Response code description maxLength: 140 datetime: type: string example: '2022-04-25T23:19:12.000Z' minLength: 24 maxLength: 24 RQDeletePaymentInstrument: type: object required: - consumerInformation - paymentInstruments properties: consumerInformation: type: object required: - externalConsumerID properties: externalConsumerID: type: string format: uuid description: 'Client-provided unique identifier of a consumer. ' example: 63421837-d597-4f0f-89e4-930c1a7b9e85 minLength: 1 maxLength: 100 externalConsumerIDOwnerBID: type: string description: "Visa Business Identifier (BID) of the entity to which an External Consumer ID belongs.\n\nThis field is optional for clients integrated prior to its introduction. \nRequired otherwise. Questions should be directed to your Visa Integration Specialist.\n" example: '10098765' minLength: 1 maxLength: 8 pattern: ^\d*$ paymentInstruments: type: object oneOf: - $ref: '#/components/schemas/DeleteCardPaymentInstrument' - $ref: '#/components/schemas/DeleteBankAccountPaymentInstrument' intent: $ref: '#/components/schemas/ObjIntent' RSRequestStatus200: type: object properties: code: type: string description: Operation response code example: 200.00.000 maxLength: 10 message: type: string description: Description of the response code example: OK maxLength: 140 datetime: type: string description: 'Operation timestamp in ISO 8601 format, compliant with [RFC 3339, section 5.6](https://tools.ietf.org/html/rfc3339#section-5.6) ' example: '2022-04-25T23:19:12.000Z' minLength: 24 maxLength: 24 data: type: object required: - requestTraceId - status - consumerInformation - details properties: requestTraceId: type: string format: uuid description: Unique identifier of the request example: 351562ba-83cf-11ee-b962-0242ac120002 minLength: 36 maxLength: 36 status: type: string description: Current status of the request enum: - IN_PROGRESS - COMPLETED consumerInformation: type: object required: - externalConsumerID properties: externalConsumerID: type: string format: uuid minLength: 1 maxLength: 100 description: Client-provided unique identifier of a consumer example: 63421837-d597-4f0f-89e4-930c1a7b9e85 externalConsumerIDOwnerBID: type: string pattern: ^\d*$ minLength: 1 maxLength: 8 description: 'Visa Business Identifier (BID) of the entity to which an External Consumer ID belongs. This field is optional for clients integrated before its introduction. ' example: '10098765' details: type: array items: type: object required: - intent - status properties: intent: type: object required: - type - value properties: type: type: string enum: - PRODUCT_CODE description: Type of the intent example: PRODUCT_CODE value: type: string description: Product name for which the request is intended example: CLICK_TO_PAY status: type: string enum: - SUCCESS - FAILED description: Status of the individual detail errorDetails: type: array items: type: object required: - reason properties: reason: type: string minLength: 1 maxLength: 100 description: Reason for the error field: type: string minLength: 1 maxLength: 100 description: Field in which the error occurred message: type: string minLength: 1 maxLength: 256 description: Error message to be sent to client GetBankAccountPaymentInstrument: type: object required: - accountName - currencyCode - accountNumber - accountNumberType - type properties: type: type: string example: BANK_ACCOUNT status: type: string enum: - ACTIVE - DISABLED example: ACTIVE address: $ref: '#/components/schemas/BillingAddress' bankCode: type: string maxLength: 12 minLength: 1 example: '123' bankName: type: string maxLength: 50 minLength: 1 example: Bank A branchCode: type: string maxLength: 12 minLength: 1 example: '123456' accountName: type: string maxLength: 70 minLength: 1 example: Alex Miller countryCode: type: string maxLength: 3 minLength: 3 example: USA bankCodeType: type: string enum: - ABA - SORT_CODE - DEFAULT example: ABA currencyCode: type: string maxLength: 3 minLength: 3 example: USD accountNumber: type: string minLength: 34 maxLength: 1 example: '1001001234' accountNumberType: type: string enum: - IBAN - DEFAULT example: IBAN bankIdentifierCode: type: string minLength: 11 maxLength: 1 example: AAAABBCC123 RQAddPayments: type: object required: - consumerInformation - paymentInstruments - intent properties: consumerInformation: type: object required: - externalConsumerID properties: externalConsumerID: type: string format: uuid description: 'Client-provided unique identifier of a consumer. ' example: 63421837-d597-4f0f-89e4-930c1a7b9e85 minLength: 1 maxLength: 100 externalConsumerIDOwnerBID: type: string description: "Visa Business Identifier (BID) of the entity to which an External Consumer ID belongs.\n\nThis field is optional for clients integrated prior to its introduction. \nRequired otherwise. Questions should be directed to your Visa Integration Specialist.\n" example: '10098765' minLength: 1 maxLength: 8 pattern: ^\d*$ paymentInstruments: type: array minItems: 1 items: oneOf: - $ref: '#/components/schemas/CardPaymentInstrument' - $ref: '#/components/schemas/BankAccountPaymentInstrument' intent: type: object required: - type - value properties: type: type: string example: PRODUCT_CODE description: Indicates the type of the intent value: type: string example: CLICK_TO_PAY description: Product name for which the request is intended RS400: type: object 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: '2022-04-25T23:19:12.000Z' 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 ' minLength: 24 maxLength: 24 ObjGetDataPaymentInstrumentList: maxItems: 5 minItems: 1 type: array items: oneOf: - $ref: '#/components/schemas/GetCardPaymentInstrument' - $ref: '#/components/schemas/GetBankAccountPaymentInstrument' RQEnrollData: type: object required: - intent - consumerInformation - paymentInstruments properties: intent: type: object required: - type - value properties: type: type: string example: PRODUCT_CODE description: Indicates the type of the intent value: type: string example: CLICK_TO_PAY description: Product name for which the request is intended consumerInformation: type: object required: - externalConsumerID - firstName - lastName properties: countryCode: type: string description: Country code using 3-character ISO 3166 (Alpha 3) format example: USA externalConsumerID: type: string format: uuid minLength: 1 maxLength: 100 example: 63421837-d597-4f0f-89e4-930c1a7b9e85 firstName: type: string minLength: 1 maxLength: 35 example: Alex lastName: type: string minLength: 1 maxLength: 35 example: Miller middleName: type: string maxLength: 35 example: Robert emails: type: array maxItems: 5 items: type: string example: - alex123@hotmail.com phones: type: array maxItems: 5 items: type: string example: - '16504005555' externalConsumerIDOwnerBID: type: string pattern: ^\d*$ maxLength: 8 example: '10098765' locale: type: string minLength: 2 maxLength: 5 example: en_US consent: type: object required: - timeOfConsent properties: timeOfConsent: type: string format: date-time example: '2020-05-05T12:12:12.000Z' presenter: type: string maxLength: 30 example: Bank A version: type: string maxLength: 9 example: '1.0' nationalIdentifiers: type: array maxItems: 5 items: type: object required: - type - value properties: type: type: string enum: - PASSPORT - DRIVING_LICENSE - NATIONAL_IDENTITY example: PASSPORT value: type: string minLength: 1 maxLength: 24 example: A123456 paymentInstruments: type: array minItems: 1 items: oneOf: - $ref: '#/components/schemas/CardPaymentInstrument' - $ref: '#/components/schemas/BankAccountPaymentInstrument' ObjConsumerInformation: type: object required: - externalConsumerID - firstName - lastName properties: countryCode: type: string description: Country code using 3-character ISO 3166 (Alpha 3) format example: USA externalConsumerID: type: string format: uuid minLength: 1 maxLength: 100 example: 63421837-d597-4f0f-89e4-930c1a7b9e85 firstName: type: string minLength: 1 maxLength: 35 example: Alex lastName: type: string minLength: 1 maxLength: 35 example: Miller middleName: type: string maxLength: 35 example: Robert emails: type: array maxItems: 5 items: type: string example: - alex123@hotmail.com phones: type: array maxItems: 5 items: type: string example: - '16504005555' externalConsumerIDOwnerBID: type: string pattern: ^\d*$ maxLength: 8 example: '10098765' locale: type: string minLength: 2 maxLength: 5 example: en_US status: type: string enum: - ACTIVE - DISABLED example: ACTIVE consent: type: object required: - timeOfConsent properties: timeOfConsent: type: string format: date-time example: '2020-05-05T12:12:12.000Z' presenter: type: string maxLength: 30 example: Bank A version: type: string maxLength: 9 example: '1.0' nationalIdentifiers: type: array maxItems: 5 items: type: object required: - type - value properties: type: type: string enum: - PASSPORT - DRIVING_LICENSE - NATIONAL_IDENTITY example: PASSPORT value: type: string minLength: 1 maxLength: 24 example: A123456 RQConsumerVulnerable: type: object required: - consumerInformation - actionType properties: consumerInformation: type: object properties: externalConsumerID: type: string format: uuid description: 'Client-provided unique identifier of a consumer. ' example: 63421837-d597-4f0f-89e4-930c1a7b9e85 minLength: 1 maxLength: 100 nationalIdNumber: type: string description: 'Only available to Issuers who are customers of NovoPayment issuing services, it corresponds to the Identification Number used at the time of Account/Card creation. By submitting this value no externalConsumerID is required. ' example: '1090516789' minLength: 1 maxLength: 32 externalConsumerIDOwnerBID: type: string description: "Visa Business Identifier (BID) of the entity to which an External Consumer ID belongs.\n\nThis field is optional for clients integrated prior to its introduction. \nRequired otherwise. Questions should be directed to your Visa Integration Specialist.\n" example: '10098765' minLength: 1 maxLength: 8 pattern: ^\d*$ intent: $ref: '#/components/schemas/ObjIntent' actionType: type: string enum: - TAKE_IN - TAKE_OUT example: TAKE_IN reason: type: string description: vulnerability reason CardPaymentInstrument: type: object required: - billingAddress - expirationDate - nameOnCard - type properties: accountNumber: type: string minLength: 16 maxLength: 19 example: '4111111145551140' description: Primary account number of the card cardId: type: string minLength: 16 maxLength: 50 example: 01995412-d75f-26e8-a452-656e23f287e1 description: Card Id By submitting this value no accountNumber is required. billingAddress: $ref: '#/components/schemas/BillingAddress' expirationDate: type: string example: 2030-01 description: Expiration date of the card nameOnCard: type: string maxLength: 120 example: John Doe description: Name that appears on the card type: type: string example: CARD description: Type of payment instrument cardType: type: string maxLength: 70 example: Visa Platinum issuerName: type: string maxLength: 150 example: Bank A description: Name of the issuer of the card BankAccountPaymentInstrument: type: object required: - accountName - accountNumberType - currencyCode - type - address properties: accountName: type: string maxLength: 70 example: Alex Miller description: Bank account name, i.e., account holder name as recorded on the bank account accountNumber: type: string maxLength: 34 example: '1001001234' description: Bank account number cardId: type: string minLength: 16 maxLength: 50 example: 01995412-d75f-26e8-a452-656e23f287e1 description: Card Id By submitting this value no accountNumber is required. accountNumberType: type: string enum: - IBAN - DEFAULT example: DEFAULT description: Bank account number type. Valid values 'IBAN', 'DEFAULT'. If the IBAN format is not supported in a country, use DEFAULT. countryCode: type: string example: USA description: Country code using 3-character ISO 3166 (Alpha 3) format currencyCode: type: string example: USD description: 'Bank account currency code. Format: 3-character ISO-4217 (Alpha-3) currency code' type: type: string example: BANK_ACCOUNT description: Type of payment instrument accountType: type: string enum: - CHECKING - SAVING - MAESTRA - VISTA - LOAN example: CHECKING description: Bank account type address: $ref: '#/components/schemas/BillingAddress' bankCode: type: string maxLength: 12 example: '173' bankCodeType: type: string enum: - ABA - SORT_CODE - DEFAULT example: DEFAULT bankIdentifierCode: type: string maxLength: 11 example: AAAABBCC123 bankName: type: string maxLength: 50 example: Bank A branchCode: type: string maxLength: 12 example: '123456' DeleteBankAccountPaymentInstrument: type: object required: - accountName - accountNumberType - type properties: accountName: type: string maxLength: 70 example: Alex Miller accountNumber: type: string maxLength: 34 example: '1001001234' description: Bank account number cardId: type: string minLength: 16 maxLength: 50 example: 01995412-d75f-26e8-a452-656e23f287e1 description: Card Id By submitting this value no accountNumber is required. accountNumberType: type: string enum: - IBAN - DEFAULT example: DEFAULT type: type: string example: BANK_ACCOUNT RSQueryData200: type: object properties: code: type: string description: Operation response code example: 202.00.000 maxLength: 10 message: type: string description: Response code description example: Accepted for processing maxLength: 140 datetime: type: string 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, 2022-04-25T23:19:12.000Z ' example: '2022-04-25T23:19:12.000Z' minLength: 24 maxLength: 24 data: type: object properties: intent: $ref: '#/components/schemas/ObjIntent' paymentInstruments: $ref: '#/components/schemas/ObjGetDataPaymentInstrumentList' consumerInformation: $ref: '#/components/schemas/ObjConsumerInformation' RSEnrollData202: type: object properties: code: type: string description: Operation response code example: 202.00.000 maxLength: 10 message: type: string description: Response code description example: Accepted for processing maxLength: 140 datetime: type: string 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, 2022-04-25T23:19:12.000Z ' example: '2022-04-25T23:19:12.000Z' minLength: 24 maxLength: 24 data: type: object properties: successResponse: type: object properties: requestTraceId: type: string format: uuid description: Unique identifier of the request example: 351562ba-83cf-11ee-b962-0242ac120002 minLength: 36 maxLength: 36 RQUpdatePayment: type: object required: - consumerInformation - paymentInstruments properties: consumerInformation: type: object properties: externalConsumerID: type: string format: uuid description: 'Client-provided unique identifier of a consumer. ' example: 63421837-d597-4f0f-89e4-930c1a7b9e85 minLength: 1 maxLength: 100 externalConsumerIDOwnerBID: type: string description: "Visa Business Identifier (BID) of the entity to which an External Consumer ID belongs.\n\nThis field is optional for clients integrated prior to its introduction. \nRequired otherwise. Questions should be directed to your Visa Integration Specialist.\n" example: '10098765' minLength: 1 maxLength: 8 pattern: ^\d*$ paymentInstruments: type: array minItems: 1 items: oneOf: - $ref: '#/components/schemas/CardPaymentInstrument' - $ref: '#/components/schemas/BankAccountPaymentInstrument' intent: $ref: '#/components/schemas/ObjIntent' BillingAddress: type: object properties: country: type: string example: USA description: Country code using 3-character ISO 3166 (Alpha 3) format addressLine1: type: string maxLength: 64 example: 1000 Market Street description: Address Line 1 addressLine2: type: string maxLength: 64 example: Building 56 addressLine3: type: string maxLength: 64 example: Suite 101 city: type: string maxLength: 32 example: San Francisco postalCode: type: string maxLength: 9 example: '94105' description: Postal code of the address state: type: string maxLength: 3 example: CA RQUpdateConsumerInfo: type: object required: - consumerInformation properties: consumerInformation: $ref: '#/components/schemas/ObjConsumerInformation' intent: $ref: '#/components/schemas/ObjIntent' ObjIntent: type: object required: - type - value properties: type: type: string enum: - PRODUCT_CODE example: PRODUCT_CODE description: Indicates the type of the intent value: type: string enum: - CLICK_TO_PAY example: CLICK_TO_PAY description: Product name for which the request is intended TokenDetails: type: object required: - tokenReferenceID - tokenRequestorID properties: tokenReferenceID: type: string maxLength: 50 minLength: 1 example: hflasdhflsdkfhoin3y038yfwn tokenRequestorID: type: string maxLength: 11 minLength: 1 example: '1234567890' responses: RS400: description: Bad Request content: application/json: schema: $ref: '#/components/schemas/RS400' examples: Header Params Required: $ref: '#/components/examples/HeaderParamsRequired' JWE Invalid format: $ref: '#/components/examples/JWEInvalidFormat' Invalid Tenant ID: $ref: '#/components/examples/JWEInvalidFormat' Unable process request: $ref: '#/components/examples/UnableProcessRequest' Invalid parameters: $ref: '#/components/examples/InvalidParameters' Not Found: $ref: '#/components/examples/NotFound' Invalid Card Id: $ref: '#/components/examples/InvalidCardId' RSRequestStatus200: description: OK content: application/json: schema: $ref: '#/components/schemas/RSRequestStatus200' RSAddPayments202: description: OK content: application/json: schema: $ref: '#/components/schemas/RSAddPayments202' examples: Default: value: code: 200.00.000 message: Process Ok datetime: '2022-04-25T23:19:12.000Z' data: successResponse: requestTraceId: 351562ba-83cf-11ee-b962-0242ac120002 RS500: description: Internal Server Error content: application/json: schema: $ref: '#/components/schemas/RS500' examples: Internal Server Error: $ref: '#/components/examples/InternalServerError' RSQueryData200: description: OK content: application/json: schema: $ref: '#/components/schemas/RSQueryData200' RSEnrollData202: description: OK content: application/json: schema: $ref: '#/components/schemas/RSEnrollData202' examples: Default: value: code: 200.00.000 message: Process Ok datetime: '2022-04-25T23:19:12.000Z' data: successResponse: requestTraceId: 351562ba-83cf-11ee-b962-0242ac120002 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: {}