From 5087c68efe91d3db164f3f9370e6db809649c861 Mon Sep 17 00:00:00 2001 From: Jason Wang Date: Wed, 14 Jan 2026 11:23:33 -0800 Subject: [PATCH] Add tazapay bank account types to grid api surface --- mintlify/openapi.yaml | 664 ++++++++++++++++++ openapi.yaml | 664 ++++++++++++++++++ .../common/BankAccountOrWalletType.yaml | 10 + .../schemas/common/BwpAccountInfo.yaml | 32 + .../schemas/common/CadAccountInfo.yaml | 35 + .../schemas/common/GbpAccountInfo.yaml | 28 + .../schemas/common/HkdAccountInfo.yaml | 27 + .../schemas/common/IdrAccountInfo.yaml | 26 + .../schemas/common/MyrAccountInfo.yaml | 24 + .../common/PaymentAccountOrWalletInfo.yaml | 10 + .../schemas/common/PaymentBwpAccountInfo.yaml | 12 + .../schemas/common/PaymentCadAccountInfo.yaml | 12 + .../schemas/common/PaymentGbpAccountInfo.yaml | 12 + .../schemas/common/PaymentHkdAccountInfo.yaml | 12 + .../schemas/common/PaymentIdrAccountInfo.yaml | 12 + .../schemas/common/PaymentMyrAccountInfo.yaml | 12 + .../schemas/common/PaymentPhpAccountInfo.yaml | 12 + .../schemas/common/PaymentSgdAccountInfo.yaml | 12 + .../schemas/common/PaymentThbAccountInfo.yaml | 12 + .../schemas/common/PaymentVndAccountInfo.yaml | 12 + .../schemas/common/PhpAccountInfo.yaml | 24 + .../schemas/common/SgdAccountInfo.yaml | 30 + .../schemas/common/ThbAccountInfo.yaml | 24 + .../schemas/common/VndAccountInfo.yaml | 24 + .../BwpAccountExternalAccountInfo.yaml | 19 + .../CadAccountExternalAccountInfo.yaml | 19 + .../ExternalAccountInfo.yaml | 30 + .../GbpAccountExternalAccountInfo.yaml | 19 + .../HkdAccountExternalAccountInfo.yaml | 19 + .../IdrAccountExternalAccountInfo.yaml | 19 + .../MyrAccountExternalAccountInfo.yaml | 19 + .../PhpAccountExternalAccountInfo.yaml | 19 + .../SgdAccountExternalAccountInfo.yaml | 19 + .../ThbAccountExternalAccountInfo.yaml | 19 + .../VndAccountExternalAccountInfo.yaml | 19 + 35 files changed, 1962 insertions(+) create mode 100644 openapi/components/schemas/common/BwpAccountInfo.yaml create mode 100644 openapi/components/schemas/common/CadAccountInfo.yaml create mode 100644 openapi/components/schemas/common/GbpAccountInfo.yaml create mode 100644 openapi/components/schemas/common/HkdAccountInfo.yaml create mode 100644 openapi/components/schemas/common/IdrAccountInfo.yaml create mode 100644 openapi/components/schemas/common/MyrAccountInfo.yaml create mode 100644 openapi/components/schemas/common/PaymentBwpAccountInfo.yaml create mode 100644 openapi/components/schemas/common/PaymentCadAccountInfo.yaml create mode 100644 openapi/components/schemas/common/PaymentGbpAccountInfo.yaml create mode 100644 openapi/components/schemas/common/PaymentHkdAccountInfo.yaml create mode 100644 openapi/components/schemas/common/PaymentIdrAccountInfo.yaml create mode 100644 openapi/components/schemas/common/PaymentMyrAccountInfo.yaml create mode 100644 openapi/components/schemas/common/PaymentPhpAccountInfo.yaml create mode 100644 openapi/components/schemas/common/PaymentSgdAccountInfo.yaml create mode 100644 openapi/components/schemas/common/PaymentThbAccountInfo.yaml create mode 100644 openapi/components/schemas/common/PaymentVndAccountInfo.yaml create mode 100644 openapi/components/schemas/common/PhpAccountInfo.yaml create mode 100644 openapi/components/schemas/common/SgdAccountInfo.yaml create mode 100644 openapi/components/schemas/common/ThbAccountInfo.yaml create mode 100644 openapi/components/schemas/common/VndAccountInfo.yaml create mode 100644 openapi/components/schemas/external_accounts/BwpAccountExternalAccountInfo.yaml create mode 100644 openapi/components/schemas/external_accounts/CadAccountExternalAccountInfo.yaml create mode 100644 openapi/components/schemas/external_accounts/GbpAccountExternalAccountInfo.yaml create mode 100644 openapi/components/schemas/external_accounts/HkdAccountExternalAccountInfo.yaml create mode 100644 openapi/components/schemas/external_accounts/IdrAccountExternalAccountInfo.yaml create mode 100644 openapi/components/schemas/external_accounts/MyrAccountExternalAccountInfo.yaml create mode 100644 openapi/components/schemas/external_accounts/PhpAccountExternalAccountInfo.yaml create mode 100644 openapi/components/schemas/external_accounts/SgdAccountExternalAccountInfo.yaml create mode 100644 openapi/components/schemas/external_accounts/ThbAccountExternalAccountInfo.yaml create mode 100644 openapi/components/schemas/external_accounts/VndAccountExternalAccountInfo.yaml diff --git a/mintlify/openapi.yaml b/mintlify/openapi.yaml index b8ed0ed..51a91b0 100644 --- a/mintlify/openapi.yaml +++ b/mintlify/openapi.yaml @@ -4690,6 +4690,16 @@ components: FBO: '#/components/schemas/PaymentFboAccountInfo' UPI: '#/components/schemas/PaymentUpiAccountInfo' NGN_ACCOUNT: '#/components/schemas/PaymentNgnAccountInfo' + GBP_ACCOUNT: '#/components/schemas/PaymentGbpAccountInfo' + CAD_ACCOUNT: '#/components/schemas/PaymentCadAccountInfo' + HKD_ACCOUNT: '#/components/schemas/PaymentHkdAccountInfo' + IDR_ACCOUNT: '#/components/schemas/PaymentIdrAccountInfo' + MYR_ACCOUNT: '#/components/schemas/PaymentMyrAccountInfo' + PHP_ACCOUNT: '#/components/schemas/PaymentPhpAccountInfo' + SGD_ACCOUNT: '#/components/schemas/PaymentSgdAccountInfo' + THB_ACCOUNT: '#/components/schemas/PaymentThbAccountInfo' + VND_ACCOUNT: '#/components/schemas/PaymentVndAccountInfo' + BWP_ACCOUNT: '#/components/schemas/PaymentBwpAccountInfo' SPARK_WALLET: '#/components/schemas/PaymentSparkWalletInfo' LIGHTNING: '#/components/schemas/PaymentLightningInvoiceInfo' SOLANA_WALLET: '#/components/schemas/PaymentSolanaWalletInfo' @@ -4879,6 +4889,410 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF + GbpAccountInfo: + type: object + required: + - accountType + - accountNumber + - sortCode + properties: + accountType: + type: string + enum: + - GBP_ACCOUNT + example: GBP_ACCOUNT + accountNumber: + type: string + description: UK bank account number (8 digits) + example: '12345678' + minLength: 8 + maxLength: 8 + pattern: ^[0-9]{8}$ + sortCode: + type: string + description: UK sort code (6 digits, typically formatted as XX-XX-XX) + example: '123456' + minLength: 6 + maxLength: 6 + pattern: ^[0-9]{6}$ + bankName: + type: string + description: Name of the bank + example: Barclays Bank + PaymentGbpAccountInfo: + allOf: + - $ref: '#/components/schemas/PaymentAccountOrWalletInfo' + - $ref: '#/components/schemas/GbpAccountInfo' + required: + - reference + properties: + reference: + type: string + description: Unique reference code that must be included with the payment to properly credit it + example: UMA-Q12345-REF + CadAccountInfo: + type: object + required: + - accountType + - accountNumber + - transitNumber + - institutionNumber + properties: + accountType: + type: string + enum: + - CAD_ACCOUNT + example: CAD_ACCOUNT + accountNumber: + type: string + description: Canadian bank account number (7-12 digits) + example: '1234567' + minLength: 7 + maxLength: 12 + transitNumber: + type: string + description: Transit number (5 digits) identifying the branch + example: '12345' + minLength: 5 + maxLength: 5 + pattern: ^[0-9]{5}$ + institutionNumber: + type: string + description: Institution number (3 digits) identifying the bank + example: '001' + minLength: 3 + maxLength: 3 + pattern: ^[0-9]{3}$ + bankName: + type: string + description: Name of the bank + example: Royal Bank of Canada + PaymentCadAccountInfo: + allOf: + - $ref: '#/components/schemas/PaymentAccountOrWalletInfo' + - $ref: '#/components/schemas/CadAccountInfo' + required: + - reference + properties: + reference: + type: string + description: Unique reference code that must be included with the payment to properly credit it + example: UMA-Q12345-REF + HkdAccountInfo: + type: object + required: + - accountType + - accountNumber + - bankCode + properties: + accountType: + type: string + enum: + - HKD_ACCOUNT + example: HKD_ACCOUNT + accountNumber: + type: string + description: Hong Kong bank account number (9-12 digits) + example: '123456789012' + minLength: 9 + maxLength: 12 + bankCode: + type: string + description: Bank code (3 digits) + example: '004' + minLength: 3 + maxLength: 3 + pattern: ^[0-9]{3}$ + bankName: + type: string + description: Name of the bank + example: HSBC Hong Kong + PaymentHkdAccountInfo: + allOf: + - $ref: '#/components/schemas/PaymentAccountOrWalletInfo' + - $ref: '#/components/schemas/HkdAccountInfo' + required: + - reference + properties: + reference: + type: string + description: Unique reference code that must be included with the payment to properly credit it + example: UMA-Q12345-REF + IdrAccountInfo: + type: object + required: + - accountType + - accountNumber + - bankCode + properties: + accountType: + type: string + enum: + - IDR_ACCOUNT + example: IDR_ACCOUNT + accountNumber: + type: string + description: Indonesian bank account number + example: '1234567890' + minLength: 10 + maxLength: 16 + bankCode: + type: string + description: Bank code (3-4 digits) + example: '014' + minLength: 3 + maxLength: 4 + bankName: + type: string + description: Name of the bank + example: Bank Central Asia + PaymentIdrAccountInfo: + allOf: + - $ref: '#/components/schemas/PaymentAccountOrWalletInfo' + - $ref: '#/components/schemas/IdrAccountInfo' + required: + - reference + properties: + reference: + type: string + description: Unique reference code that must be included with the payment to properly credit it + example: UMA-Q12345-REF + MyrAccountInfo: + type: object + required: + - accountType + - accountNumber + - bankCode + properties: + accountType: + type: string + enum: + - MYR_ACCOUNT + example: MYR_ACCOUNT + accountNumber: + type: string + description: Malaysian bank account number + example: '1234567890' + minLength: 10 + maxLength: 17 + bankCode: + type: string + description: Bank code (e.g., SWIFT BIC or local bank code) + example: MABORB2X + bankName: + type: string + description: Name of the bank + example: Maybank + PaymentMyrAccountInfo: + allOf: + - $ref: '#/components/schemas/PaymentAccountOrWalletInfo' + - $ref: '#/components/schemas/MyrAccountInfo' + required: + - reference + properties: + reference: + type: string + description: Unique reference code that must be included with the payment to properly credit it + example: UMA-Q12345-REF + PhpAccountInfo: + type: object + required: + - accountType + - accountNumber + - bankCode + properties: + accountType: + type: string + enum: + - PHP_ACCOUNT + example: PHP_ACCOUNT + accountNumber: + type: string + description: Philippine bank account number + example: '1234567890' + minLength: 10 + maxLength: 16 + bankCode: + type: string + description: Bank code (SWIFT BIC or InstaPay/PESONet bank code) + example: BABORPH2 + bankName: + type: string + description: Name of the bank + example: Bank of the Philippine Islands + PaymentPhpAccountInfo: + allOf: + - $ref: '#/components/schemas/PaymentAccountOrWalletInfo' + - $ref: '#/components/schemas/PhpAccountInfo' + required: + - reference + properties: + reference: + type: string + description: Unique reference code that must be included with the payment to properly credit it + example: UMA-Q12345-REF + SgdAccountInfo: + type: object + required: + - accountType + - accountNumber + - bankCode + properties: + accountType: + type: string + enum: + - SGD_ACCOUNT + example: SGD_ACCOUNT + accountNumber: + type: string + description: Singapore bank account number + example: '1234567890' + minLength: 9 + maxLength: 14 + bankCode: + type: string + description: Bank code (4 digits) or SWIFT BIC + example: '7339' + branchCode: + type: string + description: Branch code (3 digits) + example: '001' + minLength: 3 + maxLength: 3 + bankName: + type: string + description: Name of the bank + example: DBS Bank + PaymentSgdAccountInfo: + allOf: + - $ref: '#/components/schemas/PaymentAccountOrWalletInfo' + - $ref: '#/components/schemas/SgdAccountInfo' + required: + - reference + properties: + reference: + type: string + description: Unique reference code that must be included with the payment to properly credit it + example: UMA-Q12345-REF + ThbAccountInfo: + type: object + required: + - accountType + - accountNumber + - bankCode + properties: + accountType: + type: string + enum: + - THB_ACCOUNT + example: THB_ACCOUNT + accountNumber: + type: string + description: Thai bank account number (10-12 digits) + example: '1234567890' + minLength: 10 + maxLength: 12 + bankCode: + type: string + description: Bank code (3 digits) or SWIFT BIC + example: '002' + bankName: + type: string + description: Name of the bank + example: Bangkok Bank + PaymentThbAccountInfo: + allOf: + - $ref: '#/components/schemas/PaymentAccountOrWalletInfo' + - $ref: '#/components/schemas/ThbAccountInfo' + required: + - reference + properties: + reference: + type: string + description: Unique reference code that must be included with the payment to properly credit it + example: UMA-Q12345-REF + VndAccountInfo: + type: object + required: + - accountType + - accountNumber + - bankCode + properties: + accountType: + type: string + enum: + - VND_ACCOUNT + example: VND_ACCOUNT + accountNumber: + type: string + description: Vietnamese bank account number + example: '1234567890123' + minLength: 9 + maxLength: 19 + bankCode: + type: string + description: Bank code or SWIFT BIC + example: BFTV + bankName: + type: string + description: Name of the bank + example: Vietcombank + PaymentVndAccountInfo: + allOf: + - $ref: '#/components/schemas/PaymentAccountOrWalletInfo' + - $ref: '#/components/schemas/VndAccountInfo' + required: + - reference + properties: + reference: + type: string + description: Unique reference code that must be included with the payment to properly credit it + example: UMA-Q12345-REF + BwpAccountInfo: + type: object + required: + - accountType + - accountNumber + - branchCode + properties: + accountType: + type: string + enum: + - BWP_ACCOUNT + example: BWP_ACCOUNT + accountNumber: + type: string + description: Botswana bank account number + example: '1234567890' + minLength: 8 + maxLength: 16 + branchCode: + type: string + description: Branch code (6 digits) + example: '123456' + minLength: 6 + maxLength: 6 + swiftBic: + type: string + description: SWIFT/BIC code + example: FIABORPX + minLength: 8 + maxLength: 11 + bankName: + type: string + description: Name of the bank + example: First National Bank Botswana + PaymentBwpAccountInfo: + allOf: + - $ref: '#/components/schemas/PaymentAccountOrWalletInfo' + - $ref: '#/components/schemas/BwpAccountInfo' + required: + - reference + properties: + reference: + type: string + description: Unique reference code that must be included with the payment to properly credit it + example: UMA-Q12345-REF SparkWalletInfo: type: object required: @@ -5013,6 +5427,16 @@ components: - FBO - UPI - NGN_ACCOUNT + - GBP_ACCOUNT + - CAD_ACCOUNT + - HKD_ACCOUNT + - IDR_ACCOUNT + - MYR_ACCOUNT + - PHP_ACCOUNT + - SGD_ACCOUNT + - THB_ACCOUNT + - VND_ACCOUNT + - BWP_ACCOUNT - SPARK_WALLET - LIGHTNING - SOLANA_WALLET @@ -5354,6 +5778,216 @@ components: - OTHER description: Purpose of payment example: GOODS_OR_SERVICES + GbpAccountExternalAccountInfo: + allOf: + - $ref: '#/components/schemas/GbpAccountInfo' + - type: object + required: + - accountType + properties: + accountType: + type: string + enum: + - GBP_ACCOUNT + example: GBP_ACCOUNT + beneficiary: + oneOf: + - $ref: '#/components/schemas/IndividualBeneficiary' + - $ref: '#/components/schemas/BusinessBeneficiary' + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: '#/components/schemas/IndividualBeneficiary' + BUSINESS: '#/components/schemas/BusinessBeneficiary' + CadAccountExternalAccountInfo: + allOf: + - $ref: '#/components/schemas/CadAccountInfo' + - type: object + required: + - accountType + properties: + accountType: + type: string + enum: + - CAD_ACCOUNT + example: CAD_ACCOUNT + beneficiary: + oneOf: + - $ref: '#/components/schemas/IndividualBeneficiary' + - $ref: '#/components/schemas/BusinessBeneficiary' + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: '#/components/schemas/IndividualBeneficiary' + BUSINESS: '#/components/schemas/BusinessBeneficiary' + HkdAccountExternalAccountInfo: + allOf: + - $ref: '#/components/schemas/HkdAccountInfo' + - type: object + required: + - accountType + properties: + accountType: + type: string + enum: + - HKD_ACCOUNT + example: HKD_ACCOUNT + beneficiary: + oneOf: + - $ref: '#/components/schemas/IndividualBeneficiary' + - $ref: '#/components/schemas/BusinessBeneficiary' + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: '#/components/schemas/IndividualBeneficiary' + BUSINESS: '#/components/schemas/BusinessBeneficiary' + IdrAccountExternalAccountInfo: + allOf: + - $ref: '#/components/schemas/IdrAccountInfo' + - type: object + required: + - accountType + properties: + accountType: + type: string + enum: + - IDR_ACCOUNT + example: IDR_ACCOUNT + beneficiary: + oneOf: + - $ref: '#/components/schemas/IndividualBeneficiary' + - $ref: '#/components/schemas/BusinessBeneficiary' + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: '#/components/schemas/IndividualBeneficiary' + BUSINESS: '#/components/schemas/BusinessBeneficiary' + MyrAccountExternalAccountInfo: + allOf: + - $ref: '#/components/schemas/MyrAccountInfo' + - type: object + required: + - accountType + properties: + accountType: + type: string + enum: + - MYR_ACCOUNT + example: MYR_ACCOUNT + beneficiary: + oneOf: + - $ref: '#/components/schemas/IndividualBeneficiary' + - $ref: '#/components/schemas/BusinessBeneficiary' + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: '#/components/schemas/IndividualBeneficiary' + BUSINESS: '#/components/schemas/BusinessBeneficiary' + PhpAccountExternalAccountInfo: + allOf: + - $ref: '#/components/schemas/PhpAccountInfo' + - type: object + required: + - accountType + properties: + accountType: + type: string + enum: + - PHP_ACCOUNT + example: PHP_ACCOUNT + beneficiary: + oneOf: + - $ref: '#/components/schemas/IndividualBeneficiary' + - $ref: '#/components/schemas/BusinessBeneficiary' + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: '#/components/schemas/IndividualBeneficiary' + BUSINESS: '#/components/schemas/BusinessBeneficiary' + SgdAccountExternalAccountInfo: + allOf: + - $ref: '#/components/schemas/SgdAccountInfo' + - type: object + required: + - accountType + properties: + accountType: + type: string + enum: + - SGD_ACCOUNT + example: SGD_ACCOUNT + beneficiary: + oneOf: + - $ref: '#/components/schemas/IndividualBeneficiary' + - $ref: '#/components/schemas/BusinessBeneficiary' + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: '#/components/schemas/IndividualBeneficiary' + BUSINESS: '#/components/schemas/BusinessBeneficiary' + ThbAccountExternalAccountInfo: + allOf: + - $ref: '#/components/schemas/ThbAccountInfo' + - type: object + required: + - accountType + properties: + accountType: + type: string + enum: + - THB_ACCOUNT + example: THB_ACCOUNT + beneficiary: + oneOf: + - $ref: '#/components/schemas/IndividualBeneficiary' + - $ref: '#/components/schemas/BusinessBeneficiary' + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: '#/components/schemas/IndividualBeneficiary' + BUSINESS: '#/components/schemas/BusinessBeneficiary' + VndAccountExternalAccountInfo: + allOf: + - $ref: '#/components/schemas/VndAccountInfo' + - type: object + required: + - accountType + properties: + accountType: + type: string + enum: + - VND_ACCOUNT + example: VND_ACCOUNT + beneficiary: + oneOf: + - $ref: '#/components/schemas/IndividualBeneficiary' + - $ref: '#/components/schemas/BusinessBeneficiary' + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: '#/components/schemas/IndividualBeneficiary' + BUSINESS: '#/components/schemas/BusinessBeneficiary' + BwpAccountExternalAccountInfo: + allOf: + - $ref: '#/components/schemas/BwpAccountInfo' + - type: object + required: + - accountType + properties: + accountType: + type: string + enum: + - BWP_ACCOUNT + example: BWP_ACCOUNT + beneficiary: + oneOf: + - $ref: '#/components/schemas/IndividualBeneficiary' + - $ref: '#/components/schemas/BusinessBeneficiary' + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: '#/components/schemas/IndividualBeneficiary' + BUSINESS: '#/components/schemas/BusinessBeneficiary' SparkWalletExternalAccountInfo: allOf: - $ref: '#/components/schemas/SparkWalletInfo' @@ -5467,6 +6101,26 @@ components: $ref: '#/components/schemas/UpiAccountExternalAccountInfo' - title: NGN Account $ref: '#/components/schemas/NgnAccountExternalAccountInfo' + - title: GBP Account + $ref: '#/components/schemas/GbpAccountExternalAccountInfo' + - title: CAD Account + $ref: '#/components/schemas/CadAccountExternalAccountInfo' + - title: HKD Account + $ref: '#/components/schemas/HkdAccountExternalAccountInfo' + - title: IDR Account + $ref: '#/components/schemas/IdrAccountExternalAccountInfo' + - title: MYR Account + $ref: '#/components/schemas/MyrAccountExternalAccountInfo' + - title: PHP Account + $ref: '#/components/schemas/PhpAccountExternalAccountInfo' + - title: SGD Account + $ref: '#/components/schemas/SgdAccountExternalAccountInfo' + - title: THB Account + $ref: '#/components/schemas/ThbAccountExternalAccountInfo' + - title: VND Account + $ref: '#/components/schemas/VndAccountExternalAccountInfo' + - title: BWP Account + $ref: '#/components/schemas/BwpAccountExternalAccountInfo' - title: Spark Wallet $ref: '#/components/schemas/SparkWalletExternalAccountInfo' - title: Lightning @@ -5488,6 +6142,16 @@ components: IBAN: '#/components/schemas/IbanAccountExternalAccountInfo' UPI: '#/components/schemas/UpiAccountExternalAccountInfo' NGN_ACCOUNT: '#/components/schemas/NgnAccountExternalAccountInfo' + GBP_ACCOUNT: '#/components/schemas/GbpAccountExternalAccountInfo' + CAD_ACCOUNT: '#/components/schemas/CadAccountExternalAccountInfo' + HKD_ACCOUNT: '#/components/schemas/HkdAccountExternalAccountInfo' + IDR_ACCOUNT: '#/components/schemas/IdrAccountExternalAccountInfo' + MYR_ACCOUNT: '#/components/schemas/MyrAccountExternalAccountInfo' + PHP_ACCOUNT: '#/components/schemas/PhpAccountExternalAccountInfo' + SGD_ACCOUNT: '#/components/schemas/SgdAccountExternalAccountInfo' + THB_ACCOUNT: '#/components/schemas/ThbAccountExternalAccountInfo' + VND_ACCOUNT: '#/components/schemas/VndAccountExternalAccountInfo' + BWP_ACCOUNT: '#/components/schemas/BwpAccountExternalAccountInfo' SPARK_WALLET: '#/components/schemas/SparkWalletExternalAccountInfo' LIGHTNING: '#/components/schemas/LightningExternalAccountInfo' SOLANA_WALLET: '#/components/schemas/SolanaWalletExternalAccountInfo' diff --git a/openapi.yaml b/openapi.yaml index b8ed0ed..51a91b0 100644 --- a/openapi.yaml +++ b/openapi.yaml @@ -4690,6 +4690,16 @@ components: FBO: '#/components/schemas/PaymentFboAccountInfo' UPI: '#/components/schemas/PaymentUpiAccountInfo' NGN_ACCOUNT: '#/components/schemas/PaymentNgnAccountInfo' + GBP_ACCOUNT: '#/components/schemas/PaymentGbpAccountInfo' + CAD_ACCOUNT: '#/components/schemas/PaymentCadAccountInfo' + HKD_ACCOUNT: '#/components/schemas/PaymentHkdAccountInfo' + IDR_ACCOUNT: '#/components/schemas/PaymentIdrAccountInfo' + MYR_ACCOUNT: '#/components/schemas/PaymentMyrAccountInfo' + PHP_ACCOUNT: '#/components/schemas/PaymentPhpAccountInfo' + SGD_ACCOUNT: '#/components/schemas/PaymentSgdAccountInfo' + THB_ACCOUNT: '#/components/schemas/PaymentThbAccountInfo' + VND_ACCOUNT: '#/components/schemas/PaymentVndAccountInfo' + BWP_ACCOUNT: '#/components/schemas/PaymentBwpAccountInfo' SPARK_WALLET: '#/components/schemas/PaymentSparkWalletInfo' LIGHTNING: '#/components/schemas/PaymentLightningInvoiceInfo' SOLANA_WALLET: '#/components/schemas/PaymentSolanaWalletInfo' @@ -4879,6 +4889,410 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF + GbpAccountInfo: + type: object + required: + - accountType + - accountNumber + - sortCode + properties: + accountType: + type: string + enum: + - GBP_ACCOUNT + example: GBP_ACCOUNT + accountNumber: + type: string + description: UK bank account number (8 digits) + example: '12345678' + minLength: 8 + maxLength: 8 + pattern: ^[0-9]{8}$ + sortCode: + type: string + description: UK sort code (6 digits, typically formatted as XX-XX-XX) + example: '123456' + minLength: 6 + maxLength: 6 + pattern: ^[0-9]{6}$ + bankName: + type: string + description: Name of the bank + example: Barclays Bank + PaymentGbpAccountInfo: + allOf: + - $ref: '#/components/schemas/PaymentAccountOrWalletInfo' + - $ref: '#/components/schemas/GbpAccountInfo' + required: + - reference + properties: + reference: + type: string + description: Unique reference code that must be included with the payment to properly credit it + example: UMA-Q12345-REF + CadAccountInfo: + type: object + required: + - accountType + - accountNumber + - transitNumber + - institutionNumber + properties: + accountType: + type: string + enum: + - CAD_ACCOUNT + example: CAD_ACCOUNT + accountNumber: + type: string + description: Canadian bank account number (7-12 digits) + example: '1234567' + minLength: 7 + maxLength: 12 + transitNumber: + type: string + description: Transit number (5 digits) identifying the branch + example: '12345' + minLength: 5 + maxLength: 5 + pattern: ^[0-9]{5}$ + institutionNumber: + type: string + description: Institution number (3 digits) identifying the bank + example: '001' + minLength: 3 + maxLength: 3 + pattern: ^[0-9]{3}$ + bankName: + type: string + description: Name of the bank + example: Royal Bank of Canada + PaymentCadAccountInfo: + allOf: + - $ref: '#/components/schemas/PaymentAccountOrWalletInfo' + - $ref: '#/components/schemas/CadAccountInfo' + required: + - reference + properties: + reference: + type: string + description: Unique reference code that must be included with the payment to properly credit it + example: UMA-Q12345-REF + HkdAccountInfo: + type: object + required: + - accountType + - accountNumber + - bankCode + properties: + accountType: + type: string + enum: + - HKD_ACCOUNT + example: HKD_ACCOUNT + accountNumber: + type: string + description: Hong Kong bank account number (9-12 digits) + example: '123456789012' + minLength: 9 + maxLength: 12 + bankCode: + type: string + description: Bank code (3 digits) + example: '004' + minLength: 3 + maxLength: 3 + pattern: ^[0-9]{3}$ + bankName: + type: string + description: Name of the bank + example: HSBC Hong Kong + PaymentHkdAccountInfo: + allOf: + - $ref: '#/components/schemas/PaymentAccountOrWalletInfo' + - $ref: '#/components/schemas/HkdAccountInfo' + required: + - reference + properties: + reference: + type: string + description: Unique reference code that must be included with the payment to properly credit it + example: UMA-Q12345-REF + IdrAccountInfo: + type: object + required: + - accountType + - accountNumber + - bankCode + properties: + accountType: + type: string + enum: + - IDR_ACCOUNT + example: IDR_ACCOUNT + accountNumber: + type: string + description: Indonesian bank account number + example: '1234567890' + minLength: 10 + maxLength: 16 + bankCode: + type: string + description: Bank code (3-4 digits) + example: '014' + minLength: 3 + maxLength: 4 + bankName: + type: string + description: Name of the bank + example: Bank Central Asia + PaymentIdrAccountInfo: + allOf: + - $ref: '#/components/schemas/PaymentAccountOrWalletInfo' + - $ref: '#/components/schemas/IdrAccountInfo' + required: + - reference + properties: + reference: + type: string + description: Unique reference code that must be included with the payment to properly credit it + example: UMA-Q12345-REF + MyrAccountInfo: + type: object + required: + - accountType + - accountNumber + - bankCode + properties: + accountType: + type: string + enum: + - MYR_ACCOUNT + example: MYR_ACCOUNT + accountNumber: + type: string + description: Malaysian bank account number + example: '1234567890' + minLength: 10 + maxLength: 17 + bankCode: + type: string + description: Bank code (e.g., SWIFT BIC or local bank code) + example: MABORB2X + bankName: + type: string + description: Name of the bank + example: Maybank + PaymentMyrAccountInfo: + allOf: + - $ref: '#/components/schemas/PaymentAccountOrWalletInfo' + - $ref: '#/components/schemas/MyrAccountInfo' + required: + - reference + properties: + reference: + type: string + description: Unique reference code that must be included with the payment to properly credit it + example: UMA-Q12345-REF + PhpAccountInfo: + type: object + required: + - accountType + - accountNumber + - bankCode + properties: + accountType: + type: string + enum: + - PHP_ACCOUNT + example: PHP_ACCOUNT + accountNumber: + type: string + description: Philippine bank account number + example: '1234567890' + minLength: 10 + maxLength: 16 + bankCode: + type: string + description: Bank code (SWIFT BIC or InstaPay/PESONet bank code) + example: BABORPH2 + bankName: + type: string + description: Name of the bank + example: Bank of the Philippine Islands + PaymentPhpAccountInfo: + allOf: + - $ref: '#/components/schemas/PaymentAccountOrWalletInfo' + - $ref: '#/components/schemas/PhpAccountInfo' + required: + - reference + properties: + reference: + type: string + description: Unique reference code that must be included with the payment to properly credit it + example: UMA-Q12345-REF + SgdAccountInfo: + type: object + required: + - accountType + - accountNumber + - bankCode + properties: + accountType: + type: string + enum: + - SGD_ACCOUNT + example: SGD_ACCOUNT + accountNumber: + type: string + description: Singapore bank account number + example: '1234567890' + minLength: 9 + maxLength: 14 + bankCode: + type: string + description: Bank code (4 digits) or SWIFT BIC + example: '7339' + branchCode: + type: string + description: Branch code (3 digits) + example: '001' + minLength: 3 + maxLength: 3 + bankName: + type: string + description: Name of the bank + example: DBS Bank + PaymentSgdAccountInfo: + allOf: + - $ref: '#/components/schemas/PaymentAccountOrWalletInfo' + - $ref: '#/components/schemas/SgdAccountInfo' + required: + - reference + properties: + reference: + type: string + description: Unique reference code that must be included with the payment to properly credit it + example: UMA-Q12345-REF + ThbAccountInfo: + type: object + required: + - accountType + - accountNumber + - bankCode + properties: + accountType: + type: string + enum: + - THB_ACCOUNT + example: THB_ACCOUNT + accountNumber: + type: string + description: Thai bank account number (10-12 digits) + example: '1234567890' + minLength: 10 + maxLength: 12 + bankCode: + type: string + description: Bank code (3 digits) or SWIFT BIC + example: '002' + bankName: + type: string + description: Name of the bank + example: Bangkok Bank + PaymentThbAccountInfo: + allOf: + - $ref: '#/components/schemas/PaymentAccountOrWalletInfo' + - $ref: '#/components/schemas/ThbAccountInfo' + required: + - reference + properties: + reference: + type: string + description: Unique reference code that must be included with the payment to properly credit it + example: UMA-Q12345-REF + VndAccountInfo: + type: object + required: + - accountType + - accountNumber + - bankCode + properties: + accountType: + type: string + enum: + - VND_ACCOUNT + example: VND_ACCOUNT + accountNumber: + type: string + description: Vietnamese bank account number + example: '1234567890123' + minLength: 9 + maxLength: 19 + bankCode: + type: string + description: Bank code or SWIFT BIC + example: BFTV + bankName: + type: string + description: Name of the bank + example: Vietcombank + PaymentVndAccountInfo: + allOf: + - $ref: '#/components/schemas/PaymentAccountOrWalletInfo' + - $ref: '#/components/schemas/VndAccountInfo' + required: + - reference + properties: + reference: + type: string + description: Unique reference code that must be included with the payment to properly credit it + example: UMA-Q12345-REF + BwpAccountInfo: + type: object + required: + - accountType + - accountNumber + - branchCode + properties: + accountType: + type: string + enum: + - BWP_ACCOUNT + example: BWP_ACCOUNT + accountNumber: + type: string + description: Botswana bank account number + example: '1234567890' + minLength: 8 + maxLength: 16 + branchCode: + type: string + description: Branch code (6 digits) + example: '123456' + minLength: 6 + maxLength: 6 + swiftBic: + type: string + description: SWIFT/BIC code + example: FIABORPX + minLength: 8 + maxLength: 11 + bankName: + type: string + description: Name of the bank + example: First National Bank Botswana + PaymentBwpAccountInfo: + allOf: + - $ref: '#/components/schemas/PaymentAccountOrWalletInfo' + - $ref: '#/components/schemas/BwpAccountInfo' + required: + - reference + properties: + reference: + type: string + description: Unique reference code that must be included with the payment to properly credit it + example: UMA-Q12345-REF SparkWalletInfo: type: object required: @@ -5013,6 +5427,16 @@ components: - FBO - UPI - NGN_ACCOUNT + - GBP_ACCOUNT + - CAD_ACCOUNT + - HKD_ACCOUNT + - IDR_ACCOUNT + - MYR_ACCOUNT + - PHP_ACCOUNT + - SGD_ACCOUNT + - THB_ACCOUNT + - VND_ACCOUNT + - BWP_ACCOUNT - SPARK_WALLET - LIGHTNING - SOLANA_WALLET @@ -5354,6 +5778,216 @@ components: - OTHER description: Purpose of payment example: GOODS_OR_SERVICES + GbpAccountExternalAccountInfo: + allOf: + - $ref: '#/components/schemas/GbpAccountInfo' + - type: object + required: + - accountType + properties: + accountType: + type: string + enum: + - GBP_ACCOUNT + example: GBP_ACCOUNT + beneficiary: + oneOf: + - $ref: '#/components/schemas/IndividualBeneficiary' + - $ref: '#/components/schemas/BusinessBeneficiary' + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: '#/components/schemas/IndividualBeneficiary' + BUSINESS: '#/components/schemas/BusinessBeneficiary' + CadAccountExternalAccountInfo: + allOf: + - $ref: '#/components/schemas/CadAccountInfo' + - type: object + required: + - accountType + properties: + accountType: + type: string + enum: + - CAD_ACCOUNT + example: CAD_ACCOUNT + beneficiary: + oneOf: + - $ref: '#/components/schemas/IndividualBeneficiary' + - $ref: '#/components/schemas/BusinessBeneficiary' + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: '#/components/schemas/IndividualBeneficiary' + BUSINESS: '#/components/schemas/BusinessBeneficiary' + HkdAccountExternalAccountInfo: + allOf: + - $ref: '#/components/schemas/HkdAccountInfo' + - type: object + required: + - accountType + properties: + accountType: + type: string + enum: + - HKD_ACCOUNT + example: HKD_ACCOUNT + beneficiary: + oneOf: + - $ref: '#/components/schemas/IndividualBeneficiary' + - $ref: '#/components/schemas/BusinessBeneficiary' + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: '#/components/schemas/IndividualBeneficiary' + BUSINESS: '#/components/schemas/BusinessBeneficiary' + IdrAccountExternalAccountInfo: + allOf: + - $ref: '#/components/schemas/IdrAccountInfo' + - type: object + required: + - accountType + properties: + accountType: + type: string + enum: + - IDR_ACCOUNT + example: IDR_ACCOUNT + beneficiary: + oneOf: + - $ref: '#/components/schemas/IndividualBeneficiary' + - $ref: '#/components/schemas/BusinessBeneficiary' + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: '#/components/schemas/IndividualBeneficiary' + BUSINESS: '#/components/schemas/BusinessBeneficiary' + MyrAccountExternalAccountInfo: + allOf: + - $ref: '#/components/schemas/MyrAccountInfo' + - type: object + required: + - accountType + properties: + accountType: + type: string + enum: + - MYR_ACCOUNT + example: MYR_ACCOUNT + beneficiary: + oneOf: + - $ref: '#/components/schemas/IndividualBeneficiary' + - $ref: '#/components/schemas/BusinessBeneficiary' + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: '#/components/schemas/IndividualBeneficiary' + BUSINESS: '#/components/schemas/BusinessBeneficiary' + PhpAccountExternalAccountInfo: + allOf: + - $ref: '#/components/schemas/PhpAccountInfo' + - type: object + required: + - accountType + properties: + accountType: + type: string + enum: + - PHP_ACCOUNT + example: PHP_ACCOUNT + beneficiary: + oneOf: + - $ref: '#/components/schemas/IndividualBeneficiary' + - $ref: '#/components/schemas/BusinessBeneficiary' + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: '#/components/schemas/IndividualBeneficiary' + BUSINESS: '#/components/schemas/BusinessBeneficiary' + SgdAccountExternalAccountInfo: + allOf: + - $ref: '#/components/schemas/SgdAccountInfo' + - type: object + required: + - accountType + properties: + accountType: + type: string + enum: + - SGD_ACCOUNT + example: SGD_ACCOUNT + beneficiary: + oneOf: + - $ref: '#/components/schemas/IndividualBeneficiary' + - $ref: '#/components/schemas/BusinessBeneficiary' + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: '#/components/schemas/IndividualBeneficiary' + BUSINESS: '#/components/schemas/BusinessBeneficiary' + ThbAccountExternalAccountInfo: + allOf: + - $ref: '#/components/schemas/ThbAccountInfo' + - type: object + required: + - accountType + properties: + accountType: + type: string + enum: + - THB_ACCOUNT + example: THB_ACCOUNT + beneficiary: + oneOf: + - $ref: '#/components/schemas/IndividualBeneficiary' + - $ref: '#/components/schemas/BusinessBeneficiary' + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: '#/components/schemas/IndividualBeneficiary' + BUSINESS: '#/components/schemas/BusinessBeneficiary' + VndAccountExternalAccountInfo: + allOf: + - $ref: '#/components/schemas/VndAccountInfo' + - type: object + required: + - accountType + properties: + accountType: + type: string + enum: + - VND_ACCOUNT + example: VND_ACCOUNT + beneficiary: + oneOf: + - $ref: '#/components/schemas/IndividualBeneficiary' + - $ref: '#/components/schemas/BusinessBeneficiary' + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: '#/components/schemas/IndividualBeneficiary' + BUSINESS: '#/components/schemas/BusinessBeneficiary' + BwpAccountExternalAccountInfo: + allOf: + - $ref: '#/components/schemas/BwpAccountInfo' + - type: object + required: + - accountType + properties: + accountType: + type: string + enum: + - BWP_ACCOUNT + example: BWP_ACCOUNT + beneficiary: + oneOf: + - $ref: '#/components/schemas/IndividualBeneficiary' + - $ref: '#/components/schemas/BusinessBeneficiary' + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: '#/components/schemas/IndividualBeneficiary' + BUSINESS: '#/components/schemas/BusinessBeneficiary' SparkWalletExternalAccountInfo: allOf: - $ref: '#/components/schemas/SparkWalletInfo' @@ -5467,6 +6101,26 @@ components: $ref: '#/components/schemas/UpiAccountExternalAccountInfo' - title: NGN Account $ref: '#/components/schemas/NgnAccountExternalAccountInfo' + - title: GBP Account + $ref: '#/components/schemas/GbpAccountExternalAccountInfo' + - title: CAD Account + $ref: '#/components/schemas/CadAccountExternalAccountInfo' + - title: HKD Account + $ref: '#/components/schemas/HkdAccountExternalAccountInfo' + - title: IDR Account + $ref: '#/components/schemas/IdrAccountExternalAccountInfo' + - title: MYR Account + $ref: '#/components/schemas/MyrAccountExternalAccountInfo' + - title: PHP Account + $ref: '#/components/schemas/PhpAccountExternalAccountInfo' + - title: SGD Account + $ref: '#/components/schemas/SgdAccountExternalAccountInfo' + - title: THB Account + $ref: '#/components/schemas/ThbAccountExternalAccountInfo' + - title: VND Account + $ref: '#/components/schemas/VndAccountExternalAccountInfo' + - title: BWP Account + $ref: '#/components/schemas/BwpAccountExternalAccountInfo' - title: Spark Wallet $ref: '#/components/schemas/SparkWalletExternalAccountInfo' - title: Lightning @@ -5488,6 +6142,16 @@ components: IBAN: '#/components/schemas/IbanAccountExternalAccountInfo' UPI: '#/components/schemas/UpiAccountExternalAccountInfo' NGN_ACCOUNT: '#/components/schemas/NgnAccountExternalAccountInfo' + GBP_ACCOUNT: '#/components/schemas/GbpAccountExternalAccountInfo' + CAD_ACCOUNT: '#/components/schemas/CadAccountExternalAccountInfo' + HKD_ACCOUNT: '#/components/schemas/HkdAccountExternalAccountInfo' + IDR_ACCOUNT: '#/components/schemas/IdrAccountExternalAccountInfo' + MYR_ACCOUNT: '#/components/schemas/MyrAccountExternalAccountInfo' + PHP_ACCOUNT: '#/components/schemas/PhpAccountExternalAccountInfo' + SGD_ACCOUNT: '#/components/schemas/SgdAccountExternalAccountInfo' + THB_ACCOUNT: '#/components/schemas/ThbAccountExternalAccountInfo' + VND_ACCOUNT: '#/components/schemas/VndAccountExternalAccountInfo' + BWP_ACCOUNT: '#/components/schemas/BwpAccountExternalAccountInfo' SPARK_WALLET: '#/components/schemas/SparkWalletExternalAccountInfo' LIGHTNING: '#/components/schemas/LightningExternalAccountInfo' SOLANA_WALLET: '#/components/schemas/SolanaWalletExternalAccountInfo' diff --git a/openapi/components/schemas/common/BankAccountOrWalletType.yaml b/openapi/components/schemas/common/BankAccountOrWalletType.yaml index c6ee5d1..2554d1e 100644 --- a/openapi/components/schemas/common/BankAccountOrWalletType.yaml +++ b/openapi/components/schemas/common/BankAccountOrWalletType.yaml @@ -7,6 +7,16 @@ enum: - FBO - UPI - NGN_ACCOUNT + - GBP_ACCOUNT + - CAD_ACCOUNT + - HKD_ACCOUNT + - IDR_ACCOUNT + - MYR_ACCOUNT + - PHP_ACCOUNT + - SGD_ACCOUNT + - THB_ACCOUNT + - VND_ACCOUNT + - BWP_ACCOUNT - SPARK_WALLET - LIGHTNING - SOLANA_WALLET diff --git a/openapi/components/schemas/common/BwpAccountInfo.yaml b/openapi/components/schemas/common/BwpAccountInfo.yaml new file mode 100644 index 0000000..b67a089 --- /dev/null +++ b/openapi/components/schemas/common/BwpAccountInfo.yaml @@ -0,0 +1,32 @@ +type: object +required: + - accountType + - accountNumber + - branchCode +properties: + accountType: + type: string + enum: [BWP_ACCOUNT] + example: BWP_ACCOUNT + accountNumber: + type: string + description: Botswana bank account number + example: '1234567890' + minLength: 8 + maxLength: 16 + branchCode: + type: string + description: Branch code (6 digits) + example: '123456' + minLength: 6 + maxLength: 6 + swiftBic: + type: string + description: SWIFT/BIC code + example: FIABORPX + minLength: 8 + maxLength: 11 + bankName: + type: string + description: Name of the bank + example: First National Bank Botswana diff --git a/openapi/components/schemas/common/CadAccountInfo.yaml b/openapi/components/schemas/common/CadAccountInfo.yaml new file mode 100644 index 0000000..72ac8a5 --- /dev/null +++ b/openapi/components/schemas/common/CadAccountInfo.yaml @@ -0,0 +1,35 @@ +type: object +required: + - accountType + - accountNumber + - transitNumber + - institutionNumber +properties: + accountType: + type: string + enum: [CAD_ACCOUNT] + example: CAD_ACCOUNT + accountNumber: + type: string + description: Canadian bank account number (7-12 digits) + example: '1234567' + minLength: 7 + maxLength: 12 + transitNumber: + type: string + description: Transit number (5 digits) identifying the branch + example: '12345' + minLength: 5 + maxLength: 5 + pattern: ^[0-9]{5}$ + institutionNumber: + type: string + description: Institution number (3 digits) identifying the bank + example: '001' + minLength: 3 + maxLength: 3 + pattern: ^[0-9]{3}$ + bankName: + type: string + description: Name of the bank + example: Royal Bank of Canada diff --git a/openapi/components/schemas/common/GbpAccountInfo.yaml b/openapi/components/schemas/common/GbpAccountInfo.yaml new file mode 100644 index 0000000..412d848 --- /dev/null +++ b/openapi/components/schemas/common/GbpAccountInfo.yaml @@ -0,0 +1,28 @@ +type: object +required: + - accountType + - accountNumber + - sortCode +properties: + accountType: + type: string + enum: [GBP_ACCOUNT] + example: GBP_ACCOUNT + accountNumber: + type: string + description: UK bank account number (8 digits) + example: '12345678' + minLength: 8 + maxLength: 8 + pattern: ^[0-9]{8}$ + sortCode: + type: string + description: UK sort code (6 digits, typically formatted as XX-XX-XX) + example: '123456' + minLength: 6 + maxLength: 6 + pattern: ^[0-9]{6}$ + bankName: + type: string + description: Name of the bank + example: Barclays Bank diff --git a/openapi/components/schemas/common/HkdAccountInfo.yaml b/openapi/components/schemas/common/HkdAccountInfo.yaml new file mode 100644 index 0000000..c6cd51c --- /dev/null +++ b/openapi/components/schemas/common/HkdAccountInfo.yaml @@ -0,0 +1,27 @@ +type: object +required: + - accountType + - accountNumber + - bankCode +properties: + accountType: + type: string + enum: [HKD_ACCOUNT] + example: HKD_ACCOUNT + accountNumber: + type: string + description: Hong Kong bank account number (9-12 digits) + example: '123456789012' + minLength: 9 + maxLength: 12 + bankCode: + type: string + description: Bank code (3 digits) + example: '004' + minLength: 3 + maxLength: 3 + pattern: ^[0-9]{3}$ + bankName: + type: string + description: Name of the bank + example: HSBC Hong Kong diff --git a/openapi/components/schemas/common/IdrAccountInfo.yaml b/openapi/components/schemas/common/IdrAccountInfo.yaml new file mode 100644 index 0000000..e5a7bd4 --- /dev/null +++ b/openapi/components/schemas/common/IdrAccountInfo.yaml @@ -0,0 +1,26 @@ +type: object +required: + - accountType + - accountNumber + - bankCode +properties: + accountType: + type: string + enum: [IDR_ACCOUNT] + example: IDR_ACCOUNT + accountNumber: + type: string + description: Indonesian bank account number + example: '1234567890' + minLength: 10 + maxLength: 16 + bankCode: + type: string + description: Bank code (3-4 digits) + example: '014' + minLength: 3 + maxLength: 4 + bankName: + type: string + description: Name of the bank + example: Bank Central Asia diff --git a/openapi/components/schemas/common/MyrAccountInfo.yaml b/openapi/components/schemas/common/MyrAccountInfo.yaml new file mode 100644 index 0000000..b4f6097 --- /dev/null +++ b/openapi/components/schemas/common/MyrAccountInfo.yaml @@ -0,0 +1,24 @@ +type: object +required: + - accountType + - accountNumber + - bankCode +properties: + accountType: + type: string + enum: [MYR_ACCOUNT] + example: MYR_ACCOUNT + accountNumber: + type: string + description: Malaysian bank account number + example: '1234567890' + minLength: 10 + maxLength: 17 + bankCode: + type: string + description: Bank code (e.g., SWIFT BIC or local bank code) + example: MABORB2X + bankName: + type: string + description: Name of the bank + example: Maybank diff --git a/openapi/components/schemas/common/PaymentAccountOrWalletInfo.yaml b/openapi/components/schemas/common/PaymentAccountOrWalletInfo.yaml index fe63f85..726a7dd 100644 --- a/openapi/components/schemas/common/PaymentAccountOrWalletInfo.yaml +++ b/openapi/components/schemas/common/PaymentAccountOrWalletInfo.yaml @@ -14,6 +14,16 @@ discriminator: FBO: ./PaymentFboAccountInfo.yaml UPI: ./PaymentUpiAccountInfo.yaml NGN_ACCOUNT: ./PaymentNgnAccountInfo.yaml + GBP_ACCOUNT: ./PaymentGbpAccountInfo.yaml + CAD_ACCOUNT: ./PaymentCadAccountInfo.yaml + HKD_ACCOUNT: ./PaymentHkdAccountInfo.yaml + IDR_ACCOUNT: ./PaymentIdrAccountInfo.yaml + MYR_ACCOUNT: ./PaymentMyrAccountInfo.yaml + PHP_ACCOUNT: ./PaymentPhpAccountInfo.yaml + SGD_ACCOUNT: ./PaymentSgdAccountInfo.yaml + THB_ACCOUNT: ./PaymentThbAccountInfo.yaml + VND_ACCOUNT: ./PaymentVndAccountInfo.yaml + BWP_ACCOUNT: ./PaymentBwpAccountInfo.yaml SPARK_WALLET: ./PaymentSparkWalletInfo.yaml LIGHTNING: ./PaymentLightningInvoiceInfo.yaml SOLANA_WALLET: ./PaymentSolanaWalletInfo.yaml diff --git a/openapi/components/schemas/common/PaymentBwpAccountInfo.yaml b/openapi/components/schemas/common/PaymentBwpAccountInfo.yaml new file mode 100644 index 0000000..e9eb383 --- /dev/null +++ b/openapi/components/schemas/common/PaymentBwpAccountInfo.yaml @@ -0,0 +1,12 @@ +allOf: + - $ref: ./PaymentAccountOrWalletInfo.yaml + - $ref: ./BwpAccountInfo.yaml +required: + - reference +properties: + reference: + type: string + description: >- + Unique reference code that must be included with the payment to properly + credit it + example: UMA-Q12345-REF diff --git a/openapi/components/schemas/common/PaymentCadAccountInfo.yaml b/openapi/components/schemas/common/PaymentCadAccountInfo.yaml new file mode 100644 index 0000000..7f6532a --- /dev/null +++ b/openapi/components/schemas/common/PaymentCadAccountInfo.yaml @@ -0,0 +1,12 @@ +allOf: + - $ref: ./PaymentAccountOrWalletInfo.yaml + - $ref: ./CadAccountInfo.yaml +required: + - reference +properties: + reference: + type: string + description: >- + Unique reference code that must be included with the payment to properly + credit it + example: UMA-Q12345-REF diff --git a/openapi/components/schemas/common/PaymentGbpAccountInfo.yaml b/openapi/components/schemas/common/PaymentGbpAccountInfo.yaml new file mode 100644 index 0000000..2496760 --- /dev/null +++ b/openapi/components/schemas/common/PaymentGbpAccountInfo.yaml @@ -0,0 +1,12 @@ +allOf: + - $ref: ./PaymentAccountOrWalletInfo.yaml + - $ref: ./GbpAccountInfo.yaml +required: + - reference +properties: + reference: + type: string + description: >- + Unique reference code that must be included with the payment to properly + credit it + example: UMA-Q12345-REF diff --git a/openapi/components/schemas/common/PaymentHkdAccountInfo.yaml b/openapi/components/schemas/common/PaymentHkdAccountInfo.yaml new file mode 100644 index 0000000..1ad96d7 --- /dev/null +++ b/openapi/components/schemas/common/PaymentHkdAccountInfo.yaml @@ -0,0 +1,12 @@ +allOf: + - $ref: ./PaymentAccountOrWalletInfo.yaml + - $ref: ./HkdAccountInfo.yaml +required: + - reference +properties: + reference: + type: string + description: >- + Unique reference code that must be included with the payment to properly + credit it + example: UMA-Q12345-REF diff --git a/openapi/components/schemas/common/PaymentIdrAccountInfo.yaml b/openapi/components/schemas/common/PaymentIdrAccountInfo.yaml new file mode 100644 index 0000000..5c464cb --- /dev/null +++ b/openapi/components/schemas/common/PaymentIdrAccountInfo.yaml @@ -0,0 +1,12 @@ +allOf: + - $ref: ./PaymentAccountOrWalletInfo.yaml + - $ref: ./IdrAccountInfo.yaml +required: + - reference +properties: + reference: + type: string + description: >- + Unique reference code that must be included with the payment to properly + credit it + example: UMA-Q12345-REF diff --git a/openapi/components/schemas/common/PaymentMyrAccountInfo.yaml b/openapi/components/schemas/common/PaymentMyrAccountInfo.yaml new file mode 100644 index 0000000..09ff008 --- /dev/null +++ b/openapi/components/schemas/common/PaymentMyrAccountInfo.yaml @@ -0,0 +1,12 @@ +allOf: + - $ref: ./PaymentAccountOrWalletInfo.yaml + - $ref: ./MyrAccountInfo.yaml +required: + - reference +properties: + reference: + type: string + description: >- + Unique reference code that must be included with the payment to properly + credit it + example: UMA-Q12345-REF diff --git a/openapi/components/schemas/common/PaymentPhpAccountInfo.yaml b/openapi/components/schemas/common/PaymentPhpAccountInfo.yaml new file mode 100644 index 0000000..860b605 --- /dev/null +++ b/openapi/components/schemas/common/PaymentPhpAccountInfo.yaml @@ -0,0 +1,12 @@ +allOf: + - $ref: ./PaymentAccountOrWalletInfo.yaml + - $ref: ./PhpAccountInfo.yaml +required: + - reference +properties: + reference: + type: string + description: >- + Unique reference code that must be included with the payment to properly + credit it + example: UMA-Q12345-REF diff --git a/openapi/components/schemas/common/PaymentSgdAccountInfo.yaml b/openapi/components/schemas/common/PaymentSgdAccountInfo.yaml new file mode 100644 index 0000000..ab14ab1 --- /dev/null +++ b/openapi/components/schemas/common/PaymentSgdAccountInfo.yaml @@ -0,0 +1,12 @@ +allOf: + - $ref: ./PaymentAccountOrWalletInfo.yaml + - $ref: ./SgdAccountInfo.yaml +required: + - reference +properties: + reference: + type: string + description: >- + Unique reference code that must be included with the payment to properly + credit it + example: UMA-Q12345-REF diff --git a/openapi/components/schemas/common/PaymentThbAccountInfo.yaml b/openapi/components/schemas/common/PaymentThbAccountInfo.yaml new file mode 100644 index 0000000..2a70846 --- /dev/null +++ b/openapi/components/schemas/common/PaymentThbAccountInfo.yaml @@ -0,0 +1,12 @@ +allOf: + - $ref: ./PaymentAccountOrWalletInfo.yaml + - $ref: ./ThbAccountInfo.yaml +required: + - reference +properties: + reference: + type: string + description: >- + Unique reference code that must be included with the payment to properly + credit it + example: UMA-Q12345-REF diff --git a/openapi/components/schemas/common/PaymentVndAccountInfo.yaml b/openapi/components/schemas/common/PaymentVndAccountInfo.yaml new file mode 100644 index 0000000..f3cb0ee --- /dev/null +++ b/openapi/components/schemas/common/PaymentVndAccountInfo.yaml @@ -0,0 +1,12 @@ +allOf: + - $ref: ./PaymentAccountOrWalletInfo.yaml + - $ref: ./VndAccountInfo.yaml +required: + - reference +properties: + reference: + type: string + description: >- + Unique reference code that must be included with the payment to properly + credit it + example: UMA-Q12345-REF diff --git a/openapi/components/schemas/common/PhpAccountInfo.yaml b/openapi/components/schemas/common/PhpAccountInfo.yaml new file mode 100644 index 0000000..34bdb18 --- /dev/null +++ b/openapi/components/schemas/common/PhpAccountInfo.yaml @@ -0,0 +1,24 @@ +type: object +required: + - accountType + - accountNumber + - bankCode +properties: + accountType: + type: string + enum: [PHP_ACCOUNT] + example: PHP_ACCOUNT + accountNumber: + type: string + description: Philippine bank account number + example: '1234567890' + minLength: 10 + maxLength: 16 + bankCode: + type: string + description: Bank code (SWIFT BIC or InstaPay/PESONet bank code) + example: BABORPH2 + bankName: + type: string + description: Name of the bank + example: Bank of the Philippine Islands diff --git a/openapi/components/schemas/common/SgdAccountInfo.yaml b/openapi/components/schemas/common/SgdAccountInfo.yaml new file mode 100644 index 0000000..1e0a2b2 --- /dev/null +++ b/openapi/components/schemas/common/SgdAccountInfo.yaml @@ -0,0 +1,30 @@ +type: object +required: + - accountType + - accountNumber + - bankCode +properties: + accountType: + type: string + enum: [SGD_ACCOUNT] + example: SGD_ACCOUNT + accountNumber: + type: string + description: Singapore bank account number + example: '1234567890' + minLength: 9 + maxLength: 14 + bankCode: + type: string + description: Bank code (4 digits) or SWIFT BIC + example: '7339' + branchCode: + type: string + description: Branch code (3 digits) + example: '001' + minLength: 3 + maxLength: 3 + bankName: + type: string + description: Name of the bank + example: DBS Bank diff --git a/openapi/components/schemas/common/ThbAccountInfo.yaml b/openapi/components/schemas/common/ThbAccountInfo.yaml new file mode 100644 index 0000000..64700da --- /dev/null +++ b/openapi/components/schemas/common/ThbAccountInfo.yaml @@ -0,0 +1,24 @@ +type: object +required: + - accountType + - accountNumber + - bankCode +properties: + accountType: + type: string + enum: [THB_ACCOUNT] + example: THB_ACCOUNT + accountNumber: + type: string + description: Thai bank account number (10-12 digits) + example: '1234567890' + minLength: 10 + maxLength: 12 + bankCode: + type: string + description: Bank code (3 digits) or SWIFT BIC + example: '002' + bankName: + type: string + description: Name of the bank + example: Bangkok Bank diff --git a/openapi/components/schemas/common/VndAccountInfo.yaml b/openapi/components/schemas/common/VndAccountInfo.yaml new file mode 100644 index 0000000..6ddfdc2 --- /dev/null +++ b/openapi/components/schemas/common/VndAccountInfo.yaml @@ -0,0 +1,24 @@ +type: object +required: + - accountType + - accountNumber + - bankCode +properties: + accountType: + type: string + enum: [VND_ACCOUNT] + example: VND_ACCOUNT + accountNumber: + type: string + description: Vietnamese bank account number + example: '1234567890123' + minLength: 9 + maxLength: 19 + bankCode: + type: string + description: Bank code or SWIFT BIC + example: BFTV + bankName: + type: string + description: Name of the bank + example: Vietcombank diff --git a/openapi/components/schemas/external_accounts/BwpAccountExternalAccountInfo.yaml b/openapi/components/schemas/external_accounts/BwpAccountExternalAccountInfo.yaml new file mode 100644 index 0000000..7a425dd --- /dev/null +++ b/openapi/components/schemas/external_accounts/BwpAccountExternalAccountInfo.yaml @@ -0,0 +1,19 @@ +allOf: + - $ref: ../common/BwpAccountInfo.yaml + - type: object + required: + - accountType + properties: + accountType: + type: string + enum: [BWP_ACCOUNT] + example: BWP_ACCOUNT + beneficiary: + oneOf: + - $ref: ./IndividualBeneficiary.yaml + - $ref: ./BusinessBeneficiary.yaml + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: ./IndividualBeneficiary.yaml + BUSINESS: ./BusinessBeneficiary.yaml diff --git a/openapi/components/schemas/external_accounts/CadAccountExternalAccountInfo.yaml b/openapi/components/schemas/external_accounts/CadAccountExternalAccountInfo.yaml new file mode 100644 index 0000000..1c24104 --- /dev/null +++ b/openapi/components/schemas/external_accounts/CadAccountExternalAccountInfo.yaml @@ -0,0 +1,19 @@ +allOf: + - $ref: ../common/CadAccountInfo.yaml + - type: object + required: + - accountType + properties: + accountType: + type: string + enum: [CAD_ACCOUNT] + example: CAD_ACCOUNT + beneficiary: + oneOf: + - $ref: ./IndividualBeneficiary.yaml + - $ref: ./BusinessBeneficiary.yaml + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: ./IndividualBeneficiary.yaml + BUSINESS: ./BusinessBeneficiary.yaml diff --git a/openapi/components/schemas/external_accounts/ExternalAccountInfo.yaml b/openapi/components/schemas/external_accounts/ExternalAccountInfo.yaml index 367d160..20e34bf 100644 --- a/openapi/components/schemas/external_accounts/ExternalAccountInfo.yaml +++ b/openapi/components/schemas/external_accounts/ExternalAccountInfo.yaml @@ -11,6 +11,26 @@ oneOf: $ref: ./UpiAccountExternalAccountInfo.yaml - title: NGN Account $ref: ./NgnAccountExternalAccountInfo.yaml + - title: GBP Account + $ref: ./GbpAccountExternalAccountInfo.yaml + - title: CAD Account + $ref: ./CadAccountExternalAccountInfo.yaml + - title: HKD Account + $ref: ./HkdAccountExternalAccountInfo.yaml + - title: IDR Account + $ref: ./IdrAccountExternalAccountInfo.yaml + - title: MYR Account + $ref: ./MyrAccountExternalAccountInfo.yaml + - title: PHP Account + $ref: ./PhpAccountExternalAccountInfo.yaml + - title: SGD Account + $ref: ./SgdAccountExternalAccountInfo.yaml + - title: THB Account + $ref: ./ThbAccountExternalAccountInfo.yaml + - title: VND Account + $ref: ./VndAccountExternalAccountInfo.yaml + - title: BWP Account + $ref: ./BwpAccountExternalAccountInfo.yaml - title: Spark Wallet $ref: ./SparkWalletExternalAccountInfo.yaml - title: Lightning @@ -32,6 +52,16 @@ discriminator: IBAN: ./IbanAccountExternalAccountInfo.yaml UPI: ./UpiAccountExternalAccountInfo.yaml NGN_ACCOUNT: ./NgnAccountExternalAccountInfo.yaml + GBP_ACCOUNT: ./GbpAccountExternalAccountInfo.yaml + CAD_ACCOUNT: ./CadAccountExternalAccountInfo.yaml + HKD_ACCOUNT: ./HkdAccountExternalAccountInfo.yaml + IDR_ACCOUNT: ./IdrAccountExternalAccountInfo.yaml + MYR_ACCOUNT: ./MyrAccountExternalAccountInfo.yaml + PHP_ACCOUNT: ./PhpAccountExternalAccountInfo.yaml + SGD_ACCOUNT: ./SgdAccountExternalAccountInfo.yaml + THB_ACCOUNT: ./ThbAccountExternalAccountInfo.yaml + VND_ACCOUNT: ./VndAccountExternalAccountInfo.yaml + BWP_ACCOUNT: ./BwpAccountExternalAccountInfo.yaml SPARK_WALLET: ./SparkWalletExternalAccountInfo.yaml LIGHTNING: ./LightningExternalAccountInfo.yaml SOLANA_WALLET: ./SolanaWalletExternalAccountInfo.yaml diff --git a/openapi/components/schemas/external_accounts/GbpAccountExternalAccountInfo.yaml b/openapi/components/schemas/external_accounts/GbpAccountExternalAccountInfo.yaml new file mode 100644 index 0000000..9f457fa --- /dev/null +++ b/openapi/components/schemas/external_accounts/GbpAccountExternalAccountInfo.yaml @@ -0,0 +1,19 @@ +allOf: + - $ref: ../common/GbpAccountInfo.yaml + - type: object + required: + - accountType + properties: + accountType: + type: string + enum: [GBP_ACCOUNT] + example: GBP_ACCOUNT + beneficiary: + oneOf: + - $ref: ./IndividualBeneficiary.yaml + - $ref: ./BusinessBeneficiary.yaml + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: ./IndividualBeneficiary.yaml + BUSINESS: ./BusinessBeneficiary.yaml diff --git a/openapi/components/schemas/external_accounts/HkdAccountExternalAccountInfo.yaml b/openapi/components/schemas/external_accounts/HkdAccountExternalAccountInfo.yaml new file mode 100644 index 0000000..034c8aa --- /dev/null +++ b/openapi/components/schemas/external_accounts/HkdAccountExternalAccountInfo.yaml @@ -0,0 +1,19 @@ +allOf: + - $ref: ../common/HkdAccountInfo.yaml + - type: object + required: + - accountType + properties: + accountType: + type: string + enum: [HKD_ACCOUNT] + example: HKD_ACCOUNT + beneficiary: + oneOf: + - $ref: ./IndividualBeneficiary.yaml + - $ref: ./BusinessBeneficiary.yaml + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: ./IndividualBeneficiary.yaml + BUSINESS: ./BusinessBeneficiary.yaml diff --git a/openapi/components/schemas/external_accounts/IdrAccountExternalAccountInfo.yaml b/openapi/components/schemas/external_accounts/IdrAccountExternalAccountInfo.yaml new file mode 100644 index 0000000..d8baadf --- /dev/null +++ b/openapi/components/schemas/external_accounts/IdrAccountExternalAccountInfo.yaml @@ -0,0 +1,19 @@ +allOf: + - $ref: ../common/IdrAccountInfo.yaml + - type: object + required: + - accountType + properties: + accountType: + type: string + enum: [IDR_ACCOUNT] + example: IDR_ACCOUNT + beneficiary: + oneOf: + - $ref: ./IndividualBeneficiary.yaml + - $ref: ./BusinessBeneficiary.yaml + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: ./IndividualBeneficiary.yaml + BUSINESS: ./BusinessBeneficiary.yaml diff --git a/openapi/components/schemas/external_accounts/MyrAccountExternalAccountInfo.yaml b/openapi/components/schemas/external_accounts/MyrAccountExternalAccountInfo.yaml new file mode 100644 index 0000000..93ae00b --- /dev/null +++ b/openapi/components/schemas/external_accounts/MyrAccountExternalAccountInfo.yaml @@ -0,0 +1,19 @@ +allOf: + - $ref: ../common/MyrAccountInfo.yaml + - type: object + required: + - accountType + properties: + accountType: + type: string + enum: [MYR_ACCOUNT] + example: MYR_ACCOUNT + beneficiary: + oneOf: + - $ref: ./IndividualBeneficiary.yaml + - $ref: ./BusinessBeneficiary.yaml + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: ./IndividualBeneficiary.yaml + BUSINESS: ./BusinessBeneficiary.yaml diff --git a/openapi/components/schemas/external_accounts/PhpAccountExternalAccountInfo.yaml b/openapi/components/schemas/external_accounts/PhpAccountExternalAccountInfo.yaml new file mode 100644 index 0000000..023023e --- /dev/null +++ b/openapi/components/schemas/external_accounts/PhpAccountExternalAccountInfo.yaml @@ -0,0 +1,19 @@ +allOf: + - $ref: ../common/PhpAccountInfo.yaml + - type: object + required: + - accountType + properties: + accountType: + type: string + enum: [PHP_ACCOUNT] + example: PHP_ACCOUNT + beneficiary: + oneOf: + - $ref: ./IndividualBeneficiary.yaml + - $ref: ./BusinessBeneficiary.yaml + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: ./IndividualBeneficiary.yaml + BUSINESS: ./BusinessBeneficiary.yaml diff --git a/openapi/components/schemas/external_accounts/SgdAccountExternalAccountInfo.yaml b/openapi/components/schemas/external_accounts/SgdAccountExternalAccountInfo.yaml new file mode 100644 index 0000000..81cb8b3 --- /dev/null +++ b/openapi/components/schemas/external_accounts/SgdAccountExternalAccountInfo.yaml @@ -0,0 +1,19 @@ +allOf: + - $ref: ../common/SgdAccountInfo.yaml + - type: object + required: + - accountType + properties: + accountType: + type: string + enum: [SGD_ACCOUNT] + example: SGD_ACCOUNT + beneficiary: + oneOf: + - $ref: ./IndividualBeneficiary.yaml + - $ref: ./BusinessBeneficiary.yaml + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: ./IndividualBeneficiary.yaml + BUSINESS: ./BusinessBeneficiary.yaml diff --git a/openapi/components/schemas/external_accounts/ThbAccountExternalAccountInfo.yaml b/openapi/components/schemas/external_accounts/ThbAccountExternalAccountInfo.yaml new file mode 100644 index 0000000..a5c052b --- /dev/null +++ b/openapi/components/schemas/external_accounts/ThbAccountExternalAccountInfo.yaml @@ -0,0 +1,19 @@ +allOf: + - $ref: ../common/ThbAccountInfo.yaml + - type: object + required: + - accountType + properties: + accountType: + type: string + enum: [THB_ACCOUNT] + example: THB_ACCOUNT + beneficiary: + oneOf: + - $ref: ./IndividualBeneficiary.yaml + - $ref: ./BusinessBeneficiary.yaml + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: ./IndividualBeneficiary.yaml + BUSINESS: ./BusinessBeneficiary.yaml diff --git a/openapi/components/schemas/external_accounts/VndAccountExternalAccountInfo.yaml b/openapi/components/schemas/external_accounts/VndAccountExternalAccountInfo.yaml new file mode 100644 index 0000000..290cdac --- /dev/null +++ b/openapi/components/schemas/external_accounts/VndAccountExternalAccountInfo.yaml @@ -0,0 +1,19 @@ +allOf: + - $ref: ../common/VndAccountInfo.yaml + - type: object + required: + - accountType + properties: + accountType: + type: string + enum: [VND_ACCOUNT] + example: VND_ACCOUNT + beneficiary: + oneOf: + - $ref: ./IndividualBeneficiary.yaml + - $ref: ./BusinessBeneficiary.yaml + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: ./IndividualBeneficiary.yaml + BUSINESS: ./BusinessBeneficiary.yaml