diff --git a/mintlify/openapi.yaml b/mintlify/openapi.yaml index 21012359..4ee297c0 100644 --- a/mintlify/openapi.yaml +++ b/mintlify/openapi.yaml @@ -5656,6 +5656,7 @@ components: - WIRE - RTP - FEDNOW + - BANK_TRANSFER accountNumber: type: string description: The account number of the bank @@ -6180,9 +6181,10 @@ components: accountNumber: type: string description: Bank account number - minLength: 1 - maxLength: 34 + minLength: 8 + maxLength: 16 example: '001234567890' + pattern: ^[0-9]{8,16}$ PaymentPhpAccountInfo: title: PHP Account allOf: @@ -7025,247 +7027,1089 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - PaymentInstructions: - type: object - required: - - accountOrWalletInfo - properties: - instructionsNotes: - type: string - description: Additional human-readable instructions for making the payment - example: Please ensure the reference code is included in the payment memo/description field - isPlatformAccount: - type: boolean - description: Indicates whether the account is a platform account or a customer account. - example: true - accountOrWalletInfo: - oneOf: - - $ref: '#/components/schemas/PaymentUsdAccountInfo' - - $ref: '#/components/schemas/PaymentBrlAccountInfo' - - $ref: '#/components/schemas/PaymentMxnAccountInfo' - - $ref: '#/components/schemas/PaymentDkkAccountInfo' - - $ref: '#/components/schemas/PaymentEurAccountInfo' - - $ref: '#/components/schemas/PaymentInrAccountInfo' - - $ref: '#/components/schemas/PaymentNgnAccountInfo' - - $ref: '#/components/schemas/PaymentCadAccountInfo' - - $ref: '#/components/schemas/PaymentGbpAccountInfo' - - $ref: '#/components/schemas/PaymentHkdAccountInfo' - - $ref: '#/components/schemas/PaymentIdrAccountInfo' - - $ref: '#/components/schemas/PaymentMyrAccountInfo' - - $ref: '#/components/schemas/PaymentPhpAccountInfo' - - $ref: '#/components/schemas/PaymentSgdAccountInfo' - - $ref: '#/components/schemas/PaymentThbAccountInfo' - - $ref: '#/components/schemas/PaymentVndAccountInfo' - - $ref: '#/components/schemas/PaymentAedAccountInfo' - - $ref: '#/components/schemas/PaymentKesAccountInfo' - - $ref: '#/components/schemas/PaymentMwkAccountInfo' - - $ref: '#/components/schemas/PaymentRwfAccountInfo' - - $ref: '#/components/schemas/PaymentTzsAccountInfo' - - $ref: '#/components/schemas/PaymentUgxAccountInfo' - - $ref: '#/components/schemas/PaymentXofAccountInfo' - - $ref: '#/components/schemas/PaymentZarAccountInfo' - - $ref: '#/components/schemas/PaymentZmwAccountInfo' - - $ref: '#/components/schemas/PaymentBwpAccountInfo' - - $ref: '#/components/schemas/PaymentXafAccountInfo' - - $ref: '#/components/schemas/PaymentSparkWalletInfo' - - $ref: '#/components/schemas/PaymentLightningInvoiceInfo' - - $ref: '#/components/schemas/PaymentSolanaWalletInfo' - - $ref: '#/components/schemas/PaymentTronWalletInfo' - - $ref: '#/components/schemas/PaymentPolygonWalletInfo' - - $ref: '#/components/schemas/PaymentBaseWalletInfo' - - $ref: '#/components/schemas/PaymentEthereumWalletInfo' - discriminator: - propertyName: accountType - mapping: - USD_ACCOUNT: '#/components/schemas/PaymentUsdAccountInfo' - BRL_ACCOUNT: '#/components/schemas/PaymentBrlAccountInfo' - MXN_ACCOUNT: '#/components/schemas/PaymentMxnAccountInfo' - DKK_ACCOUNT: '#/components/schemas/PaymentDkkAccountInfo' - EUR_ACCOUNT: '#/components/schemas/PaymentEurAccountInfo' - INR_ACCOUNT: '#/components/schemas/PaymentInrAccountInfo' - NGN_ACCOUNT: '#/components/schemas/PaymentNgnAccountInfo' - CAD_ACCOUNT: '#/components/schemas/PaymentCadAccountInfo' - GBP_ACCOUNT: '#/components/schemas/PaymentGbpAccountInfo' - 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' - SPARK_WALLET: '#/components/schemas/PaymentSparkWalletInfo' - LIGHTNING: '#/components/schemas/PaymentLightningInvoiceInfo' - SOLANA_WALLET: '#/components/schemas/PaymentSolanaWalletInfo' - TRON_WALLET: '#/components/schemas/PaymentTronWalletInfo' - POLYGON_WALLET: '#/components/schemas/PaymentPolygonWalletInfo' - BASE_WALLET: '#/components/schemas/PaymentBaseWalletInfo' - ETHEREUM_WALLET: '#/components/schemas/PaymentEthereumWalletInfo' - AED_ACCOUNT: '#/components/schemas/PaymentAedAccountInfo' - KES_ACCOUNT: '#/components/schemas/PaymentKesAccountInfo' - MWK_ACCOUNT: '#/components/schemas/PaymentMwkAccountInfo' - RWF_ACCOUNT: '#/components/schemas/PaymentRwfAccountInfo' - TZS_ACCOUNT: '#/components/schemas/PaymentTzsAccountInfo' - UGX_ACCOUNT: '#/components/schemas/PaymentUgxAccountInfo' - XOF_ACCOUNT: '#/components/schemas/PaymentXofAccountInfo' - ZAR_ACCOUNT: '#/components/schemas/PaymentZarAccountInfo' - ZMW_ACCOUNT: '#/components/schemas/PaymentZmwAccountInfo' - BWP_ACCOUNT: '#/components/schemas/PaymentBwpAccountInfo' - XAF_ACCOUNT: '#/components/schemas/PaymentXafAccountInfo' - InternalAccount: + BdtAccountInfo: type: object required: - - id - - balance - - fundingPaymentInstructions - - createdAt - - updatedAt + - accountType + - paymentRails + - accountNumber + - branchCode + - phoneNumber properties: - id: - type: string - description: The ID of the internal account - example: InternalAccount:12dcbd6-dced-4ec4-b756-3c3a9ea3d123 - customerId: + accountType: type: string - description: The ID of the customer associated with the internal account. If this field is empty, the internal account belongs to the platform. - example: Customer:019542f5-b3e7-1d02-0000-000000000001 - balance: - $ref: '#/components/schemas/CurrencyAmount' - fundingPaymentInstructions: + enum: + - BDT_ACCOUNT + paymentRails: type: array - description: Payment instructions for funding the account items: - $ref: '#/components/schemas/PaymentInstructions' - createdAt: + type: string + enum: + - BANK_TRANSFER + - MOBILE_MONEY + accountNumber: type: string - format: date-time - description: Timestamp when the internal account was created - example: '2025-10-03T12:30:00Z' - updatedAt: + description: The account number of the bank + minLength: 1 + maxLength: 34 + branchCode: type: string - format: date-time - description: Timestamp when the internal account was last updated - example: '2025-10-03T12:30:00Z' - ExternalAccountStatus: - type: string - enum: - - PENDING - - ACTIVE - - UNDER_REVIEW - - INACTIVE - description: Status of an external account - BeneficiaryVerificationStatus: - type: string - enum: - - MATCHED - - PARTIAL_MATCH - - NOT_MATCHED - - UNSUPPORTED - - CHECKED_BY_RECEIVING_FI - - PENDING - description: | - The result of verifying the beneficiary name against the account holder name. - - | Status | Description | - |--------|-------------| - | `MATCHED` | The beneficiary name is an exact match | - | `PARTIAL_MATCH` | The beneficiary name is a fuzzy match | - | `NOT_MATCHED` | The beneficiary name does not match | - | `UNSUPPORTED` | The payment rail does not support name verification | - | `CHECKED_BY_RECEIVING_FI` | Verification is deferred to the receiving financial institution (e.g. ACH) | - | `PENDING` | Verification is still in progress | - BeneficiaryVerifiedData: - type: object - properties: - fullName: + description: The branch code + minLength: 5 + maxLength: 5 + pattern: ^[0-9]{5}$ + swiftCode: type: string - description: The verified full name of the account holder as returned by the payment rail - example: John Doe - ExternalAccountType: - type: string - enum: - - GBP_ACCOUNT - - PHP_ACCOUNT - - SGD_ACCOUNT - - SPARK_WALLET - - LIGHTNING - - SOLANA_WALLET - - TRON_WALLET - - POLYGON_WALLET - - BASE_WALLET - - ETHEREUM_WALLET - - AED_ACCOUNT - - BRL_ACCOUNT - - BWP_ACCOUNT - - CAD_ACCOUNT - - DKK_ACCOUNT - - EUR_ACCOUNT - - HKD_ACCOUNT - - IDR_ACCOUNT - - INR_ACCOUNT - - KES_ACCOUNT - - MWK_ACCOUNT - - MXN_ACCOUNT - - MYR_ACCOUNT - - NGN_ACCOUNT - - RWF_ACCOUNT - - THB_ACCOUNT - - TZS_ACCOUNT - - UGX_ACCOUNT - - USD_ACCOUNT - - VND_ACCOUNT - - XAF_ACCOUNT - - XOF_ACCOUNT - - ZAR_ACCOUNT - - ZMW_ACCOUNT - description: Type of external account or wallet - example: GBP_ACCOUNT - BaseExternalAccountInfo: - type: object - required: - - accountType - properties: - accountType: - $ref: '#/components/schemas/ExternalAccountType' - BrlAccountInfo: + 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}$ + PaymentBdtAccountInfo: + title: BDT Account + allOf: + - $ref: '#/components/schemas/BasePaymentAccountInfo' + - $ref: '#/components/schemas/BdtAccountInfo' + - type: object + 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 + CopAccountInfo: type: object required: - accountType - paymentRails - - pixKey - - pixKeyType - - taxId + - accountNumber + - bankAccountType + - phoneNumber properties: accountType: type: string enum: - - BRL_ACCOUNT + - COP_ACCOUNT paymentRails: type: array items: type: string enum: - - PIX - pixKey: + - BANK_TRANSFER + - MOBILE_MONEY + accountNumber: type: string - description: The PIX key (email, phone, CPF, CNPJ, or random) + description: The account number of the bank minLength: 1 - maxLength: 77 - pixKeyType: + 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}$ + PaymentCopAccountInfo: + title: COP Account + allOf: + - $ref: '#/components/schemas/BasePaymentAccountInfo' + - $ref: '#/components/schemas/CopAccountInfo' + - type: object + 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 + EgpAccountInfo: + type: object + required: + - accountType + - paymentRails + - accountNumber + properties: + accountType: + type: string + enum: + - EGP_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER + 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})?$ + PaymentEgpAccountInfo: + title: EGP Account + allOf: + - $ref: '#/components/schemas/BasePaymentAccountInfo' + - $ref: '#/components/schemas/EgpAccountInfo' + - type: object + 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 + GhsAccountInfo: + type: object + required: + - accountType + - paymentRails + - accountNumber + - phoneNumber + properties: + accountType: + type: string + enum: + - GHS_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER + - MOBILE_MONEY + 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}$ + PaymentGhsAccountInfo: + title: GHS Account + allOf: + - $ref: '#/components/schemas/BasePaymentAccountInfo' + - $ref: '#/components/schemas/GhsAccountInfo' + - type: object + 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 + GtqAccountInfo: + type: object + required: + - accountType + - paymentRails + - accountNumber + - phoneNumber + properties: + accountType: + type: string + enum: + - GTQ_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER + - MOBILE_MONEY + 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}$ + PaymentGtqAccountInfo: + title: GTQ Account + allOf: + - $ref: '#/components/schemas/BasePaymentAccountInfo' + - $ref: '#/components/schemas/GtqAccountInfo' + - type: object + 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 + 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 + example: '+1234567890' + minLength: 7 + maxLength: 15 + pattern: ^\+[0-9]{6,14}$ + PaymentHtgAccountInfo: + title: HTG Account + allOf: + - $ref: '#/components/schemas/BasePaymentAccountInfo' + - $ref: '#/components/schemas/HtgAccountInfo' + - type: object + 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 + JmdAccountInfo: + type: object + required: + - accountType + - paymentRails + - accountNumber + - branchCode + - bankAccountType + properties: + accountType: + type: string + enum: + - JMD_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER + 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 + PaymentJmdAccountInfo: + title: JMD Account + allOf: + - $ref: '#/components/schemas/BasePaymentAccountInfo' + - $ref: '#/components/schemas/JmdAccountInfo' + - type: object + 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 + PkrAccountInfo: + type: object + required: + - accountType + - paymentRails + - accountNumber + - phoneNumber + properties: + accountType: + type: string + enum: + - PKR_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER + - MOBILE_MONEY + 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}$ + PaymentPkrAccountInfo: + title: PKR Account + allOf: + - $ref: '#/components/schemas/BasePaymentAccountInfo' + - $ref: '#/components/schemas/PkrAccountInfo' + - type: object + 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 + PaymentInstructions: + type: object + required: + - accountOrWalletInfo + properties: + instructionsNotes: + type: string + description: Additional human-readable instructions for making the payment + example: Please ensure the reference code is included in the payment memo/description field + isPlatformAccount: + type: boolean + description: Indicates whether the account is a platform account or a customer account. + example: true + accountOrWalletInfo: + oneOf: + - $ref: '#/components/schemas/PaymentUsdAccountInfo' + - $ref: '#/components/schemas/PaymentBrlAccountInfo' + - $ref: '#/components/schemas/PaymentMxnAccountInfo' + - $ref: '#/components/schemas/PaymentDkkAccountInfo' + - $ref: '#/components/schemas/PaymentEurAccountInfo' + - $ref: '#/components/schemas/PaymentInrAccountInfo' + - $ref: '#/components/schemas/PaymentNgnAccountInfo' + - $ref: '#/components/schemas/PaymentCadAccountInfo' + - $ref: '#/components/schemas/PaymentGbpAccountInfo' + - $ref: '#/components/schemas/PaymentHkdAccountInfo' + - $ref: '#/components/schemas/PaymentIdrAccountInfo' + - $ref: '#/components/schemas/PaymentMyrAccountInfo' + - $ref: '#/components/schemas/PaymentPhpAccountInfo' + - $ref: '#/components/schemas/PaymentSgdAccountInfo' + - $ref: '#/components/schemas/PaymentThbAccountInfo' + - $ref: '#/components/schemas/PaymentVndAccountInfo' + - $ref: '#/components/schemas/PaymentAedAccountInfo' + - $ref: '#/components/schemas/PaymentKesAccountInfo' + - $ref: '#/components/schemas/PaymentMwkAccountInfo' + - $ref: '#/components/schemas/PaymentRwfAccountInfo' + - $ref: '#/components/schemas/PaymentTzsAccountInfo' + - $ref: '#/components/schemas/PaymentUgxAccountInfo' + - $ref: '#/components/schemas/PaymentXofAccountInfo' + - $ref: '#/components/schemas/PaymentZarAccountInfo' + - $ref: '#/components/schemas/PaymentZmwAccountInfo' + - $ref: '#/components/schemas/PaymentBwpAccountInfo' + - $ref: '#/components/schemas/PaymentXafAccountInfo' + - $ref: '#/components/schemas/PaymentBdtAccountInfo' + - $ref: '#/components/schemas/PaymentCopAccountInfo' + - $ref: '#/components/schemas/PaymentEgpAccountInfo' + - $ref: '#/components/schemas/PaymentGhsAccountInfo' + - $ref: '#/components/schemas/PaymentGtqAccountInfo' + - $ref: '#/components/schemas/PaymentHtgAccountInfo' + - $ref: '#/components/schemas/PaymentJmdAccountInfo' + - $ref: '#/components/schemas/PaymentPkrAccountInfo' + - $ref: '#/components/schemas/PaymentSparkWalletInfo' + - $ref: '#/components/schemas/PaymentLightningInvoiceInfo' + - $ref: '#/components/schemas/PaymentSolanaWalletInfo' + - $ref: '#/components/schemas/PaymentTronWalletInfo' + - $ref: '#/components/schemas/PaymentPolygonWalletInfo' + - $ref: '#/components/schemas/PaymentBaseWalletInfo' + - $ref: '#/components/schemas/PaymentEthereumWalletInfo' + discriminator: + propertyName: accountType + mapping: + USD_ACCOUNT: '#/components/schemas/PaymentUsdAccountInfo' + BRL_ACCOUNT: '#/components/schemas/PaymentBrlAccountInfo' + MXN_ACCOUNT: '#/components/schemas/PaymentMxnAccountInfo' + DKK_ACCOUNT: '#/components/schemas/PaymentDkkAccountInfo' + EUR_ACCOUNT: '#/components/schemas/PaymentEurAccountInfo' + INR_ACCOUNT: '#/components/schemas/PaymentInrAccountInfo' + NGN_ACCOUNT: '#/components/schemas/PaymentNgnAccountInfo' + CAD_ACCOUNT: '#/components/schemas/PaymentCadAccountInfo' + GBP_ACCOUNT: '#/components/schemas/PaymentGbpAccountInfo' + 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' + SPARK_WALLET: '#/components/schemas/PaymentSparkWalletInfo' + LIGHTNING: '#/components/schemas/PaymentLightningInvoiceInfo' + SOLANA_WALLET: '#/components/schemas/PaymentSolanaWalletInfo' + TRON_WALLET: '#/components/schemas/PaymentTronWalletInfo' + POLYGON_WALLET: '#/components/schemas/PaymentPolygonWalletInfo' + BASE_WALLET: '#/components/schemas/PaymentBaseWalletInfo' + ETHEREUM_WALLET: '#/components/schemas/PaymentEthereumWalletInfo' + AED_ACCOUNT: '#/components/schemas/PaymentAedAccountInfo' + KES_ACCOUNT: '#/components/schemas/PaymentKesAccountInfo' + MWK_ACCOUNT: '#/components/schemas/PaymentMwkAccountInfo' + RWF_ACCOUNT: '#/components/schemas/PaymentRwfAccountInfo' + TZS_ACCOUNT: '#/components/schemas/PaymentTzsAccountInfo' + UGX_ACCOUNT: '#/components/schemas/PaymentUgxAccountInfo' + XOF_ACCOUNT: '#/components/schemas/PaymentXofAccountInfo' + ZAR_ACCOUNT: '#/components/schemas/PaymentZarAccountInfo' + ZMW_ACCOUNT: '#/components/schemas/PaymentZmwAccountInfo' + BWP_ACCOUNT: '#/components/schemas/PaymentBwpAccountInfo' + XAF_ACCOUNT: '#/components/schemas/PaymentXafAccountInfo' + BDT_ACCOUNT: '#/components/schemas/PaymentBdtAccountInfo' + COP_ACCOUNT: '#/components/schemas/PaymentCopAccountInfo' + EGP_ACCOUNT: '#/components/schemas/PaymentEgpAccountInfo' + GHS_ACCOUNT: '#/components/schemas/PaymentGhsAccountInfo' + GTQ_ACCOUNT: '#/components/schemas/PaymentGtqAccountInfo' + HTG_ACCOUNT: '#/components/schemas/PaymentHtgAccountInfo' + JMD_ACCOUNT: '#/components/schemas/PaymentJmdAccountInfo' + PKR_ACCOUNT: '#/components/schemas/PaymentPkrAccountInfo' + InternalAccount: + type: object + required: + - id + - balance + - fundingPaymentInstructions + - createdAt + - updatedAt + properties: + id: + type: string + description: The ID of the internal account + example: InternalAccount:12dcbd6-dced-4ec4-b756-3c3a9ea3d123 + customerId: + type: string + description: The ID of the customer associated with the internal account. If this field is empty, the internal account belongs to the platform. + example: Customer:019542f5-b3e7-1d02-0000-000000000001 + balance: + $ref: '#/components/schemas/CurrencyAmount' + fundingPaymentInstructions: + type: array + description: Payment instructions for funding the account + items: + $ref: '#/components/schemas/PaymentInstructions' + createdAt: + type: string + format: date-time + description: Timestamp when the internal account was created + example: '2025-10-03T12:30:00Z' + updatedAt: + type: string + format: date-time + description: Timestamp when the internal account was last updated + example: '2025-10-03T12:30:00Z' + ExternalAccountStatus: + type: string + enum: + - PENDING + - ACTIVE + - UNDER_REVIEW + - INACTIVE + description: Status of an external account + BeneficiaryVerificationStatus: + type: string + enum: + - MATCHED + - PARTIAL_MATCH + - NOT_MATCHED + - UNSUPPORTED + - CHECKED_BY_RECEIVING_FI + - PENDING + description: | + The result of verifying the beneficiary name against the account holder name. + + | Status | Description | + |--------|-------------| + | `MATCHED` | The beneficiary name is an exact match | + | `PARTIAL_MATCH` | The beneficiary name is a fuzzy match | + | `NOT_MATCHED` | The beneficiary name does not match | + | `UNSUPPORTED` | The payment rail does not support name verification | + | `CHECKED_BY_RECEIVING_FI` | Verification is deferred to the receiving financial institution (e.g. ACH) | + | `PENDING` | Verification is still in progress | + BeneficiaryVerifiedData: + type: object + properties: + fullName: + type: string + description: The verified full name of the account holder as returned by the payment rail + example: John Doe + ExternalAccountType: + type: string + enum: + - GBP_ACCOUNT + - PHP_ACCOUNT + - SGD_ACCOUNT + - SPARK_WALLET + - LIGHTNING + - SOLANA_WALLET + - TRON_WALLET + - POLYGON_WALLET + - BASE_WALLET + - ETHEREUM_WALLET + - AED_ACCOUNT + - BRL_ACCOUNT + - BWP_ACCOUNT + - CAD_ACCOUNT + - DKK_ACCOUNT + - EUR_ACCOUNT + - HKD_ACCOUNT + - IDR_ACCOUNT + - INR_ACCOUNT + - KES_ACCOUNT + - MWK_ACCOUNT + - MXN_ACCOUNT + - MYR_ACCOUNT + - NGN_ACCOUNT + - RWF_ACCOUNT + - THB_ACCOUNT + - TZS_ACCOUNT + - UGX_ACCOUNT + - USD_ACCOUNT + - VND_ACCOUNT + - XAF_ACCOUNT + - XOF_ACCOUNT + - ZAR_ACCOUNT + - ZMW_ACCOUNT + description: Type of external account or wallet + example: GBP_ACCOUNT + BaseExternalAccountInfo: + type: object + required: + - accountType + properties: + accountType: + $ref: '#/components/schemas/ExternalAccountType' + BrlAccountInfo: + 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: + - CPF + - CNPJ + - EMAIL + - PHONE + - RANDOM + taxId: + type: string + description: The tax ID (CPF or CNPJ) + minLength: 11 + maxLength: 14 + pattern: ^[0-9]{11,14}$ + BrlBeneficiary: + title: Individual Beneficiary + type: object + required: + - beneficiaryType + - fullName + properties: + beneficiaryType: + type: string + enum: + - INDIVIDUAL + fullName: + type: string + description: The full name of the beneficiary + birthDate: + type: string + description: The birth date of the beneficiary + nationality: + type: string + description: The nationality of the beneficiary + email: + type: string + description: The email of the beneficiary + phoneNumber: + type: string + description: The phone number of the beneficiary + countryOfResidence: + type: string + description: The country of residence of the beneficiary + address: + $ref: '#/components/schemas/Address' + BusinessBeneficiary: + title: Business Beneficiary + type: object + required: + - beneficiaryType + - legalName + properties: + beneficiaryType: + type: string + enum: + - BUSINESS + legalName: + type: string + description: The legal name of the business + registrationNumber: + type: string + description: The registration number of the business + taxId: + type: string + description: The tax identification number of the business + email: + type: string + description: The email of the beneficiary + phoneNumber: + type: string + description: The phone number of the beneficiary + countryOfResidence: + type: string + description: The country of residence of the beneficiary + address: + $ref: '#/components/schemas/Address' + BrlExternalAccountInfo: + title: BRL Account + allOf: + - $ref: '#/components/schemas/BaseExternalAccountInfo' + - $ref: '#/components/schemas/BrlAccountInfo' + - type: object + required: + - beneficiary + properties: + beneficiary: + oneOf: + - title: Individual Beneficiary + $ref: '#/components/schemas/BrlBeneficiary' + - title: Business Beneficiary + $ref: '#/components/schemas/BusinessBeneficiary' + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: '#/components/schemas/BrlBeneficiary' + BUSINESS: '#/components/schemas/BusinessBeneficiary' + CadBeneficiary: + title: Individual Beneficiary + type: object + required: + - beneficiaryType + - fullName + properties: + beneficiaryType: + type: string + enum: + - INDIVIDUAL + fullName: + type: string + description: The full name of the beneficiary + birthDate: + type: string + description: The birth date of the beneficiary + nationality: + type: string + description: The nationality of the beneficiary + email: + type: string + description: The email of the beneficiary + phoneNumber: + type: string + description: The phone number of the beneficiary + registrationNumber: + type: string + description: The registration number of the beneficiary + countryOfResidence: + type: string + description: The country of residence of the beneficiary + address: + $ref: '#/components/schemas/Address' + CadExternalAccountInfo: + title: CAD Account + allOf: + - $ref: '#/components/schemas/BaseExternalAccountInfo' + - $ref: '#/components/schemas/CadAccountInfo' + - type: object + required: + - beneficiary + properties: + beneficiary: + oneOf: + - title: Individual Beneficiary + $ref: '#/components/schemas/CadBeneficiary' + - title: Business Beneficiary + $ref: '#/components/schemas/BusinessBeneficiary' + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: '#/components/schemas/CadBeneficiary' + BUSINESS: '#/components/schemas/BusinessBeneficiary' + DkkBeneficiary: + title: Individual Beneficiary + type: object + required: + - beneficiaryType + - fullName + properties: + beneficiaryType: + type: string + enum: + - INDIVIDUAL + fullName: + type: string + description: The full name of the beneficiary + birthDate: + type: string + description: The birth date of the beneficiary + nationality: + type: string + description: The nationality of the beneficiary + email: + type: string + description: The email of the beneficiary + phoneNumber: + type: string + description: The phone number of the beneficiary + countryOfResidence: + type: string + description: The country of residence of the beneficiary + address: + $ref: '#/components/schemas/Address' + DkkExternalAccountInfo: + title: DKK Account + allOf: + - $ref: '#/components/schemas/BaseExternalAccountInfo' + - $ref: '#/components/schemas/DkkAccountInfo' + - type: object + required: + - beneficiary + properties: + beneficiary: + oneOf: + - title: Individual Beneficiary + $ref: '#/components/schemas/DkkBeneficiary' + - title: Business Beneficiary + $ref: '#/components/schemas/BusinessBeneficiary' + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: '#/components/schemas/DkkBeneficiary' + BUSINESS: '#/components/schemas/BusinessBeneficiary' + EurBeneficiary: + title: Individual Beneficiary + type: object + required: + - beneficiaryType + - address + - fullName + properties: + beneficiaryType: + type: string + enum: + - INDIVIDUAL + fullName: type: string - description: The tax ID (CPF or CNPJ) - minLength: 11 - maxLength: 14 - pattern: ^[0-9]{11,14}$ - BrlBeneficiary: + description: The full name of the beneficiary + birthDate: + type: string + description: The birth date of the beneficiary + nationality: + type: string + description: The nationality of the beneficiary + email: + type: string + description: The email of the beneficiary + phoneNumber: + type: string + description: The phone number of the beneficiary + countryOfResidence: + type: string + description: The country of residence of the beneficiary + address: + $ref: '#/components/schemas/Address' + EurExternalAccountInfo: + title: EUR Account + allOf: + - $ref: '#/components/schemas/BaseExternalAccountInfo' + - $ref: '#/components/schemas/EurAccountInfo' + - type: object + required: + - beneficiary + properties: + beneficiary: + oneOf: + - title: Individual Beneficiary + $ref: '#/components/schemas/EurBeneficiary' + - title: Business Beneficiary + $ref: '#/components/schemas/BusinessBeneficiary' + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: '#/components/schemas/EurBeneficiary' + BUSINESS: '#/components/schemas/BusinessBeneficiary' + GbpBeneficiary: + title: Individual Beneficiary + type: object + required: + - beneficiaryType + - fullName + properties: + beneficiaryType: + type: string + enum: + - INDIVIDUAL + fullName: + type: string + description: The full name of the beneficiary + birthDate: + type: string + description: The birth date of the beneficiary + nationality: + type: string + description: The nationality of the beneficiary + email: + type: string + description: The email of the beneficiary + phoneNumber: + type: string + description: The phone number of the beneficiary + countryOfResidence: + type: string + description: The country of residence of the beneficiary + address: + $ref: '#/components/schemas/Address' + GbpExternalAccountInfo: + title: GBP Account + allOf: + - $ref: '#/components/schemas/BaseExternalAccountInfo' + - $ref: '#/components/schemas/GbpAccountInfo' + - type: object + required: + - beneficiary + properties: + beneficiary: + oneOf: + - title: Individual Beneficiary + $ref: '#/components/schemas/GbpBeneficiary' + - title: Business Beneficiary + $ref: '#/components/schemas/BusinessBeneficiary' + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: '#/components/schemas/GbpBeneficiary' + BUSINESS: '#/components/schemas/BusinessBeneficiary' + HkdBeneficiary: + title: Individual Beneficiary + type: object + required: + - beneficiaryType + - fullName + properties: + beneficiaryType: + type: string + enum: + - INDIVIDUAL + fullName: + type: string + description: The full name of the beneficiary + birthDate: + type: string + description: The birth date of the beneficiary + nationality: + type: string + description: The nationality of the beneficiary + email: + type: string + description: The email of the beneficiary + phoneNumber: + type: string + description: The phone number of the beneficiary + countryOfResidence: + type: string + description: The country of residence of the beneficiary + address: + $ref: '#/components/schemas/Address' + HkdExternalAccountInfo: + title: HKD Account + allOf: + - $ref: '#/components/schemas/BaseExternalAccountInfo' + - $ref: '#/components/schemas/HkdAccountInfo' + - type: object + required: + - beneficiary + properties: + beneficiary: + oneOf: + - title: Individual Beneficiary + $ref: '#/components/schemas/HkdBeneficiary' + - title: Business Beneficiary + $ref: '#/components/schemas/BusinessBeneficiary' + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: '#/components/schemas/HkdBeneficiary' + BUSINESS: '#/components/schemas/BusinessBeneficiary' + IdrBeneficiary: + title: Individual Beneficiary + type: object + required: + - beneficiaryType + - fullName + properties: + beneficiaryType: + type: string + enum: + - INDIVIDUAL + fullName: + type: string + description: The full name of the beneficiary + birthDate: + type: string + description: The birth date of the beneficiary + nationality: + type: string + description: The nationality of the beneficiary + email: + type: string + description: The email of the beneficiary + phoneNumber: + type: string + description: The phone number of the beneficiary + countryOfResidence: + type: string + description: The country of residence of the beneficiary + address: + $ref: '#/components/schemas/Address' + IdrExternalAccountInfo: + title: IDR Account + allOf: + - $ref: '#/components/schemas/BaseExternalAccountInfo' + - $ref: '#/components/schemas/IdrAccountInfo' + - type: object + required: + - beneficiary + properties: + beneficiary: + oneOf: + - title: Individual Beneficiary + $ref: '#/components/schemas/IdrBeneficiary' + - title: Business Beneficiary + $ref: '#/components/schemas/BusinessBeneficiary' + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: '#/components/schemas/IdrBeneficiary' + BUSINESS: '#/components/schemas/BusinessBeneficiary' + InrBeneficiary: + title: Individual Beneficiary + type: object + required: + - beneficiaryType + - fullName + properties: + beneficiaryType: + type: string + enum: + - INDIVIDUAL + fullName: + type: string + description: The full name of the beneficiary + birthDate: + type: string + description: The birth date of the beneficiary + nationality: + type: string + description: The nationality of the beneficiary + email: + type: string + description: The email of the beneficiary + phoneNumber: + type: string + description: The phone number of the beneficiary + countryOfResidence: + type: string + description: The country of residence of the beneficiary + address: + $ref: '#/components/schemas/Address' + InrExternalAccountInfo: + title: INR Account + allOf: + - $ref: '#/components/schemas/BaseExternalAccountInfo' + - $ref: '#/components/schemas/InrAccountInfo' + - type: object + required: + - beneficiary + properties: + beneficiary: + oneOf: + - title: Individual Beneficiary + $ref: '#/components/schemas/InrBeneficiary' + - title: Business Beneficiary + $ref: '#/components/schemas/BusinessBeneficiary' + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: '#/components/schemas/InrBeneficiary' + BUSINESS: '#/components/schemas/BusinessBeneficiary' + KesBeneficiary: title: Individual Beneficiary type: object required: @@ -7291,50 +8135,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary - countryOfResidence: - type: string - description: The country of residence of the beneficiary - address: - $ref: '#/components/schemas/Address' - BusinessBeneficiary: - title: Business Beneficiary - type: object - required: - - beneficiaryType - - legalName - properties: - beneficiaryType: - type: string - enum: - - BUSINESS - legalName: - type: string - description: The legal name of the business - registrationNumber: - type: string - description: The registration number of the business - taxId: - type: string - description: The tax identification number of the business - email: - type: string - description: The email of the beneficiary - phoneNumber: - type: string - description: The phone number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - BrlExternalAccountInfo: - title: BRL Account + KesExternalAccountInfo: + title: KES Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/BrlAccountInfo' + - $ref: '#/components/schemas/KesAccountInfo' - type: object required: - beneficiary @@ -7342,15 +8152,15 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/BrlBeneficiary' + $ref: '#/components/schemas/KesBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/BrlBeneficiary' + INDIVIDUAL: '#/components/schemas/KesBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - CadBeneficiary: + MwkBeneficiary: title: Individual Beneficiary type: object required: @@ -7376,19 +8186,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - CadExternalAccountInfo: - title: CAD Account + MwkExternalAccountInfo: + title: MWK Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/CadAccountInfo' + - $ref: '#/components/schemas/MwkAccountInfo' - type: object required: - beneficiary @@ -7396,15 +8203,15 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/CadBeneficiary' + $ref: '#/components/schemas/MwkBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/CadBeneficiary' + INDIVIDUAL: '#/components/schemas/MwkBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - DkkBeneficiary: + MxnBeneficiary: title: Individual Beneficiary type: object required: @@ -7430,19 +8237,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - DkkExternalAccountInfo: - title: DKK Account + MxnExternalAccountInfo: + title: MXN Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/DkkAccountInfo' + - $ref: '#/components/schemas/MxnAccountInfo' - type: object required: - beneficiary @@ -7450,15 +8254,15 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/DkkBeneficiary' + $ref: '#/components/schemas/MxnBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/DkkBeneficiary' + INDIVIDUAL: '#/components/schemas/MxnBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - EurBeneficiary: + MyrBeneficiary: title: Individual Beneficiary type: object required: @@ -7484,19 +8288,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - EurExternalAccountInfo: - title: EUR Account + MyrExternalAccountInfo: + title: MYR Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/EurAccountInfo' + - $ref: '#/components/schemas/MyrAccountInfo' - type: object required: - beneficiary @@ -7504,15 +8305,15 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/EurBeneficiary' + $ref: '#/components/schemas/MyrBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/EurBeneficiary' + INDIVIDUAL: '#/components/schemas/MyrBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - GbpBeneficiary: + NgnBeneficiary: title: Individual Beneficiary type: object required: @@ -7538,19 +8339,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - GbpExternalAccountInfo: - title: GBP Account + NgnExternalAccountInfo: + title: NGN Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/GbpAccountInfo' + - $ref: '#/components/schemas/NgnAccountInfo' - type: object required: - beneficiary @@ -7558,15 +8356,15 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/GbpBeneficiary' + $ref: '#/components/schemas/NgnBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/GbpBeneficiary' + INDIVIDUAL: '#/components/schemas/NgnBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - HkdBeneficiary: + PhpBeneficiary: title: Individual Beneficiary type: object required: @@ -7592,19 +8390,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - HkdExternalAccountInfo: - title: HKD Account + PhpExternalAccountInfo: + title: PHP Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/HkdAccountInfo' + - $ref: '#/components/schemas/PhpAccountInfo' - type: object required: - beneficiary @@ -7612,15 +8407,15 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/HkdBeneficiary' + $ref: '#/components/schemas/PhpBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/HkdBeneficiary' + INDIVIDUAL: '#/components/schemas/PhpBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - IdrBeneficiary: + RwfBeneficiary: title: Individual Beneficiary type: object required: @@ -7646,19 +8441,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - IdrExternalAccountInfo: - title: IDR Account + RwfExternalAccountInfo: + title: RWF Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/IdrAccountInfo' + - $ref: '#/components/schemas/RwfAccountInfo' - type: object required: - beneficiary @@ -7666,15 +8458,15 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/IdrBeneficiary' + $ref: '#/components/schemas/RwfBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/IdrBeneficiary' + INDIVIDUAL: '#/components/schemas/RwfBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - InrBeneficiary: + SgdBeneficiary: title: Individual Beneficiary type: object required: @@ -7700,19 +8492,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - InrExternalAccountInfo: - title: INR Account + SgdExternalAccountInfo: + title: SGD Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/InrAccountInfo' + - $ref: '#/components/schemas/SgdAccountInfo' - type: object required: - beneficiary @@ -7720,15 +8509,15 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/InrBeneficiary' + $ref: '#/components/schemas/SgdBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/InrBeneficiary' + INDIVIDUAL: '#/components/schemas/SgdBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - KesBeneficiary: + ThbBeneficiary: title: Individual Beneficiary type: object required: @@ -7754,19 +8543,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - KesExternalAccountInfo: - title: KES Account + ThbExternalAccountInfo: + title: THB Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/KesAccountInfo' + - $ref: '#/components/schemas/ThbAccountInfo' - type: object required: - beneficiary @@ -7774,15 +8560,15 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/KesBeneficiary' + $ref: '#/components/schemas/ThbBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/KesBeneficiary' + INDIVIDUAL: '#/components/schemas/ThbBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - MwkBeneficiary: + TzsBeneficiary: title: Individual Beneficiary type: object required: @@ -7808,19 +8594,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - MwkExternalAccountInfo: - title: MWK Account + TzsExternalAccountInfo: + title: TZS Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/MwkAccountInfo' + - $ref: '#/components/schemas/TzsAccountInfo' - type: object required: - beneficiary @@ -7828,15 +8611,15 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/MwkBeneficiary' + $ref: '#/components/schemas/TzsBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/MwkBeneficiary' + INDIVIDUAL: '#/components/schemas/TzsBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - MxnBeneficiary: + UgxBeneficiary: title: Individual Beneficiary type: object required: @@ -7862,19 +8645,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - MxnExternalAccountInfo: - title: MXN Account + UgxExternalAccountInfo: + title: UGX Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/MxnAccountInfo' + - $ref: '#/components/schemas/UgxAccountInfo' - type: object required: - beneficiary @@ -7882,15 +8662,15 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/MxnBeneficiary' + $ref: '#/components/schemas/UgxBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/MxnBeneficiary' + INDIVIDUAL: '#/components/schemas/UgxBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - MyrBeneficiary: + UsdBeneficiary: title: Individual Beneficiary type: object required: @@ -7916,19 +8696,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - MyrExternalAccountInfo: - title: MYR Account + UsdExternalAccountInfo: + title: USD Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/MyrAccountInfo' + - $ref: '#/components/schemas/UsdAccountInfo' - type: object required: - beneficiary @@ -7936,15 +8713,15 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/MyrBeneficiary' + $ref: '#/components/schemas/UsdBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/MyrBeneficiary' + INDIVIDUAL: '#/components/schemas/UsdBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - NgnBeneficiary: + VndBeneficiary: title: Individual Beneficiary type: object required: @@ -7970,19 +8747,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - NgnExternalAccountInfo: - title: NGN Account + VndExternalAccountInfo: + title: VND Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/NgnAccountInfo' + - $ref: '#/components/schemas/VndAccountInfo' - type: object required: - beneficiary @@ -7990,15 +8764,15 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/NgnBeneficiary' + $ref: '#/components/schemas/VndBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/NgnBeneficiary' + INDIVIDUAL: '#/components/schemas/VndBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - PhpBeneficiary: + XofBeneficiary: title: Individual Beneficiary type: object required: @@ -8024,19 +8798,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - PhpExternalAccountInfo: - title: PHP Account + XofExternalAccountInfo: + title: XOF Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/PhpAccountInfo' + - $ref: '#/components/schemas/XofAccountInfo' - type: object required: - beneficiary @@ -8044,15 +8815,15 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/PhpBeneficiary' + $ref: '#/components/schemas/XofBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/PhpBeneficiary' + INDIVIDUAL: '#/components/schemas/XofBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - RwfBeneficiary: + ZarBeneficiary: title: Individual Beneficiary type: object required: @@ -8078,19 +8849,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - RwfExternalAccountInfo: - title: RWF Account + ZarExternalAccountInfo: + title: ZAR Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/RwfAccountInfo' + - $ref: '#/components/schemas/ZarAccountInfo' - type: object required: - beneficiary @@ -8098,15 +8866,15 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/RwfBeneficiary' + $ref: '#/components/schemas/ZarBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/RwfBeneficiary' + INDIVIDUAL: '#/components/schemas/ZarBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - SgdBeneficiary: + ZmwBeneficiary: title: Individual Beneficiary type: object required: @@ -8132,19 +8900,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - SgdExternalAccountInfo: - title: SGD Account + ZmwExternalAccountInfo: + title: ZMW Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/SgdAccountInfo' + - $ref: '#/components/schemas/ZmwAccountInfo' - type: object required: - beneficiary @@ -8152,15 +8917,73 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/SgdBeneficiary' + $ref: '#/components/schemas/ZmwBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/SgdBeneficiary' + INDIVIDUAL: '#/components/schemas/ZmwBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - ThbBeneficiary: + SparkWalletExternalAccountInfo: + title: Spark Wallet + allOf: + - $ref: '#/components/schemas/BaseExternalAccountInfo' + - $ref: '#/components/schemas/SparkWalletInfo' + LightningInfo: + type: object + description: | + Lightning payment destination. Exactly one of `invoice`, `bolt12`, or `lightningAddress` must be provided. + required: + - accountType + properties: + accountType: + type: string + enum: + - LIGHTNING + invoice: + type: string + description: 1-time use lightning bolt11 invoice payout destination + example: lnbc15u1p3xnhl2pp5jptserfk3zk4qy42tlucycrfwxhydvlemu9pqr93tuzlv9cc7g3sdqsvfhkcap3xyhx7un8cqzpgxqzjcsp5f8c52y2stc300gl6s4xswtjpc37hrnnr3c9wvtgjfuvqmpm35evq9qyyssqy4lgd8tj637qcjp05rdpxxykjenthxftej7a2zzmwrmrl70fyj9hvj0rewhzj7jfyuwkwcg9g2jpwtk3wkjtwnkdks84hsnu8xps5vsq4gj5hs + bolt12: + type: string + description: A bolt12 offer which can be reused as a payment destination + example: lnbc15u1p3xnhl2pp5jptserfk3zk4qy42tlucycrfwxhydvlemu9pqr93tuzlv9cc7g3sdqsvfhkcap3xyhx7un8cqzpgxqzjcsp5f8c52y2stc300gl6s4xswtjpc37hrnnr3c9wvtgjfuvqmpm35evq9qyyssqy4lgd8tj637qcjp05rdpxxykjenthxftej7a2zzmwrmrl70fyj9hvj0rewhzj7jfyuwkwcg9g2jpwtk3wkjtwnkdks84hsnu8xps5vsq4gj5hs + lightningAddress: + type: string + description: A lightning address which can be used as a payment destination. Note that for UMA addresses, no external account is needed. You can use the UMA address directly as a destination. + example: john.doe@lightningwallet.com + LightningExternalAccountInfo: + title: Lightning + allOf: + - $ref: '#/components/schemas/BaseExternalAccountInfo' + - $ref: '#/components/schemas/LightningInfo' + SolanaWalletExternalAccountInfo: + title: Solana Wallet + allOf: + - $ref: '#/components/schemas/BaseExternalAccountInfo' + - $ref: '#/components/schemas/SolanaWalletInfo' + TronWalletExternalAccountInfo: + title: Tron Wallet + allOf: + - $ref: '#/components/schemas/BaseExternalAccountInfo' + - $ref: '#/components/schemas/TronWalletInfo' + PolygonWalletExternalAccountInfo: + title: Polygon Wallet + allOf: + - $ref: '#/components/schemas/BaseExternalAccountInfo' + - $ref: '#/components/schemas/PolygonWalletInfo' + BaseWalletExternalAccountInfo: + title: Base Wallet + allOf: + - $ref: '#/components/schemas/BaseExternalAccountInfo' + - $ref: '#/components/schemas/BaseWalletInfo' + EthereumWalletExternalAccountInfo: + title: Ethereum L1 Wallet + allOf: + - $ref: '#/components/schemas/BaseExternalAccountInfo' + - $ref: '#/components/schemas/EthereumWalletInfo' + AedBeneficiary: title: Individual Beneficiary type: object required: @@ -8186,19 +9009,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - ThbExternalAccountInfo: - title: THB Account + AedExternalAccountInfo: + title: AED Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/ThbAccountInfo' + - $ref: '#/components/schemas/AedAccountInfo' - type: object required: - beneficiary @@ -8206,15 +9026,15 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/ThbBeneficiary' + $ref: '#/components/schemas/AedBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/ThbBeneficiary' + INDIVIDUAL: '#/components/schemas/AedBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - TzsBeneficiary: + BwpBeneficiary: title: Individual Beneficiary type: object required: @@ -8240,19 +9060,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - TzsExternalAccountInfo: - title: TZS Account + BwpExternalAccountInfo: + title: BWP Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/TzsAccountInfo' + - $ref: '#/components/schemas/BwpAccountInfo' - type: object required: - beneficiary @@ -8260,15 +9077,15 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/TzsBeneficiary' + $ref: '#/components/schemas/BwpBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/TzsBeneficiary' + INDIVIDUAL: '#/components/schemas/BwpBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - UgxBeneficiary: + XafBeneficiary: title: Individual Beneficiary type: object required: @@ -8294,19 +9111,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - UgxExternalAccountInfo: - title: UGX Account + XafExternalAccountInfo: + title: XAF Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/UgxAccountInfo' + - $ref: '#/components/schemas/XafAccountInfo' - type: object required: - beneficiary @@ -8314,22 +9128,20 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/UgxBeneficiary' + $ref: '#/components/schemas/XafBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/UgxBeneficiary' + INDIVIDUAL: '#/components/schemas/XafBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - UsdBeneficiary: + BdtBeneficiary: title: Individual Beneficiary type: object required: - beneficiaryType - - birthDate - fullName - - nationality properties: beneficiaryType: type: string @@ -8350,19 +9162,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - UsdExternalAccountInfo: - title: USD Account + BdtExternalAccountInfo: + title: BDT Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/UsdAccountInfo' + - $ref: '#/components/schemas/BdtAccountInfo' - type: object required: - beneficiary @@ -8370,19 +9179,20 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/UsdBeneficiary' + $ref: '#/components/schemas/BdtBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/UsdBeneficiary' + INDIVIDUAL: '#/components/schemas/BdtBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - VndBeneficiary: + CopBeneficiary: title: Individual Beneficiary type: object required: - beneficiaryType + - countryOfResidence - fullName properties: beneficiaryType: @@ -8404,19 +9214,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - VndExternalAccountInfo: - title: VND Account + CopExternalAccountInfo: + title: COP Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/VndAccountInfo' + - $ref: '#/components/schemas/CopAccountInfo' - type: object required: - beneficiary @@ -8424,20 +9231,23 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/VndBeneficiary' + $ref: '#/components/schemas/CopBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/VndBeneficiary' + INDIVIDUAL: '#/components/schemas/CopBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - XofBeneficiary: + EgpBeneficiary: title: Individual Beneficiary type: object required: - beneficiaryType + - address + - countryOfResidence - fullName + - phoneNumber properties: beneficiaryType: type: string @@ -8458,19 +9268,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - XofExternalAccountInfo: - title: XOF Account + EgpExternalAccountInfo: + title: EGP Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/XofAccountInfo' + - $ref: '#/components/schemas/EgpAccountInfo' - type: object required: - beneficiary @@ -8478,15 +9285,15 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/XofBeneficiary' + $ref: '#/components/schemas/EgpBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/XofBeneficiary' + INDIVIDUAL: '#/components/schemas/EgpBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - ZarBeneficiary: + GhsBeneficiary: title: Individual Beneficiary type: object required: @@ -8512,19 +9319,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - ZarExternalAccountInfo: - title: ZAR Account + GhsExternalAccountInfo: + title: GHS Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/ZarAccountInfo' + - $ref: '#/components/schemas/GhsAccountInfo' - type: object required: - beneficiary @@ -8532,19 +9336,20 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/ZarBeneficiary' + $ref: '#/components/schemas/GhsBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/ZarBeneficiary' + INDIVIDUAL: '#/components/schemas/GhsBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - ZmwBeneficiary: + GtqBeneficiary: title: Individual Beneficiary type: object required: - beneficiaryType + - countryOfResidence - fullName properties: beneficiaryType: @@ -8566,19 +9371,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - ZmwExternalAccountInfo: - title: ZMW Account + GtqExternalAccountInfo: + title: GTQ Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/ZmwAccountInfo' + - $ref: '#/components/schemas/GtqAccountInfo' - type: object required: - beneficiary @@ -8586,73 +9388,15 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/ZmwBeneficiary' + $ref: '#/components/schemas/GtqBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/ZmwBeneficiary' + INDIVIDUAL: '#/components/schemas/GtqBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - SparkWalletExternalAccountInfo: - title: Spark Wallet - allOf: - - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/SparkWalletInfo' - LightningInfo: - type: object - description: | - Lightning payment destination. Exactly one of `invoice`, `bolt12`, or `lightningAddress` must be provided. - required: - - accountType - properties: - accountType: - type: string - enum: - - LIGHTNING - invoice: - type: string - description: 1-time use lightning bolt11 invoice payout destination - example: lnbc15u1p3xnhl2pp5jptserfk3zk4qy42tlucycrfwxhydvlemu9pqr93tuzlv9cc7g3sdqsvfhkcap3xyhx7un8cqzpgxqzjcsp5f8c52y2stc300gl6s4xswtjpc37hrnnr3c9wvtgjfuvqmpm35evq9qyyssqy4lgd8tj637qcjp05rdpxxykjenthxftej7a2zzmwrmrl70fyj9hvj0rewhzj7jfyuwkwcg9g2jpwtk3wkjtwnkdks84hsnu8xps5vsq4gj5hs - bolt12: - type: string - description: A bolt12 offer which can be reused as a payment destination - example: lnbc15u1p3xnhl2pp5jptserfk3zk4qy42tlucycrfwxhydvlemu9pqr93tuzlv9cc7g3sdqsvfhkcap3xyhx7un8cqzpgxqzjcsp5f8c52y2stc300gl6s4xswtjpc37hrnnr3c9wvtgjfuvqmpm35evq9qyyssqy4lgd8tj637qcjp05rdpxxykjenthxftej7a2zzmwrmrl70fyj9hvj0rewhzj7jfyuwkwcg9g2jpwtk3wkjtwnkdks84hsnu8xps5vsq4gj5hs - lightningAddress: - type: string - description: A lightning address which can be used as a payment destination. Note that for UMA addresses, no external account is needed. You can use the UMA address directly as a destination. - example: john.doe@lightningwallet.com - LightningExternalAccountInfo: - title: Lightning - allOf: - - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/LightningInfo' - SolanaWalletExternalAccountInfo: - title: Solana Wallet - allOf: - - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/SolanaWalletInfo' - TronWalletExternalAccountInfo: - title: Tron Wallet - allOf: - - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/TronWalletInfo' - PolygonWalletExternalAccountInfo: - title: Polygon Wallet - allOf: - - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/PolygonWalletInfo' - BaseWalletExternalAccountInfo: - title: Base Wallet - allOf: - - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/BaseWalletInfo' - EthereumWalletExternalAccountInfo: - title: Ethereum L1 Wallet - allOf: - - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/EthereumWalletInfo' - AedBeneficiary: + HtgBeneficiary: title: Individual Beneficiary type: object required: @@ -8678,19 +9422,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - AedExternalAccountInfo: - title: AED Account + HtgExternalAccountInfo: + title: HTG Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/AedAccountInfo' + - $ref: '#/components/schemas/HtgAccountInfo' - type: object required: - beneficiary @@ -8698,20 +9439,22 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/AedBeneficiary' + $ref: '#/components/schemas/HtgBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/AedBeneficiary' + INDIVIDUAL: '#/components/schemas/HtgBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - BwpBeneficiary: + JmdBeneficiary: title: Individual Beneficiary type: object required: - beneficiaryType + - address - fullName + - phoneNumber properties: beneficiaryType: type: string @@ -8732,19 +9475,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - BwpExternalAccountInfo: - title: BWP Account + JmdExternalAccountInfo: + title: JMD Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/BwpAccountInfo' + - $ref: '#/components/schemas/JmdAccountInfo' - type: object required: - beneficiary @@ -8752,15 +9492,15 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/BwpBeneficiary' + $ref: '#/components/schemas/JmdBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/BwpBeneficiary' + INDIVIDUAL: '#/components/schemas/JmdBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - XafBeneficiary: + PkrBeneficiary: title: Individual Beneficiary type: object required: @@ -8786,19 +9526,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - XafExternalAccountInfo: - title: XAF Account + PkrExternalAccountInfo: + title: PKR Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/XafAccountInfo' + - $ref: '#/components/schemas/PkrAccountInfo' - type: object required: - beneficiary @@ -8806,13 +9543,13 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/XafBeneficiary' + $ref: '#/components/schemas/PkrBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/XafBeneficiary' + INDIVIDUAL: '#/components/schemas/PkrBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' ExternalAccountInfoOneOf: oneOf: @@ -8850,6 +9587,14 @@ components: - $ref: '#/components/schemas/AedExternalAccountInfo' - $ref: '#/components/schemas/BwpExternalAccountInfo' - $ref: '#/components/schemas/XafExternalAccountInfo' + - $ref: '#/components/schemas/BdtExternalAccountInfo' + - $ref: '#/components/schemas/CopExternalAccountInfo' + - $ref: '#/components/schemas/EgpExternalAccountInfo' + - $ref: '#/components/schemas/GhsExternalAccountInfo' + - $ref: '#/components/schemas/GtqExternalAccountInfo' + - $ref: '#/components/schemas/HtgExternalAccountInfo' + - $ref: '#/components/schemas/JmdExternalAccountInfo' + - $ref: '#/components/schemas/PkrExternalAccountInfo' discriminator: propertyName: accountType mapping: @@ -8887,6 +9632,15 @@ components: AED_ACCOUNT: '#/components/schemas/AedExternalAccountInfo' BWP_ACCOUNT: '#/components/schemas/BwpExternalAccountInfo' XAF_ACCOUNT: '#/components/schemas/XafExternalAccountInfo' + BDT_ACCOUNT: '#/components/schemas/BdtExternalAccountInfo' + COP_ACCOUNT: '#/components/schemas/CopExternalAccountInfo' + EGP_ACCOUNT: '#/components/schemas/EgpExternalAccountInfo' + GHS_ACCOUNT: '#/components/schemas/GhsExternalAccountInfo' + GTQ_ACCOUNT: '#/components/schemas/GtqExternalAccountInfo' + HTG_ACCOUNT: '#/components/schemas/HtgExternalAccountInfo' + JMD_ACCOUNT: '#/components/schemas/JmdExternalAccountInfo' + LIGHTNING_ACCOUNT: '#/components/schemas/LightningExternalAccountInfo' + PKR_ACCOUNT: '#/components/schemas/PkrExternalAccountInfo' ExternalAccount: allOf: - type: object diff --git a/openapi.yaml b/openapi.yaml index 21012359..4ee297c0 100644 --- a/openapi.yaml +++ b/openapi.yaml @@ -5656,6 +5656,7 @@ components: - WIRE - RTP - FEDNOW + - BANK_TRANSFER accountNumber: type: string description: The account number of the bank @@ -6180,9 +6181,10 @@ components: accountNumber: type: string description: Bank account number - minLength: 1 - maxLength: 34 + minLength: 8 + maxLength: 16 example: '001234567890' + pattern: ^[0-9]{8,16}$ PaymentPhpAccountInfo: title: PHP Account allOf: @@ -7025,247 +7027,1089 @@ components: type: string description: Unique reference code that must be included with the payment to properly credit it example: UMA-Q12345-REF - PaymentInstructions: - type: object - required: - - accountOrWalletInfo - properties: - instructionsNotes: - type: string - description: Additional human-readable instructions for making the payment - example: Please ensure the reference code is included in the payment memo/description field - isPlatformAccount: - type: boolean - description: Indicates whether the account is a platform account or a customer account. - example: true - accountOrWalletInfo: - oneOf: - - $ref: '#/components/schemas/PaymentUsdAccountInfo' - - $ref: '#/components/schemas/PaymentBrlAccountInfo' - - $ref: '#/components/schemas/PaymentMxnAccountInfo' - - $ref: '#/components/schemas/PaymentDkkAccountInfo' - - $ref: '#/components/schemas/PaymentEurAccountInfo' - - $ref: '#/components/schemas/PaymentInrAccountInfo' - - $ref: '#/components/schemas/PaymentNgnAccountInfo' - - $ref: '#/components/schemas/PaymentCadAccountInfo' - - $ref: '#/components/schemas/PaymentGbpAccountInfo' - - $ref: '#/components/schemas/PaymentHkdAccountInfo' - - $ref: '#/components/schemas/PaymentIdrAccountInfo' - - $ref: '#/components/schemas/PaymentMyrAccountInfo' - - $ref: '#/components/schemas/PaymentPhpAccountInfo' - - $ref: '#/components/schemas/PaymentSgdAccountInfo' - - $ref: '#/components/schemas/PaymentThbAccountInfo' - - $ref: '#/components/schemas/PaymentVndAccountInfo' - - $ref: '#/components/schemas/PaymentAedAccountInfo' - - $ref: '#/components/schemas/PaymentKesAccountInfo' - - $ref: '#/components/schemas/PaymentMwkAccountInfo' - - $ref: '#/components/schemas/PaymentRwfAccountInfo' - - $ref: '#/components/schemas/PaymentTzsAccountInfo' - - $ref: '#/components/schemas/PaymentUgxAccountInfo' - - $ref: '#/components/schemas/PaymentXofAccountInfo' - - $ref: '#/components/schemas/PaymentZarAccountInfo' - - $ref: '#/components/schemas/PaymentZmwAccountInfo' - - $ref: '#/components/schemas/PaymentBwpAccountInfo' - - $ref: '#/components/schemas/PaymentXafAccountInfo' - - $ref: '#/components/schemas/PaymentSparkWalletInfo' - - $ref: '#/components/schemas/PaymentLightningInvoiceInfo' - - $ref: '#/components/schemas/PaymentSolanaWalletInfo' - - $ref: '#/components/schemas/PaymentTronWalletInfo' - - $ref: '#/components/schemas/PaymentPolygonWalletInfo' - - $ref: '#/components/schemas/PaymentBaseWalletInfo' - - $ref: '#/components/schemas/PaymentEthereumWalletInfo' - discriminator: - propertyName: accountType - mapping: - USD_ACCOUNT: '#/components/schemas/PaymentUsdAccountInfo' - BRL_ACCOUNT: '#/components/schemas/PaymentBrlAccountInfo' - MXN_ACCOUNT: '#/components/schemas/PaymentMxnAccountInfo' - DKK_ACCOUNT: '#/components/schemas/PaymentDkkAccountInfo' - EUR_ACCOUNT: '#/components/schemas/PaymentEurAccountInfo' - INR_ACCOUNT: '#/components/schemas/PaymentInrAccountInfo' - NGN_ACCOUNT: '#/components/schemas/PaymentNgnAccountInfo' - CAD_ACCOUNT: '#/components/schemas/PaymentCadAccountInfo' - GBP_ACCOUNT: '#/components/schemas/PaymentGbpAccountInfo' - 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' - SPARK_WALLET: '#/components/schemas/PaymentSparkWalletInfo' - LIGHTNING: '#/components/schemas/PaymentLightningInvoiceInfo' - SOLANA_WALLET: '#/components/schemas/PaymentSolanaWalletInfo' - TRON_WALLET: '#/components/schemas/PaymentTronWalletInfo' - POLYGON_WALLET: '#/components/schemas/PaymentPolygonWalletInfo' - BASE_WALLET: '#/components/schemas/PaymentBaseWalletInfo' - ETHEREUM_WALLET: '#/components/schemas/PaymentEthereumWalletInfo' - AED_ACCOUNT: '#/components/schemas/PaymentAedAccountInfo' - KES_ACCOUNT: '#/components/schemas/PaymentKesAccountInfo' - MWK_ACCOUNT: '#/components/schemas/PaymentMwkAccountInfo' - RWF_ACCOUNT: '#/components/schemas/PaymentRwfAccountInfo' - TZS_ACCOUNT: '#/components/schemas/PaymentTzsAccountInfo' - UGX_ACCOUNT: '#/components/schemas/PaymentUgxAccountInfo' - XOF_ACCOUNT: '#/components/schemas/PaymentXofAccountInfo' - ZAR_ACCOUNT: '#/components/schemas/PaymentZarAccountInfo' - ZMW_ACCOUNT: '#/components/schemas/PaymentZmwAccountInfo' - BWP_ACCOUNT: '#/components/schemas/PaymentBwpAccountInfo' - XAF_ACCOUNT: '#/components/schemas/PaymentXafAccountInfo' - InternalAccount: + BdtAccountInfo: type: object required: - - id - - balance - - fundingPaymentInstructions - - createdAt - - updatedAt + - accountType + - paymentRails + - accountNumber + - branchCode + - phoneNumber properties: - id: - type: string - description: The ID of the internal account - example: InternalAccount:12dcbd6-dced-4ec4-b756-3c3a9ea3d123 - customerId: + accountType: type: string - description: The ID of the customer associated with the internal account. If this field is empty, the internal account belongs to the platform. - example: Customer:019542f5-b3e7-1d02-0000-000000000001 - balance: - $ref: '#/components/schemas/CurrencyAmount' - fundingPaymentInstructions: + enum: + - BDT_ACCOUNT + paymentRails: type: array - description: Payment instructions for funding the account items: - $ref: '#/components/schemas/PaymentInstructions' - createdAt: + type: string + enum: + - BANK_TRANSFER + - MOBILE_MONEY + accountNumber: type: string - format: date-time - description: Timestamp when the internal account was created - example: '2025-10-03T12:30:00Z' - updatedAt: + description: The account number of the bank + minLength: 1 + maxLength: 34 + branchCode: type: string - format: date-time - description: Timestamp when the internal account was last updated - example: '2025-10-03T12:30:00Z' - ExternalAccountStatus: - type: string - enum: - - PENDING - - ACTIVE - - UNDER_REVIEW - - INACTIVE - description: Status of an external account - BeneficiaryVerificationStatus: - type: string - enum: - - MATCHED - - PARTIAL_MATCH - - NOT_MATCHED - - UNSUPPORTED - - CHECKED_BY_RECEIVING_FI - - PENDING - description: | - The result of verifying the beneficiary name against the account holder name. - - | Status | Description | - |--------|-------------| - | `MATCHED` | The beneficiary name is an exact match | - | `PARTIAL_MATCH` | The beneficiary name is a fuzzy match | - | `NOT_MATCHED` | The beneficiary name does not match | - | `UNSUPPORTED` | The payment rail does not support name verification | - | `CHECKED_BY_RECEIVING_FI` | Verification is deferred to the receiving financial institution (e.g. ACH) | - | `PENDING` | Verification is still in progress | - BeneficiaryVerifiedData: - type: object - properties: - fullName: + description: The branch code + minLength: 5 + maxLength: 5 + pattern: ^[0-9]{5}$ + swiftCode: type: string - description: The verified full name of the account holder as returned by the payment rail - example: John Doe - ExternalAccountType: - type: string - enum: - - GBP_ACCOUNT - - PHP_ACCOUNT - - SGD_ACCOUNT - - SPARK_WALLET - - LIGHTNING - - SOLANA_WALLET - - TRON_WALLET - - POLYGON_WALLET - - BASE_WALLET - - ETHEREUM_WALLET - - AED_ACCOUNT - - BRL_ACCOUNT - - BWP_ACCOUNT - - CAD_ACCOUNT - - DKK_ACCOUNT - - EUR_ACCOUNT - - HKD_ACCOUNT - - IDR_ACCOUNT - - INR_ACCOUNT - - KES_ACCOUNT - - MWK_ACCOUNT - - MXN_ACCOUNT - - MYR_ACCOUNT - - NGN_ACCOUNT - - RWF_ACCOUNT - - THB_ACCOUNT - - TZS_ACCOUNT - - UGX_ACCOUNT - - USD_ACCOUNT - - VND_ACCOUNT - - XAF_ACCOUNT - - XOF_ACCOUNT - - ZAR_ACCOUNT - - ZMW_ACCOUNT - description: Type of external account or wallet - example: GBP_ACCOUNT - BaseExternalAccountInfo: - type: object - required: - - accountType - properties: - accountType: - $ref: '#/components/schemas/ExternalAccountType' - BrlAccountInfo: + 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}$ + PaymentBdtAccountInfo: + title: BDT Account + allOf: + - $ref: '#/components/schemas/BasePaymentAccountInfo' + - $ref: '#/components/schemas/BdtAccountInfo' + - type: object + 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 + CopAccountInfo: type: object required: - accountType - paymentRails - - pixKey - - pixKeyType - - taxId + - accountNumber + - bankAccountType + - phoneNumber properties: accountType: type: string enum: - - BRL_ACCOUNT + - COP_ACCOUNT paymentRails: type: array items: type: string enum: - - PIX - pixKey: + - BANK_TRANSFER + - MOBILE_MONEY + accountNumber: type: string - description: The PIX key (email, phone, CPF, CNPJ, or random) + description: The account number of the bank minLength: 1 - maxLength: 77 - pixKeyType: + 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}$ + PaymentCopAccountInfo: + title: COP Account + allOf: + - $ref: '#/components/schemas/BasePaymentAccountInfo' + - $ref: '#/components/schemas/CopAccountInfo' + - type: object + 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 + EgpAccountInfo: + type: object + required: + - accountType + - paymentRails + - accountNumber + properties: + accountType: + type: string + enum: + - EGP_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER + 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})?$ + PaymentEgpAccountInfo: + title: EGP Account + allOf: + - $ref: '#/components/schemas/BasePaymentAccountInfo' + - $ref: '#/components/schemas/EgpAccountInfo' + - type: object + 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 + GhsAccountInfo: + type: object + required: + - accountType + - paymentRails + - accountNumber + - phoneNumber + properties: + accountType: + type: string + enum: + - GHS_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER + - MOBILE_MONEY + 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}$ + PaymentGhsAccountInfo: + title: GHS Account + allOf: + - $ref: '#/components/schemas/BasePaymentAccountInfo' + - $ref: '#/components/schemas/GhsAccountInfo' + - type: object + 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 + GtqAccountInfo: + type: object + required: + - accountType + - paymentRails + - accountNumber + - phoneNumber + properties: + accountType: + type: string + enum: + - GTQ_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER + - MOBILE_MONEY + 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}$ + PaymentGtqAccountInfo: + title: GTQ Account + allOf: + - $ref: '#/components/schemas/BasePaymentAccountInfo' + - $ref: '#/components/schemas/GtqAccountInfo' + - type: object + 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 + 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 + example: '+1234567890' + minLength: 7 + maxLength: 15 + pattern: ^\+[0-9]{6,14}$ + PaymentHtgAccountInfo: + title: HTG Account + allOf: + - $ref: '#/components/schemas/BasePaymentAccountInfo' + - $ref: '#/components/schemas/HtgAccountInfo' + - type: object + 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 + JmdAccountInfo: + type: object + required: + - accountType + - paymentRails + - accountNumber + - branchCode + - bankAccountType + properties: + accountType: + type: string + enum: + - JMD_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER + 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 + PaymentJmdAccountInfo: + title: JMD Account + allOf: + - $ref: '#/components/schemas/BasePaymentAccountInfo' + - $ref: '#/components/schemas/JmdAccountInfo' + - type: object + 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 + PkrAccountInfo: + type: object + required: + - accountType + - paymentRails + - accountNumber + - phoneNumber + properties: + accountType: + type: string + enum: + - PKR_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER + - MOBILE_MONEY + 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}$ + PaymentPkrAccountInfo: + title: PKR Account + allOf: + - $ref: '#/components/schemas/BasePaymentAccountInfo' + - $ref: '#/components/schemas/PkrAccountInfo' + - type: object + 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 + PaymentInstructions: + type: object + required: + - accountOrWalletInfo + properties: + instructionsNotes: + type: string + description: Additional human-readable instructions for making the payment + example: Please ensure the reference code is included in the payment memo/description field + isPlatformAccount: + type: boolean + description: Indicates whether the account is a platform account or a customer account. + example: true + accountOrWalletInfo: + oneOf: + - $ref: '#/components/schemas/PaymentUsdAccountInfo' + - $ref: '#/components/schemas/PaymentBrlAccountInfo' + - $ref: '#/components/schemas/PaymentMxnAccountInfo' + - $ref: '#/components/schemas/PaymentDkkAccountInfo' + - $ref: '#/components/schemas/PaymentEurAccountInfo' + - $ref: '#/components/schemas/PaymentInrAccountInfo' + - $ref: '#/components/schemas/PaymentNgnAccountInfo' + - $ref: '#/components/schemas/PaymentCadAccountInfo' + - $ref: '#/components/schemas/PaymentGbpAccountInfo' + - $ref: '#/components/schemas/PaymentHkdAccountInfo' + - $ref: '#/components/schemas/PaymentIdrAccountInfo' + - $ref: '#/components/schemas/PaymentMyrAccountInfo' + - $ref: '#/components/schemas/PaymentPhpAccountInfo' + - $ref: '#/components/schemas/PaymentSgdAccountInfo' + - $ref: '#/components/schemas/PaymentThbAccountInfo' + - $ref: '#/components/schemas/PaymentVndAccountInfo' + - $ref: '#/components/schemas/PaymentAedAccountInfo' + - $ref: '#/components/schemas/PaymentKesAccountInfo' + - $ref: '#/components/schemas/PaymentMwkAccountInfo' + - $ref: '#/components/schemas/PaymentRwfAccountInfo' + - $ref: '#/components/schemas/PaymentTzsAccountInfo' + - $ref: '#/components/schemas/PaymentUgxAccountInfo' + - $ref: '#/components/schemas/PaymentXofAccountInfo' + - $ref: '#/components/schemas/PaymentZarAccountInfo' + - $ref: '#/components/schemas/PaymentZmwAccountInfo' + - $ref: '#/components/schemas/PaymentBwpAccountInfo' + - $ref: '#/components/schemas/PaymentXafAccountInfo' + - $ref: '#/components/schemas/PaymentBdtAccountInfo' + - $ref: '#/components/schemas/PaymentCopAccountInfo' + - $ref: '#/components/schemas/PaymentEgpAccountInfo' + - $ref: '#/components/schemas/PaymentGhsAccountInfo' + - $ref: '#/components/schemas/PaymentGtqAccountInfo' + - $ref: '#/components/schemas/PaymentHtgAccountInfo' + - $ref: '#/components/schemas/PaymentJmdAccountInfo' + - $ref: '#/components/schemas/PaymentPkrAccountInfo' + - $ref: '#/components/schemas/PaymentSparkWalletInfo' + - $ref: '#/components/schemas/PaymentLightningInvoiceInfo' + - $ref: '#/components/schemas/PaymentSolanaWalletInfo' + - $ref: '#/components/schemas/PaymentTronWalletInfo' + - $ref: '#/components/schemas/PaymentPolygonWalletInfo' + - $ref: '#/components/schemas/PaymentBaseWalletInfo' + - $ref: '#/components/schemas/PaymentEthereumWalletInfo' + discriminator: + propertyName: accountType + mapping: + USD_ACCOUNT: '#/components/schemas/PaymentUsdAccountInfo' + BRL_ACCOUNT: '#/components/schemas/PaymentBrlAccountInfo' + MXN_ACCOUNT: '#/components/schemas/PaymentMxnAccountInfo' + DKK_ACCOUNT: '#/components/schemas/PaymentDkkAccountInfo' + EUR_ACCOUNT: '#/components/schemas/PaymentEurAccountInfo' + INR_ACCOUNT: '#/components/schemas/PaymentInrAccountInfo' + NGN_ACCOUNT: '#/components/schemas/PaymentNgnAccountInfo' + CAD_ACCOUNT: '#/components/schemas/PaymentCadAccountInfo' + GBP_ACCOUNT: '#/components/schemas/PaymentGbpAccountInfo' + 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' + SPARK_WALLET: '#/components/schemas/PaymentSparkWalletInfo' + LIGHTNING: '#/components/schemas/PaymentLightningInvoiceInfo' + SOLANA_WALLET: '#/components/schemas/PaymentSolanaWalletInfo' + TRON_WALLET: '#/components/schemas/PaymentTronWalletInfo' + POLYGON_WALLET: '#/components/schemas/PaymentPolygonWalletInfo' + BASE_WALLET: '#/components/schemas/PaymentBaseWalletInfo' + ETHEREUM_WALLET: '#/components/schemas/PaymentEthereumWalletInfo' + AED_ACCOUNT: '#/components/schemas/PaymentAedAccountInfo' + KES_ACCOUNT: '#/components/schemas/PaymentKesAccountInfo' + MWK_ACCOUNT: '#/components/schemas/PaymentMwkAccountInfo' + RWF_ACCOUNT: '#/components/schemas/PaymentRwfAccountInfo' + TZS_ACCOUNT: '#/components/schemas/PaymentTzsAccountInfo' + UGX_ACCOUNT: '#/components/schemas/PaymentUgxAccountInfo' + XOF_ACCOUNT: '#/components/schemas/PaymentXofAccountInfo' + ZAR_ACCOUNT: '#/components/schemas/PaymentZarAccountInfo' + ZMW_ACCOUNT: '#/components/schemas/PaymentZmwAccountInfo' + BWP_ACCOUNT: '#/components/schemas/PaymentBwpAccountInfo' + XAF_ACCOUNT: '#/components/schemas/PaymentXafAccountInfo' + BDT_ACCOUNT: '#/components/schemas/PaymentBdtAccountInfo' + COP_ACCOUNT: '#/components/schemas/PaymentCopAccountInfo' + EGP_ACCOUNT: '#/components/schemas/PaymentEgpAccountInfo' + GHS_ACCOUNT: '#/components/schemas/PaymentGhsAccountInfo' + GTQ_ACCOUNT: '#/components/schemas/PaymentGtqAccountInfo' + HTG_ACCOUNT: '#/components/schemas/PaymentHtgAccountInfo' + JMD_ACCOUNT: '#/components/schemas/PaymentJmdAccountInfo' + PKR_ACCOUNT: '#/components/schemas/PaymentPkrAccountInfo' + InternalAccount: + type: object + required: + - id + - balance + - fundingPaymentInstructions + - createdAt + - updatedAt + properties: + id: + type: string + description: The ID of the internal account + example: InternalAccount:12dcbd6-dced-4ec4-b756-3c3a9ea3d123 + customerId: + type: string + description: The ID of the customer associated with the internal account. If this field is empty, the internal account belongs to the platform. + example: Customer:019542f5-b3e7-1d02-0000-000000000001 + balance: + $ref: '#/components/schemas/CurrencyAmount' + fundingPaymentInstructions: + type: array + description: Payment instructions for funding the account + items: + $ref: '#/components/schemas/PaymentInstructions' + createdAt: + type: string + format: date-time + description: Timestamp when the internal account was created + example: '2025-10-03T12:30:00Z' + updatedAt: + type: string + format: date-time + description: Timestamp when the internal account was last updated + example: '2025-10-03T12:30:00Z' + ExternalAccountStatus: + type: string + enum: + - PENDING + - ACTIVE + - UNDER_REVIEW + - INACTIVE + description: Status of an external account + BeneficiaryVerificationStatus: + type: string + enum: + - MATCHED + - PARTIAL_MATCH + - NOT_MATCHED + - UNSUPPORTED + - CHECKED_BY_RECEIVING_FI + - PENDING + description: | + The result of verifying the beneficiary name against the account holder name. + + | Status | Description | + |--------|-------------| + | `MATCHED` | The beneficiary name is an exact match | + | `PARTIAL_MATCH` | The beneficiary name is a fuzzy match | + | `NOT_MATCHED` | The beneficiary name does not match | + | `UNSUPPORTED` | The payment rail does not support name verification | + | `CHECKED_BY_RECEIVING_FI` | Verification is deferred to the receiving financial institution (e.g. ACH) | + | `PENDING` | Verification is still in progress | + BeneficiaryVerifiedData: + type: object + properties: + fullName: + type: string + description: The verified full name of the account holder as returned by the payment rail + example: John Doe + ExternalAccountType: + type: string + enum: + - GBP_ACCOUNT + - PHP_ACCOUNT + - SGD_ACCOUNT + - SPARK_WALLET + - LIGHTNING + - SOLANA_WALLET + - TRON_WALLET + - POLYGON_WALLET + - BASE_WALLET + - ETHEREUM_WALLET + - AED_ACCOUNT + - BRL_ACCOUNT + - BWP_ACCOUNT + - CAD_ACCOUNT + - DKK_ACCOUNT + - EUR_ACCOUNT + - HKD_ACCOUNT + - IDR_ACCOUNT + - INR_ACCOUNT + - KES_ACCOUNT + - MWK_ACCOUNT + - MXN_ACCOUNT + - MYR_ACCOUNT + - NGN_ACCOUNT + - RWF_ACCOUNT + - THB_ACCOUNT + - TZS_ACCOUNT + - UGX_ACCOUNT + - USD_ACCOUNT + - VND_ACCOUNT + - XAF_ACCOUNT + - XOF_ACCOUNT + - ZAR_ACCOUNT + - ZMW_ACCOUNT + description: Type of external account or wallet + example: GBP_ACCOUNT + BaseExternalAccountInfo: + type: object + required: + - accountType + properties: + accountType: + $ref: '#/components/schemas/ExternalAccountType' + BrlAccountInfo: + 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: + - CPF + - CNPJ + - EMAIL + - PHONE + - RANDOM + taxId: + type: string + description: The tax ID (CPF or CNPJ) + minLength: 11 + maxLength: 14 + pattern: ^[0-9]{11,14}$ + BrlBeneficiary: + title: Individual Beneficiary + type: object + required: + - beneficiaryType + - fullName + properties: + beneficiaryType: + type: string + enum: + - INDIVIDUAL + fullName: + type: string + description: The full name of the beneficiary + birthDate: + type: string + description: The birth date of the beneficiary + nationality: + type: string + description: The nationality of the beneficiary + email: + type: string + description: The email of the beneficiary + phoneNumber: + type: string + description: The phone number of the beneficiary + countryOfResidence: + type: string + description: The country of residence of the beneficiary + address: + $ref: '#/components/schemas/Address' + BusinessBeneficiary: + title: Business Beneficiary + type: object + required: + - beneficiaryType + - legalName + properties: + beneficiaryType: + type: string + enum: + - BUSINESS + legalName: + type: string + description: The legal name of the business + registrationNumber: + type: string + description: The registration number of the business + taxId: + type: string + description: The tax identification number of the business + email: + type: string + description: The email of the beneficiary + phoneNumber: + type: string + description: The phone number of the beneficiary + countryOfResidence: + type: string + description: The country of residence of the beneficiary + address: + $ref: '#/components/schemas/Address' + BrlExternalAccountInfo: + title: BRL Account + allOf: + - $ref: '#/components/schemas/BaseExternalAccountInfo' + - $ref: '#/components/schemas/BrlAccountInfo' + - type: object + required: + - beneficiary + properties: + beneficiary: + oneOf: + - title: Individual Beneficiary + $ref: '#/components/schemas/BrlBeneficiary' + - title: Business Beneficiary + $ref: '#/components/schemas/BusinessBeneficiary' + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: '#/components/schemas/BrlBeneficiary' + BUSINESS: '#/components/schemas/BusinessBeneficiary' + CadBeneficiary: + title: Individual Beneficiary + type: object + required: + - beneficiaryType + - fullName + properties: + beneficiaryType: + type: string + enum: + - INDIVIDUAL + fullName: + type: string + description: The full name of the beneficiary + birthDate: + type: string + description: The birth date of the beneficiary + nationality: + type: string + description: The nationality of the beneficiary + email: + type: string + description: The email of the beneficiary + phoneNumber: + type: string + description: The phone number of the beneficiary + registrationNumber: + type: string + description: The registration number of the beneficiary + countryOfResidence: + type: string + description: The country of residence of the beneficiary + address: + $ref: '#/components/schemas/Address' + CadExternalAccountInfo: + title: CAD Account + allOf: + - $ref: '#/components/schemas/BaseExternalAccountInfo' + - $ref: '#/components/schemas/CadAccountInfo' + - type: object + required: + - beneficiary + properties: + beneficiary: + oneOf: + - title: Individual Beneficiary + $ref: '#/components/schemas/CadBeneficiary' + - title: Business Beneficiary + $ref: '#/components/schemas/BusinessBeneficiary' + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: '#/components/schemas/CadBeneficiary' + BUSINESS: '#/components/schemas/BusinessBeneficiary' + DkkBeneficiary: + title: Individual Beneficiary + type: object + required: + - beneficiaryType + - fullName + properties: + beneficiaryType: + type: string + enum: + - INDIVIDUAL + fullName: + type: string + description: The full name of the beneficiary + birthDate: + type: string + description: The birth date of the beneficiary + nationality: + type: string + description: The nationality of the beneficiary + email: + type: string + description: The email of the beneficiary + phoneNumber: + type: string + description: The phone number of the beneficiary + countryOfResidence: + type: string + description: The country of residence of the beneficiary + address: + $ref: '#/components/schemas/Address' + DkkExternalAccountInfo: + title: DKK Account + allOf: + - $ref: '#/components/schemas/BaseExternalAccountInfo' + - $ref: '#/components/schemas/DkkAccountInfo' + - type: object + required: + - beneficiary + properties: + beneficiary: + oneOf: + - title: Individual Beneficiary + $ref: '#/components/schemas/DkkBeneficiary' + - title: Business Beneficiary + $ref: '#/components/schemas/BusinessBeneficiary' + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: '#/components/schemas/DkkBeneficiary' + BUSINESS: '#/components/schemas/BusinessBeneficiary' + EurBeneficiary: + title: Individual Beneficiary + type: object + required: + - beneficiaryType + - address + - fullName + properties: + beneficiaryType: + type: string + enum: + - INDIVIDUAL + fullName: type: string - description: The tax ID (CPF or CNPJ) - minLength: 11 - maxLength: 14 - pattern: ^[0-9]{11,14}$ - BrlBeneficiary: + description: The full name of the beneficiary + birthDate: + type: string + description: The birth date of the beneficiary + nationality: + type: string + description: The nationality of the beneficiary + email: + type: string + description: The email of the beneficiary + phoneNumber: + type: string + description: The phone number of the beneficiary + countryOfResidence: + type: string + description: The country of residence of the beneficiary + address: + $ref: '#/components/schemas/Address' + EurExternalAccountInfo: + title: EUR Account + allOf: + - $ref: '#/components/schemas/BaseExternalAccountInfo' + - $ref: '#/components/schemas/EurAccountInfo' + - type: object + required: + - beneficiary + properties: + beneficiary: + oneOf: + - title: Individual Beneficiary + $ref: '#/components/schemas/EurBeneficiary' + - title: Business Beneficiary + $ref: '#/components/schemas/BusinessBeneficiary' + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: '#/components/schemas/EurBeneficiary' + BUSINESS: '#/components/schemas/BusinessBeneficiary' + GbpBeneficiary: + title: Individual Beneficiary + type: object + required: + - beneficiaryType + - fullName + properties: + beneficiaryType: + type: string + enum: + - INDIVIDUAL + fullName: + type: string + description: The full name of the beneficiary + birthDate: + type: string + description: The birth date of the beneficiary + nationality: + type: string + description: The nationality of the beneficiary + email: + type: string + description: The email of the beneficiary + phoneNumber: + type: string + description: The phone number of the beneficiary + countryOfResidence: + type: string + description: The country of residence of the beneficiary + address: + $ref: '#/components/schemas/Address' + GbpExternalAccountInfo: + title: GBP Account + allOf: + - $ref: '#/components/schemas/BaseExternalAccountInfo' + - $ref: '#/components/schemas/GbpAccountInfo' + - type: object + required: + - beneficiary + properties: + beneficiary: + oneOf: + - title: Individual Beneficiary + $ref: '#/components/schemas/GbpBeneficiary' + - title: Business Beneficiary + $ref: '#/components/schemas/BusinessBeneficiary' + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: '#/components/schemas/GbpBeneficiary' + BUSINESS: '#/components/schemas/BusinessBeneficiary' + HkdBeneficiary: + title: Individual Beneficiary + type: object + required: + - beneficiaryType + - fullName + properties: + beneficiaryType: + type: string + enum: + - INDIVIDUAL + fullName: + type: string + description: The full name of the beneficiary + birthDate: + type: string + description: The birth date of the beneficiary + nationality: + type: string + description: The nationality of the beneficiary + email: + type: string + description: The email of the beneficiary + phoneNumber: + type: string + description: The phone number of the beneficiary + countryOfResidence: + type: string + description: The country of residence of the beneficiary + address: + $ref: '#/components/schemas/Address' + HkdExternalAccountInfo: + title: HKD Account + allOf: + - $ref: '#/components/schemas/BaseExternalAccountInfo' + - $ref: '#/components/schemas/HkdAccountInfo' + - type: object + required: + - beneficiary + properties: + beneficiary: + oneOf: + - title: Individual Beneficiary + $ref: '#/components/schemas/HkdBeneficiary' + - title: Business Beneficiary + $ref: '#/components/schemas/BusinessBeneficiary' + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: '#/components/schemas/HkdBeneficiary' + BUSINESS: '#/components/schemas/BusinessBeneficiary' + IdrBeneficiary: + title: Individual Beneficiary + type: object + required: + - beneficiaryType + - fullName + properties: + beneficiaryType: + type: string + enum: + - INDIVIDUAL + fullName: + type: string + description: The full name of the beneficiary + birthDate: + type: string + description: The birth date of the beneficiary + nationality: + type: string + description: The nationality of the beneficiary + email: + type: string + description: The email of the beneficiary + phoneNumber: + type: string + description: The phone number of the beneficiary + countryOfResidence: + type: string + description: The country of residence of the beneficiary + address: + $ref: '#/components/schemas/Address' + IdrExternalAccountInfo: + title: IDR Account + allOf: + - $ref: '#/components/schemas/BaseExternalAccountInfo' + - $ref: '#/components/schemas/IdrAccountInfo' + - type: object + required: + - beneficiary + properties: + beneficiary: + oneOf: + - title: Individual Beneficiary + $ref: '#/components/schemas/IdrBeneficiary' + - title: Business Beneficiary + $ref: '#/components/schemas/BusinessBeneficiary' + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: '#/components/schemas/IdrBeneficiary' + BUSINESS: '#/components/schemas/BusinessBeneficiary' + InrBeneficiary: + title: Individual Beneficiary + type: object + required: + - beneficiaryType + - fullName + properties: + beneficiaryType: + type: string + enum: + - INDIVIDUAL + fullName: + type: string + description: The full name of the beneficiary + birthDate: + type: string + description: The birth date of the beneficiary + nationality: + type: string + description: The nationality of the beneficiary + email: + type: string + description: The email of the beneficiary + phoneNumber: + type: string + description: The phone number of the beneficiary + countryOfResidence: + type: string + description: The country of residence of the beneficiary + address: + $ref: '#/components/schemas/Address' + InrExternalAccountInfo: + title: INR Account + allOf: + - $ref: '#/components/schemas/BaseExternalAccountInfo' + - $ref: '#/components/schemas/InrAccountInfo' + - type: object + required: + - beneficiary + properties: + beneficiary: + oneOf: + - title: Individual Beneficiary + $ref: '#/components/schemas/InrBeneficiary' + - title: Business Beneficiary + $ref: '#/components/schemas/BusinessBeneficiary' + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: '#/components/schemas/InrBeneficiary' + BUSINESS: '#/components/schemas/BusinessBeneficiary' + KesBeneficiary: title: Individual Beneficiary type: object required: @@ -7291,50 +8135,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary - countryOfResidence: - type: string - description: The country of residence of the beneficiary - address: - $ref: '#/components/schemas/Address' - BusinessBeneficiary: - title: Business Beneficiary - type: object - required: - - beneficiaryType - - legalName - properties: - beneficiaryType: - type: string - enum: - - BUSINESS - legalName: - type: string - description: The legal name of the business - registrationNumber: - type: string - description: The registration number of the business - taxId: - type: string - description: The tax identification number of the business - email: - type: string - description: The email of the beneficiary - phoneNumber: - type: string - description: The phone number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - BrlExternalAccountInfo: - title: BRL Account + KesExternalAccountInfo: + title: KES Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/BrlAccountInfo' + - $ref: '#/components/schemas/KesAccountInfo' - type: object required: - beneficiary @@ -7342,15 +8152,15 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/BrlBeneficiary' + $ref: '#/components/schemas/KesBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/BrlBeneficiary' + INDIVIDUAL: '#/components/schemas/KesBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - CadBeneficiary: + MwkBeneficiary: title: Individual Beneficiary type: object required: @@ -7376,19 +8186,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - CadExternalAccountInfo: - title: CAD Account + MwkExternalAccountInfo: + title: MWK Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/CadAccountInfo' + - $ref: '#/components/schemas/MwkAccountInfo' - type: object required: - beneficiary @@ -7396,15 +8203,15 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/CadBeneficiary' + $ref: '#/components/schemas/MwkBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/CadBeneficiary' + INDIVIDUAL: '#/components/schemas/MwkBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - DkkBeneficiary: + MxnBeneficiary: title: Individual Beneficiary type: object required: @@ -7430,19 +8237,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - DkkExternalAccountInfo: - title: DKK Account + MxnExternalAccountInfo: + title: MXN Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/DkkAccountInfo' + - $ref: '#/components/schemas/MxnAccountInfo' - type: object required: - beneficiary @@ -7450,15 +8254,15 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/DkkBeneficiary' + $ref: '#/components/schemas/MxnBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/DkkBeneficiary' + INDIVIDUAL: '#/components/schemas/MxnBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - EurBeneficiary: + MyrBeneficiary: title: Individual Beneficiary type: object required: @@ -7484,19 +8288,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - EurExternalAccountInfo: - title: EUR Account + MyrExternalAccountInfo: + title: MYR Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/EurAccountInfo' + - $ref: '#/components/schemas/MyrAccountInfo' - type: object required: - beneficiary @@ -7504,15 +8305,15 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/EurBeneficiary' + $ref: '#/components/schemas/MyrBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/EurBeneficiary' + INDIVIDUAL: '#/components/schemas/MyrBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - GbpBeneficiary: + NgnBeneficiary: title: Individual Beneficiary type: object required: @@ -7538,19 +8339,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - GbpExternalAccountInfo: - title: GBP Account + NgnExternalAccountInfo: + title: NGN Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/GbpAccountInfo' + - $ref: '#/components/schemas/NgnAccountInfo' - type: object required: - beneficiary @@ -7558,15 +8356,15 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/GbpBeneficiary' + $ref: '#/components/schemas/NgnBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/GbpBeneficiary' + INDIVIDUAL: '#/components/schemas/NgnBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - HkdBeneficiary: + PhpBeneficiary: title: Individual Beneficiary type: object required: @@ -7592,19 +8390,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - HkdExternalAccountInfo: - title: HKD Account + PhpExternalAccountInfo: + title: PHP Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/HkdAccountInfo' + - $ref: '#/components/schemas/PhpAccountInfo' - type: object required: - beneficiary @@ -7612,15 +8407,15 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/HkdBeneficiary' + $ref: '#/components/schemas/PhpBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/HkdBeneficiary' + INDIVIDUAL: '#/components/schemas/PhpBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - IdrBeneficiary: + RwfBeneficiary: title: Individual Beneficiary type: object required: @@ -7646,19 +8441,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - IdrExternalAccountInfo: - title: IDR Account + RwfExternalAccountInfo: + title: RWF Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/IdrAccountInfo' + - $ref: '#/components/schemas/RwfAccountInfo' - type: object required: - beneficiary @@ -7666,15 +8458,15 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/IdrBeneficiary' + $ref: '#/components/schemas/RwfBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/IdrBeneficiary' + INDIVIDUAL: '#/components/schemas/RwfBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - InrBeneficiary: + SgdBeneficiary: title: Individual Beneficiary type: object required: @@ -7700,19 +8492,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - InrExternalAccountInfo: - title: INR Account + SgdExternalAccountInfo: + title: SGD Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/InrAccountInfo' + - $ref: '#/components/schemas/SgdAccountInfo' - type: object required: - beneficiary @@ -7720,15 +8509,15 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/InrBeneficiary' + $ref: '#/components/schemas/SgdBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/InrBeneficiary' + INDIVIDUAL: '#/components/schemas/SgdBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - KesBeneficiary: + ThbBeneficiary: title: Individual Beneficiary type: object required: @@ -7754,19 +8543,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - KesExternalAccountInfo: - title: KES Account + ThbExternalAccountInfo: + title: THB Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/KesAccountInfo' + - $ref: '#/components/schemas/ThbAccountInfo' - type: object required: - beneficiary @@ -7774,15 +8560,15 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/KesBeneficiary' + $ref: '#/components/schemas/ThbBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/KesBeneficiary' + INDIVIDUAL: '#/components/schemas/ThbBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - MwkBeneficiary: + TzsBeneficiary: title: Individual Beneficiary type: object required: @@ -7808,19 +8594,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - MwkExternalAccountInfo: - title: MWK Account + TzsExternalAccountInfo: + title: TZS Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/MwkAccountInfo' + - $ref: '#/components/schemas/TzsAccountInfo' - type: object required: - beneficiary @@ -7828,15 +8611,15 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/MwkBeneficiary' + $ref: '#/components/schemas/TzsBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/MwkBeneficiary' + INDIVIDUAL: '#/components/schemas/TzsBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - MxnBeneficiary: + UgxBeneficiary: title: Individual Beneficiary type: object required: @@ -7862,19 +8645,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - MxnExternalAccountInfo: - title: MXN Account + UgxExternalAccountInfo: + title: UGX Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/MxnAccountInfo' + - $ref: '#/components/schemas/UgxAccountInfo' - type: object required: - beneficiary @@ -7882,15 +8662,15 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/MxnBeneficiary' + $ref: '#/components/schemas/UgxBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/MxnBeneficiary' + INDIVIDUAL: '#/components/schemas/UgxBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - MyrBeneficiary: + UsdBeneficiary: title: Individual Beneficiary type: object required: @@ -7916,19 +8696,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - MyrExternalAccountInfo: - title: MYR Account + UsdExternalAccountInfo: + title: USD Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/MyrAccountInfo' + - $ref: '#/components/schemas/UsdAccountInfo' - type: object required: - beneficiary @@ -7936,15 +8713,15 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/MyrBeneficiary' + $ref: '#/components/schemas/UsdBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/MyrBeneficiary' + INDIVIDUAL: '#/components/schemas/UsdBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - NgnBeneficiary: + VndBeneficiary: title: Individual Beneficiary type: object required: @@ -7970,19 +8747,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - NgnExternalAccountInfo: - title: NGN Account + VndExternalAccountInfo: + title: VND Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/NgnAccountInfo' + - $ref: '#/components/schemas/VndAccountInfo' - type: object required: - beneficiary @@ -7990,15 +8764,15 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/NgnBeneficiary' + $ref: '#/components/schemas/VndBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/NgnBeneficiary' + INDIVIDUAL: '#/components/schemas/VndBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - PhpBeneficiary: + XofBeneficiary: title: Individual Beneficiary type: object required: @@ -8024,19 +8798,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - PhpExternalAccountInfo: - title: PHP Account + XofExternalAccountInfo: + title: XOF Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/PhpAccountInfo' + - $ref: '#/components/schemas/XofAccountInfo' - type: object required: - beneficiary @@ -8044,15 +8815,15 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/PhpBeneficiary' + $ref: '#/components/schemas/XofBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/PhpBeneficiary' + INDIVIDUAL: '#/components/schemas/XofBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - RwfBeneficiary: + ZarBeneficiary: title: Individual Beneficiary type: object required: @@ -8078,19 +8849,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - RwfExternalAccountInfo: - title: RWF Account + ZarExternalAccountInfo: + title: ZAR Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/RwfAccountInfo' + - $ref: '#/components/schemas/ZarAccountInfo' - type: object required: - beneficiary @@ -8098,15 +8866,15 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/RwfBeneficiary' + $ref: '#/components/schemas/ZarBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/RwfBeneficiary' + INDIVIDUAL: '#/components/schemas/ZarBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - SgdBeneficiary: + ZmwBeneficiary: title: Individual Beneficiary type: object required: @@ -8132,19 +8900,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - SgdExternalAccountInfo: - title: SGD Account + ZmwExternalAccountInfo: + title: ZMW Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/SgdAccountInfo' + - $ref: '#/components/schemas/ZmwAccountInfo' - type: object required: - beneficiary @@ -8152,15 +8917,73 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/SgdBeneficiary' + $ref: '#/components/schemas/ZmwBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/SgdBeneficiary' + INDIVIDUAL: '#/components/schemas/ZmwBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - ThbBeneficiary: + SparkWalletExternalAccountInfo: + title: Spark Wallet + allOf: + - $ref: '#/components/schemas/BaseExternalAccountInfo' + - $ref: '#/components/schemas/SparkWalletInfo' + LightningInfo: + type: object + description: | + Lightning payment destination. Exactly one of `invoice`, `bolt12`, or `lightningAddress` must be provided. + required: + - accountType + properties: + accountType: + type: string + enum: + - LIGHTNING + invoice: + type: string + description: 1-time use lightning bolt11 invoice payout destination + example: lnbc15u1p3xnhl2pp5jptserfk3zk4qy42tlucycrfwxhydvlemu9pqr93tuzlv9cc7g3sdqsvfhkcap3xyhx7un8cqzpgxqzjcsp5f8c52y2stc300gl6s4xswtjpc37hrnnr3c9wvtgjfuvqmpm35evq9qyyssqy4lgd8tj637qcjp05rdpxxykjenthxftej7a2zzmwrmrl70fyj9hvj0rewhzj7jfyuwkwcg9g2jpwtk3wkjtwnkdks84hsnu8xps5vsq4gj5hs + bolt12: + type: string + description: A bolt12 offer which can be reused as a payment destination + example: lnbc15u1p3xnhl2pp5jptserfk3zk4qy42tlucycrfwxhydvlemu9pqr93tuzlv9cc7g3sdqsvfhkcap3xyhx7un8cqzpgxqzjcsp5f8c52y2stc300gl6s4xswtjpc37hrnnr3c9wvtgjfuvqmpm35evq9qyyssqy4lgd8tj637qcjp05rdpxxykjenthxftej7a2zzmwrmrl70fyj9hvj0rewhzj7jfyuwkwcg9g2jpwtk3wkjtwnkdks84hsnu8xps5vsq4gj5hs + lightningAddress: + type: string + description: A lightning address which can be used as a payment destination. Note that for UMA addresses, no external account is needed. You can use the UMA address directly as a destination. + example: john.doe@lightningwallet.com + LightningExternalAccountInfo: + title: Lightning + allOf: + - $ref: '#/components/schemas/BaseExternalAccountInfo' + - $ref: '#/components/schemas/LightningInfo' + SolanaWalletExternalAccountInfo: + title: Solana Wallet + allOf: + - $ref: '#/components/schemas/BaseExternalAccountInfo' + - $ref: '#/components/schemas/SolanaWalletInfo' + TronWalletExternalAccountInfo: + title: Tron Wallet + allOf: + - $ref: '#/components/schemas/BaseExternalAccountInfo' + - $ref: '#/components/schemas/TronWalletInfo' + PolygonWalletExternalAccountInfo: + title: Polygon Wallet + allOf: + - $ref: '#/components/schemas/BaseExternalAccountInfo' + - $ref: '#/components/schemas/PolygonWalletInfo' + BaseWalletExternalAccountInfo: + title: Base Wallet + allOf: + - $ref: '#/components/schemas/BaseExternalAccountInfo' + - $ref: '#/components/schemas/BaseWalletInfo' + EthereumWalletExternalAccountInfo: + title: Ethereum L1 Wallet + allOf: + - $ref: '#/components/schemas/BaseExternalAccountInfo' + - $ref: '#/components/schemas/EthereumWalletInfo' + AedBeneficiary: title: Individual Beneficiary type: object required: @@ -8186,19 +9009,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - ThbExternalAccountInfo: - title: THB Account + AedExternalAccountInfo: + title: AED Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/ThbAccountInfo' + - $ref: '#/components/schemas/AedAccountInfo' - type: object required: - beneficiary @@ -8206,15 +9026,15 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/ThbBeneficiary' + $ref: '#/components/schemas/AedBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/ThbBeneficiary' + INDIVIDUAL: '#/components/schemas/AedBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - TzsBeneficiary: + BwpBeneficiary: title: Individual Beneficiary type: object required: @@ -8240,19 +9060,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - TzsExternalAccountInfo: - title: TZS Account + BwpExternalAccountInfo: + title: BWP Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/TzsAccountInfo' + - $ref: '#/components/schemas/BwpAccountInfo' - type: object required: - beneficiary @@ -8260,15 +9077,15 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/TzsBeneficiary' + $ref: '#/components/schemas/BwpBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/TzsBeneficiary' + INDIVIDUAL: '#/components/schemas/BwpBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - UgxBeneficiary: + XafBeneficiary: title: Individual Beneficiary type: object required: @@ -8294,19 +9111,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - UgxExternalAccountInfo: - title: UGX Account + XafExternalAccountInfo: + title: XAF Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/UgxAccountInfo' + - $ref: '#/components/schemas/XafAccountInfo' - type: object required: - beneficiary @@ -8314,22 +9128,20 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/UgxBeneficiary' + $ref: '#/components/schemas/XafBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/UgxBeneficiary' + INDIVIDUAL: '#/components/schemas/XafBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - UsdBeneficiary: + BdtBeneficiary: title: Individual Beneficiary type: object required: - beneficiaryType - - birthDate - fullName - - nationality properties: beneficiaryType: type: string @@ -8350,19 +9162,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - UsdExternalAccountInfo: - title: USD Account + BdtExternalAccountInfo: + title: BDT Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/UsdAccountInfo' + - $ref: '#/components/schemas/BdtAccountInfo' - type: object required: - beneficiary @@ -8370,19 +9179,20 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/UsdBeneficiary' + $ref: '#/components/schemas/BdtBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/UsdBeneficiary' + INDIVIDUAL: '#/components/schemas/BdtBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - VndBeneficiary: + CopBeneficiary: title: Individual Beneficiary type: object required: - beneficiaryType + - countryOfResidence - fullName properties: beneficiaryType: @@ -8404,19 +9214,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - VndExternalAccountInfo: - title: VND Account + CopExternalAccountInfo: + title: COP Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/VndAccountInfo' + - $ref: '#/components/schemas/CopAccountInfo' - type: object required: - beneficiary @@ -8424,20 +9231,23 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/VndBeneficiary' + $ref: '#/components/schemas/CopBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/VndBeneficiary' + INDIVIDUAL: '#/components/schemas/CopBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - XofBeneficiary: + EgpBeneficiary: title: Individual Beneficiary type: object required: - beneficiaryType + - address + - countryOfResidence - fullName + - phoneNumber properties: beneficiaryType: type: string @@ -8458,19 +9268,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - XofExternalAccountInfo: - title: XOF Account + EgpExternalAccountInfo: + title: EGP Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/XofAccountInfo' + - $ref: '#/components/schemas/EgpAccountInfo' - type: object required: - beneficiary @@ -8478,15 +9285,15 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/XofBeneficiary' + $ref: '#/components/schemas/EgpBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/XofBeneficiary' + INDIVIDUAL: '#/components/schemas/EgpBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - ZarBeneficiary: + GhsBeneficiary: title: Individual Beneficiary type: object required: @@ -8512,19 +9319,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - ZarExternalAccountInfo: - title: ZAR Account + GhsExternalAccountInfo: + title: GHS Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/ZarAccountInfo' + - $ref: '#/components/schemas/GhsAccountInfo' - type: object required: - beneficiary @@ -8532,19 +9336,20 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/ZarBeneficiary' + $ref: '#/components/schemas/GhsBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/ZarBeneficiary' + INDIVIDUAL: '#/components/schemas/GhsBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - ZmwBeneficiary: + GtqBeneficiary: title: Individual Beneficiary type: object required: - beneficiaryType + - countryOfResidence - fullName properties: beneficiaryType: @@ -8566,19 +9371,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - ZmwExternalAccountInfo: - title: ZMW Account + GtqExternalAccountInfo: + title: GTQ Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/ZmwAccountInfo' + - $ref: '#/components/schemas/GtqAccountInfo' - type: object required: - beneficiary @@ -8586,73 +9388,15 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/ZmwBeneficiary' + $ref: '#/components/schemas/GtqBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/ZmwBeneficiary' + INDIVIDUAL: '#/components/schemas/GtqBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - SparkWalletExternalAccountInfo: - title: Spark Wallet - allOf: - - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/SparkWalletInfo' - LightningInfo: - type: object - description: | - Lightning payment destination. Exactly one of `invoice`, `bolt12`, or `lightningAddress` must be provided. - required: - - accountType - properties: - accountType: - type: string - enum: - - LIGHTNING - invoice: - type: string - description: 1-time use lightning bolt11 invoice payout destination - example: lnbc15u1p3xnhl2pp5jptserfk3zk4qy42tlucycrfwxhydvlemu9pqr93tuzlv9cc7g3sdqsvfhkcap3xyhx7un8cqzpgxqzjcsp5f8c52y2stc300gl6s4xswtjpc37hrnnr3c9wvtgjfuvqmpm35evq9qyyssqy4lgd8tj637qcjp05rdpxxykjenthxftej7a2zzmwrmrl70fyj9hvj0rewhzj7jfyuwkwcg9g2jpwtk3wkjtwnkdks84hsnu8xps5vsq4gj5hs - bolt12: - type: string - description: A bolt12 offer which can be reused as a payment destination - example: lnbc15u1p3xnhl2pp5jptserfk3zk4qy42tlucycrfwxhydvlemu9pqr93tuzlv9cc7g3sdqsvfhkcap3xyhx7un8cqzpgxqzjcsp5f8c52y2stc300gl6s4xswtjpc37hrnnr3c9wvtgjfuvqmpm35evq9qyyssqy4lgd8tj637qcjp05rdpxxykjenthxftej7a2zzmwrmrl70fyj9hvj0rewhzj7jfyuwkwcg9g2jpwtk3wkjtwnkdks84hsnu8xps5vsq4gj5hs - lightningAddress: - type: string - description: A lightning address which can be used as a payment destination. Note that for UMA addresses, no external account is needed. You can use the UMA address directly as a destination. - example: john.doe@lightningwallet.com - LightningExternalAccountInfo: - title: Lightning - allOf: - - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/LightningInfo' - SolanaWalletExternalAccountInfo: - title: Solana Wallet - allOf: - - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/SolanaWalletInfo' - TronWalletExternalAccountInfo: - title: Tron Wallet - allOf: - - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/TronWalletInfo' - PolygonWalletExternalAccountInfo: - title: Polygon Wallet - allOf: - - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/PolygonWalletInfo' - BaseWalletExternalAccountInfo: - title: Base Wallet - allOf: - - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/BaseWalletInfo' - EthereumWalletExternalAccountInfo: - title: Ethereum L1 Wallet - allOf: - - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/EthereumWalletInfo' - AedBeneficiary: + HtgBeneficiary: title: Individual Beneficiary type: object required: @@ -8678,19 +9422,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - AedExternalAccountInfo: - title: AED Account + HtgExternalAccountInfo: + title: HTG Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/AedAccountInfo' + - $ref: '#/components/schemas/HtgAccountInfo' - type: object required: - beneficiary @@ -8698,20 +9439,22 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/AedBeneficiary' + $ref: '#/components/schemas/HtgBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/AedBeneficiary' + INDIVIDUAL: '#/components/schemas/HtgBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - BwpBeneficiary: + JmdBeneficiary: title: Individual Beneficiary type: object required: - beneficiaryType + - address - fullName + - phoneNumber properties: beneficiaryType: type: string @@ -8732,19 +9475,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - BwpExternalAccountInfo: - title: BWP Account + JmdExternalAccountInfo: + title: JMD Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/BwpAccountInfo' + - $ref: '#/components/schemas/JmdAccountInfo' - type: object required: - beneficiary @@ -8752,15 +9492,15 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/BwpBeneficiary' + $ref: '#/components/schemas/JmdBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/BwpBeneficiary' + INDIVIDUAL: '#/components/schemas/JmdBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' - XafBeneficiary: + PkrBeneficiary: title: Individual Beneficiary type: object required: @@ -8786,19 +9526,16 @@ components: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary address: $ref: '#/components/schemas/Address' - XafExternalAccountInfo: - title: XAF Account + PkrExternalAccountInfo: + title: PKR Account allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/XafAccountInfo' + - $ref: '#/components/schemas/PkrAccountInfo' - type: object required: - beneficiary @@ -8806,13 +9543,13 @@ components: beneficiary: oneOf: - title: Individual Beneficiary - $ref: '#/components/schemas/XafBeneficiary' + $ref: '#/components/schemas/PkrBeneficiary' - title: Business Beneficiary $ref: '#/components/schemas/BusinessBeneficiary' discriminator: propertyName: beneficiaryType mapping: - INDIVIDUAL: '#/components/schemas/XafBeneficiary' + INDIVIDUAL: '#/components/schemas/PkrBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' ExternalAccountInfoOneOf: oneOf: @@ -8850,6 +9587,14 @@ components: - $ref: '#/components/schemas/AedExternalAccountInfo' - $ref: '#/components/schemas/BwpExternalAccountInfo' - $ref: '#/components/schemas/XafExternalAccountInfo' + - $ref: '#/components/schemas/BdtExternalAccountInfo' + - $ref: '#/components/schemas/CopExternalAccountInfo' + - $ref: '#/components/schemas/EgpExternalAccountInfo' + - $ref: '#/components/schemas/GhsExternalAccountInfo' + - $ref: '#/components/schemas/GtqExternalAccountInfo' + - $ref: '#/components/schemas/HtgExternalAccountInfo' + - $ref: '#/components/schemas/JmdExternalAccountInfo' + - $ref: '#/components/schemas/PkrExternalAccountInfo' discriminator: propertyName: accountType mapping: @@ -8887,6 +9632,15 @@ components: AED_ACCOUNT: '#/components/schemas/AedExternalAccountInfo' BWP_ACCOUNT: '#/components/schemas/BwpExternalAccountInfo' XAF_ACCOUNT: '#/components/schemas/XafExternalAccountInfo' + BDT_ACCOUNT: '#/components/schemas/BdtExternalAccountInfo' + COP_ACCOUNT: '#/components/schemas/CopExternalAccountInfo' + EGP_ACCOUNT: '#/components/schemas/EgpExternalAccountInfo' + GHS_ACCOUNT: '#/components/schemas/GhsExternalAccountInfo' + GTQ_ACCOUNT: '#/components/schemas/GtqExternalAccountInfo' + HTG_ACCOUNT: '#/components/schemas/HtgExternalAccountInfo' + JMD_ACCOUNT: '#/components/schemas/JmdExternalAccountInfo' + LIGHTNING_ACCOUNT: '#/components/schemas/LightningExternalAccountInfo' + PKR_ACCOUNT: '#/components/schemas/PkrExternalAccountInfo' ExternalAccount: allOf: - type: object diff --git a/openapi/components/schemas/common/AedBeneficiary.yaml b/openapi/components/schemas/common/AedBeneficiary.yaml index c3941bc0..d9332d63 100644 --- a/openapi/components/schemas/common/AedBeneficiary.yaml +++ b/openapi/components/schemas/common/AedBeneficiary.yaml @@ -23,9 +23,6 @@ properties: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary diff --git a/openapi/components/schemas/common/BdtAccountInfo.yaml b/openapi/components/schemas/common/BdtAccountInfo.yaml new file mode 100644 index 00000000..d552be0f --- /dev/null +++ b/openapi/components/schemas/common/BdtAccountInfo.yaml @@ -0,0 +1,44 @@ +type: object +required: +- accountType +- paymentRails +- accountNumber +- branchCode +- phoneNumber +properties: + accountType: + type: string + enum: + - BDT_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER + - MOBILE_MONEY + 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/BdtBeneficiary.yaml b/openapi/components/schemas/common/BdtBeneficiary.yaml new file mode 100644 index 00000000..d9332d63 --- /dev/null +++ b/openapi/components/schemas/common/BdtBeneficiary.yaml @@ -0,0 +1,30 @@ +title: Individual Beneficiary +type: object +required: +- beneficiaryType +- fullName +properties: + beneficiaryType: + type: string + enum: + - INDIVIDUAL + fullName: + type: string + description: The full name of the beneficiary + birthDate: + type: string + description: The birth date of the beneficiary + nationality: + type: string + description: The nationality of the beneficiary + email: + type: string + description: The email of the beneficiary + phoneNumber: + type: string + description: The phone number of the beneficiary + countryOfResidence: + type: string + description: The country of residence of the beneficiary + address: + $ref: ./Address.yaml diff --git a/openapi/components/schemas/common/BrlBeneficiary.yaml b/openapi/components/schemas/common/BrlBeneficiary.yaml index c3941bc0..d9332d63 100644 --- a/openapi/components/schemas/common/BrlBeneficiary.yaml +++ b/openapi/components/schemas/common/BrlBeneficiary.yaml @@ -23,9 +23,6 @@ properties: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary diff --git a/openapi/components/schemas/common/BwpBeneficiary.yaml b/openapi/components/schemas/common/BwpBeneficiary.yaml index c3941bc0..d9332d63 100644 --- a/openapi/components/schemas/common/BwpBeneficiary.yaml +++ b/openapi/components/schemas/common/BwpBeneficiary.yaml @@ -23,9 +23,6 @@ properties: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary diff --git a/openapi/components/schemas/common/CopAccountInfo.yaml b/openapi/components/schemas/common/CopAccountInfo.yaml new file mode 100644 index 00000000..0eb3d1c1 --- /dev/null +++ b/openapi/components/schemas/common/CopAccountInfo.yaml @@ -0,0 +1,37 @@ +type: object +required: +- accountType +- paymentRails +- accountNumber +- bankAccountType +- phoneNumber +properties: + accountType: + type: string + enum: + - COP_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER + - MOBILE_MONEY + 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/CopBeneficiary.yaml b/openapi/components/schemas/common/CopBeneficiary.yaml new file mode 100644 index 00000000..b834477b --- /dev/null +++ b/openapi/components/schemas/common/CopBeneficiary.yaml @@ -0,0 +1,31 @@ +title: Individual Beneficiary +type: object +required: +- beneficiaryType +- countryOfResidence +- fullName +properties: + beneficiaryType: + type: string + enum: + - INDIVIDUAL + fullName: + type: string + description: The full name of the beneficiary + birthDate: + type: string + description: The birth date of the beneficiary + nationality: + type: string + description: The nationality of the beneficiary + email: + type: string + description: The email of the beneficiary + phoneNumber: + type: string + description: The phone number of the beneficiary + countryOfResidence: + type: string + description: The country of residence of the beneficiary + address: + $ref: ./Address.yaml diff --git a/openapi/components/schemas/common/DkkBeneficiary.yaml b/openapi/components/schemas/common/DkkBeneficiary.yaml index c3941bc0..d9332d63 100644 --- a/openapi/components/schemas/common/DkkBeneficiary.yaml +++ b/openapi/components/schemas/common/DkkBeneficiary.yaml @@ -23,9 +23,6 @@ properties: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary diff --git a/openapi/components/schemas/common/EgpAccountInfo.yaml b/openapi/components/schemas/common/EgpAccountInfo.yaml new file mode 100644 index 00000000..e3bc6765 --- /dev/null +++ b/openapi/components/schemas/common/EgpAccountInfo.yaml @@ -0,0 +1,35 @@ +type: object +required: +- accountType +- paymentRails +- accountNumber +properties: + accountType: + type: string + enum: + - EGP_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER + 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/EgpBeneficiary.yaml b/openapi/components/schemas/common/EgpBeneficiary.yaml new file mode 100644 index 00000000..4f4c5496 --- /dev/null +++ b/openapi/components/schemas/common/EgpBeneficiary.yaml @@ -0,0 +1,33 @@ +title: Individual Beneficiary +type: object +required: +- beneficiaryType +- address +- countryOfResidence +- fullName +- phoneNumber +properties: + beneficiaryType: + type: string + enum: + - INDIVIDUAL + fullName: + type: string + description: The full name of the beneficiary + birthDate: + type: string + description: The birth date of the beneficiary + nationality: + type: string + description: The nationality of the beneficiary + email: + type: string + description: The email of the beneficiary + phoneNumber: + type: string + description: The phone number of the beneficiary + countryOfResidence: + type: string + description: The country of residence of the beneficiary + address: + $ref: ./Address.yaml diff --git a/openapi/components/schemas/common/EurBeneficiary.yaml b/openapi/components/schemas/common/EurBeneficiary.yaml index c3941bc0..86a33c79 100644 --- a/openapi/components/schemas/common/EurBeneficiary.yaml +++ b/openapi/components/schemas/common/EurBeneficiary.yaml @@ -2,6 +2,7 @@ title: Individual Beneficiary type: object required: - beneficiaryType +- address - fullName properties: beneficiaryType: @@ -23,9 +24,6 @@ properties: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary diff --git a/openapi/components/schemas/common/GbpBeneficiary.yaml b/openapi/components/schemas/common/GbpBeneficiary.yaml index c3941bc0..d9332d63 100644 --- a/openapi/components/schemas/common/GbpBeneficiary.yaml +++ b/openapi/components/schemas/common/GbpBeneficiary.yaml @@ -23,9 +23,6 @@ properties: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary diff --git a/openapi/components/schemas/common/GhsAccountInfo.yaml b/openapi/components/schemas/common/GhsAccountInfo.yaml new file mode 100644 index 00000000..a345e7f7 --- /dev/null +++ b/openapi/components/schemas/common/GhsAccountInfo.yaml @@ -0,0 +1,30 @@ +type: object +required: +- accountType +- paymentRails +- accountNumber +- phoneNumber +properties: + accountType: + type: string + enum: + - GHS_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER + - MOBILE_MONEY + 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/GhsBeneficiary.yaml b/openapi/components/schemas/common/GhsBeneficiary.yaml new file mode 100644 index 00000000..d9332d63 --- /dev/null +++ b/openapi/components/schemas/common/GhsBeneficiary.yaml @@ -0,0 +1,30 @@ +title: Individual Beneficiary +type: object +required: +- beneficiaryType +- fullName +properties: + beneficiaryType: + type: string + enum: + - INDIVIDUAL + fullName: + type: string + description: The full name of the beneficiary + birthDate: + type: string + description: The birth date of the beneficiary + nationality: + type: string + description: The nationality of the beneficiary + email: + type: string + description: The email of the beneficiary + phoneNumber: + type: string + description: The phone number of the beneficiary + countryOfResidence: + type: string + description: The country of residence of the beneficiary + address: + $ref: ./Address.yaml diff --git a/openapi/components/schemas/common/GtqAccountInfo.yaml b/openapi/components/schemas/common/GtqAccountInfo.yaml new file mode 100644 index 00000000..4fc089af --- /dev/null +++ b/openapi/components/schemas/common/GtqAccountInfo.yaml @@ -0,0 +1,30 @@ +type: object +required: +- accountType +- paymentRails +- accountNumber +- phoneNumber +properties: + accountType: + type: string + enum: + - GTQ_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER + - MOBILE_MONEY + 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/GtqBeneficiary.yaml b/openapi/components/schemas/common/GtqBeneficiary.yaml new file mode 100644 index 00000000..b834477b --- /dev/null +++ b/openapi/components/schemas/common/GtqBeneficiary.yaml @@ -0,0 +1,31 @@ +title: Individual Beneficiary +type: object +required: +- beneficiaryType +- countryOfResidence +- fullName +properties: + beneficiaryType: + type: string + enum: + - INDIVIDUAL + fullName: + type: string + description: The full name of the beneficiary + birthDate: + type: string + description: The birth date of the beneficiary + nationality: + type: string + description: The nationality of the beneficiary + email: + type: string + description: The email of the beneficiary + phoneNumber: + type: string + description: The phone number of the beneficiary + countryOfResidence: + type: string + description: The country of residence of the beneficiary + address: + $ref: ./Address.yaml diff --git a/openapi/components/schemas/common/HkdBeneficiary.yaml b/openapi/components/schemas/common/HkdBeneficiary.yaml index c3941bc0..d9332d63 100644 --- a/openapi/components/schemas/common/HkdBeneficiary.yaml +++ b/openapi/components/schemas/common/HkdBeneficiary.yaml @@ -23,9 +23,6 @@ properties: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary diff --git a/openapi/components/schemas/common/HtgAccountInfo.yaml b/openapi/components/schemas/common/HtgAccountInfo.yaml new file mode 100644 index 00000000..03bc16b9 --- /dev/null +++ b/openapi/components/schemas/common/HtgAccountInfo.yaml @@ -0,0 +1,23 @@ +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/HtgBeneficiary.yaml b/openapi/components/schemas/common/HtgBeneficiary.yaml new file mode 100644 index 00000000..d9332d63 --- /dev/null +++ b/openapi/components/schemas/common/HtgBeneficiary.yaml @@ -0,0 +1,30 @@ +title: Individual Beneficiary +type: object +required: +- beneficiaryType +- fullName +properties: + beneficiaryType: + type: string + enum: + - INDIVIDUAL + fullName: + type: string + description: The full name of the beneficiary + birthDate: + type: string + description: The birth date of the beneficiary + nationality: + type: string + description: The nationality of the beneficiary + email: + type: string + description: The email of the beneficiary + phoneNumber: + type: string + description: The phone number of the beneficiary + countryOfResidence: + type: string + description: The country of residence of the beneficiary + address: + $ref: ./Address.yaml diff --git a/openapi/components/schemas/common/IdrBeneficiary.yaml b/openapi/components/schemas/common/IdrBeneficiary.yaml index c3941bc0..d9332d63 100644 --- a/openapi/components/schemas/common/IdrBeneficiary.yaml +++ b/openapi/components/schemas/common/IdrBeneficiary.yaml @@ -23,9 +23,6 @@ properties: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary diff --git a/openapi/components/schemas/common/InrBeneficiary.yaml b/openapi/components/schemas/common/InrBeneficiary.yaml index c3941bc0..d9332d63 100644 --- a/openapi/components/schemas/common/InrBeneficiary.yaml +++ b/openapi/components/schemas/common/InrBeneficiary.yaml @@ -23,9 +23,6 @@ properties: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary diff --git a/openapi/components/schemas/common/JmdAccountInfo.yaml b/openapi/components/schemas/common/JmdAccountInfo.yaml new file mode 100644 index 00000000..4118d807 --- /dev/null +++ b/openapi/components/schemas/common/JmdAccountInfo.yaml @@ -0,0 +1,35 @@ +type: object +required: +- accountType +- paymentRails +- accountNumber +- branchCode +- bankAccountType +properties: + accountType: + type: string + enum: + - JMD_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER + 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/JmdBeneficiary.yaml b/openapi/components/schemas/common/JmdBeneficiary.yaml new file mode 100644 index 00000000..f2a97b09 --- /dev/null +++ b/openapi/components/schemas/common/JmdBeneficiary.yaml @@ -0,0 +1,32 @@ +title: Individual Beneficiary +type: object +required: +- beneficiaryType +- address +- fullName +- phoneNumber +properties: + beneficiaryType: + type: string + enum: + - INDIVIDUAL + fullName: + type: string + description: The full name of the beneficiary + birthDate: + type: string + description: The birth date of the beneficiary + nationality: + type: string + description: The nationality of the beneficiary + email: + type: string + description: The email of the beneficiary + phoneNumber: + type: string + description: The phone number of the beneficiary + countryOfResidence: + type: string + description: The country of residence of the beneficiary + address: + $ref: ./Address.yaml diff --git a/openapi/components/schemas/common/KesBeneficiary.yaml b/openapi/components/schemas/common/KesBeneficiary.yaml index c3941bc0..d9332d63 100644 --- a/openapi/components/schemas/common/KesBeneficiary.yaml +++ b/openapi/components/schemas/common/KesBeneficiary.yaml @@ -23,9 +23,6 @@ properties: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary diff --git a/openapi/components/schemas/common/MwkBeneficiary.yaml b/openapi/components/schemas/common/MwkBeneficiary.yaml index c3941bc0..d9332d63 100644 --- a/openapi/components/schemas/common/MwkBeneficiary.yaml +++ b/openapi/components/schemas/common/MwkBeneficiary.yaml @@ -23,9 +23,6 @@ properties: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary diff --git a/openapi/components/schemas/common/MxnBeneficiary.yaml b/openapi/components/schemas/common/MxnBeneficiary.yaml index c3941bc0..d9332d63 100644 --- a/openapi/components/schemas/common/MxnBeneficiary.yaml +++ b/openapi/components/schemas/common/MxnBeneficiary.yaml @@ -23,9 +23,6 @@ properties: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary diff --git a/openapi/components/schemas/common/MyrBeneficiary.yaml b/openapi/components/schemas/common/MyrBeneficiary.yaml index c3941bc0..d9332d63 100644 --- a/openapi/components/schemas/common/MyrBeneficiary.yaml +++ b/openapi/components/schemas/common/MyrBeneficiary.yaml @@ -23,9 +23,6 @@ properties: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary diff --git a/openapi/components/schemas/common/NgnBeneficiary.yaml b/openapi/components/schemas/common/NgnBeneficiary.yaml index c3941bc0..d9332d63 100644 --- a/openapi/components/schemas/common/NgnBeneficiary.yaml +++ b/openapi/components/schemas/common/NgnBeneficiary.yaml @@ -23,9 +23,6 @@ properties: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary diff --git a/openapi/components/schemas/common/PaymentBdtAccountInfo.yaml b/openapi/components/schemas/common/PaymentBdtAccountInfo.yaml new file mode 100644 index 00000000..975eb587 --- /dev/null +++ b/openapi/components/schemas/common/PaymentBdtAccountInfo.yaml @@ -0,0 +1,13 @@ +title: BDT Account +allOf: +- $ref: ./BasePaymentAccountInfo.yaml +- $ref: ./BdtAccountInfo.yaml +- type: object + 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/PaymentCopAccountInfo.yaml b/openapi/components/schemas/common/PaymentCopAccountInfo.yaml new file mode 100644 index 00000000..f3b401b2 --- /dev/null +++ b/openapi/components/schemas/common/PaymentCopAccountInfo.yaml @@ -0,0 +1,13 @@ +title: COP Account +allOf: +- $ref: ./BasePaymentAccountInfo.yaml +- $ref: ./CopAccountInfo.yaml +- type: object + 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/PaymentEgpAccountInfo.yaml b/openapi/components/schemas/common/PaymentEgpAccountInfo.yaml new file mode 100644 index 00000000..bd4d3114 --- /dev/null +++ b/openapi/components/schemas/common/PaymentEgpAccountInfo.yaml @@ -0,0 +1,13 @@ +title: EGP Account +allOf: +- $ref: ./BasePaymentAccountInfo.yaml +- $ref: ./EgpAccountInfo.yaml +- type: object + 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/PaymentGhsAccountInfo.yaml b/openapi/components/schemas/common/PaymentGhsAccountInfo.yaml new file mode 100644 index 00000000..ad9a6e43 --- /dev/null +++ b/openapi/components/schemas/common/PaymentGhsAccountInfo.yaml @@ -0,0 +1,13 @@ +title: GHS Account +allOf: +- $ref: ./BasePaymentAccountInfo.yaml +- $ref: ./GhsAccountInfo.yaml +- type: object + 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/PaymentGtqAccountInfo.yaml b/openapi/components/schemas/common/PaymentGtqAccountInfo.yaml new file mode 100644 index 00000000..79f63347 --- /dev/null +++ b/openapi/components/schemas/common/PaymentGtqAccountInfo.yaml @@ -0,0 +1,13 @@ +title: GTQ Account +allOf: +- $ref: ./BasePaymentAccountInfo.yaml +- $ref: ./GtqAccountInfo.yaml +- type: object + 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/PaymentHtgAccountInfo.yaml b/openapi/components/schemas/common/PaymentHtgAccountInfo.yaml new file mode 100644 index 00000000..d2cd4700 --- /dev/null +++ b/openapi/components/schemas/common/PaymentHtgAccountInfo.yaml @@ -0,0 +1,13 @@ +title: HTG Account +allOf: +- $ref: ./BasePaymentAccountInfo.yaml +- $ref: ./HtgAccountInfo.yaml +- type: object + 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/PaymentInstructions.yaml b/openapi/components/schemas/common/PaymentInstructions.yaml index 313e482d..a7b8b3b5 100644 --- a/openapi/components/schemas/common/PaymentInstructions.yaml +++ b/openapi/components/schemas/common/PaymentInstructions.yaml @@ -41,6 +41,14 @@ properties: - $ref: ../common/PaymentZmwAccountInfo.yaml - $ref: ../common/PaymentBwpAccountInfo.yaml - $ref: ../common/PaymentXafAccountInfo.yaml + - $ref: ../common/PaymentBdtAccountInfo.yaml + - $ref: ../common/PaymentCopAccountInfo.yaml + - $ref: ../common/PaymentEgpAccountInfo.yaml + - $ref: ../common/PaymentGhsAccountInfo.yaml + - $ref: ../common/PaymentGtqAccountInfo.yaml + - $ref: ../common/PaymentHtgAccountInfo.yaml + - $ref: ../common/PaymentJmdAccountInfo.yaml + - $ref: ../common/PaymentPkrAccountInfo.yaml - $ref: ../common/PaymentSparkWalletInfo.yaml - $ref: ../common/PaymentLightningInvoiceInfo.yaml - $ref: ../common/PaymentSolanaWalletInfo.yaml @@ -85,3 +93,11 @@ properties: ZMW_ACCOUNT: ../common/PaymentZmwAccountInfo.yaml BWP_ACCOUNT: ../common/PaymentBwpAccountInfo.yaml XAF_ACCOUNT: ../common/PaymentXafAccountInfo.yaml + BDT_ACCOUNT: ../common/PaymentBdtAccountInfo.yaml + COP_ACCOUNT: ../common/PaymentCopAccountInfo.yaml + EGP_ACCOUNT: ../common/PaymentEgpAccountInfo.yaml + GHS_ACCOUNT: ../common/PaymentGhsAccountInfo.yaml + GTQ_ACCOUNT: ../common/PaymentGtqAccountInfo.yaml + HTG_ACCOUNT: ../common/PaymentHtgAccountInfo.yaml + JMD_ACCOUNT: ../common/PaymentJmdAccountInfo.yaml + PKR_ACCOUNT: ../common/PaymentPkrAccountInfo.yaml diff --git a/openapi/components/schemas/common/PaymentJmdAccountInfo.yaml b/openapi/components/schemas/common/PaymentJmdAccountInfo.yaml new file mode 100644 index 00000000..00d7fca2 --- /dev/null +++ b/openapi/components/schemas/common/PaymentJmdAccountInfo.yaml @@ -0,0 +1,13 @@ +title: JMD Account +allOf: +- $ref: ./BasePaymentAccountInfo.yaml +- $ref: ./JmdAccountInfo.yaml +- type: object + 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/PaymentPkrAccountInfo.yaml b/openapi/components/schemas/common/PaymentPkrAccountInfo.yaml new file mode 100644 index 00000000..8c44d7e3 --- /dev/null +++ b/openapi/components/schemas/common/PaymentPkrAccountInfo.yaml @@ -0,0 +1,13 @@ +title: PKR Account +allOf: +- $ref: ./BasePaymentAccountInfo.yaml +- $ref: ./PkrAccountInfo.yaml +- type: object + 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 index 5d433a2f..548f26d5 100644 --- a/openapi/components/schemas/common/PhpAccountInfo.yaml +++ b/openapi/components/schemas/common/PhpAccountInfo.yaml @@ -24,6 +24,7 @@ properties: accountNumber: type: string description: Bank account number - minLength: 1 - maxLength: 34 + minLength: 8 + maxLength: 16 example: '001234567890' + pattern: ^[0-9]{8,16}$ diff --git a/openapi/components/schemas/common/PhpBeneficiary.yaml b/openapi/components/schemas/common/PhpBeneficiary.yaml index c3941bc0..d9332d63 100644 --- a/openapi/components/schemas/common/PhpBeneficiary.yaml +++ b/openapi/components/schemas/common/PhpBeneficiary.yaml @@ -23,9 +23,6 @@ properties: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary diff --git a/openapi/components/schemas/common/PkrAccountInfo.yaml b/openapi/components/schemas/common/PkrAccountInfo.yaml new file mode 100644 index 00000000..d5a3f6a2 --- /dev/null +++ b/openapi/components/schemas/common/PkrAccountInfo.yaml @@ -0,0 +1,37 @@ +type: object +required: +- accountType +- paymentRails +- accountNumber +- phoneNumber +properties: + accountType: + type: string + enum: + - PKR_ACCOUNT + paymentRails: + type: array + items: + type: string + enum: + - BANK_TRANSFER + - MOBILE_MONEY + 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/PkrBeneficiary.yaml b/openapi/components/schemas/common/PkrBeneficiary.yaml new file mode 100644 index 00000000..d9332d63 --- /dev/null +++ b/openapi/components/schemas/common/PkrBeneficiary.yaml @@ -0,0 +1,30 @@ +title: Individual Beneficiary +type: object +required: +- beneficiaryType +- fullName +properties: + beneficiaryType: + type: string + enum: + - INDIVIDUAL + fullName: + type: string + description: The full name of the beneficiary + birthDate: + type: string + description: The birth date of the beneficiary + nationality: + type: string + description: The nationality of the beneficiary + email: + type: string + description: The email of the beneficiary + phoneNumber: + type: string + description: The phone number of the beneficiary + countryOfResidence: + type: string + description: The country of residence of the beneficiary + address: + $ref: ./Address.yaml diff --git a/openapi/components/schemas/common/RwfBeneficiary.yaml b/openapi/components/schemas/common/RwfBeneficiary.yaml index c3941bc0..d9332d63 100644 --- a/openapi/components/schemas/common/RwfBeneficiary.yaml +++ b/openapi/components/schemas/common/RwfBeneficiary.yaml @@ -23,9 +23,6 @@ properties: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary diff --git a/openapi/components/schemas/common/SgdBeneficiary.yaml b/openapi/components/schemas/common/SgdBeneficiary.yaml index c3941bc0..d9332d63 100644 --- a/openapi/components/schemas/common/SgdBeneficiary.yaml +++ b/openapi/components/schemas/common/SgdBeneficiary.yaml @@ -23,9 +23,6 @@ properties: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary diff --git a/openapi/components/schemas/common/ThbBeneficiary.yaml b/openapi/components/schemas/common/ThbBeneficiary.yaml index c3941bc0..d9332d63 100644 --- a/openapi/components/schemas/common/ThbBeneficiary.yaml +++ b/openapi/components/schemas/common/ThbBeneficiary.yaml @@ -23,9 +23,6 @@ properties: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary diff --git a/openapi/components/schemas/common/TzsBeneficiary.yaml b/openapi/components/schemas/common/TzsBeneficiary.yaml index c3941bc0..d9332d63 100644 --- a/openapi/components/schemas/common/TzsBeneficiary.yaml +++ b/openapi/components/schemas/common/TzsBeneficiary.yaml @@ -23,9 +23,6 @@ properties: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary diff --git a/openapi/components/schemas/common/UgxBeneficiary.yaml b/openapi/components/schemas/common/UgxBeneficiary.yaml index c3941bc0..d9332d63 100644 --- a/openapi/components/schemas/common/UgxBeneficiary.yaml +++ b/openapi/components/schemas/common/UgxBeneficiary.yaml @@ -23,9 +23,6 @@ properties: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary diff --git a/openapi/components/schemas/common/UsdAccountInfo.yaml b/openapi/components/schemas/common/UsdAccountInfo.yaml index a32428c0..d592f529 100644 --- a/openapi/components/schemas/common/UsdAccountInfo.yaml +++ b/openapi/components/schemas/common/UsdAccountInfo.yaml @@ -18,6 +18,7 @@ properties: - WIRE - RTP - FEDNOW + - BANK_TRANSFER accountNumber: type: string description: The account number of the bank diff --git a/openapi/components/schemas/common/UsdBeneficiary.yaml b/openapi/components/schemas/common/UsdBeneficiary.yaml index 47504c86..d9332d63 100644 --- a/openapi/components/schemas/common/UsdBeneficiary.yaml +++ b/openapi/components/schemas/common/UsdBeneficiary.yaml @@ -2,9 +2,7 @@ title: Individual Beneficiary type: object required: - beneficiaryType -- birthDate - fullName -- nationality properties: beneficiaryType: type: string @@ -25,9 +23,6 @@ properties: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary diff --git a/openapi/components/schemas/common/VndBeneficiary.yaml b/openapi/components/schemas/common/VndBeneficiary.yaml index c3941bc0..d9332d63 100644 --- a/openapi/components/schemas/common/VndBeneficiary.yaml +++ b/openapi/components/schemas/common/VndBeneficiary.yaml @@ -23,9 +23,6 @@ properties: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary diff --git a/openapi/components/schemas/common/XafBeneficiary.yaml b/openapi/components/schemas/common/XafBeneficiary.yaml index c3941bc0..d9332d63 100644 --- a/openapi/components/schemas/common/XafBeneficiary.yaml +++ b/openapi/components/schemas/common/XafBeneficiary.yaml @@ -23,9 +23,6 @@ properties: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary diff --git a/openapi/components/schemas/common/XofBeneficiary.yaml b/openapi/components/schemas/common/XofBeneficiary.yaml index c3941bc0..d9332d63 100644 --- a/openapi/components/schemas/common/XofBeneficiary.yaml +++ b/openapi/components/schemas/common/XofBeneficiary.yaml @@ -23,9 +23,6 @@ properties: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary diff --git a/openapi/components/schemas/common/ZarBeneficiary.yaml b/openapi/components/schemas/common/ZarBeneficiary.yaml index c3941bc0..d9332d63 100644 --- a/openapi/components/schemas/common/ZarBeneficiary.yaml +++ b/openapi/components/schemas/common/ZarBeneficiary.yaml @@ -23,9 +23,6 @@ properties: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary diff --git a/openapi/components/schemas/common/ZmwBeneficiary.yaml b/openapi/components/schemas/common/ZmwBeneficiary.yaml index c3941bc0..d9332d63 100644 --- a/openapi/components/schemas/common/ZmwBeneficiary.yaml +++ b/openapi/components/schemas/common/ZmwBeneficiary.yaml @@ -23,9 +23,6 @@ properties: phoneNumber: type: string description: The phone number of the beneficiary - registrationNumber: - type: string - description: The registration number of the beneficiary countryOfResidence: type: string description: The country of residence of the beneficiary diff --git a/openapi/components/schemas/external_accounts/BdtExternalAccountInfo.yaml b/openapi/components/schemas/external_accounts/BdtExternalAccountInfo.yaml new file mode 100644 index 00000000..f3f92455 --- /dev/null +++ b/openapi/components/schemas/external_accounts/BdtExternalAccountInfo.yaml @@ -0,0 +1,19 @@ +title: BDT Account +allOf: +- $ref: ./BaseExternalAccountInfo.yaml +- $ref: ../common/BdtAccountInfo.yaml +- type: object + required: + - beneficiary + properties: + beneficiary: + oneOf: + - title: Individual Beneficiary + $ref: ../common/BdtBeneficiary.yaml + - title: Business Beneficiary + $ref: ../common/BusinessBeneficiary.yaml + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: ../common/BdtBeneficiary.yaml + BUSINESS: ../common/BusinessBeneficiary.yaml diff --git a/openapi/components/schemas/external_accounts/CopExternalAccountInfo.yaml b/openapi/components/schemas/external_accounts/CopExternalAccountInfo.yaml new file mode 100644 index 00000000..18e54d80 --- /dev/null +++ b/openapi/components/schemas/external_accounts/CopExternalAccountInfo.yaml @@ -0,0 +1,19 @@ +title: COP Account +allOf: +- $ref: ./BaseExternalAccountInfo.yaml +- $ref: ../common/CopAccountInfo.yaml +- type: object + required: + - beneficiary + properties: + beneficiary: + oneOf: + - title: Individual Beneficiary + $ref: ../common/CopBeneficiary.yaml + - title: Business Beneficiary + $ref: ../common/BusinessBeneficiary.yaml + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: ../common/CopBeneficiary.yaml + BUSINESS: ../common/BusinessBeneficiary.yaml diff --git a/openapi/components/schemas/external_accounts/EgpExternalAccountInfo.yaml b/openapi/components/schemas/external_accounts/EgpExternalAccountInfo.yaml new file mode 100644 index 00000000..15883e1b --- /dev/null +++ b/openapi/components/schemas/external_accounts/EgpExternalAccountInfo.yaml @@ -0,0 +1,19 @@ +title: EGP Account +allOf: +- $ref: ./BaseExternalAccountInfo.yaml +- $ref: ../common/EgpAccountInfo.yaml +- type: object + required: + - beneficiary + properties: + beneficiary: + oneOf: + - title: Individual Beneficiary + $ref: ../common/EgpBeneficiary.yaml + - title: Business Beneficiary + $ref: ../common/BusinessBeneficiary.yaml + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: ../common/EgpBeneficiary.yaml + BUSINESS: ../common/BusinessBeneficiary.yaml diff --git a/openapi/components/schemas/external_accounts/ExternalAccountInfoOneOf.yaml b/openapi/components/schemas/external_accounts/ExternalAccountInfoOneOf.yaml index b673623f..7e854603 100644 --- a/openapi/components/schemas/external_accounts/ExternalAccountInfoOneOf.yaml +++ b/openapi/components/schemas/external_accounts/ExternalAccountInfoOneOf.yaml @@ -33,6 +33,14 @@ oneOf: - $ref: ./AedExternalAccountInfo.yaml - $ref: ./BwpExternalAccountInfo.yaml - $ref: ./XafExternalAccountInfo.yaml +- $ref: ./BdtExternalAccountInfo.yaml +- $ref: ./CopExternalAccountInfo.yaml +- $ref: ./EgpExternalAccountInfo.yaml +- $ref: ./GhsExternalAccountInfo.yaml +- $ref: ./GtqExternalAccountInfo.yaml +- $ref: ./HtgExternalAccountInfo.yaml +- $ref: ./JmdExternalAccountInfo.yaml +- $ref: ./PkrExternalAccountInfo.yaml discriminator: propertyName: accountType mapping: @@ -70,3 +78,12 @@ discriminator: AED_ACCOUNT: ./AedExternalAccountInfo.yaml BWP_ACCOUNT: ./BwpExternalAccountInfo.yaml XAF_ACCOUNT: ./XafExternalAccountInfo.yaml + BDT_ACCOUNT: ./BdtExternalAccountInfo.yaml + COP_ACCOUNT: ./CopExternalAccountInfo.yaml + EGP_ACCOUNT: ./EgpExternalAccountInfo.yaml + GHS_ACCOUNT: ./GhsExternalAccountInfo.yaml + GTQ_ACCOUNT: ./GtqExternalAccountInfo.yaml + HTG_ACCOUNT: ./HtgExternalAccountInfo.yaml + JMD_ACCOUNT: ./JmdExternalAccountInfo.yaml + LIGHTNING_ACCOUNT: ./LightningExternalAccountInfo.yaml + PKR_ACCOUNT: ./PkrExternalAccountInfo.yaml diff --git a/openapi/components/schemas/external_accounts/GhsExternalAccountInfo.yaml b/openapi/components/schemas/external_accounts/GhsExternalAccountInfo.yaml new file mode 100644 index 00000000..10400588 --- /dev/null +++ b/openapi/components/schemas/external_accounts/GhsExternalAccountInfo.yaml @@ -0,0 +1,19 @@ +title: GHS Account +allOf: +- $ref: ./BaseExternalAccountInfo.yaml +- $ref: ../common/GhsAccountInfo.yaml +- type: object + required: + - beneficiary + properties: + beneficiary: + oneOf: + - title: Individual Beneficiary + $ref: ../common/GhsBeneficiary.yaml + - title: Business Beneficiary + $ref: ../common/BusinessBeneficiary.yaml + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: ../common/GhsBeneficiary.yaml + BUSINESS: ../common/BusinessBeneficiary.yaml diff --git a/openapi/components/schemas/external_accounts/GtqExternalAccountInfo.yaml b/openapi/components/schemas/external_accounts/GtqExternalAccountInfo.yaml new file mode 100644 index 00000000..634f927c --- /dev/null +++ b/openapi/components/schemas/external_accounts/GtqExternalAccountInfo.yaml @@ -0,0 +1,19 @@ +title: GTQ Account +allOf: +- $ref: ./BaseExternalAccountInfo.yaml +- $ref: ../common/GtqAccountInfo.yaml +- type: object + required: + - beneficiary + properties: + beneficiary: + oneOf: + - title: Individual Beneficiary + $ref: ../common/GtqBeneficiary.yaml + - title: Business Beneficiary + $ref: ../common/BusinessBeneficiary.yaml + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: ../common/GtqBeneficiary.yaml + BUSINESS: ../common/BusinessBeneficiary.yaml diff --git a/openapi/components/schemas/external_accounts/HtgExternalAccountInfo.yaml b/openapi/components/schemas/external_accounts/HtgExternalAccountInfo.yaml new file mode 100644 index 00000000..73b39982 --- /dev/null +++ b/openapi/components/schemas/external_accounts/HtgExternalAccountInfo.yaml @@ -0,0 +1,19 @@ +title: HTG Account +allOf: +- $ref: ./BaseExternalAccountInfo.yaml +- $ref: ../common/HtgAccountInfo.yaml +- type: object + required: + - beneficiary + properties: + beneficiary: + oneOf: + - title: Individual Beneficiary + $ref: ../common/HtgBeneficiary.yaml + - title: Business Beneficiary + $ref: ../common/BusinessBeneficiary.yaml + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: ../common/HtgBeneficiary.yaml + BUSINESS: ../common/BusinessBeneficiary.yaml diff --git a/openapi/components/schemas/external_accounts/JmdExternalAccountInfo.yaml b/openapi/components/schemas/external_accounts/JmdExternalAccountInfo.yaml new file mode 100644 index 00000000..315dea2c --- /dev/null +++ b/openapi/components/schemas/external_accounts/JmdExternalAccountInfo.yaml @@ -0,0 +1,19 @@ +title: JMD Account +allOf: +- $ref: ./BaseExternalAccountInfo.yaml +- $ref: ../common/JmdAccountInfo.yaml +- type: object + required: + - beneficiary + properties: + beneficiary: + oneOf: + - title: Individual Beneficiary + $ref: ../common/JmdBeneficiary.yaml + - title: Business Beneficiary + $ref: ../common/BusinessBeneficiary.yaml + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: ../common/JmdBeneficiary.yaml + BUSINESS: ../common/BusinessBeneficiary.yaml diff --git a/openapi/components/schemas/external_accounts/PkrExternalAccountInfo.yaml b/openapi/components/schemas/external_accounts/PkrExternalAccountInfo.yaml new file mode 100644 index 00000000..817a9dc7 --- /dev/null +++ b/openapi/components/schemas/external_accounts/PkrExternalAccountInfo.yaml @@ -0,0 +1,19 @@ +title: PKR Account +allOf: +- $ref: ./BaseExternalAccountInfo.yaml +- $ref: ../common/PkrAccountInfo.yaml +- type: object + required: + - beneficiary + properties: + beneficiary: + oneOf: + - title: Individual Beneficiary + $ref: ../common/PkrBeneficiary.yaml + - title: Business Beneficiary + $ref: ../common/BusinessBeneficiary.yaml + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: ../common/PkrBeneficiary.yaml + BUSINESS: ../common/BusinessBeneficiary.yaml