diff --git a/mintlify/openapi.yaml b/mintlify/openapi.yaml index 05338991..7bc9d361 100644 --- a/mintlify/openapi.yaml +++ b/mintlify/openapi.yaml @@ -5540,17 +5540,31 @@ components: properties: accountType: $ref: '#/components/schemas/PaymentAccountType' - UsdAccountInfoBase: + UsdAccountInfo: type: object required: - accountType + - paymentRails - accountNumber - routingNumber + - bankName + - phoneNumber properties: accountType: type: string enum: - USD_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - ACH + - WIRE + - RTP + - FEDNOW + - BANK_TRANSFER + - MOBILE_MONEY accountNumber: type: string description: The account number of the bank @@ -5563,23 +5577,18 @@ components: minLength: 9 maxLength: 9 pattern: ^[0-9]{9}$ - UsdAccountInfo: - allOf: - - $ref: '#/components/schemas/UsdAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - ACH - - WIRE - - RTP - - FEDNOW - - BANK_TRANSFER + bankName: + type: string + description: The name of the bank + minLength: 1 + maxLength: 255 + phoneNumber: + type: string + description: The phone number in international format + example: '+1234567890' + minLength: 7 + maxLength: 15 + pattern: ^\+[0-9]{6,14}$ PaymentUsdAccountInfo: title: USD Bank Account allOf: @@ -5609,16 +5618,23 @@ components: type: string description: A PIX QR code payload that can be used to fund the transaction. This can be rendered as a QR code image or pasted into a PIX-compatible banking app. minLength: 1 - MxnAccountInfoBase: + MxnAccountInfo: type: object required: - accountType + - paymentRails - clabeNumber properties: accountType: type: string enum: - MXN_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - SPEI clabeNumber: type: string description: The CLABE number of the bank @@ -5626,19 +5642,6 @@ components: minLength: 18 maxLength: 18 pattern: ^[0-9]{18}$ - MxnAccountInfo: - allOf: - - $ref: '#/components/schemas/MxnAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - SPEI PaymentMxnAccountInfo: title: MXN Account allOf: @@ -5652,16 +5655,24 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - DkkAccountInfoBase: + DkkAccountInfo: type: object required: - accountType + - paymentRails - iban properties: accountType: type: string enum: - DKK_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - SEPA + - SEPA_INSTANT iban: type: string description: The IBAN of the bank account @@ -5676,20 +5687,6 @@ components: minLength: 8 maxLength: 11 pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ - DkkAccountInfo: - allOf: - - $ref: '#/components/schemas/DkkAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - SEPA - - SEPA_INSTANT PaymentDkkAccountInfo: title: DKK Account allOf: @@ -5703,16 +5700,24 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - EurAccountInfoBase: + EurAccountInfo: type: object required: - accountType + - paymentRails - iban properties: accountType: type: string enum: - EUR_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - SEPA + - SEPA_INSTANT iban: type: string description: The IBAN of the bank account @@ -5727,20 +5732,6 @@ components: minLength: 8 maxLength: 11 pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ - EurAccountInfo: - allOf: - - $ref: '#/components/schemas/EurAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - SEPA - - SEPA_INSTANT PaymentEurAccountInfo: title: EUR Account allOf: @@ -5754,16 +5745,23 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - InrAccountInfoBase: + InrAccountInfo: type: object required: - accountType + - paymentRails - vpa properties: accountType: type: string enum: - INR_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - UPI vpa: type: string description: The UPI Virtual Payment Address @@ -5771,28 +5769,16 @@ components: minLength: 3 maxLength: 255 pattern: ^[a-zA-Z0-9.\-_]+@[a-zA-Z0-9]+$ - InrAccountInfo: - allOf: - - $ref: '#/components/schemas/InrAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - UPI PaymentInrAccountInfo: title: INR Account allOf: - $ref: '#/components/schemas/BasePaymentAccountInfo' - $ref: '#/components/schemas/InrAccountInfo' - NgnAccountInfoBase: + NgnAccountInfo: type: object required: - accountType + - paymentRails - accountNumber - bankName properties: @@ -5800,6 +5786,12 @@ components: type: string enum: - NGN_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER accountNumber: type: string description: Nigerian bank account number @@ -5812,19 +5804,6 @@ components: description: The name of the bank minLength: 1 maxLength: 255 - NgnAccountInfo: - allOf: - - $ref: '#/components/schemas/NgnAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - BANK_TRANSFER PaymentNgnAccountInfo: title: NGN Account allOf: @@ -5897,10 +5876,11 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - GbpAccountInfoBase: + GbpAccountInfo: type: object required: - accountType + - paymentRails - sortCode - accountNumber properties: @@ -5908,6 +5888,12 @@ components: type: string enum: - GBP_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - FASTER_PAYMENTS sortCode: type: string description: The UK sort code @@ -5922,19 +5908,6 @@ components: maxLength: 8 example: '12345678' pattern: ^[0-9]{8}$ - GbpAccountInfo: - allOf: - - $ref: '#/components/schemas/GbpAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - FASTER_PAYMENTS PaymentGbpAccountInfo: title: GBP Account allOf: @@ -5948,10 +5921,11 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - HkdAccountInfoBase: + HkdAccountInfo: type: object required: - accountType + - paymentRails - bankName - accountNumber - swiftCode @@ -5960,6 +5934,12 @@ components: type: string enum: - HKD_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER bankName: type: string description: The name of the bank @@ -5978,19 +5958,6 @@ components: minLength: 8 maxLength: 11 pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ - HkdAccountInfo: - allOf: - - $ref: '#/components/schemas/HkdAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - BANK_TRANSFER PaymentHkdAccountInfo: title: HKD Account allOf: @@ -6004,10 +5971,11 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - IdrAccountInfoBase: + IdrAccountInfo: type: object required: - accountType + - paymentRails - bankName - accountNumber - swiftCode @@ -6017,6 +5985,12 @@ components: type: string enum: - IDR_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER bankName: type: string description: The name of the bank @@ -6043,19 +6017,6 @@ components: minLength: 7 maxLength: 15 pattern: ^\+62[0-9]{9,12}$ - IdrAccountInfo: - allOf: - - $ref: '#/components/schemas/IdrAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - BANK_TRANSFER PaymentIdrAccountInfo: title: IDR Account allOf: @@ -6069,10 +6030,11 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - MyrAccountInfoBase: + MyrAccountInfo: type: object required: - accountType + - paymentRails - bankName - accountNumber - swiftCode @@ -6081,6 +6043,12 @@ components: type: string enum: - MYR_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER bankName: type: string description: The name of the bank @@ -6099,19 +6067,6 @@ components: minLength: 8 maxLength: 11 pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ - MyrAccountInfo: - allOf: - - $ref: '#/components/schemas/MyrAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - BANK_TRANSFER PaymentMyrAccountInfo: title: MYR Account allOf: @@ -6125,10 +6080,11 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - PhpAccountInfoBase: + PhpAccountInfo: type: object required: - accountType + - paymentRails - bankName - accountNumber properties: @@ -6136,6 +6092,12 @@ components: type: string enum: - PHP_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER bankName: type: string description: Name of the beneficiary's bank @@ -6149,19 +6111,6 @@ components: maxLength: 16 example: '001234567890' pattern: ^[0-9]{8,16}$ - PhpAccountInfo: - allOf: - - $ref: '#/components/schemas/PhpAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - BANK_TRANSFER PaymentPhpAccountInfo: title: PHP Account allOf: @@ -6175,10 +6124,11 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - SgdAccountInfoBase: + SgdAccountInfo: type: object required: - accountType + - paymentRails - bankName - accountNumber - swiftCode @@ -6187,6 +6137,14 @@ components: type: string enum: - SGD_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - PAYNOW + - FAST + - BANK_TRANSFER bankName: type: string description: Name of the beneficiary's bank @@ -6206,21 +6164,6 @@ components: minLength: 8 maxLength: 11 pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ - SgdAccountInfo: - allOf: - - $ref: '#/components/schemas/SgdAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - PAYNOW - - FAST - - BANK_TRANSFER PaymentSgdAccountInfo: title: SGD Account allOf: @@ -6234,10 +6177,11 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - ThbAccountInfoBase: + ThbAccountInfo: type: object required: - accountType + - paymentRails - bankName - accountNumber - swiftCode @@ -6246,6 +6190,12 @@ components: type: string enum: - THB_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER bankName: type: string description: The name of the bank @@ -6264,36 +6214,24 @@ components: minLength: 8 maxLength: 11 pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ - ThbAccountInfo: + PaymentThbAccountInfo: + title: THB Account allOf: - - $ref: '#/components/schemas/ThbAccountInfoBase' + - $ref: '#/components/schemas/BasePaymentAccountInfo' + - $ref: '#/components/schemas/ThbAccountInfo' - type: object required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - BANK_TRANSFER - PaymentThbAccountInfo: - title: THB Account - allOf: - - $ref: '#/components/schemas/BasePaymentAccountInfo' - - $ref: '#/components/schemas/ThbAccountInfo' - - type: object - required: - - reference + - reference properties: reference: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - VndAccountInfoBase: + VndAccountInfo: type: object required: - accountType + - paymentRails - bankName - accountNumber - swiftCode @@ -6302,6 +6240,12 @@ components: type: string enum: - VND_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER bankName: type: string description: The name of the bank @@ -6320,19 +6264,6 @@ components: minLength: 8 maxLength: 11 pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ - VndAccountInfo: - allOf: - - $ref: '#/components/schemas/VndAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - BANK_TRANSFER PaymentVndAccountInfo: title: VND Account allOf: @@ -6526,16 +6457,23 @@ components: description: Type of asset enum: - USDC - AedAccountInfoBase: + AedAccountInfo: type: object required: - accountType + - paymentRails - iban properties: accountType: type: string enum: - AED_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER iban: type: string description: UAE IBAN (23 characters, starting with AE) @@ -6550,19 +6488,6 @@ components: minLength: 8 maxLength: 11 pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ - AedAccountInfo: - allOf: - - $ref: '#/components/schemas/AedAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - BANK_TRANSFER PaymentAedAccountInfo: title: AED Account allOf: @@ -6576,10 +6501,11 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - KesAccountInfoBase: + KesAccountInfo: type: object required: - accountType + - paymentRails - phoneNumber - provider properties: @@ -6587,6 +6513,12 @@ components: type: string enum: - KES_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - MOBILE_MONEY phoneNumber: type: string description: Kenyan mobile money phone number @@ -6599,19 +6531,6 @@ components: description: The mobile money provider name minLength: 1 maxLength: 255 - KesAccountInfo: - allOf: - - $ref: '#/components/schemas/KesAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - MOBILE_MONEY PaymentKesAccountInfo: title: KES Account allOf: @@ -6625,10 +6544,11 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - MwkAccountInfoBase: + MwkAccountInfo: type: object required: - accountType + - paymentRails - phoneNumber - provider properties: @@ -6636,6 +6556,12 @@ components: type: string enum: - MWK_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - MOBILE_MONEY phoneNumber: type: string description: The phone number in international format @@ -6648,19 +6574,6 @@ components: description: The mobile money provider name minLength: 1 maxLength: 255 - MwkAccountInfo: - allOf: - - $ref: '#/components/schemas/MwkAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - MOBILE_MONEY PaymentMwkAccountInfo: title: MWK Account allOf: @@ -6674,10 +6587,11 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - RwfAccountInfoBase: + RwfAccountInfo: type: object required: - accountType + - paymentRails - phoneNumber - provider properties: @@ -6685,6 +6599,12 @@ components: type: string enum: - RWF_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - MOBILE_MONEY phoneNumber: type: string description: Rwandan mobile money phone number @@ -6697,19 +6617,6 @@ components: description: The mobile money provider name minLength: 1 maxLength: 255 - RwfAccountInfo: - allOf: - - $ref: '#/components/schemas/RwfAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - MOBILE_MONEY PaymentRwfAccountInfo: title: RWF Account allOf: @@ -6723,10 +6630,11 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - TzsAccountInfoBase: + TzsAccountInfo: type: object required: - accountType + - paymentRails - phoneNumber - provider properties: @@ -6734,6 +6642,12 @@ components: type: string enum: - TZS_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - MOBILE_MONEY phoneNumber: type: string description: Tanzanian mobile money phone number @@ -6746,19 +6660,6 @@ components: description: The mobile money provider name minLength: 1 maxLength: 255 - TzsAccountInfo: - allOf: - - $ref: '#/components/schemas/TzsAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - MOBILE_MONEY PaymentTzsAccountInfo: title: TZS Account allOf: @@ -6772,10 +6673,11 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - UgxAccountInfoBase: + UgxAccountInfo: type: object required: - accountType + - paymentRails - phoneNumber - provider properties: @@ -6783,6 +6685,12 @@ components: type: string enum: - UGX_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - MOBILE_MONEY phoneNumber: type: string description: The phone number in international format @@ -6795,19 +6703,6 @@ components: description: The mobile money provider name minLength: 1 maxLength: 255 - UgxAccountInfo: - allOf: - - $ref: '#/components/schemas/UgxAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - MOBILE_MONEY PaymentUgxAccountInfo: title: UGX Account allOf: @@ -6821,10 +6716,11 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - XofAccountInfoBase: + XofAccountInfo: type: object required: - accountType + - paymentRails - phoneNumber - provider - region @@ -6833,6 +6729,12 @@ components: type: string enum: - XOF_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - MOBILE_MONEY phoneNumber: type: string description: The phone number in international format @@ -6856,19 +6758,6 @@ components: - CI - SN - TG - XofAccountInfo: - allOf: - - $ref: '#/components/schemas/XofAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - MOBILE_MONEY PaymentXofAccountInfo: title: XOF Account allOf: @@ -6882,10 +6771,11 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - ZarAccountInfoBase: + ZarAccountInfo: type: object required: - accountType + - paymentRails - accountNumber - bankName properties: @@ -6893,6 +6783,12 @@ components: type: string enum: - ZAR_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER accountNumber: type: string description: South African bank account number @@ -6905,19 +6801,6 @@ components: description: The name of the bank minLength: 1 maxLength: 255 - ZarAccountInfo: - allOf: - - $ref: '#/components/schemas/ZarAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - BANK_TRANSFER PaymentZarAccountInfo: title: ZAR Account allOf: @@ -6931,10 +6814,11 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - ZmwAccountInfoBase: + ZmwAccountInfo: type: object required: - accountType + - paymentRails - phoneNumber - provider properties: @@ -6942,6 +6826,12 @@ components: type: string enum: - ZMW_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - MOBILE_MONEY phoneNumber: type: string description: Zambian mobile money phone number @@ -6954,19 +6844,6 @@ components: description: The mobile money provider name minLength: 1 maxLength: 255 - ZmwAccountInfo: - allOf: - - $ref: '#/components/schemas/ZmwAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - MOBILE_MONEY PaymentZmwAccountInfo: title: ZMW Account allOf: @@ -6980,10 +6857,11 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - BwpAccountInfoBase: + BwpAccountInfo: type: object required: - accountType + - paymentRails - phoneNumber - provider properties: @@ -6991,6 +6869,12 @@ components: type: string enum: - BWP_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - MOBILE_MONEY phoneNumber: type: string description: The phone number in international format @@ -7003,19 +6887,6 @@ components: description: The mobile money provider name minLength: 1 maxLength: 255 - BwpAccountInfo: - allOf: - - $ref: '#/components/schemas/BwpAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - MOBILE_MONEY PaymentBwpAccountInfo: title: BWP Account allOf: @@ -7029,10 +6900,11 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - XafAccountInfoBase: + XafAccountInfo: type: object required: - accountType + - paymentRails - phoneNumber - provider - region @@ -7041,6 +6913,12 @@ components: type: string enum: - XAF_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - MOBILE_MONEY phoneNumber: type: string description: The phone number in international format @@ -7062,19 +6940,6 @@ components: enum: - CM - CG - XafAccountInfo: - allOf: - - $ref: '#/components/schemas/XafAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - MOBILE_MONEY PaymentXafAccountInfo: title: XAF Account allOf: @@ -7088,10 +6953,12 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - BdtAccountInfoBase: + BdtAccountInfo: type: object required: - accountType + - paymentRails + - bankName - accountNumber - branchCode - phoneNumber @@ -7100,6 +6967,18 @@ components: type: string enum: - BDT_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER + - MOBILE_MONEY + bankName: + type: string + description: The name of the bank + minLength: 1 + maxLength: 255 accountNumber: type: string description: The account number of the bank @@ -7125,20 +7004,6 @@ components: minLength: 7 maxLength: 15 pattern: ^\+[0-9]{6,14}$ - BdtAccountInfo: - allOf: - - $ref: '#/components/schemas/BdtAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - BANK_TRANSFER - - MOBILE_MONEY PaymentBdtAccountInfo: title: BDT Account allOf: @@ -7188,16 +7053,29 @@ components: format: uri description: A payment URL where the customer can complete their COP deposit. example: https://payments.example.com/t/abc123 - EgpAccountInfoBase: + EgpAccountInfo: type: object required: - accountType + - paymentRails + - bankName - accountNumber properties: accountType: type: string enum: - EGP_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER + bankName: + type: string + description: The name of the bank + minLength: 1 + maxLength: 255 accountNumber: type: string description: The account number of the bank @@ -7217,19 +7095,6 @@ components: minLength: 8 maxLength: 11 pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ - EgpAccountInfo: - allOf: - - $ref: '#/components/schemas/EgpAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - BANK_TRANSFER PaymentEgpAccountInfo: title: EGP Account allOf: @@ -7243,10 +7108,12 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - GhsAccountInfoBase: + GhsAccountInfo: type: object required: - accountType + - paymentRails + - bankName - accountNumber - phoneNumber properties: @@ -7254,6 +7121,18 @@ components: type: string enum: - GHS_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER + - MOBILE_MONEY + bankName: + type: string + description: The name of the bank + minLength: 1 + maxLength: 255 accountNumber: type: string description: The account number of the bank @@ -7266,20 +7145,6 @@ components: minLength: 7 maxLength: 15 pattern: ^\+[0-9]{6,14}$ - GhsAccountInfo: - allOf: - - $ref: '#/components/schemas/GhsAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - BANK_TRANSFER - - MOBILE_MONEY PaymentGhsAccountInfo: title: GHS Account allOf: @@ -7293,10 +7158,12 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - GtqAccountInfoBase: + GtqAccountInfo: type: object required: - accountType + - paymentRails + - bankName - accountNumber - phoneNumber properties: @@ -7304,6 +7171,18 @@ components: type: string enum: - GTQ_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER + - MOBILE_MONEY + bankName: + type: string + description: The name of the bank + minLength: 1 + maxLength: 255 accountNumber: type: string description: The account number of the bank @@ -7316,20 +7195,6 @@ components: minLength: 7 maxLength: 15 pattern: ^\+[0-9]{6,14}$ - GtqAccountInfo: - allOf: - - $ref: '#/components/schemas/GtqAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - BANK_TRANSFER - - MOBILE_MONEY PaymentGtqAccountInfo: title: GTQ Account allOf: @@ -7343,16 +7208,23 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - HtgAccountInfoBase: + HtgAccountInfo: type: object required: - accountType + - paymentRails - phoneNumber properties: accountType: type: string enum: - HTG_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - MOBILE_MONEY phoneNumber: type: string description: The phone number in international format @@ -7360,19 +7232,6 @@ components: minLength: 7 maxLength: 15 pattern: ^\+[0-9]{6,14}$ - HtgAccountInfo: - allOf: - - $ref: '#/components/schemas/HtgAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - MOBILE_MONEY PaymentHtgAccountInfo: title: HTG Account allOf: @@ -7386,10 +7245,12 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - JmdAccountInfoBase: + JmdAccountInfo: type: object required: - accountType + - paymentRails + - bankName - accountNumber - branchCode - bankAccountType @@ -7398,6 +7259,17 @@ components: type: string enum: - JMD_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER + bankName: + type: string + description: The name of the bank + minLength: 1 + maxLength: 255 accountNumber: type: string description: The account number of the bank @@ -7415,19 +7287,6 @@ components: enum: - CHECKING - SAVINGS - JmdAccountInfo: - allOf: - - $ref: '#/components/schemas/JmdAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - BANK_TRANSFER PaymentJmdAccountInfo: title: JMD Account allOf: @@ -7441,10 +7300,12 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - PkrAccountInfoBase: + PkrAccountInfo: type: object required: - accountType + - paymentRails + - bankName - accountNumber - phoneNumber properties: @@ -7452,6 +7313,18 @@ components: type: string enum: - PKR_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER + - MOBILE_MONEY + bankName: + type: string + description: The name of the bank + minLength: 1 + maxLength: 255 accountNumber: type: string description: The account number of the bank @@ -7471,20 +7344,6 @@ components: minLength: 7 maxLength: 15 pattern: ^\+[0-9]{6,14}$ - PkrAccountInfo: - allOf: - - $ref: '#/components/schemas/PkrAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - BANK_TRANSFER - - MOBILE_MONEY PaymentPkrAccountInfo: title: PKR Account allOf: @@ -7755,10 +7614,11 @@ components: properties: accountType: $ref: '#/components/schemas/ExternalAccountType' - BrlAccountInfoBase: + BrlAccountInfo: type: object required: - accountType + - paymentRails - pixKey - pixKeyType - taxId @@ -7767,6 +7627,12 @@ components: type: string enum: - BRL_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - PIX pixKey: type: string description: The PIX key (email, phone, CPF, CNPJ, or random) @@ -7787,19 +7653,6 @@ components: minLength: 11 maxLength: 14 pattern: ^[0-9]{11,14}$ - BrlAccountInfo: - allOf: - - $ref: '#/components/schemas/BrlAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - PIX BrlBeneficiary: title: Individual Beneficiary type: object @@ -8249,6 +8102,7 @@ components: required: - beneficiaryType - fullName + - nationality properties: beneficiaryType: type: string @@ -8300,6 +8154,7 @@ components: required: - beneficiaryType - fullName + - nationality properties: beneficiaryType: type: string @@ -8453,6 +8308,7 @@ components: required: - beneficiaryType - fullName + - nationality properties: beneficiaryType: type: string @@ -8555,6 +8411,7 @@ components: required: - beneficiaryType - fullName + - nationality properties: beneficiaryType: type: string @@ -8708,6 +8565,7 @@ components: required: - beneficiaryType - fullName + - nationality properties: beneficiaryType: type: string @@ -8759,6 +8617,7 @@ components: required: - beneficiaryType - fullName + - nationality properties: beneficiaryType: type: string @@ -8912,6 +8771,7 @@ components: required: - beneficiaryType - fullName + - nationality properties: beneficiaryType: type: string @@ -8963,6 +8823,7 @@ components: required: - beneficiaryType - fullName + - nationality properties: beneficiaryType: type: string @@ -9014,6 +8875,7 @@ components: required: - beneficiaryType - fullName + - nationality properties: beneficiaryType: type: string @@ -9174,6 +9036,7 @@ components: required: - beneficiaryType - fullName + - nationality properties: beneficiaryType: type: string @@ -9225,6 +9088,7 @@ components: required: - beneficiaryType - fullName + - nationality properties: beneficiaryType: type: string @@ -9321,10 +9185,12 @@ components: mapping: INDIVIDUAL: '#/components/schemas/BdtBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - CopAccountInfoBase: + CopAccountInfo: type: object required: - accountType + - paymentRails + - bankName - accountNumber - bankAccountType - phoneNumber @@ -9333,6 +9199,18 @@ components: type: string enum: - COP_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER + - MOBILE_MONEY + bankName: + type: string + description: The name of the bank + minLength: 1 + maxLength: 255 accountNumber: type: string description: The account number of the bank @@ -9351,20 +9229,6 @@ components: minLength: 7 maxLength: 15 pattern: ^\+[0-9]{6,14}$ - CopAccountInfo: - allOf: - - $ref: '#/components/schemas/CopAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - BANK_TRANSFER - - MOBILE_MONEY CopBeneficiary: title: Individual Beneficiary type: object @@ -9884,6 +9748,30 @@ components: totalCount: type: integer description: Total number of external accounts matching the criteria (excluding pagination) + AedAccountInfoBase: + type: object + required: + - accountType + - iban + properties: + accountType: + type: string + enum: + - AED_ACCOUNT + iban: + type: string + description: UAE IBAN (23 characters, starting with AE) + example: AE070331234567890123456 + minLength: 23 + maxLength: 23 + pattern: ^AE[0-9]{21}$ + swiftCode: + type: string + description: The SWIFT/BIC code of the bank + example: EBILAEAD + minLength: 8 + maxLength: 11 + pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ AedExternalAccountCreateInfo: title: AED Account allOf: @@ -9904,6 +9792,38 @@ components: mapping: INDIVIDUAL: '#/components/schemas/AedBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + BrlAccountInfoBase: + type: object + required: + - accountType + - pixKey + - pixKeyType + - taxId + properties: + accountType: + type: string + enum: + - BRL_ACCOUNT + pixKey: + type: string + description: The PIX key (email, phone, CPF, CNPJ, or random) + minLength: 1 + maxLength: 77 + pixKeyType: + type: string + description: The type of PIX key + enum: + - CPF + - CNPJ + - EMAIL + - PHONE + - RANDOM + taxId: + type: string + description: The tax ID (CPF or CNPJ) + minLength: 11 + maxLength: 14 + pattern: ^[0-9]{11,14}$ BrlExternalAccountCreateInfo: title: BRL Account allOf: @@ -9924,9 +9844,32 @@ components: mapping: INDIVIDUAL: '#/components/schemas/BrlBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - BwpExternalAccountCreateInfo: - title: BWP Account - allOf: + BwpAccountInfoBase: + type: object + required: + - accountType + - phoneNumber + - provider + properties: + accountType: + type: string + enum: + - BWP_ACCOUNT + phoneNumber: + type: string + description: The phone number in international format + example: '+1234567890' + minLength: 7 + maxLength: 15 + pattern: ^\+[0-9]{6,14}$ + provider: + type: string + description: The mobile money provider name + minLength: 1 + maxLength: 255 + BwpExternalAccountCreateInfo: + title: BWP Account + allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - $ref: '#/components/schemas/BwpAccountInfoBase' - type: object @@ -9964,6 +9907,30 @@ components: mapping: INDIVIDUAL: '#/components/schemas/CadBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + DkkAccountInfoBase: + type: object + required: + - accountType + - iban + properties: + accountType: + type: string + enum: + - DKK_ACCOUNT + iban: + type: string + description: The IBAN of the bank account + example: DE89370400440532013000 + minLength: 15 + maxLength: 34 + pattern: ^[A-Z]{2}[0-9]{2}[A-Za-z0-9]{11,30}$ + swiftCode: + type: string + description: The SWIFT/BIC code of the bank + example: DEUTDEFF + minLength: 8 + maxLength: 11 + pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ DkkExternalAccountCreateInfo: title: DKK Account allOf: @@ -9984,6 +9951,30 @@ components: mapping: INDIVIDUAL: '#/components/schemas/DkkBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + EurAccountInfoBase: + type: object + required: + - accountType + - iban + properties: + accountType: + type: string + enum: + - EUR_ACCOUNT + iban: + type: string + description: The IBAN of the bank account + example: DE89370400440532013000 + minLength: 15 + maxLength: 34 + pattern: ^[A-Z]{2}[0-9]{2}[A-Za-z0-9]{11,30}$ + swiftCode: + type: string + description: The SWIFT/BIC code of the bank + example: DEUTDEFF + minLength: 8 + maxLength: 11 + pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ EurExternalAccountCreateInfo: title: EUR Account allOf: @@ -10004,6 +9995,31 @@ components: mapping: INDIVIDUAL: '#/components/schemas/EurBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + GbpAccountInfoBase: + type: object + required: + - accountType + - sortCode + - accountNumber + properties: + accountType: + type: string + enum: + - GBP_ACCOUNT + sortCode: + type: string + description: The UK sort code + example: '123456' + minLength: 6 + maxLength: 6 + pattern: ^[0-9]{6}$ + accountNumber: + type: string + description: UK bank account number (8 digits) + minLength: 8 + maxLength: 8 + example: '12345678' + pattern: ^[0-9]{8}$ GbpExternalAccountCreateInfo: title: GBP Account allOf: @@ -10024,6 +10040,36 @@ components: mapping: INDIVIDUAL: '#/components/schemas/GbpBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + HkdAccountInfoBase: + type: object + required: + - accountType + - bankName + - accountNumber + - swiftCode + properties: + accountType: + type: string + enum: + - HKD_ACCOUNT + bankName: + type: string + description: The name of the bank + minLength: 1 + maxLength: 255 + accountNumber: + type: string + description: Hong Kong bank account number + minLength: 1 + maxLength: 34 + example: '123456789012' + swiftCode: + type: string + description: The SWIFT/BIC code of the bank + example: HSBCHKHHHKH + minLength: 8 + maxLength: 11 + pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ HkdExternalAccountCreateInfo: title: HKD Account allOf: @@ -10044,6 +10090,45 @@ components: mapping: INDIVIDUAL: '#/components/schemas/HkdBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + IdrAccountInfoBase: + type: object + required: + - accountType + - bankName + - accountNumber + - swiftCode + - phoneNumber + properties: + accountType: + type: string + enum: + - IDR_ACCOUNT + bankName: + type: string + description: The name of the bank + minLength: 1 + maxLength: 255 + example: Bank Central Asia + accountNumber: + type: string + description: Indonesian bank account number + minLength: 1 + maxLength: 34 + example: '1234567890' + swiftCode: + type: string + description: The SWIFT/BIC code of the bank + example: CENAIDJA + minLength: 8 + maxLength: 11 + pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ + phoneNumber: + type: string + description: Indonesian phone number for e-wallet payments + example: '+6281234567890' + minLength: 7 + maxLength: 15 + pattern: ^\+62[0-9]{9,12}$ IdrExternalAccountCreateInfo: title: IDR Account allOf: @@ -10064,6 +10149,23 @@ components: mapping: INDIVIDUAL: '#/components/schemas/IdrBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + InrAccountInfoBase: + type: object + required: + - accountType + - vpa + properties: + accountType: + type: string + enum: + - INR_ACCOUNT + vpa: + type: string + description: The UPI Virtual Payment Address + example: user@upi + minLength: 3 + maxLength: 255 + pattern: ^[a-zA-Z0-9.\-_]+@[a-zA-Z0-9]+$ InrExternalAccountCreateInfo: title: INR Account allOf: @@ -10084,6 +10186,29 @@ components: mapping: INDIVIDUAL: '#/components/schemas/InrBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + KesAccountInfoBase: + type: object + required: + - accountType + - phoneNumber + - provider + properties: + accountType: + type: string + enum: + - KES_ACCOUNT + phoneNumber: + type: string + description: Kenyan mobile money phone number + example: '+254712345678' + minLength: 7 + maxLength: 15 + pattern: ^\+254[0-9]{9}$ + provider: + type: string + description: The mobile money provider name + minLength: 1 + maxLength: 255 KesExternalAccountCreateInfo: title: KES Account allOf: @@ -10104,6 +10229,29 @@ components: mapping: INDIVIDUAL: '#/components/schemas/KesBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + MwkAccountInfoBase: + type: object + required: + - accountType + - phoneNumber + - provider + properties: + accountType: + type: string + enum: + - MWK_ACCOUNT + phoneNumber: + type: string + description: The phone number in international format + example: '+1234567890' + minLength: 7 + maxLength: 15 + pattern: ^\+[0-9]{6,14}$ + provider: + type: string + description: The mobile money provider name + minLength: 1 + maxLength: 255 MwkExternalAccountCreateInfo: title: MWK Account allOf: @@ -10124,6 +10272,23 @@ components: mapping: INDIVIDUAL: '#/components/schemas/MwkBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + MxnAccountInfoBase: + type: object + required: + - accountType + - clabeNumber + properties: + accountType: + type: string + enum: + - MXN_ACCOUNT + clabeNumber: + type: string + description: The CLABE number of the bank + example: '123456789012345678' + minLength: 18 + maxLength: 18 + pattern: ^[0-9]{18}$ MxnExternalAccountCreateInfo: title: MXN Account allOf: @@ -10144,14 +10309,44 @@ components: mapping: INDIVIDUAL: '#/components/schemas/MxnBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - MyrExternalAccountCreateInfo: - title: MYR Account - allOf: - - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/MyrAccountInfoBase' - - type: object - required: - - beneficiary + MyrAccountInfoBase: + type: object + required: + - accountType + - bankName + - accountNumber + - swiftCode + properties: + accountType: + type: string + enum: + - MYR_ACCOUNT + bankName: + type: string + description: The name of the bank + minLength: 1 + maxLength: 255 + accountNumber: + type: string + description: Malaysian bank account number + minLength: 1 + maxLength: 34 + example: '1234567890' + swiftCode: + type: string + description: The SWIFT/BIC code of the bank + example: MABORUMMYYY + minLength: 8 + maxLength: 11 + pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ + MyrExternalAccountCreateInfo: + title: MYR Account + allOf: + - $ref: '#/components/schemas/BaseExternalAccountInfo' + - $ref: '#/components/schemas/MyrAccountInfoBase' + - type: object + required: + - beneficiary properties: beneficiary: oneOf: @@ -10164,6 +10359,29 @@ components: mapping: INDIVIDUAL: '#/components/schemas/MyrBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + NgnAccountInfoBase: + type: object + required: + - accountType + - accountNumber + - bankName + properties: + accountType: + type: string + enum: + - NGN_ACCOUNT + accountNumber: + type: string + description: Nigerian bank account number + minLength: 10 + maxLength: 10 + example: '0123456789' + pattern: ^[0-9]{10}$ + bankName: + type: string + description: The name of the bank + minLength: 1 + maxLength: 255 NgnExternalAccountCreateInfo: title: NGN Account allOf: @@ -10184,6 +10402,30 @@ components: mapping: INDIVIDUAL: '#/components/schemas/NgnBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + PhpAccountInfoBase: + type: object + required: + - accountType + - bankName + - accountNumber + properties: + accountType: + type: string + enum: + - PHP_ACCOUNT + bankName: + type: string + description: Name of the beneficiary's bank + minLength: 1 + maxLength: 255 + example: BDO Unibank + accountNumber: + type: string + description: Bank account number + minLength: 8 + maxLength: 16 + example: '001234567890' + pattern: ^[0-9]{8,16}$ PhpExternalAccountCreateInfo: title: PHP Account allOf: @@ -10204,6 +10446,29 @@ components: mapping: INDIVIDUAL: '#/components/schemas/PhpBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + RwfAccountInfoBase: + type: object + required: + - accountType + - phoneNumber + - provider + properties: + accountType: + type: string + enum: + - RWF_ACCOUNT + phoneNumber: + type: string + description: Rwandan mobile money phone number + example: '+250781234567' + minLength: 7 + maxLength: 15 + pattern: ^\+250[0-9]{9}$ + provider: + type: string + description: The mobile money provider name + minLength: 1 + maxLength: 255 RwfExternalAccountCreateInfo: title: RWF Account allOf: @@ -10224,6 +10489,37 @@ components: mapping: INDIVIDUAL: '#/components/schemas/RwfBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + SgdAccountInfoBase: + type: object + required: + - accountType + - bankName + - accountNumber + - swiftCode + properties: + accountType: + type: string + enum: + - SGD_ACCOUNT + bankName: + type: string + description: Name of the beneficiary's bank + minLength: 1 + maxLength: 255 + example: DBS Bank Ltd + accountNumber: + type: string + description: Bank account number + minLength: 1 + maxLength: 34 + example: '0123456789' + swiftCode: + type: string + description: The SWIFT/BIC code of the bank + example: DBSSSGSG + minLength: 8 + maxLength: 11 + pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ SgdExternalAccountCreateInfo: title: SGD Account allOf: @@ -10244,6 +10540,36 @@ components: mapping: INDIVIDUAL: '#/components/schemas/SgdBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + ThbAccountInfoBase: + type: object + required: + - accountType + - bankName + - accountNumber + - swiftCode + properties: + accountType: + type: string + enum: + - THB_ACCOUNT + bankName: + type: string + description: The name of the bank + minLength: 1 + maxLength: 255 + accountNumber: + type: string + description: Thai bank account number + minLength: 1 + maxLength: 34 + example: '1234567890' + swiftCode: + type: string + description: The SWIFT/BIC code of the bank + example: BKKBTHBK + minLength: 8 + maxLength: 11 + pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ ThbExternalAccountCreateInfo: title: THB Account allOf: @@ -10264,6 +10590,29 @@ components: mapping: INDIVIDUAL: '#/components/schemas/ThbBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + TzsAccountInfoBase: + type: object + required: + - accountType + - phoneNumber + - provider + properties: + accountType: + type: string + enum: + - TZS_ACCOUNT + phoneNumber: + type: string + description: Tanzanian mobile money phone number + example: '+255712345678' + minLength: 7 + maxLength: 15 + pattern: ^\+255[0-9]{9}$ + provider: + type: string + description: The mobile money provider name + minLength: 1 + maxLength: 255 TzsExternalAccountCreateInfo: title: TZS Account allOf: @@ -10284,6 +10633,29 @@ components: mapping: INDIVIDUAL: '#/components/schemas/TzsBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + UgxAccountInfoBase: + type: object + required: + - accountType + - phoneNumber + - provider + properties: + accountType: + type: string + enum: + - UGX_ACCOUNT + phoneNumber: + type: string + description: The phone number in international format + example: '+1234567890' + minLength: 7 + maxLength: 15 + pattern: ^\+[0-9]{6,14}$ + provider: + type: string + description: The mobile money provider name + minLength: 1 + maxLength: 255 UgxExternalAccountCreateInfo: title: UGX Account allOf: @@ -10304,6 +10676,29 @@ components: mapping: INDIVIDUAL: '#/components/schemas/UgxBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + UsdAccountInfoBase: + type: object + required: + - accountType + - accountNumber + - routingNumber + properties: + accountType: + type: string + enum: + - USD_ACCOUNT + accountNumber: + type: string + description: The account number of the bank + minLength: 1 + maxLength: 34 + routingNumber: + type: string + description: The ABA routing number + example: '021000021' + minLength: 9 + maxLength: 9 + pattern: ^[0-9]{9}$ UsdExternalAccountCreateInfo: title: USD Account allOf: @@ -10324,6 +10719,36 @@ components: mapping: INDIVIDUAL: '#/components/schemas/UsdBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + VndAccountInfoBase: + type: object + required: + - accountType + - bankName + - accountNumber + - swiftCode + properties: + accountType: + type: string + enum: + - VND_ACCOUNT + bankName: + type: string + description: The name of the bank + minLength: 1 + maxLength: 255 + accountNumber: + type: string + description: Vietnamese bank account number + minLength: 1 + maxLength: 34 + example: '1234567890' + swiftCode: + type: string + description: The SWIFT/BIC code of the bank + example: BFTVVNVX + minLength: 8 + maxLength: 11 + pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ VndExternalAccountCreateInfo: title: VND Account allOf: @@ -10344,6 +10769,39 @@ components: mapping: INDIVIDUAL: '#/components/schemas/VndBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + XafAccountInfoBase: + type: object + required: + - accountType + - phoneNumber + - provider + - region + properties: + accountType: + type: string + enum: + - XAF_ACCOUNT + phoneNumber: + type: string + description: The phone number in international format + example: '+1234567890' + minLength: 7 + maxLength: 15 + pattern: ^\+[0-9]{6,14}$ + provider: + type: string + description: The mobile money provider name + minLength: 1 + maxLength: 255 + region: + type: string + description: Country code within the Central African CFA franc zone + minLength: 2 + maxLength: 2 + pattern: ^[A-Z]{2}$ + enum: + - CM + - CG XafExternalAccountCreateInfo: title: XAF Account allOf: @@ -10364,6 +10822,41 @@ components: mapping: INDIVIDUAL: '#/components/schemas/XafBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + XofAccountInfoBase: + type: object + required: + - accountType + - phoneNumber + - provider + - region + properties: + accountType: + type: string + enum: + - XOF_ACCOUNT + phoneNumber: + type: string + description: The phone number in international format + example: '+1234567890' + minLength: 7 + maxLength: 15 + pattern: ^\+[0-9]{6,14}$ + provider: + type: string + description: The mobile money provider name + minLength: 1 + maxLength: 255 + region: + type: string + description: Country code within the West African CFA franc zone + minLength: 2 + maxLength: 2 + pattern: ^[A-Z]{2}$ + enum: + - BJ + - CI + - SN + - TG XofExternalAccountCreateInfo: title: XOF Account allOf: @@ -10384,6 +10877,29 @@ components: mapping: INDIVIDUAL: '#/components/schemas/XofBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + ZarAccountInfoBase: + type: object + required: + - accountType + - accountNumber + - bankName + properties: + accountType: + type: string + enum: + - ZAR_ACCOUNT + accountNumber: + type: string + description: South African bank account number + minLength: 9 + maxLength: 13 + example: '1234567890' + pattern: ^[0-9]{9,13}$ + bankName: + type: string + description: The name of the bank + minLength: 1 + maxLength: 255 ZarExternalAccountCreateInfo: title: ZAR Account allOf: @@ -10404,6 +10920,29 @@ components: mapping: INDIVIDUAL: '#/components/schemas/ZarBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + ZmwAccountInfoBase: + type: object + required: + - accountType + - phoneNumber + - provider + properties: + accountType: + type: string + enum: + - ZMW_ACCOUNT + phoneNumber: + type: string + description: Zambian mobile money phone number + example: '+260971234567' + minLength: 7 + maxLength: 15 + pattern: ^\+260[0-9]{9}$ + provider: + type: string + description: The mobile money provider name + minLength: 1 + maxLength: 255 ZmwExternalAccountCreateInfo: title: ZMW Account allOf: @@ -10424,6 +10963,43 @@ components: mapping: INDIVIDUAL: '#/components/schemas/ZmwBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + BdtAccountInfoBase: + type: object + required: + - accountType + - accountNumber + - branchCode + - phoneNumber + properties: + accountType: + type: string + enum: + - BDT_ACCOUNT + accountNumber: + type: string + description: The account number of the bank + minLength: 1 + maxLength: 34 + branchCode: + type: string + description: The branch code + minLength: 5 + maxLength: 5 + pattern: ^[0-9]{5}$ + swiftCode: + type: string + description: The SWIFT/BIC code of the bank + example: DEUTDEFF + minLength: 8 + maxLength: 11 + pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ + phoneNumber: + type: string + description: The phone number in international format + example: '+1234567890' + minLength: 7 + maxLength: 15 + pattern: ^\+[0-9]{6,14}$ BdtExternalAccountCreateInfo: title: BDT Account allOf: @@ -10444,6 +11020,36 @@ components: mapping: INDIVIDUAL: '#/components/schemas/BdtBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + CopAccountInfoBase: + type: object + required: + - accountType + - accountNumber + - bankAccountType + - phoneNumber + properties: + accountType: + type: string + enum: + - COP_ACCOUNT + accountNumber: + type: string + description: The account number of the bank + minLength: 1 + maxLength: 34 + bankAccountType: + type: string + description: The bank account type + enum: + - CHECKING + - SAVINGS + phoneNumber: + type: string + description: The phone number in international format + example: '+1234567890' + minLength: 7 + maxLength: 15 + pattern: ^\+[0-9]{6,14}$ CopExternalAccountCreateInfo: title: COP Account allOf: @@ -10464,6 +11070,35 @@ components: mapping: INDIVIDUAL: '#/components/schemas/CopBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + EgpAccountInfoBase: + type: object + required: + - accountType + - accountNumber + properties: + accountType: + type: string + enum: + - EGP_ACCOUNT + accountNumber: + type: string + description: The account number of the bank + minLength: 1 + maxLength: 34 + iban: + type: string + description: The IBAN of the bank account + example: DE89370400440532013000 + minLength: 15 + maxLength: 34 + pattern: ^[A-Z]{2}[0-9]{2}[A-Za-z0-9]{11,30}$ + swiftCode: + type: string + description: The SWIFT/BIC code of the bank + example: DEUTDEFF + minLength: 8 + maxLength: 11 + pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ EgpExternalAccountCreateInfo: title: EGP Account allOf: @@ -10484,6 +11119,29 @@ components: mapping: INDIVIDUAL: '#/components/schemas/EgpBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + GhsAccountInfoBase: + type: object + required: + - accountType + - accountNumber + - phoneNumber + properties: + accountType: + type: string + enum: + - GHS_ACCOUNT + accountNumber: + type: string + description: The account number of the bank + minLength: 1 + maxLength: 34 + phoneNumber: + type: string + description: The phone number in international format + example: '+1234567890' + minLength: 7 + maxLength: 15 + pattern: ^\+[0-9]{6,14}$ GhsExternalAccountCreateInfo: title: GHS Account allOf: @@ -10504,6 +11162,29 @@ components: mapping: INDIVIDUAL: '#/components/schemas/GhsBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + GtqAccountInfoBase: + type: object + required: + - accountType + - accountNumber + - phoneNumber + properties: + accountType: + type: string + enum: + - GTQ_ACCOUNT + accountNumber: + type: string + description: The account number of the bank + minLength: 1 + maxLength: 34 + phoneNumber: + type: string + description: The phone number in international format + example: '+1234567890' + minLength: 7 + maxLength: 15 + pattern: ^\+[0-9]{6,14}$ GtqExternalAccountCreateInfo: title: GTQ Account allOf: @@ -10524,6 +11205,23 @@ components: mapping: INDIVIDUAL: '#/components/schemas/GtqBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + HtgAccountInfoBase: + type: object + required: + - accountType + - phoneNumber + properties: + accountType: + type: string + enum: + - HTG_ACCOUNT + phoneNumber: + type: string + description: The phone number in international format + example: '+1234567890' + minLength: 7 + maxLength: 15 + pattern: ^\+[0-9]{6,14}$ HtgExternalAccountCreateInfo: title: HTG Account allOf: @@ -10544,6 +11242,35 @@ components: mapping: INDIVIDUAL: '#/components/schemas/HtgBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + JmdAccountInfoBase: + type: object + required: + - accountType + - accountNumber + - branchCode + - bankAccountType + properties: + accountType: + type: string + enum: + - JMD_ACCOUNT + accountNumber: + type: string + description: The account number of the bank + minLength: 1 + maxLength: 34 + branchCode: + type: string + description: The branch code + minLength: 5 + maxLength: 5 + pattern: ^[0-9]{5}$ + bankAccountType: + type: string + description: The bank account type + enum: + - CHECKING + - SAVINGS JmdExternalAccountCreateInfo: title: JMD Account allOf: @@ -10564,6 +11291,36 @@ components: mapping: INDIVIDUAL: '#/components/schemas/JmdBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + PkrAccountInfoBase: + type: object + required: + - accountType + - accountNumber + - phoneNumber + properties: + accountType: + type: string + enum: + - PKR_ACCOUNT + accountNumber: + type: string + description: The account number of the bank + minLength: 1 + maxLength: 34 + iban: + type: string + description: The IBAN of the bank account + example: DE89370400440532013000 + minLength: 15 + maxLength: 34 + pattern: ^[A-Z]{2}[0-9]{2}[A-Za-z0-9]{11,30}$ + phoneNumber: + type: string + description: The phone number in international format + example: '+1234567890' + minLength: 7 + maxLength: 15 + pattern: ^\+[0-9]{6,14}$ PkrExternalAccountCreateInfo: title: PKR Account allOf: diff --git a/openapi.yaml b/openapi.yaml index 05338991..7bc9d361 100644 --- a/openapi.yaml +++ b/openapi.yaml @@ -5540,17 +5540,31 @@ components: properties: accountType: $ref: '#/components/schemas/PaymentAccountType' - UsdAccountInfoBase: + UsdAccountInfo: type: object required: - accountType + - paymentRails - accountNumber - routingNumber + - bankName + - phoneNumber properties: accountType: type: string enum: - USD_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - ACH + - WIRE + - RTP + - FEDNOW + - BANK_TRANSFER + - MOBILE_MONEY accountNumber: type: string description: The account number of the bank @@ -5563,23 +5577,18 @@ components: minLength: 9 maxLength: 9 pattern: ^[0-9]{9}$ - UsdAccountInfo: - allOf: - - $ref: '#/components/schemas/UsdAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - ACH - - WIRE - - RTP - - FEDNOW - - BANK_TRANSFER + bankName: + type: string + description: The name of the bank + minLength: 1 + maxLength: 255 + phoneNumber: + type: string + description: The phone number in international format + example: '+1234567890' + minLength: 7 + maxLength: 15 + pattern: ^\+[0-9]{6,14}$ PaymentUsdAccountInfo: title: USD Bank Account allOf: @@ -5609,16 +5618,23 @@ components: type: string description: A PIX QR code payload that can be used to fund the transaction. This can be rendered as a QR code image or pasted into a PIX-compatible banking app. minLength: 1 - MxnAccountInfoBase: + MxnAccountInfo: type: object required: - accountType + - paymentRails - clabeNumber properties: accountType: type: string enum: - MXN_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - SPEI clabeNumber: type: string description: The CLABE number of the bank @@ -5626,19 +5642,6 @@ components: minLength: 18 maxLength: 18 pattern: ^[0-9]{18}$ - MxnAccountInfo: - allOf: - - $ref: '#/components/schemas/MxnAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - SPEI PaymentMxnAccountInfo: title: MXN Account allOf: @@ -5652,16 +5655,24 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - DkkAccountInfoBase: + DkkAccountInfo: type: object required: - accountType + - paymentRails - iban properties: accountType: type: string enum: - DKK_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - SEPA + - SEPA_INSTANT iban: type: string description: The IBAN of the bank account @@ -5676,20 +5687,6 @@ components: minLength: 8 maxLength: 11 pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ - DkkAccountInfo: - allOf: - - $ref: '#/components/schemas/DkkAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - SEPA - - SEPA_INSTANT PaymentDkkAccountInfo: title: DKK Account allOf: @@ -5703,16 +5700,24 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - EurAccountInfoBase: + EurAccountInfo: type: object required: - accountType + - paymentRails - iban properties: accountType: type: string enum: - EUR_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - SEPA + - SEPA_INSTANT iban: type: string description: The IBAN of the bank account @@ -5727,20 +5732,6 @@ components: minLength: 8 maxLength: 11 pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ - EurAccountInfo: - allOf: - - $ref: '#/components/schemas/EurAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - SEPA - - SEPA_INSTANT PaymentEurAccountInfo: title: EUR Account allOf: @@ -5754,16 +5745,23 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - InrAccountInfoBase: + InrAccountInfo: type: object required: - accountType + - paymentRails - vpa properties: accountType: type: string enum: - INR_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - UPI vpa: type: string description: The UPI Virtual Payment Address @@ -5771,28 +5769,16 @@ components: minLength: 3 maxLength: 255 pattern: ^[a-zA-Z0-9.\-_]+@[a-zA-Z0-9]+$ - InrAccountInfo: - allOf: - - $ref: '#/components/schemas/InrAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - UPI PaymentInrAccountInfo: title: INR Account allOf: - $ref: '#/components/schemas/BasePaymentAccountInfo' - $ref: '#/components/schemas/InrAccountInfo' - NgnAccountInfoBase: + NgnAccountInfo: type: object required: - accountType + - paymentRails - accountNumber - bankName properties: @@ -5800,6 +5786,12 @@ components: type: string enum: - NGN_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER accountNumber: type: string description: Nigerian bank account number @@ -5812,19 +5804,6 @@ components: description: The name of the bank minLength: 1 maxLength: 255 - NgnAccountInfo: - allOf: - - $ref: '#/components/schemas/NgnAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - BANK_TRANSFER PaymentNgnAccountInfo: title: NGN Account allOf: @@ -5897,10 +5876,11 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - GbpAccountInfoBase: + GbpAccountInfo: type: object required: - accountType + - paymentRails - sortCode - accountNumber properties: @@ -5908,6 +5888,12 @@ components: type: string enum: - GBP_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - FASTER_PAYMENTS sortCode: type: string description: The UK sort code @@ -5922,19 +5908,6 @@ components: maxLength: 8 example: '12345678' pattern: ^[0-9]{8}$ - GbpAccountInfo: - allOf: - - $ref: '#/components/schemas/GbpAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - FASTER_PAYMENTS PaymentGbpAccountInfo: title: GBP Account allOf: @@ -5948,10 +5921,11 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - HkdAccountInfoBase: + HkdAccountInfo: type: object required: - accountType + - paymentRails - bankName - accountNumber - swiftCode @@ -5960,6 +5934,12 @@ components: type: string enum: - HKD_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER bankName: type: string description: The name of the bank @@ -5978,19 +5958,6 @@ components: minLength: 8 maxLength: 11 pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ - HkdAccountInfo: - allOf: - - $ref: '#/components/schemas/HkdAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - BANK_TRANSFER PaymentHkdAccountInfo: title: HKD Account allOf: @@ -6004,10 +5971,11 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - IdrAccountInfoBase: + IdrAccountInfo: type: object required: - accountType + - paymentRails - bankName - accountNumber - swiftCode @@ -6017,6 +5985,12 @@ components: type: string enum: - IDR_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER bankName: type: string description: The name of the bank @@ -6043,19 +6017,6 @@ components: minLength: 7 maxLength: 15 pattern: ^\+62[0-9]{9,12}$ - IdrAccountInfo: - allOf: - - $ref: '#/components/schemas/IdrAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - BANK_TRANSFER PaymentIdrAccountInfo: title: IDR Account allOf: @@ -6069,10 +6030,11 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - MyrAccountInfoBase: + MyrAccountInfo: type: object required: - accountType + - paymentRails - bankName - accountNumber - swiftCode @@ -6081,6 +6043,12 @@ components: type: string enum: - MYR_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER bankName: type: string description: The name of the bank @@ -6099,19 +6067,6 @@ components: minLength: 8 maxLength: 11 pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ - MyrAccountInfo: - allOf: - - $ref: '#/components/schemas/MyrAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - BANK_TRANSFER PaymentMyrAccountInfo: title: MYR Account allOf: @@ -6125,10 +6080,11 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - PhpAccountInfoBase: + PhpAccountInfo: type: object required: - accountType + - paymentRails - bankName - accountNumber properties: @@ -6136,6 +6092,12 @@ components: type: string enum: - PHP_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER bankName: type: string description: Name of the beneficiary's bank @@ -6149,19 +6111,6 @@ components: maxLength: 16 example: '001234567890' pattern: ^[0-9]{8,16}$ - PhpAccountInfo: - allOf: - - $ref: '#/components/schemas/PhpAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - BANK_TRANSFER PaymentPhpAccountInfo: title: PHP Account allOf: @@ -6175,10 +6124,11 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - SgdAccountInfoBase: + SgdAccountInfo: type: object required: - accountType + - paymentRails - bankName - accountNumber - swiftCode @@ -6187,6 +6137,14 @@ components: type: string enum: - SGD_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - PAYNOW + - FAST + - BANK_TRANSFER bankName: type: string description: Name of the beneficiary's bank @@ -6206,21 +6164,6 @@ components: minLength: 8 maxLength: 11 pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ - SgdAccountInfo: - allOf: - - $ref: '#/components/schemas/SgdAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - PAYNOW - - FAST - - BANK_TRANSFER PaymentSgdAccountInfo: title: SGD Account allOf: @@ -6234,10 +6177,11 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - ThbAccountInfoBase: + ThbAccountInfo: type: object required: - accountType + - paymentRails - bankName - accountNumber - swiftCode @@ -6246,6 +6190,12 @@ components: type: string enum: - THB_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER bankName: type: string description: The name of the bank @@ -6264,36 +6214,24 @@ components: minLength: 8 maxLength: 11 pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ - ThbAccountInfo: + PaymentThbAccountInfo: + title: THB Account allOf: - - $ref: '#/components/schemas/ThbAccountInfoBase' + - $ref: '#/components/schemas/BasePaymentAccountInfo' + - $ref: '#/components/schemas/ThbAccountInfo' - type: object required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - BANK_TRANSFER - PaymentThbAccountInfo: - title: THB Account - allOf: - - $ref: '#/components/schemas/BasePaymentAccountInfo' - - $ref: '#/components/schemas/ThbAccountInfo' - - type: object - required: - - reference + - reference properties: reference: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - VndAccountInfoBase: + VndAccountInfo: type: object required: - accountType + - paymentRails - bankName - accountNumber - swiftCode @@ -6302,6 +6240,12 @@ components: type: string enum: - VND_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER bankName: type: string description: The name of the bank @@ -6320,19 +6264,6 @@ components: minLength: 8 maxLength: 11 pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ - VndAccountInfo: - allOf: - - $ref: '#/components/schemas/VndAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - BANK_TRANSFER PaymentVndAccountInfo: title: VND Account allOf: @@ -6526,16 +6457,23 @@ components: description: Type of asset enum: - USDC - AedAccountInfoBase: + AedAccountInfo: type: object required: - accountType + - paymentRails - iban properties: accountType: type: string enum: - AED_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER iban: type: string description: UAE IBAN (23 characters, starting with AE) @@ -6550,19 +6488,6 @@ components: minLength: 8 maxLength: 11 pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ - AedAccountInfo: - allOf: - - $ref: '#/components/schemas/AedAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - BANK_TRANSFER PaymentAedAccountInfo: title: AED Account allOf: @@ -6576,10 +6501,11 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - KesAccountInfoBase: + KesAccountInfo: type: object required: - accountType + - paymentRails - phoneNumber - provider properties: @@ -6587,6 +6513,12 @@ components: type: string enum: - KES_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - MOBILE_MONEY phoneNumber: type: string description: Kenyan mobile money phone number @@ -6599,19 +6531,6 @@ components: description: The mobile money provider name minLength: 1 maxLength: 255 - KesAccountInfo: - allOf: - - $ref: '#/components/schemas/KesAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - MOBILE_MONEY PaymentKesAccountInfo: title: KES Account allOf: @@ -6625,10 +6544,11 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - MwkAccountInfoBase: + MwkAccountInfo: type: object required: - accountType + - paymentRails - phoneNumber - provider properties: @@ -6636,6 +6556,12 @@ components: type: string enum: - MWK_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - MOBILE_MONEY phoneNumber: type: string description: The phone number in international format @@ -6648,19 +6574,6 @@ components: description: The mobile money provider name minLength: 1 maxLength: 255 - MwkAccountInfo: - allOf: - - $ref: '#/components/schemas/MwkAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - MOBILE_MONEY PaymentMwkAccountInfo: title: MWK Account allOf: @@ -6674,10 +6587,11 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - RwfAccountInfoBase: + RwfAccountInfo: type: object required: - accountType + - paymentRails - phoneNumber - provider properties: @@ -6685,6 +6599,12 @@ components: type: string enum: - RWF_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - MOBILE_MONEY phoneNumber: type: string description: Rwandan mobile money phone number @@ -6697,19 +6617,6 @@ components: description: The mobile money provider name minLength: 1 maxLength: 255 - RwfAccountInfo: - allOf: - - $ref: '#/components/schemas/RwfAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - MOBILE_MONEY PaymentRwfAccountInfo: title: RWF Account allOf: @@ -6723,10 +6630,11 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - TzsAccountInfoBase: + TzsAccountInfo: type: object required: - accountType + - paymentRails - phoneNumber - provider properties: @@ -6734,6 +6642,12 @@ components: type: string enum: - TZS_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - MOBILE_MONEY phoneNumber: type: string description: Tanzanian mobile money phone number @@ -6746,19 +6660,6 @@ components: description: The mobile money provider name minLength: 1 maxLength: 255 - TzsAccountInfo: - allOf: - - $ref: '#/components/schemas/TzsAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - MOBILE_MONEY PaymentTzsAccountInfo: title: TZS Account allOf: @@ -6772,10 +6673,11 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - UgxAccountInfoBase: + UgxAccountInfo: type: object required: - accountType + - paymentRails - phoneNumber - provider properties: @@ -6783,6 +6685,12 @@ components: type: string enum: - UGX_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - MOBILE_MONEY phoneNumber: type: string description: The phone number in international format @@ -6795,19 +6703,6 @@ components: description: The mobile money provider name minLength: 1 maxLength: 255 - UgxAccountInfo: - allOf: - - $ref: '#/components/schemas/UgxAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - MOBILE_MONEY PaymentUgxAccountInfo: title: UGX Account allOf: @@ -6821,10 +6716,11 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - XofAccountInfoBase: + XofAccountInfo: type: object required: - accountType + - paymentRails - phoneNumber - provider - region @@ -6833,6 +6729,12 @@ components: type: string enum: - XOF_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - MOBILE_MONEY phoneNumber: type: string description: The phone number in international format @@ -6856,19 +6758,6 @@ components: - CI - SN - TG - XofAccountInfo: - allOf: - - $ref: '#/components/schemas/XofAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - MOBILE_MONEY PaymentXofAccountInfo: title: XOF Account allOf: @@ -6882,10 +6771,11 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - ZarAccountInfoBase: + ZarAccountInfo: type: object required: - accountType + - paymentRails - accountNumber - bankName properties: @@ -6893,6 +6783,12 @@ components: type: string enum: - ZAR_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER accountNumber: type: string description: South African bank account number @@ -6905,19 +6801,6 @@ components: description: The name of the bank minLength: 1 maxLength: 255 - ZarAccountInfo: - allOf: - - $ref: '#/components/schemas/ZarAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - BANK_TRANSFER PaymentZarAccountInfo: title: ZAR Account allOf: @@ -6931,10 +6814,11 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - ZmwAccountInfoBase: + ZmwAccountInfo: type: object required: - accountType + - paymentRails - phoneNumber - provider properties: @@ -6942,6 +6826,12 @@ components: type: string enum: - ZMW_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - MOBILE_MONEY phoneNumber: type: string description: Zambian mobile money phone number @@ -6954,19 +6844,6 @@ components: description: The mobile money provider name minLength: 1 maxLength: 255 - ZmwAccountInfo: - allOf: - - $ref: '#/components/schemas/ZmwAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - MOBILE_MONEY PaymentZmwAccountInfo: title: ZMW Account allOf: @@ -6980,10 +6857,11 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - BwpAccountInfoBase: + BwpAccountInfo: type: object required: - accountType + - paymentRails - phoneNumber - provider properties: @@ -6991,6 +6869,12 @@ components: type: string enum: - BWP_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - MOBILE_MONEY phoneNumber: type: string description: The phone number in international format @@ -7003,19 +6887,6 @@ components: description: The mobile money provider name minLength: 1 maxLength: 255 - BwpAccountInfo: - allOf: - - $ref: '#/components/schemas/BwpAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - MOBILE_MONEY PaymentBwpAccountInfo: title: BWP Account allOf: @@ -7029,10 +6900,11 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - XafAccountInfoBase: + XafAccountInfo: type: object required: - accountType + - paymentRails - phoneNumber - provider - region @@ -7041,6 +6913,12 @@ components: type: string enum: - XAF_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - MOBILE_MONEY phoneNumber: type: string description: The phone number in international format @@ -7062,19 +6940,6 @@ components: enum: - CM - CG - XafAccountInfo: - allOf: - - $ref: '#/components/schemas/XafAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - MOBILE_MONEY PaymentXafAccountInfo: title: XAF Account allOf: @@ -7088,10 +6953,12 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - BdtAccountInfoBase: + BdtAccountInfo: type: object required: - accountType + - paymentRails + - bankName - accountNumber - branchCode - phoneNumber @@ -7100,6 +6967,18 @@ components: type: string enum: - BDT_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER + - MOBILE_MONEY + bankName: + type: string + description: The name of the bank + minLength: 1 + maxLength: 255 accountNumber: type: string description: The account number of the bank @@ -7125,20 +7004,6 @@ components: minLength: 7 maxLength: 15 pattern: ^\+[0-9]{6,14}$ - BdtAccountInfo: - allOf: - - $ref: '#/components/schemas/BdtAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - BANK_TRANSFER - - MOBILE_MONEY PaymentBdtAccountInfo: title: BDT Account allOf: @@ -7188,16 +7053,29 @@ components: format: uri description: A payment URL where the customer can complete their COP deposit. example: https://payments.example.com/t/abc123 - EgpAccountInfoBase: + EgpAccountInfo: type: object required: - accountType + - paymentRails + - bankName - accountNumber properties: accountType: type: string enum: - EGP_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER + bankName: + type: string + description: The name of the bank + minLength: 1 + maxLength: 255 accountNumber: type: string description: The account number of the bank @@ -7217,19 +7095,6 @@ components: minLength: 8 maxLength: 11 pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ - EgpAccountInfo: - allOf: - - $ref: '#/components/schemas/EgpAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - BANK_TRANSFER PaymentEgpAccountInfo: title: EGP Account allOf: @@ -7243,10 +7108,12 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - GhsAccountInfoBase: + GhsAccountInfo: type: object required: - accountType + - paymentRails + - bankName - accountNumber - phoneNumber properties: @@ -7254,6 +7121,18 @@ components: type: string enum: - GHS_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER + - MOBILE_MONEY + bankName: + type: string + description: The name of the bank + minLength: 1 + maxLength: 255 accountNumber: type: string description: The account number of the bank @@ -7266,20 +7145,6 @@ components: minLength: 7 maxLength: 15 pattern: ^\+[0-9]{6,14}$ - GhsAccountInfo: - allOf: - - $ref: '#/components/schemas/GhsAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - BANK_TRANSFER - - MOBILE_MONEY PaymentGhsAccountInfo: title: GHS Account allOf: @@ -7293,10 +7158,12 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - GtqAccountInfoBase: + GtqAccountInfo: type: object required: - accountType + - paymentRails + - bankName - accountNumber - phoneNumber properties: @@ -7304,6 +7171,18 @@ components: type: string enum: - GTQ_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER + - MOBILE_MONEY + bankName: + type: string + description: The name of the bank + minLength: 1 + maxLength: 255 accountNumber: type: string description: The account number of the bank @@ -7316,20 +7195,6 @@ components: minLength: 7 maxLength: 15 pattern: ^\+[0-9]{6,14}$ - GtqAccountInfo: - allOf: - - $ref: '#/components/schemas/GtqAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - BANK_TRANSFER - - MOBILE_MONEY PaymentGtqAccountInfo: title: GTQ Account allOf: @@ -7343,16 +7208,23 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - HtgAccountInfoBase: + HtgAccountInfo: type: object required: - accountType + - paymentRails - phoneNumber properties: accountType: type: string enum: - HTG_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - MOBILE_MONEY phoneNumber: type: string description: The phone number in international format @@ -7360,19 +7232,6 @@ components: minLength: 7 maxLength: 15 pattern: ^\+[0-9]{6,14}$ - HtgAccountInfo: - allOf: - - $ref: '#/components/schemas/HtgAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - MOBILE_MONEY PaymentHtgAccountInfo: title: HTG Account allOf: @@ -7386,10 +7245,12 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - JmdAccountInfoBase: + JmdAccountInfo: type: object required: - accountType + - paymentRails + - bankName - accountNumber - branchCode - bankAccountType @@ -7398,6 +7259,17 @@ components: type: string enum: - JMD_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER + bankName: + type: string + description: The name of the bank + minLength: 1 + maxLength: 255 accountNumber: type: string description: The account number of the bank @@ -7415,19 +7287,6 @@ components: enum: - CHECKING - SAVINGS - JmdAccountInfo: - allOf: - - $ref: '#/components/schemas/JmdAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - BANK_TRANSFER PaymentJmdAccountInfo: title: JMD Account allOf: @@ -7441,10 +7300,12 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - PkrAccountInfoBase: + PkrAccountInfo: type: object required: - accountType + - paymentRails + - bankName - accountNumber - phoneNumber properties: @@ -7452,6 +7313,18 @@ components: type: string enum: - PKR_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER + - MOBILE_MONEY + bankName: + type: string + description: The name of the bank + minLength: 1 + maxLength: 255 accountNumber: type: string description: The account number of the bank @@ -7471,20 +7344,6 @@ components: minLength: 7 maxLength: 15 pattern: ^\+[0-9]{6,14}$ - PkrAccountInfo: - allOf: - - $ref: '#/components/schemas/PkrAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - BANK_TRANSFER - - MOBILE_MONEY PaymentPkrAccountInfo: title: PKR Account allOf: @@ -7755,10 +7614,11 @@ components: properties: accountType: $ref: '#/components/schemas/ExternalAccountType' - BrlAccountInfoBase: + BrlAccountInfo: type: object required: - accountType + - paymentRails - pixKey - pixKeyType - taxId @@ -7767,6 +7627,12 @@ components: type: string enum: - BRL_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - PIX pixKey: type: string description: The PIX key (email, phone, CPF, CNPJ, or random) @@ -7787,19 +7653,6 @@ components: minLength: 11 maxLength: 14 pattern: ^[0-9]{11,14}$ - BrlAccountInfo: - allOf: - - $ref: '#/components/schemas/BrlAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - PIX BrlBeneficiary: title: Individual Beneficiary type: object @@ -8249,6 +8102,7 @@ components: required: - beneficiaryType - fullName + - nationality properties: beneficiaryType: type: string @@ -8300,6 +8154,7 @@ components: required: - beneficiaryType - fullName + - nationality properties: beneficiaryType: type: string @@ -8453,6 +8308,7 @@ components: required: - beneficiaryType - fullName + - nationality properties: beneficiaryType: type: string @@ -8555,6 +8411,7 @@ components: required: - beneficiaryType - fullName + - nationality properties: beneficiaryType: type: string @@ -8708,6 +8565,7 @@ components: required: - beneficiaryType - fullName + - nationality properties: beneficiaryType: type: string @@ -8759,6 +8617,7 @@ components: required: - beneficiaryType - fullName + - nationality properties: beneficiaryType: type: string @@ -8912,6 +8771,7 @@ components: required: - beneficiaryType - fullName + - nationality properties: beneficiaryType: type: string @@ -8963,6 +8823,7 @@ components: required: - beneficiaryType - fullName + - nationality properties: beneficiaryType: type: string @@ -9014,6 +8875,7 @@ components: required: - beneficiaryType - fullName + - nationality properties: beneficiaryType: type: string @@ -9174,6 +9036,7 @@ components: required: - beneficiaryType - fullName + - nationality properties: beneficiaryType: type: string @@ -9225,6 +9088,7 @@ components: required: - beneficiaryType - fullName + - nationality properties: beneficiaryType: type: string @@ -9321,10 +9185,12 @@ components: mapping: INDIVIDUAL: '#/components/schemas/BdtBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - CopAccountInfoBase: + CopAccountInfo: type: object required: - accountType + - paymentRails + - bankName - accountNumber - bankAccountType - phoneNumber @@ -9333,6 +9199,18 @@ components: type: string enum: - COP_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER + - MOBILE_MONEY + bankName: + type: string + description: The name of the bank + minLength: 1 + maxLength: 255 accountNumber: type: string description: The account number of the bank @@ -9351,20 +9229,6 @@ components: minLength: 7 maxLength: 15 pattern: ^\+[0-9]{6,14}$ - CopAccountInfo: - allOf: - - $ref: '#/components/schemas/CopAccountInfoBase' - - type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - BANK_TRANSFER - - MOBILE_MONEY CopBeneficiary: title: Individual Beneficiary type: object @@ -9884,6 +9748,30 @@ components: totalCount: type: integer description: Total number of external accounts matching the criteria (excluding pagination) + AedAccountInfoBase: + type: object + required: + - accountType + - iban + properties: + accountType: + type: string + enum: + - AED_ACCOUNT + iban: + type: string + description: UAE IBAN (23 characters, starting with AE) + example: AE070331234567890123456 + minLength: 23 + maxLength: 23 + pattern: ^AE[0-9]{21}$ + swiftCode: + type: string + description: The SWIFT/BIC code of the bank + example: EBILAEAD + minLength: 8 + maxLength: 11 + pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ AedExternalAccountCreateInfo: title: AED Account allOf: @@ -9904,6 +9792,38 @@ components: mapping: INDIVIDUAL: '#/components/schemas/AedBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + BrlAccountInfoBase: + type: object + required: + - accountType + - pixKey + - pixKeyType + - taxId + properties: + accountType: + type: string + enum: + - BRL_ACCOUNT + pixKey: + type: string + description: The PIX key (email, phone, CPF, CNPJ, or random) + minLength: 1 + maxLength: 77 + pixKeyType: + type: string + description: The type of PIX key + enum: + - CPF + - CNPJ + - EMAIL + - PHONE + - RANDOM + taxId: + type: string + description: The tax ID (CPF or CNPJ) + minLength: 11 + maxLength: 14 + pattern: ^[0-9]{11,14}$ BrlExternalAccountCreateInfo: title: BRL Account allOf: @@ -9924,9 +9844,32 @@ components: mapping: INDIVIDUAL: '#/components/schemas/BrlBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - BwpExternalAccountCreateInfo: - title: BWP Account - allOf: + BwpAccountInfoBase: + type: object + required: + - accountType + - phoneNumber + - provider + properties: + accountType: + type: string + enum: + - BWP_ACCOUNT + phoneNumber: + type: string + description: The phone number in international format + example: '+1234567890' + minLength: 7 + maxLength: 15 + pattern: ^\+[0-9]{6,14}$ + provider: + type: string + description: The mobile money provider name + minLength: 1 + maxLength: 255 + BwpExternalAccountCreateInfo: + title: BWP Account + allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - $ref: '#/components/schemas/BwpAccountInfoBase' - type: object @@ -9964,6 +9907,30 @@ components: mapping: INDIVIDUAL: '#/components/schemas/CadBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + DkkAccountInfoBase: + type: object + required: + - accountType + - iban + properties: + accountType: + type: string + enum: + - DKK_ACCOUNT + iban: + type: string + description: The IBAN of the bank account + example: DE89370400440532013000 + minLength: 15 + maxLength: 34 + pattern: ^[A-Z]{2}[0-9]{2}[A-Za-z0-9]{11,30}$ + swiftCode: + type: string + description: The SWIFT/BIC code of the bank + example: DEUTDEFF + minLength: 8 + maxLength: 11 + pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ DkkExternalAccountCreateInfo: title: DKK Account allOf: @@ -9984,6 +9951,30 @@ components: mapping: INDIVIDUAL: '#/components/schemas/DkkBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + EurAccountInfoBase: + type: object + required: + - accountType + - iban + properties: + accountType: + type: string + enum: + - EUR_ACCOUNT + iban: + type: string + description: The IBAN of the bank account + example: DE89370400440532013000 + minLength: 15 + maxLength: 34 + pattern: ^[A-Z]{2}[0-9]{2}[A-Za-z0-9]{11,30}$ + swiftCode: + type: string + description: The SWIFT/BIC code of the bank + example: DEUTDEFF + minLength: 8 + maxLength: 11 + pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ EurExternalAccountCreateInfo: title: EUR Account allOf: @@ -10004,6 +9995,31 @@ components: mapping: INDIVIDUAL: '#/components/schemas/EurBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + GbpAccountInfoBase: + type: object + required: + - accountType + - sortCode + - accountNumber + properties: + accountType: + type: string + enum: + - GBP_ACCOUNT + sortCode: + type: string + description: The UK sort code + example: '123456' + minLength: 6 + maxLength: 6 + pattern: ^[0-9]{6}$ + accountNumber: + type: string + description: UK bank account number (8 digits) + minLength: 8 + maxLength: 8 + example: '12345678' + pattern: ^[0-9]{8}$ GbpExternalAccountCreateInfo: title: GBP Account allOf: @@ -10024,6 +10040,36 @@ components: mapping: INDIVIDUAL: '#/components/schemas/GbpBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + HkdAccountInfoBase: + type: object + required: + - accountType + - bankName + - accountNumber + - swiftCode + properties: + accountType: + type: string + enum: + - HKD_ACCOUNT + bankName: + type: string + description: The name of the bank + minLength: 1 + maxLength: 255 + accountNumber: + type: string + description: Hong Kong bank account number + minLength: 1 + maxLength: 34 + example: '123456789012' + swiftCode: + type: string + description: The SWIFT/BIC code of the bank + example: HSBCHKHHHKH + minLength: 8 + maxLength: 11 + pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ HkdExternalAccountCreateInfo: title: HKD Account allOf: @@ -10044,6 +10090,45 @@ components: mapping: INDIVIDUAL: '#/components/schemas/HkdBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + IdrAccountInfoBase: + type: object + required: + - accountType + - bankName + - accountNumber + - swiftCode + - phoneNumber + properties: + accountType: + type: string + enum: + - IDR_ACCOUNT + bankName: + type: string + description: The name of the bank + minLength: 1 + maxLength: 255 + example: Bank Central Asia + accountNumber: + type: string + description: Indonesian bank account number + minLength: 1 + maxLength: 34 + example: '1234567890' + swiftCode: + type: string + description: The SWIFT/BIC code of the bank + example: CENAIDJA + minLength: 8 + maxLength: 11 + pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ + phoneNumber: + type: string + description: Indonesian phone number for e-wallet payments + example: '+6281234567890' + minLength: 7 + maxLength: 15 + pattern: ^\+62[0-9]{9,12}$ IdrExternalAccountCreateInfo: title: IDR Account allOf: @@ -10064,6 +10149,23 @@ components: mapping: INDIVIDUAL: '#/components/schemas/IdrBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + InrAccountInfoBase: + type: object + required: + - accountType + - vpa + properties: + accountType: + type: string + enum: + - INR_ACCOUNT + vpa: + type: string + description: The UPI Virtual Payment Address + example: user@upi + minLength: 3 + maxLength: 255 + pattern: ^[a-zA-Z0-9.\-_]+@[a-zA-Z0-9]+$ InrExternalAccountCreateInfo: title: INR Account allOf: @@ -10084,6 +10186,29 @@ components: mapping: INDIVIDUAL: '#/components/schemas/InrBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + KesAccountInfoBase: + type: object + required: + - accountType + - phoneNumber + - provider + properties: + accountType: + type: string + enum: + - KES_ACCOUNT + phoneNumber: + type: string + description: Kenyan mobile money phone number + example: '+254712345678' + minLength: 7 + maxLength: 15 + pattern: ^\+254[0-9]{9}$ + provider: + type: string + description: The mobile money provider name + minLength: 1 + maxLength: 255 KesExternalAccountCreateInfo: title: KES Account allOf: @@ -10104,6 +10229,29 @@ components: mapping: INDIVIDUAL: '#/components/schemas/KesBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + MwkAccountInfoBase: + type: object + required: + - accountType + - phoneNumber + - provider + properties: + accountType: + type: string + enum: + - MWK_ACCOUNT + phoneNumber: + type: string + description: The phone number in international format + example: '+1234567890' + minLength: 7 + maxLength: 15 + pattern: ^\+[0-9]{6,14}$ + provider: + type: string + description: The mobile money provider name + minLength: 1 + maxLength: 255 MwkExternalAccountCreateInfo: title: MWK Account allOf: @@ -10124,6 +10272,23 @@ components: mapping: INDIVIDUAL: '#/components/schemas/MwkBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + MxnAccountInfoBase: + type: object + required: + - accountType + - clabeNumber + properties: + accountType: + type: string + enum: + - MXN_ACCOUNT + clabeNumber: + type: string + description: The CLABE number of the bank + example: '123456789012345678' + minLength: 18 + maxLength: 18 + pattern: ^[0-9]{18}$ MxnExternalAccountCreateInfo: title: MXN Account allOf: @@ -10144,14 +10309,44 @@ components: mapping: INDIVIDUAL: '#/components/schemas/MxnBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - MyrExternalAccountCreateInfo: - title: MYR Account - allOf: - - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/MyrAccountInfoBase' - - type: object - required: - - beneficiary + MyrAccountInfoBase: + type: object + required: + - accountType + - bankName + - accountNumber + - swiftCode + properties: + accountType: + type: string + enum: + - MYR_ACCOUNT + bankName: + type: string + description: The name of the bank + minLength: 1 + maxLength: 255 + accountNumber: + type: string + description: Malaysian bank account number + minLength: 1 + maxLength: 34 + example: '1234567890' + swiftCode: + type: string + description: The SWIFT/BIC code of the bank + example: MABORUMMYYY + minLength: 8 + maxLength: 11 + pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ + MyrExternalAccountCreateInfo: + title: MYR Account + allOf: + - $ref: '#/components/schemas/BaseExternalAccountInfo' + - $ref: '#/components/schemas/MyrAccountInfoBase' + - type: object + required: + - beneficiary properties: beneficiary: oneOf: @@ -10164,6 +10359,29 @@ components: mapping: INDIVIDUAL: '#/components/schemas/MyrBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + NgnAccountInfoBase: + type: object + required: + - accountType + - accountNumber + - bankName + properties: + accountType: + type: string + enum: + - NGN_ACCOUNT + accountNumber: + type: string + description: Nigerian bank account number + minLength: 10 + maxLength: 10 + example: '0123456789' + pattern: ^[0-9]{10}$ + bankName: + type: string + description: The name of the bank + minLength: 1 + maxLength: 255 NgnExternalAccountCreateInfo: title: NGN Account allOf: @@ -10184,6 +10402,30 @@ components: mapping: INDIVIDUAL: '#/components/schemas/NgnBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + PhpAccountInfoBase: + type: object + required: + - accountType + - bankName + - accountNumber + properties: + accountType: + type: string + enum: + - PHP_ACCOUNT + bankName: + type: string + description: Name of the beneficiary's bank + minLength: 1 + maxLength: 255 + example: BDO Unibank + accountNumber: + type: string + description: Bank account number + minLength: 8 + maxLength: 16 + example: '001234567890' + pattern: ^[0-9]{8,16}$ PhpExternalAccountCreateInfo: title: PHP Account allOf: @@ -10204,6 +10446,29 @@ components: mapping: INDIVIDUAL: '#/components/schemas/PhpBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + RwfAccountInfoBase: + type: object + required: + - accountType + - phoneNumber + - provider + properties: + accountType: + type: string + enum: + - RWF_ACCOUNT + phoneNumber: + type: string + description: Rwandan mobile money phone number + example: '+250781234567' + minLength: 7 + maxLength: 15 + pattern: ^\+250[0-9]{9}$ + provider: + type: string + description: The mobile money provider name + minLength: 1 + maxLength: 255 RwfExternalAccountCreateInfo: title: RWF Account allOf: @@ -10224,6 +10489,37 @@ components: mapping: INDIVIDUAL: '#/components/schemas/RwfBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + SgdAccountInfoBase: + type: object + required: + - accountType + - bankName + - accountNumber + - swiftCode + properties: + accountType: + type: string + enum: + - SGD_ACCOUNT + bankName: + type: string + description: Name of the beneficiary's bank + minLength: 1 + maxLength: 255 + example: DBS Bank Ltd + accountNumber: + type: string + description: Bank account number + minLength: 1 + maxLength: 34 + example: '0123456789' + swiftCode: + type: string + description: The SWIFT/BIC code of the bank + example: DBSSSGSG + minLength: 8 + maxLength: 11 + pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ SgdExternalAccountCreateInfo: title: SGD Account allOf: @@ -10244,6 +10540,36 @@ components: mapping: INDIVIDUAL: '#/components/schemas/SgdBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + ThbAccountInfoBase: + type: object + required: + - accountType + - bankName + - accountNumber + - swiftCode + properties: + accountType: + type: string + enum: + - THB_ACCOUNT + bankName: + type: string + description: The name of the bank + minLength: 1 + maxLength: 255 + accountNumber: + type: string + description: Thai bank account number + minLength: 1 + maxLength: 34 + example: '1234567890' + swiftCode: + type: string + description: The SWIFT/BIC code of the bank + example: BKKBTHBK + minLength: 8 + maxLength: 11 + pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ ThbExternalAccountCreateInfo: title: THB Account allOf: @@ -10264,6 +10590,29 @@ components: mapping: INDIVIDUAL: '#/components/schemas/ThbBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + TzsAccountInfoBase: + type: object + required: + - accountType + - phoneNumber + - provider + properties: + accountType: + type: string + enum: + - TZS_ACCOUNT + phoneNumber: + type: string + description: Tanzanian mobile money phone number + example: '+255712345678' + minLength: 7 + maxLength: 15 + pattern: ^\+255[0-9]{9}$ + provider: + type: string + description: The mobile money provider name + minLength: 1 + maxLength: 255 TzsExternalAccountCreateInfo: title: TZS Account allOf: @@ -10284,6 +10633,29 @@ components: mapping: INDIVIDUAL: '#/components/schemas/TzsBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + UgxAccountInfoBase: + type: object + required: + - accountType + - phoneNumber + - provider + properties: + accountType: + type: string + enum: + - UGX_ACCOUNT + phoneNumber: + type: string + description: The phone number in international format + example: '+1234567890' + minLength: 7 + maxLength: 15 + pattern: ^\+[0-9]{6,14}$ + provider: + type: string + description: The mobile money provider name + minLength: 1 + maxLength: 255 UgxExternalAccountCreateInfo: title: UGX Account allOf: @@ -10304,6 +10676,29 @@ components: mapping: INDIVIDUAL: '#/components/schemas/UgxBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + UsdAccountInfoBase: + type: object + required: + - accountType + - accountNumber + - routingNumber + properties: + accountType: + type: string + enum: + - USD_ACCOUNT + accountNumber: + type: string + description: The account number of the bank + minLength: 1 + maxLength: 34 + routingNumber: + type: string + description: The ABA routing number + example: '021000021' + minLength: 9 + maxLength: 9 + pattern: ^[0-9]{9}$ UsdExternalAccountCreateInfo: title: USD Account allOf: @@ -10324,6 +10719,36 @@ components: mapping: INDIVIDUAL: '#/components/schemas/UsdBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + VndAccountInfoBase: + type: object + required: + - accountType + - bankName + - accountNumber + - swiftCode + properties: + accountType: + type: string + enum: + - VND_ACCOUNT + bankName: + type: string + description: The name of the bank + minLength: 1 + maxLength: 255 + accountNumber: + type: string + description: Vietnamese bank account number + minLength: 1 + maxLength: 34 + example: '1234567890' + swiftCode: + type: string + description: The SWIFT/BIC code of the bank + example: BFTVVNVX + minLength: 8 + maxLength: 11 + pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ VndExternalAccountCreateInfo: title: VND Account allOf: @@ -10344,6 +10769,39 @@ components: mapping: INDIVIDUAL: '#/components/schemas/VndBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + XafAccountInfoBase: + type: object + required: + - accountType + - phoneNumber + - provider + - region + properties: + accountType: + type: string + enum: + - XAF_ACCOUNT + phoneNumber: + type: string + description: The phone number in international format + example: '+1234567890' + minLength: 7 + maxLength: 15 + pattern: ^\+[0-9]{6,14}$ + provider: + type: string + description: The mobile money provider name + minLength: 1 + maxLength: 255 + region: + type: string + description: Country code within the Central African CFA franc zone + minLength: 2 + maxLength: 2 + pattern: ^[A-Z]{2}$ + enum: + - CM + - CG XafExternalAccountCreateInfo: title: XAF Account allOf: @@ -10364,6 +10822,41 @@ components: mapping: INDIVIDUAL: '#/components/schemas/XafBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + XofAccountInfoBase: + type: object + required: + - accountType + - phoneNumber + - provider + - region + properties: + accountType: + type: string + enum: + - XOF_ACCOUNT + phoneNumber: + type: string + description: The phone number in international format + example: '+1234567890' + minLength: 7 + maxLength: 15 + pattern: ^\+[0-9]{6,14}$ + provider: + type: string + description: The mobile money provider name + minLength: 1 + maxLength: 255 + region: + type: string + description: Country code within the West African CFA franc zone + minLength: 2 + maxLength: 2 + pattern: ^[A-Z]{2}$ + enum: + - BJ + - CI + - SN + - TG XofExternalAccountCreateInfo: title: XOF Account allOf: @@ -10384,6 +10877,29 @@ components: mapping: INDIVIDUAL: '#/components/schemas/XofBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + ZarAccountInfoBase: + type: object + required: + - accountType + - accountNumber + - bankName + properties: + accountType: + type: string + enum: + - ZAR_ACCOUNT + accountNumber: + type: string + description: South African bank account number + minLength: 9 + maxLength: 13 + example: '1234567890' + pattern: ^[0-9]{9,13}$ + bankName: + type: string + description: The name of the bank + minLength: 1 + maxLength: 255 ZarExternalAccountCreateInfo: title: ZAR Account allOf: @@ -10404,6 +10920,29 @@ components: mapping: INDIVIDUAL: '#/components/schemas/ZarBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + ZmwAccountInfoBase: + type: object + required: + - accountType + - phoneNumber + - provider + properties: + accountType: + type: string + enum: + - ZMW_ACCOUNT + phoneNumber: + type: string + description: Zambian mobile money phone number + example: '+260971234567' + minLength: 7 + maxLength: 15 + pattern: ^\+260[0-9]{9}$ + provider: + type: string + description: The mobile money provider name + minLength: 1 + maxLength: 255 ZmwExternalAccountCreateInfo: title: ZMW Account allOf: @@ -10424,6 +10963,43 @@ components: mapping: INDIVIDUAL: '#/components/schemas/ZmwBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + BdtAccountInfoBase: + type: object + required: + - accountType + - accountNumber + - branchCode + - phoneNumber + properties: + accountType: + type: string + enum: + - BDT_ACCOUNT + accountNumber: + type: string + description: The account number of the bank + minLength: 1 + maxLength: 34 + branchCode: + type: string + description: The branch code + minLength: 5 + maxLength: 5 + pattern: ^[0-9]{5}$ + swiftCode: + type: string + description: The SWIFT/BIC code of the bank + example: DEUTDEFF + minLength: 8 + maxLength: 11 + pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ + phoneNumber: + type: string + description: The phone number in international format + example: '+1234567890' + minLength: 7 + maxLength: 15 + pattern: ^\+[0-9]{6,14}$ BdtExternalAccountCreateInfo: title: BDT Account allOf: @@ -10444,6 +11020,36 @@ components: mapping: INDIVIDUAL: '#/components/schemas/BdtBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + CopAccountInfoBase: + type: object + required: + - accountType + - accountNumber + - bankAccountType + - phoneNumber + properties: + accountType: + type: string + enum: + - COP_ACCOUNT + accountNumber: + type: string + description: The account number of the bank + minLength: 1 + maxLength: 34 + bankAccountType: + type: string + description: The bank account type + enum: + - CHECKING + - SAVINGS + phoneNumber: + type: string + description: The phone number in international format + example: '+1234567890' + minLength: 7 + maxLength: 15 + pattern: ^\+[0-9]{6,14}$ CopExternalAccountCreateInfo: title: COP Account allOf: @@ -10464,6 +11070,35 @@ components: mapping: INDIVIDUAL: '#/components/schemas/CopBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + EgpAccountInfoBase: + type: object + required: + - accountType + - accountNumber + properties: + accountType: + type: string + enum: + - EGP_ACCOUNT + accountNumber: + type: string + description: The account number of the bank + minLength: 1 + maxLength: 34 + iban: + type: string + description: The IBAN of the bank account + example: DE89370400440532013000 + minLength: 15 + maxLength: 34 + pattern: ^[A-Z]{2}[0-9]{2}[A-Za-z0-9]{11,30}$ + swiftCode: + type: string + description: The SWIFT/BIC code of the bank + example: DEUTDEFF + minLength: 8 + maxLength: 11 + pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ EgpExternalAccountCreateInfo: title: EGP Account allOf: @@ -10484,6 +11119,29 @@ components: mapping: INDIVIDUAL: '#/components/schemas/EgpBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + GhsAccountInfoBase: + type: object + required: + - accountType + - accountNumber + - phoneNumber + properties: + accountType: + type: string + enum: + - GHS_ACCOUNT + accountNumber: + type: string + description: The account number of the bank + minLength: 1 + maxLength: 34 + phoneNumber: + type: string + description: The phone number in international format + example: '+1234567890' + minLength: 7 + maxLength: 15 + pattern: ^\+[0-9]{6,14}$ GhsExternalAccountCreateInfo: title: GHS Account allOf: @@ -10504,6 +11162,29 @@ components: mapping: INDIVIDUAL: '#/components/schemas/GhsBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + GtqAccountInfoBase: + type: object + required: + - accountType + - accountNumber + - phoneNumber + properties: + accountType: + type: string + enum: + - GTQ_ACCOUNT + accountNumber: + type: string + description: The account number of the bank + minLength: 1 + maxLength: 34 + phoneNumber: + type: string + description: The phone number in international format + example: '+1234567890' + minLength: 7 + maxLength: 15 + pattern: ^\+[0-9]{6,14}$ GtqExternalAccountCreateInfo: title: GTQ Account allOf: @@ -10524,6 +11205,23 @@ components: mapping: INDIVIDUAL: '#/components/schemas/GtqBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + HtgAccountInfoBase: + type: object + required: + - accountType + - phoneNumber + properties: + accountType: + type: string + enum: + - HTG_ACCOUNT + phoneNumber: + type: string + description: The phone number in international format + example: '+1234567890' + minLength: 7 + maxLength: 15 + pattern: ^\+[0-9]{6,14}$ HtgExternalAccountCreateInfo: title: HTG Account allOf: @@ -10544,6 +11242,35 @@ components: mapping: INDIVIDUAL: '#/components/schemas/HtgBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + JmdAccountInfoBase: + type: object + required: + - accountType + - accountNumber + - branchCode + - bankAccountType + properties: + accountType: + type: string + enum: + - JMD_ACCOUNT + accountNumber: + type: string + description: The account number of the bank + minLength: 1 + maxLength: 34 + branchCode: + type: string + description: The branch code + minLength: 5 + maxLength: 5 + pattern: ^[0-9]{5}$ + bankAccountType: + type: string + description: The bank account type + enum: + - CHECKING + - SAVINGS JmdExternalAccountCreateInfo: title: JMD Account allOf: @@ -10564,6 +11291,36 @@ components: mapping: INDIVIDUAL: '#/components/schemas/JmdBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + PkrAccountInfoBase: + type: object + required: + - accountType + - accountNumber + - phoneNumber + properties: + accountType: + type: string + enum: + - PKR_ACCOUNT + accountNumber: + type: string + description: The account number of the bank + minLength: 1 + maxLength: 34 + iban: + type: string + description: The IBAN of the bank account + example: DE89370400440532013000 + minLength: 15 + maxLength: 34 + pattern: ^[A-Z]{2}[0-9]{2}[A-Za-z0-9]{11,30}$ + phoneNumber: + type: string + description: The phone number in international format + example: '+1234567890' + minLength: 7 + maxLength: 15 + pattern: ^\+[0-9]{6,14}$ PkrExternalAccountCreateInfo: title: PKR Account allOf: diff --git a/openapi/components/schemas/common/AedAccountInfo.yaml b/openapi/components/schemas/common/AedAccountInfo.yaml index fd73ae83..663171a5 100644 --- a/openapi/components/schemas/common/AedAccountInfo.yaml +++ b/openapi/components/schemas/common/AedAccountInfo.yaml @@ -1,12 +1,30 @@ -allOf: -- $ref: ./AedAccountInfoBase.yaml -- type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - BANK_TRANSFER +type: object +required: +- accountType +- paymentRails +- iban +properties: + accountType: + type: string + enum: + - AED_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER + iban: + type: string + description: UAE IBAN (23 characters, starting with AE) + example: AE070331234567890123456 + minLength: 23 + maxLength: 23 + pattern: ^AE[0-9]{21}$ + swiftCode: + type: string + description: The SWIFT/BIC code of the bank + example: EBILAEAD + minLength: 8 + maxLength: 11 + pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ diff --git a/openapi/components/schemas/common/BdtAccountInfo.yaml b/openapi/components/schemas/common/BdtAccountInfo.yaml index abef8be7..5d904c17 100644 --- a/openapi/components/schemas/common/BdtAccountInfo.yaml +++ b/openapi/components/schemas/common/BdtAccountInfo.yaml @@ -1,13 +1,50 @@ -allOf: -- $ref: ./BdtAccountInfoBase.yaml -- type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - BANK_TRANSFER - - MOBILE_MONEY +type: object +required: +- accountType +- paymentRails +- bankName +- accountNumber +- branchCode +- phoneNumber +properties: + accountType: + type: string + enum: + - BDT_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER + - MOBILE_MONEY + bankName: + type: string + description: The name of the bank + minLength: 1 + maxLength: 255 + accountNumber: + type: string + description: The account number of the bank + minLength: 1 + maxLength: 34 + branchCode: + type: string + description: The branch code + minLength: 5 + maxLength: 5 + pattern: ^[0-9]{5}$ + swiftCode: + type: string + description: The SWIFT/BIC code of the bank + example: DEUTDEFF + minLength: 8 + maxLength: 11 + pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ + phoneNumber: + type: string + description: The phone number in international format + example: '+1234567890' + minLength: 7 + maxLength: 15 + pattern: ^\+[0-9]{6,14}$ diff --git a/openapi/components/schemas/common/BrlAccountInfo.yaml b/openapi/components/schemas/common/BrlAccountInfo.yaml index 8d307bbd..f3c2a60f 100644 --- a/openapi/components/schemas/common/BrlAccountInfo.yaml +++ b/openapi/components/schemas/common/BrlAccountInfo.yaml @@ -1,12 +1,38 @@ -allOf: -- $ref: ./BrlAccountInfoBase.yaml -- type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - PIX +type: object +required: +- accountType +- paymentRails +- pixKey +- pixKeyType +- taxId +properties: + accountType: + type: string + enum: + - BRL_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - PIX + pixKey: + type: string + description: The PIX key (email, phone, CPF, CNPJ, or random) + minLength: 1 + maxLength: 77 + pixKeyType: + type: string + description: The type of PIX key + enum: + - CPF + - CNPJ + - EMAIL + - PHONE + - RANDOM + taxId: + type: string + description: The tax ID (CPF or CNPJ) + minLength: 11 + maxLength: 14 + pattern: ^[0-9]{11,14}$ diff --git a/openapi/components/schemas/common/BwpAccountInfo.yaml b/openapi/components/schemas/common/BwpAccountInfo.yaml index 400ab9de..460dd99c 100644 --- a/openapi/components/schemas/common/BwpAccountInfo.yaml +++ b/openapi/components/schemas/common/BwpAccountInfo.yaml @@ -1,12 +1,29 @@ -allOf: -- $ref: ./BwpAccountInfoBase.yaml -- type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - MOBILE_MONEY +type: object +required: +- accountType +- paymentRails +- phoneNumber +- provider +properties: + accountType: + type: string + enum: + - BWP_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - MOBILE_MONEY + phoneNumber: + type: string + description: The phone number in international format + example: '+1234567890' + minLength: 7 + maxLength: 15 + pattern: ^\+[0-9]{6,14}$ + provider: + type: string + description: The mobile money provider name + minLength: 1 + maxLength: 255 diff --git a/openapi/components/schemas/common/BwpBeneficiary.yaml b/openapi/components/schemas/common/BwpBeneficiary.yaml index d9332d63..7850215f 100644 --- a/openapi/components/schemas/common/BwpBeneficiary.yaml +++ b/openapi/components/schemas/common/BwpBeneficiary.yaml @@ -3,6 +3,7 @@ type: object required: - beneficiaryType - fullName +- nationality properties: beneficiaryType: type: string diff --git a/openapi/components/schemas/common/CopAccountInfo.yaml b/openapi/components/schemas/common/CopAccountInfo.yaml index e16c7af9..dd8ad59c 100644 --- a/openapi/components/schemas/common/CopAccountInfo.yaml +++ b/openapi/components/schemas/common/CopAccountInfo.yaml @@ -1,13 +1,43 @@ -allOf: -- $ref: ./CopAccountInfoBase.yaml -- type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - BANK_TRANSFER - - MOBILE_MONEY +type: object +required: +- accountType +- paymentRails +- bankName +- accountNumber +- bankAccountType +- phoneNumber +properties: + accountType: + type: string + enum: + - COP_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER + - MOBILE_MONEY + bankName: + type: string + description: The name of the bank + minLength: 1 + maxLength: 255 + accountNumber: + type: string + description: The account number of the bank + minLength: 1 + maxLength: 34 + bankAccountType: + type: string + description: The bank account type + enum: + - CHECKING + - SAVINGS + phoneNumber: + type: string + description: The phone number in international format + example: '+1234567890' + minLength: 7 + maxLength: 15 + pattern: ^\+[0-9]{6,14}$ diff --git a/openapi/components/schemas/common/DkkAccountInfo.yaml b/openapi/components/schemas/common/DkkAccountInfo.yaml index 7cd09699..f0117910 100644 --- a/openapi/components/schemas/common/DkkAccountInfo.yaml +++ b/openapi/components/schemas/common/DkkAccountInfo.yaml @@ -1,13 +1,31 @@ -allOf: -- $ref: ./DkkAccountInfoBase.yaml -- type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - SEPA - - SEPA_INSTANT +type: object +required: +- accountType +- paymentRails +- iban +properties: + accountType: + type: string + enum: + - DKK_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - SEPA + - SEPA_INSTANT + iban: + type: string + description: The IBAN of the bank account + example: DE89370400440532013000 + minLength: 15 + maxLength: 34 + pattern: ^[A-Z]{2}[0-9]{2}[A-Za-z0-9]{11,30}$ + swiftCode: + type: string + description: The SWIFT/BIC code of the bank + example: DEUTDEFF + minLength: 8 + maxLength: 11 + pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ diff --git a/openapi/components/schemas/common/EgpAccountInfo.yaml b/openapi/components/schemas/common/EgpAccountInfo.yaml index a9e27046..5403010c 100644 --- a/openapi/components/schemas/common/EgpAccountInfo.yaml +++ b/openapi/components/schemas/common/EgpAccountInfo.yaml @@ -1,12 +1,41 @@ -allOf: -- $ref: ./EgpAccountInfoBase.yaml -- type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - BANK_TRANSFER +type: object +required: +- accountType +- paymentRails +- bankName +- accountNumber +properties: + accountType: + type: string + enum: + - EGP_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER + bankName: + type: string + description: The name of the bank + minLength: 1 + maxLength: 255 + accountNumber: + type: string + description: The account number of the bank + minLength: 1 + maxLength: 34 + iban: + type: string + description: The IBAN of the bank account + example: DE89370400440532013000 + minLength: 15 + maxLength: 34 + pattern: ^[A-Z]{2}[0-9]{2}[A-Za-z0-9]{11,30}$ + swiftCode: + type: string + description: The SWIFT/BIC code of the bank + example: DEUTDEFF + minLength: 8 + maxLength: 11 + pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ diff --git a/openapi/components/schemas/common/EurAccountInfo.yaml b/openapi/components/schemas/common/EurAccountInfo.yaml index 26858d18..ea495f5a 100644 --- a/openapi/components/schemas/common/EurAccountInfo.yaml +++ b/openapi/components/schemas/common/EurAccountInfo.yaml @@ -1,13 +1,31 @@ -allOf: -- $ref: ./EurAccountInfoBase.yaml -- type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - SEPA - - SEPA_INSTANT +type: object +required: +- accountType +- paymentRails +- iban +properties: + accountType: + type: string + enum: + - EUR_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - SEPA + - SEPA_INSTANT + iban: + type: string + description: The IBAN of the bank account + example: DE89370400440532013000 + minLength: 15 + maxLength: 34 + pattern: ^[A-Z]{2}[0-9]{2}[A-Za-z0-9]{11,30}$ + swiftCode: + type: string + description: The SWIFT/BIC code of the bank + example: DEUTDEFF + minLength: 8 + maxLength: 11 + pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ diff --git a/openapi/components/schemas/common/GbpAccountInfo.yaml b/openapi/components/schemas/common/GbpAccountInfo.yaml index e7c3ba48..d34f7803 100644 --- a/openapi/components/schemas/common/GbpAccountInfo.yaml +++ b/openapi/components/schemas/common/GbpAccountInfo.yaml @@ -1,12 +1,31 @@ -allOf: -- $ref: ./GbpAccountInfoBase.yaml -- type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - FASTER_PAYMENTS +type: object +required: +- accountType +- paymentRails +- sortCode +- accountNumber +properties: + accountType: + type: string + enum: + - GBP_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - FASTER_PAYMENTS + sortCode: + type: string + description: The UK sort code + example: '123456' + minLength: 6 + maxLength: 6 + pattern: ^[0-9]{6}$ + accountNumber: + type: string + description: UK bank account number (8 digits) + minLength: 8 + maxLength: 8 + example: '12345678' + pattern: ^[0-9]{8}$ diff --git a/openapi/components/schemas/common/GhsAccountInfo.yaml b/openapi/components/schemas/common/GhsAccountInfo.yaml index 3ffa38f5..fc89c578 100644 --- a/openapi/components/schemas/common/GhsAccountInfo.yaml +++ b/openapi/components/schemas/common/GhsAccountInfo.yaml @@ -1,13 +1,36 @@ -allOf: -- $ref: ./GhsAccountInfoBase.yaml -- type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - BANK_TRANSFER - - MOBILE_MONEY +type: object +required: +- accountType +- paymentRails +- bankName +- accountNumber +- phoneNumber +properties: + accountType: + type: string + enum: + - GHS_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER + - MOBILE_MONEY + bankName: + type: string + description: The name of the bank + minLength: 1 + maxLength: 255 + accountNumber: + type: string + description: The account number of the bank + minLength: 1 + maxLength: 34 + phoneNumber: + type: string + description: The phone number in international format + example: '+1234567890' + minLength: 7 + maxLength: 15 + pattern: ^\+[0-9]{6,14}$ diff --git a/openapi/components/schemas/common/GtqAccountInfo.yaml b/openapi/components/schemas/common/GtqAccountInfo.yaml index 9cbc2018..a391a9a1 100644 --- a/openapi/components/schemas/common/GtqAccountInfo.yaml +++ b/openapi/components/schemas/common/GtqAccountInfo.yaml @@ -1,13 +1,36 @@ -allOf: -- $ref: ./GtqAccountInfoBase.yaml -- type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - BANK_TRANSFER - - MOBILE_MONEY +type: object +required: +- accountType +- paymentRails +- bankName +- accountNumber +- phoneNumber +properties: + accountType: + type: string + enum: + - GTQ_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER + - MOBILE_MONEY + bankName: + type: string + description: The name of the bank + minLength: 1 + maxLength: 255 + accountNumber: + type: string + description: The account number of the bank + minLength: 1 + maxLength: 34 + phoneNumber: + type: string + description: The phone number in international format + example: '+1234567890' + minLength: 7 + maxLength: 15 + pattern: ^\+[0-9]{6,14}$ diff --git a/openapi/components/schemas/common/HkdAccountInfo.yaml b/openapi/components/schemas/common/HkdAccountInfo.yaml index d2854480..ed477be5 100644 --- a/openapi/components/schemas/common/HkdAccountInfo.yaml +++ b/openapi/components/schemas/common/HkdAccountInfo.yaml @@ -1,12 +1,36 @@ -allOf: -- $ref: ./HkdAccountInfoBase.yaml -- type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - BANK_TRANSFER +type: object +required: +- accountType +- paymentRails +- bankName +- accountNumber +- swiftCode +properties: + accountType: + type: string + enum: + - HKD_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER + bankName: + type: string + description: The name of the bank + minLength: 1 + maxLength: 255 + accountNumber: + type: string + description: Hong Kong bank account number + minLength: 1 + maxLength: 34 + example: '123456789012' + swiftCode: + type: string + description: The SWIFT/BIC code of the bank + example: HSBCHKHHHKH + minLength: 8 + maxLength: 11 + pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ diff --git a/openapi/components/schemas/common/HtgAccountInfo.yaml b/openapi/components/schemas/common/HtgAccountInfo.yaml index 7287cc73..03bc16b9 100644 --- a/openapi/components/schemas/common/HtgAccountInfo.yaml +++ b/openapi/components/schemas/common/HtgAccountInfo.yaml @@ -1,12 +1,23 @@ -allOf: -- $ref: ./HtgAccountInfoBase.yaml -- type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - MOBILE_MONEY +type: object +required: +- accountType +- paymentRails +- phoneNumber +properties: + accountType: + type: string + enum: + - HTG_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - MOBILE_MONEY + phoneNumber: + type: string + description: The phone number in international format + example: '+1234567890' + minLength: 7 + maxLength: 15 + pattern: ^\+[0-9]{6,14}$ diff --git a/openapi/components/schemas/common/IdrAccountInfo.yaml b/openapi/components/schemas/common/IdrAccountInfo.yaml index 20243d4b..0e54e8ef 100644 --- a/openapi/components/schemas/common/IdrAccountInfo.yaml +++ b/openapi/components/schemas/common/IdrAccountInfo.yaml @@ -1,12 +1,45 @@ -allOf: -- $ref: ./IdrAccountInfoBase.yaml -- type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - BANK_TRANSFER +type: object +required: +- accountType +- paymentRails +- bankName +- accountNumber +- swiftCode +- phoneNumber +properties: + accountType: + type: string + enum: + - IDR_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER + bankName: + type: string + description: The name of the bank + minLength: 1 + maxLength: 255 + example: Bank Central Asia + accountNumber: + type: string + description: Indonesian bank account number + minLength: 1 + maxLength: 34 + example: '1234567890' + swiftCode: + type: string + description: The SWIFT/BIC code of the bank + example: CENAIDJA + minLength: 8 + maxLength: 11 + pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ + phoneNumber: + type: string + description: Indonesian phone number for e-wallet payments + example: '+6281234567890' + minLength: 7 + maxLength: 15 + pattern: ^\+62[0-9]{9,12}$ diff --git a/openapi/components/schemas/common/InrAccountInfo.yaml b/openapi/components/schemas/common/InrAccountInfo.yaml index 0ea13547..0d056120 100644 --- a/openapi/components/schemas/common/InrAccountInfo.yaml +++ b/openapi/components/schemas/common/InrAccountInfo.yaml @@ -1,12 +1,23 @@ -allOf: -- $ref: ./InrAccountInfoBase.yaml -- type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - UPI +type: object +required: +- accountType +- paymentRails +- vpa +properties: + accountType: + type: string + enum: + - INR_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - UPI + vpa: + type: string + description: The UPI Virtual Payment Address + example: user@upi + minLength: 3 + maxLength: 255 + pattern: ^[a-zA-Z0-9.\-_]+@[a-zA-Z0-9]+$ diff --git a/openapi/components/schemas/common/JmdAccountInfo.yaml b/openapi/components/schemas/common/JmdAccountInfo.yaml index 6afe803d..752af80f 100644 --- a/openapi/components/schemas/common/JmdAccountInfo.yaml +++ b/openapi/components/schemas/common/JmdAccountInfo.yaml @@ -1,12 +1,41 @@ -allOf: -- $ref: ./JmdAccountInfoBase.yaml -- type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - BANK_TRANSFER +type: object +required: +- accountType +- paymentRails +- bankName +- accountNumber +- branchCode +- bankAccountType +properties: + accountType: + type: string + enum: + - JMD_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER + bankName: + type: string + description: The name of the bank + minLength: 1 + maxLength: 255 + accountNumber: + type: string + description: The account number of the bank + minLength: 1 + maxLength: 34 + branchCode: + type: string + description: The branch code + minLength: 5 + maxLength: 5 + pattern: ^[0-9]{5}$ + bankAccountType: + type: string + description: The bank account type + enum: + - CHECKING + - SAVINGS diff --git a/openapi/components/schemas/common/KesAccountInfo.yaml b/openapi/components/schemas/common/KesAccountInfo.yaml index a80ac6c7..c7c15980 100644 --- a/openapi/components/schemas/common/KesAccountInfo.yaml +++ b/openapi/components/schemas/common/KesAccountInfo.yaml @@ -1,12 +1,29 @@ -allOf: -- $ref: ./KesAccountInfoBase.yaml -- type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - MOBILE_MONEY +type: object +required: +- accountType +- paymentRails +- phoneNumber +- provider +properties: + accountType: + type: string + enum: + - KES_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - MOBILE_MONEY + phoneNumber: + type: string + description: Kenyan mobile money phone number + example: '+254712345678' + minLength: 7 + maxLength: 15 + pattern: ^\+254[0-9]{9}$ + provider: + type: string + description: The mobile money provider name + minLength: 1 + maxLength: 255 diff --git a/openapi/components/schemas/common/KesBeneficiary.yaml b/openapi/components/schemas/common/KesBeneficiary.yaml index d9332d63..7850215f 100644 --- a/openapi/components/schemas/common/KesBeneficiary.yaml +++ b/openapi/components/schemas/common/KesBeneficiary.yaml @@ -3,6 +3,7 @@ type: object required: - beneficiaryType - fullName +- nationality properties: beneficiaryType: type: string diff --git a/openapi/components/schemas/common/MwkAccountInfo.yaml b/openapi/components/schemas/common/MwkAccountInfo.yaml index 9a879f7d..67509ee9 100644 --- a/openapi/components/schemas/common/MwkAccountInfo.yaml +++ b/openapi/components/schemas/common/MwkAccountInfo.yaml @@ -1,12 +1,29 @@ -allOf: -- $ref: ./MwkAccountInfoBase.yaml -- type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - MOBILE_MONEY +type: object +required: +- accountType +- paymentRails +- phoneNumber +- provider +properties: + accountType: + type: string + enum: + - MWK_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - MOBILE_MONEY + phoneNumber: + type: string + description: The phone number in international format + example: '+1234567890' + minLength: 7 + maxLength: 15 + pattern: ^\+[0-9]{6,14}$ + provider: + type: string + description: The mobile money provider name + minLength: 1 + maxLength: 255 diff --git a/openapi/components/schemas/common/MwkBeneficiary.yaml b/openapi/components/schemas/common/MwkBeneficiary.yaml index d9332d63..7850215f 100644 --- a/openapi/components/schemas/common/MwkBeneficiary.yaml +++ b/openapi/components/schemas/common/MwkBeneficiary.yaml @@ -3,6 +3,7 @@ type: object required: - beneficiaryType - fullName +- nationality properties: beneficiaryType: type: string diff --git a/openapi/components/schemas/common/MxnAccountInfo.yaml b/openapi/components/schemas/common/MxnAccountInfo.yaml index 8259c14b..bd86b030 100644 --- a/openapi/components/schemas/common/MxnAccountInfo.yaml +++ b/openapi/components/schemas/common/MxnAccountInfo.yaml @@ -1,12 +1,23 @@ -allOf: -- $ref: ./MxnAccountInfoBase.yaml -- type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - SPEI +type: object +required: +- accountType +- paymentRails +- clabeNumber +properties: + accountType: + type: string + enum: + - MXN_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - SPEI + clabeNumber: + type: string + description: The CLABE number of the bank + example: '123456789012345678' + minLength: 18 + maxLength: 18 + pattern: ^[0-9]{18}$ diff --git a/openapi/components/schemas/common/MyrAccountInfo.yaml b/openapi/components/schemas/common/MyrAccountInfo.yaml index ec5ab5a4..a91c2f5e 100644 --- a/openapi/components/schemas/common/MyrAccountInfo.yaml +++ b/openapi/components/schemas/common/MyrAccountInfo.yaml @@ -1,12 +1,36 @@ -allOf: -- $ref: ./MyrAccountInfoBase.yaml -- type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - BANK_TRANSFER +type: object +required: +- accountType +- paymentRails +- bankName +- accountNumber +- swiftCode +properties: + accountType: + type: string + enum: + - MYR_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER + bankName: + type: string + description: The name of the bank + minLength: 1 + maxLength: 255 + accountNumber: + type: string + description: Malaysian bank account number + minLength: 1 + maxLength: 34 + example: '1234567890' + swiftCode: + type: string + description: The SWIFT/BIC code of the bank + example: MABORUMMYYY + minLength: 8 + maxLength: 11 + pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ diff --git a/openapi/components/schemas/common/NgnAccountInfo.yaml b/openapi/components/schemas/common/NgnAccountInfo.yaml index 6ef441b2..fe0565ab 100644 --- a/openapi/components/schemas/common/NgnAccountInfo.yaml +++ b/openapi/components/schemas/common/NgnAccountInfo.yaml @@ -1,12 +1,29 @@ -allOf: -- $ref: ./NgnAccountInfoBase.yaml -- type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - BANK_TRANSFER +type: object +required: +- accountType +- paymentRails +- accountNumber +- bankName +properties: + accountType: + type: string + enum: + - NGN_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER + accountNumber: + type: string + description: Nigerian bank account number + minLength: 10 + maxLength: 10 + example: '0123456789' + pattern: ^[0-9]{10}$ + bankName: + type: string + description: The name of the bank + minLength: 1 + maxLength: 255 diff --git a/openapi/components/schemas/common/NgnBeneficiary.yaml b/openapi/components/schemas/common/NgnBeneficiary.yaml index d9332d63..7850215f 100644 --- a/openapi/components/schemas/common/NgnBeneficiary.yaml +++ b/openapi/components/schemas/common/NgnBeneficiary.yaml @@ -3,6 +3,7 @@ type: object required: - beneficiaryType - fullName +- nationality properties: beneficiaryType: type: string diff --git a/openapi/components/schemas/common/PhpAccountInfo.yaml b/openapi/components/schemas/common/PhpAccountInfo.yaml index bc3422e1..548f26d5 100644 --- a/openapi/components/schemas/common/PhpAccountInfo.yaml +++ b/openapi/components/schemas/common/PhpAccountInfo.yaml @@ -1,12 +1,30 @@ -allOf: -- $ref: ./PhpAccountInfoBase.yaml -- type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - BANK_TRANSFER +type: object +required: +- accountType +- paymentRails +- bankName +- accountNumber +properties: + accountType: + type: string + enum: + - PHP_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER + bankName: + type: string + description: Name of the beneficiary's bank + minLength: 1 + maxLength: 255 + example: BDO Unibank + accountNumber: + type: string + description: Bank account number + minLength: 8 + maxLength: 16 + example: '001234567890' + pattern: ^[0-9]{8,16}$ diff --git a/openapi/components/schemas/common/PkrAccountInfo.yaml b/openapi/components/schemas/common/PkrAccountInfo.yaml index 059b85c3..871b3b33 100644 --- a/openapi/components/schemas/common/PkrAccountInfo.yaml +++ b/openapi/components/schemas/common/PkrAccountInfo.yaml @@ -1,13 +1,43 @@ -allOf: -- $ref: ./PkrAccountInfoBase.yaml -- type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - BANK_TRANSFER - - MOBILE_MONEY +type: object +required: +- accountType +- paymentRails +- bankName +- accountNumber +- phoneNumber +properties: + accountType: + type: string + enum: + - PKR_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER + - MOBILE_MONEY + bankName: + type: string + description: The name of the bank + minLength: 1 + maxLength: 255 + accountNumber: + type: string + description: The account number of the bank + minLength: 1 + maxLength: 34 + iban: + type: string + description: The IBAN of the bank account + example: DE89370400440532013000 + minLength: 15 + maxLength: 34 + pattern: ^[A-Z]{2}[0-9]{2}[A-Za-z0-9]{11,30}$ + phoneNumber: + type: string + description: The phone number in international format + example: '+1234567890' + minLength: 7 + maxLength: 15 + pattern: ^\+[0-9]{6,14}$ diff --git a/openapi/components/schemas/common/RwfAccountInfo.yaml b/openapi/components/schemas/common/RwfAccountInfo.yaml index 74637bf1..2b86420b 100644 --- a/openapi/components/schemas/common/RwfAccountInfo.yaml +++ b/openapi/components/schemas/common/RwfAccountInfo.yaml @@ -1,12 +1,29 @@ -allOf: -- $ref: ./RwfAccountInfoBase.yaml -- type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - MOBILE_MONEY +type: object +required: +- accountType +- paymentRails +- phoneNumber +- provider +properties: + accountType: + type: string + enum: + - RWF_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - MOBILE_MONEY + phoneNumber: + type: string + description: Rwandan mobile money phone number + example: '+250781234567' + minLength: 7 + maxLength: 15 + pattern: ^\+250[0-9]{9}$ + provider: + type: string + description: The mobile money provider name + minLength: 1 + maxLength: 255 diff --git a/openapi/components/schemas/common/RwfBeneficiary.yaml b/openapi/components/schemas/common/RwfBeneficiary.yaml index d9332d63..7850215f 100644 --- a/openapi/components/schemas/common/RwfBeneficiary.yaml +++ b/openapi/components/schemas/common/RwfBeneficiary.yaml @@ -3,6 +3,7 @@ type: object required: - beneficiaryType - fullName +- nationality properties: beneficiaryType: type: string diff --git a/openapi/components/schemas/common/SgdAccountInfo.yaml b/openapi/components/schemas/common/SgdAccountInfo.yaml index 76e6c192..423e544c 100644 --- a/openapi/components/schemas/common/SgdAccountInfo.yaml +++ b/openapi/components/schemas/common/SgdAccountInfo.yaml @@ -1,14 +1,39 @@ -allOf: -- $ref: ./SgdAccountInfoBase.yaml -- type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - PAYNOW - - FAST - - BANK_TRANSFER +type: object +required: +- accountType +- paymentRails +- bankName +- accountNumber +- swiftCode +properties: + accountType: + type: string + enum: + - SGD_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - PAYNOW + - FAST + - BANK_TRANSFER + bankName: + type: string + description: Name of the beneficiary's bank + minLength: 1 + maxLength: 255 + example: DBS Bank Ltd + accountNumber: + type: string + description: Bank account number + minLength: 1 + maxLength: 34 + example: '0123456789' + swiftCode: + type: string + description: The SWIFT/BIC code of the bank + example: DBSSSGSG + minLength: 8 + maxLength: 11 + pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ diff --git a/openapi/components/schemas/common/ThbAccountInfo.yaml b/openapi/components/schemas/common/ThbAccountInfo.yaml index c75916cb..d75b0d61 100644 --- a/openapi/components/schemas/common/ThbAccountInfo.yaml +++ b/openapi/components/schemas/common/ThbAccountInfo.yaml @@ -1,12 +1,36 @@ -allOf: -- $ref: ./ThbAccountInfoBase.yaml -- type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - BANK_TRANSFER +type: object +required: +- accountType +- paymentRails +- bankName +- accountNumber +- swiftCode +properties: + accountType: + type: string + enum: + - THB_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER + bankName: + type: string + description: The name of the bank + minLength: 1 + maxLength: 255 + accountNumber: + type: string + description: Thai bank account number + minLength: 1 + maxLength: 34 + example: '1234567890' + swiftCode: + type: string + description: The SWIFT/BIC code of the bank + example: BKKBTHBK + minLength: 8 + maxLength: 11 + pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ diff --git a/openapi/components/schemas/common/TzsAccountInfo.yaml b/openapi/components/schemas/common/TzsAccountInfo.yaml index 07f6e1fb..d02b75e4 100644 --- a/openapi/components/schemas/common/TzsAccountInfo.yaml +++ b/openapi/components/schemas/common/TzsAccountInfo.yaml @@ -1,12 +1,29 @@ -allOf: -- $ref: ./TzsAccountInfoBase.yaml -- type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - MOBILE_MONEY +type: object +required: +- accountType +- paymentRails +- phoneNumber +- provider +properties: + accountType: + type: string + enum: + - TZS_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - MOBILE_MONEY + phoneNumber: + type: string + description: Tanzanian mobile money phone number + example: '+255712345678' + minLength: 7 + maxLength: 15 + pattern: ^\+255[0-9]{9}$ + provider: + type: string + description: The mobile money provider name + minLength: 1 + maxLength: 255 diff --git a/openapi/components/schemas/common/TzsBeneficiary.yaml b/openapi/components/schemas/common/TzsBeneficiary.yaml index d9332d63..7850215f 100644 --- a/openapi/components/schemas/common/TzsBeneficiary.yaml +++ b/openapi/components/schemas/common/TzsBeneficiary.yaml @@ -3,6 +3,7 @@ type: object required: - beneficiaryType - fullName +- nationality properties: beneficiaryType: type: string diff --git a/openapi/components/schemas/common/UgxAccountInfo.yaml b/openapi/components/schemas/common/UgxAccountInfo.yaml index c11d0310..9d022398 100644 --- a/openapi/components/schemas/common/UgxAccountInfo.yaml +++ b/openapi/components/schemas/common/UgxAccountInfo.yaml @@ -1,12 +1,29 @@ -allOf: -- $ref: ./UgxAccountInfoBase.yaml -- type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - MOBILE_MONEY +type: object +required: +- accountType +- paymentRails +- phoneNumber +- provider +properties: + accountType: + type: string + enum: + - UGX_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - MOBILE_MONEY + phoneNumber: + type: string + description: The phone number in international format + example: '+1234567890' + minLength: 7 + maxLength: 15 + pattern: ^\+[0-9]{6,14}$ + provider: + type: string + description: The mobile money provider name + minLength: 1 + maxLength: 255 diff --git a/openapi/components/schemas/common/UgxBeneficiary.yaml b/openapi/components/schemas/common/UgxBeneficiary.yaml index d9332d63..7850215f 100644 --- a/openapi/components/schemas/common/UgxBeneficiary.yaml +++ b/openapi/components/schemas/common/UgxBeneficiary.yaml @@ -3,6 +3,7 @@ type: object required: - beneficiaryType - fullName +- nationality properties: beneficiaryType: type: string diff --git a/openapi/components/schemas/common/UsdAccountInfo.yaml b/openapi/components/schemas/common/UsdAccountInfo.yaml index 4d2f9909..ef2c2770 100644 --- a/openapi/components/schemas/common/UsdAccountInfo.yaml +++ b/openapi/components/schemas/common/UsdAccountInfo.yaml @@ -1,16 +1,48 @@ -allOf: -- $ref: ./UsdAccountInfoBase.yaml -- type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - ACH - - WIRE - - RTP - - FEDNOW - - BANK_TRANSFER +type: object +required: +- accountType +- paymentRails +- accountNumber +- routingNumber +- bankName +- phoneNumber +properties: + accountType: + type: string + enum: + - USD_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - ACH + - WIRE + - RTP + - FEDNOW + - BANK_TRANSFER + - MOBILE_MONEY + accountNumber: + type: string + description: The account number of the bank + minLength: 1 + maxLength: 34 + routingNumber: + type: string + description: The ABA routing number + example: '021000021' + minLength: 9 + maxLength: 9 + pattern: ^[0-9]{9}$ + bankName: + type: string + description: The name of the bank + minLength: 1 + maxLength: 255 + phoneNumber: + type: string + description: The phone number in international format + example: '+1234567890' + minLength: 7 + maxLength: 15 + pattern: ^\+[0-9]{6,14}$ diff --git a/openapi/components/schemas/common/VndAccountInfo.yaml b/openapi/components/schemas/common/VndAccountInfo.yaml index b0fdee25..d987aaeb 100644 --- a/openapi/components/schemas/common/VndAccountInfo.yaml +++ b/openapi/components/schemas/common/VndAccountInfo.yaml @@ -1,12 +1,36 @@ -allOf: -- $ref: ./VndAccountInfoBase.yaml -- type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - BANK_TRANSFER +type: object +required: +- accountType +- paymentRails +- bankName +- accountNumber +- swiftCode +properties: + accountType: + type: string + enum: + - VND_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER + bankName: + type: string + description: The name of the bank + minLength: 1 + maxLength: 255 + accountNumber: + type: string + description: Vietnamese bank account number + minLength: 1 + maxLength: 34 + example: '1234567890' + swiftCode: + type: string + description: The SWIFT/BIC code of the bank + example: BFTVVNVX + minLength: 8 + maxLength: 11 + pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ diff --git a/openapi/components/schemas/common/XafAccountInfo.yaml b/openapi/components/schemas/common/XafAccountInfo.yaml index b9e5337c..ed3354e4 100644 --- a/openapi/components/schemas/common/XafAccountInfo.yaml +++ b/openapi/components/schemas/common/XafAccountInfo.yaml @@ -1,12 +1,39 @@ -allOf: -- $ref: ./XafAccountInfoBase.yaml -- type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - MOBILE_MONEY +type: object +required: +- accountType +- paymentRails +- phoneNumber +- provider +- region +properties: + accountType: + type: string + enum: + - XAF_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - MOBILE_MONEY + phoneNumber: + type: string + description: The phone number in international format + example: '+1234567890' + minLength: 7 + maxLength: 15 + pattern: ^\+[0-9]{6,14}$ + provider: + type: string + description: The mobile money provider name + minLength: 1 + maxLength: 255 + region: + type: string + description: Country code within the Central African CFA franc zone + minLength: 2 + maxLength: 2 + pattern: ^[A-Z]{2}$ + enum: + - CM + - CG diff --git a/openapi/components/schemas/common/XafBeneficiary.yaml b/openapi/components/schemas/common/XafBeneficiary.yaml index d9332d63..7850215f 100644 --- a/openapi/components/schemas/common/XafBeneficiary.yaml +++ b/openapi/components/schemas/common/XafBeneficiary.yaml @@ -3,6 +3,7 @@ type: object required: - beneficiaryType - fullName +- nationality properties: beneficiaryType: type: string diff --git a/openapi/components/schemas/common/XofAccountInfo.yaml b/openapi/components/schemas/common/XofAccountInfo.yaml index 218e4e69..dc1f3519 100644 --- a/openapi/components/schemas/common/XofAccountInfo.yaml +++ b/openapi/components/schemas/common/XofAccountInfo.yaml @@ -1,12 +1,41 @@ -allOf: -- $ref: ./XofAccountInfoBase.yaml -- type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - MOBILE_MONEY +type: object +required: +- accountType +- paymentRails +- phoneNumber +- provider +- region +properties: + accountType: + type: string + enum: + - XOF_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - MOBILE_MONEY + phoneNumber: + type: string + description: The phone number in international format + example: '+1234567890' + minLength: 7 + maxLength: 15 + pattern: ^\+[0-9]{6,14}$ + provider: + type: string + description: The mobile money provider name + minLength: 1 + maxLength: 255 + region: + type: string + description: Country code within the West African CFA franc zone + minLength: 2 + maxLength: 2 + pattern: ^[A-Z]{2}$ + enum: + - BJ + - CI + - SN + - TG diff --git a/openapi/components/schemas/common/XofBeneficiary.yaml b/openapi/components/schemas/common/XofBeneficiary.yaml index d9332d63..7850215f 100644 --- a/openapi/components/schemas/common/XofBeneficiary.yaml +++ b/openapi/components/schemas/common/XofBeneficiary.yaml @@ -3,6 +3,7 @@ type: object required: - beneficiaryType - fullName +- nationality properties: beneficiaryType: type: string diff --git a/openapi/components/schemas/common/ZarAccountInfo.yaml b/openapi/components/schemas/common/ZarAccountInfo.yaml index 556e7401..62a6fff0 100644 --- a/openapi/components/schemas/common/ZarAccountInfo.yaml +++ b/openapi/components/schemas/common/ZarAccountInfo.yaml @@ -1,12 +1,29 @@ -allOf: -- $ref: ./ZarAccountInfoBase.yaml -- type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - BANK_TRANSFER +type: object +required: +- accountType +- paymentRails +- accountNumber +- bankName +properties: + accountType: + type: string + enum: + - ZAR_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER + accountNumber: + type: string + description: South African bank account number + minLength: 9 + maxLength: 13 + example: '1234567890' + pattern: ^[0-9]{9,13}$ + bankName: + type: string + description: The name of the bank + minLength: 1 + maxLength: 255 diff --git a/openapi/components/schemas/common/ZarBeneficiary.yaml b/openapi/components/schemas/common/ZarBeneficiary.yaml index d9332d63..7850215f 100644 --- a/openapi/components/schemas/common/ZarBeneficiary.yaml +++ b/openapi/components/schemas/common/ZarBeneficiary.yaml @@ -3,6 +3,7 @@ type: object required: - beneficiaryType - fullName +- nationality properties: beneficiaryType: type: string diff --git a/openapi/components/schemas/common/ZmwAccountInfo.yaml b/openapi/components/schemas/common/ZmwAccountInfo.yaml index 3cce7d88..446d3d34 100644 --- a/openapi/components/schemas/common/ZmwAccountInfo.yaml +++ b/openapi/components/schemas/common/ZmwAccountInfo.yaml @@ -1,12 +1,29 @@ -allOf: -- $ref: ./ZmwAccountInfoBase.yaml -- type: object - required: - - paymentRails - properties: - paymentRails: - type: array - items: - type: string - enum: - - MOBILE_MONEY +type: object +required: +- accountType +- paymentRails +- phoneNumber +- provider +properties: + accountType: + type: string + enum: + - ZMW_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - MOBILE_MONEY + phoneNumber: + type: string + description: Zambian mobile money phone number + example: '+260971234567' + minLength: 7 + maxLength: 15 + pattern: ^\+260[0-9]{9}$ + provider: + type: string + description: The mobile money provider name + minLength: 1 + maxLength: 255 diff --git a/openapi/components/schemas/common/ZmwBeneficiary.yaml b/openapi/components/schemas/common/ZmwBeneficiary.yaml index d9332d63..7850215f 100644 --- a/openapi/components/schemas/common/ZmwBeneficiary.yaml +++ b/openapi/components/schemas/common/ZmwBeneficiary.yaml @@ -3,6 +3,7 @@ type: object required: - beneficiaryType - fullName +- nationality properties: beneficiaryType: type: string