From 9cbc9b6dcfa012cc16054dd09f93c4b698feafc1 Mon Sep 17 00:00:00 2001 From: Lightspark Eng Date: Tue, 10 Feb 2026 19:45:28 +0000 Subject: [PATCH 1/3] chore: Update external account schemas from webdev --- .../external_accounts/BrlAccountInfo.yaml | 84 +++++++++++++++ .../external_accounts/DkkAccountInfo.yaml | 79 ++++++++++++++ .../ExternalAccountInfoOneOf.yaml | 100 ++++++++++++------ .../external_accounts/GbpAccountInfo.yaml | 80 ++++++++++++++ .../external_accounts/HkdAccountInfo.yaml | 80 ++++++++++++++ .../external_accounts/IdrAccountInfo.yaml | 80 ++++++++++++++ .../external_accounts/InrAccountInfo.yaml | 76 +++++++++++++ .../external_accounts/MxnAccountInfo.yaml | 80 ++++++++++++++ .../external_accounts/MyrAccountInfo.yaml | 80 ++++++++++++++ .../external_accounts/PhpAccountInfo.yaml | 80 ++++++++++++++ .../external_accounts/SgdAccountInfo.yaml | 80 ++++++++++++++ .../external_accounts/ThbAccountInfo.yaml | 80 ++++++++++++++ .../external_accounts/UsdAccountInfo.yaml | 84 +++++++++++++++ .../external_accounts/VndAccountInfo.yaml | 80 ++++++++++++++ 14 files changed, 1111 insertions(+), 32 deletions(-) create mode 100644 openapi/components/schemas/external_accounts/BrlAccountInfo.yaml create mode 100644 openapi/components/schemas/external_accounts/DkkAccountInfo.yaml create mode 100644 openapi/components/schemas/external_accounts/GbpAccountInfo.yaml create mode 100644 openapi/components/schemas/external_accounts/HkdAccountInfo.yaml create mode 100644 openapi/components/schemas/external_accounts/IdrAccountInfo.yaml create mode 100644 openapi/components/schemas/external_accounts/InrAccountInfo.yaml create mode 100644 openapi/components/schemas/external_accounts/MxnAccountInfo.yaml create mode 100644 openapi/components/schemas/external_accounts/MyrAccountInfo.yaml create mode 100644 openapi/components/schemas/external_accounts/PhpAccountInfo.yaml create mode 100644 openapi/components/schemas/external_accounts/SgdAccountInfo.yaml create mode 100644 openapi/components/schemas/external_accounts/ThbAccountInfo.yaml create mode 100644 openapi/components/schemas/external_accounts/UsdAccountInfo.yaml create mode 100644 openapi/components/schemas/external_accounts/VndAccountInfo.yaml diff --git a/openapi/components/schemas/external_accounts/BrlAccountInfo.yaml b/openapi/components/schemas/external_accounts/BrlAccountInfo.yaml new file mode 100644 index 00000000..563e42a3 --- /dev/null +++ b/openapi/components/schemas/external_accounts/BrlAccountInfo.yaml @@ -0,0 +1,84 @@ +type: object +title: BRL Account +description: 'Required fields for USD -> BRL corridor. Supported payment rails: Pix.' +required: +- accountType +- pixKey +- pixKeyType +- taxId +- beneficiary +properties: + accountType: + type: string + enum: + - BRL_ACCOUNT + example: BRL_ACCOUNT + payment_rails: + type: array + items: + type: string + const: + - Pix + description: Supported payment rails for this currency. Auto-populated based on + account type. + receivingCurrency: + type: string + const: BRL + description: Receiving currency code. Auto-populated based on account type. + pixKey: + type: string + description: The PIX key of the bank + pixKeyType: + type: string + description: The type of PIX key of the bank + taxId: + type: string + description: The tax ID of the bank account + beneficiary: + type: object + required: + - fullName + properties: + 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: + type: object + required: [] + properties: + line1: + type: string + description: Address line 1 + postalCode: + type: string + description: Postal code + country: + type: string + description: Country code + line2: + type: string + description: Address line 2 + city: + type: string + description: City + state: + type: string + description: State or province diff --git a/openapi/components/schemas/external_accounts/DkkAccountInfo.yaml b/openapi/components/schemas/external_accounts/DkkAccountInfo.yaml new file mode 100644 index 00000000..1ef2b47e --- /dev/null +++ b/openapi/components/schemas/external_accounts/DkkAccountInfo.yaml @@ -0,0 +1,79 @@ +type: object +title: DKK Account +description: 'Required fields for USD -> DKK corridor. Supported payment rails: Sepa.' +required: +- accountType +- iban +- beneficiary +properties: + accountType: + type: string + enum: + - DKK_ACCOUNT + example: DKK_ACCOUNT + payment_rails: + type: array + items: + type: string + const: + - Sepa + description: Supported payment rails for this currency. Auto-populated based on + account type. + receivingCurrency: + type: string + const: DKK + description: Receiving currency code. Auto-populated based on account type. + iban: + type: string + description: The IBAN of the bank + swiftBic: + type: string + description: The SWIFT BIC of the bank + beneficiary: + type: object + required: + - fullName + properties: + 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: + type: object + required: [] + properties: + line1: + type: string + description: Address line 1 + postalCode: + type: string + description: Postal code + country: + type: string + description: Country code + line2: + type: string + description: Address line 2 + city: + type: string + description: City + state: + type: string + description: State or province diff --git a/openapi/components/schemas/external_accounts/ExternalAccountInfoOneOf.yaml b/openapi/components/schemas/external_accounts/ExternalAccountInfoOneOf.yaml index 3833c6b3..30ae0e9f 100644 --- a/openapi/components/schemas/external_accounts/ExternalAccountInfoOneOf.yaml +++ b/openapi/components/schemas/external_accounts/ExternalAccountInfoOneOf.yaml @@ -1,36 +1,62 @@ oneOf: - - title: US Account - $ref: ./UsAccountExternalAccountInfo.yaml - - title: CLABE Account - $ref: ./ClabeAccountExternalAccountInfo.yaml - - title: PIX Account - $ref: ./PixAccountExternalAccountInfo.yaml - - title: IBAN Account - $ref: ./IbanAccountExternalAccountInfo.yaml - - title: UPI Account - $ref: ./UpiAccountExternalAccountInfo.yaml - - title: NGN Account - $ref: ./NgnAccountExternalAccountInfo.yaml - - title: CAD Account - $ref: ./CadAccountExternalAccountInfo.yaml - - title: GBP Account - $ref: ./GbpAccountExternalAccountInfo.yaml - - title: PHP Account - $ref: ./PhpAccountExternalAccountInfo.yaml - - title: SGD Account - $ref: ./SgdAccountExternalAccountInfo.yaml - - title: Spark Wallet - $ref: ./SparkWalletExternalAccountInfo.yaml - - title: Lightning - $ref: ./LightningExternalAccountInfo.yaml - - title: Solana Wallet - $ref: ./SolanaWalletExternalAccountInfo.yaml - - title: Tron Wallet - $ref: ./TronWalletExternalAccountInfo.yaml - - title: Polygon Wallet - $ref: ./PolygonWalletExternalAccountInfo.yaml - - title: Base Wallet - $ref: ./BaseWalletExternalAccountInfo.yaml +- title: US Account + $ref: ./UsAccountExternalAccountInfo.yaml +- title: CLABE Account + $ref: ./ClabeAccountExternalAccountInfo.yaml +- title: PIX Account + $ref: ./PixAccountExternalAccountInfo.yaml +- title: IBAN Account + $ref: ./IbanAccountExternalAccountInfo.yaml +- title: UPI Account + $ref: ./UpiAccountExternalAccountInfo.yaml +- title: NGN Account + $ref: ./NgnAccountExternalAccountInfo.yaml +- title: CAD Account + $ref: ./CadAccountExternalAccountInfo.yaml +- title: GBP Account + $ref: ./GbpAccountExternalAccountInfo.yaml +- title: PHP Account + $ref: ./PhpAccountExternalAccountInfo.yaml +- title: SGD Account + $ref: ./SgdAccountExternalAccountInfo.yaml +- title: Spark Wallet + $ref: ./SparkWalletExternalAccountInfo.yaml +- title: Lightning + $ref: ./LightningExternalAccountInfo.yaml +- title: Solana Wallet + $ref: ./SolanaWalletExternalAccountInfo.yaml +- title: Tron Wallet + $ref: ./TronWalletExternalAccountInfo.yaml +- title: Polygon Wallet + $ref: ./PolygonWalletExternalAccountInfo.yaml +- title: Base Wallet + $ref: ./BaseWalletExternalAccountInfo.yaml +- title: THB Account + $ref: ./ThbAccountInfo.yaml +- title: BRL Account + $ref: ./BrlAccountInfo.yaml +- title: IDR Account + $ref: ./IdrAccountInfo.yaml +- title: SGD Account + $ref: ./SgdAccountInfo.yaml +- title: USD Account + $ref: ./UsdAccountInfo.yaml +- title: PHP Account + $ref: ./PhpAccountInfo.yaml +- title: MYR Account + $ref: ./MyrAccountInfo.yaml +- title: INR Account + $ref: ./InrAccountInfo.yaml +- title: DKK Account + $ref: ./DkkAccountInfo.yaml +- title: VND Account + $ref: ./VndAccountInfo.yaml +- title: MXN Account + $ref: ./MxnAccountInfo.yaml +- title: GBP Account + $ref: ./GbpAccountInfo.yaml +- title: HKD Account + $ref: ./HkdAccountInfo.yaml discriminator: propertyName: accountType mapping: @@ -50,3 +76,13 @@ discriminator: TRON_WALLET: ./TronWalletExternalAccountInfo.yaml POLYGON_WALLET: ./PolygonWalletExternalAccountInfo.yaml BASE_WALLET: ./BaseWalletExternalAccountInfo.yaml + THB_ACCOUNT: ./ThbAccountInfo.yaml + BRL_ACCOUNT: ./BrlAccountInfo.yaml + IDR_ACCOUNT: ./IdrAccountInfo.yaml + USD_ACCOUNT: ./UsdAccountInfo.yaml + MYR_ACCOUNT: ./MyrAccountInfo.yaml + INR_ACCOUNT: ./InrAccountInfo.yaml + DKK_ACCOUNT: ./DkkAccountInfo.yaml + VND_ACCOUNT: ./VndAccountInfo.yaml + MXN_ACCOUNT: ./MxnAccountInfo.yaml + HKD_ACCOUNT: ./HkdAccountInfo.yaml diff --git a/openapi/components/schemas/external_accounts/GbpAccountInfo.yaml b/openapi/components/schemas/external_accounts/GbpAccountInfo.yaml new file mode 100644 index 00000000..808f9024 --- /dev/null +++ b/openapi/components/schemas/external_accounts/GbpAccountInfo.yaml @@ -0,0 +1,80 @@ +type: object +title: GBP Account +description: 'Required fields for USD -> GBP corridor. Supported payment rails: Local.' +required: +- accountType +- sortCode +- accountNumber +- beneficiary +properties: + accountType: + type: string + enum: + - GBP_ACCOUNT + example: GBP_ACCOUNT + payment_rails: + type: array + items: + type: string + const: + - Local + description: Supported payment rails for this currency. Auto-populated based on + account type. + receivingCurrency: + type: string + const: GBP + description: Receiving currency code. Auto-populated based on account type. + sortCode: + type: string + description: The sort code of the bank + accountNumber: + type: string + description: The account number of the bank + beneficiary: + type: object + required: + - fullName + properties: + 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: + type: object + required: [] + properties: + line1: + type: string + description: Address line 1 + postalCode: + type: string + description: Postal code + country: + type: string + description: Country code + line2: + type: string + description: Address line 2 + city: + type: string + description: City + state: + type: string + description: State or province diff --git a/openapi/components/schemas/external_accounts/HkdAccountInfo.yaml b/openapi/components/schemas/external_accounts/HkdAccountInfo.yaml new file mode 100644 index 00000000..6cabbd64 --- /dev/null +++ b/openapi/components/schemas/external_accounts/HkdAccountInfo.yaml @@ -0,0 +1,80 @@ +type: object +title: HKD Account +description: 'Required fields for USD -> HKD corridor. Supported payment rails: Local.' +required: +- accountType +- bankName +- accountNumber +- beneficiary +properties: + accountType: + type: string + enum: + - HKD_ACCOUNT + example: HKD_ACCOUNT + payment_rails: + type: array + items: + type: string + const: + - Local + description: Supported payment rails for this currency. Auto-populated based on + account type. + receivingCurrency: + type: string + const: HKD + description: Receiving currency code. Auto-populated based on account type. + bankName: + type: string + description: The bank name of the bank + accountNumber: + type: string + description: The account number of the bank + beneficiary: + type: object + required: + - fullName + properties: + 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: + type: object + required: [] + properties: + line1: + type: string + description: Address line 1 + postalCode: + type: string + description: Postal code + country: + type: string + description: Country code + line2: + type: string + description: Address line 2 + city: + type: string + description: City + state: + type: string + description: State or province diff --git a/openapi/components/schemas/external_accounts/IdrAccountInfo.yaml b/openapi/components/schemas/external_accounts/IdrAccountInfo.yaml new file mode 100644 index 00000000..b88e1287 --- /dev/null +++ b/openapi/components/schemas/external_accounts/IdrAccountInfo.yaml @@ -0,0 +1,80 @@ +type: object +title: IDR Account +description: 'Required fields for USD -> IDR corridor. Supported payment rails: Local.' +required: +- accountType +- sortCode +- accountNumber +- beneficiary +properties: + accountType: + type: string + enum: + - IDR_ACCOUNT + example: IDR_ACCOUNT + payment_rails: + type: array + items: + type: string + const: + - Local + description: Supported payment rails for this currency. Auto-populated based on + account type. + receivingCurrency: + type: string + const: IDR + description: Receiving currency code. Auto-populated based on account type. + sortCode: + type: string + description: The sort code of the bank + accountNumber: + type: string + description: The account number of the bank + beneficiary: + type: object + required: + - fullName + properties: + 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: + type: object + required: [] + properties: + line1: + type: string + description: Address line 1 + postalCode: + type: string + description: Postal code + country: + type: string + description: Country code + line2: + type: string + description: Address line 2 + city: + type: string + description: City + state: + type: string + description: State or province diff --git a/openapi/components/schemas/external_accounts/InrAccountInfo.yaml b/openapi/components/schemas/external_accounts/InrAccountInfo.yaml new file mode 100644 index 00000000..0772981c --- /dev/null +++ b/openapi/components/schemas/external_accounts/InrAccountInfo.yaml @@ -0,0 +1,76 @@ +type: object +title: INR Account +description: 'Required fields for USD -> INR corridor. Supported payment rails: Upi.' +required: +- accountType +- vpa +- beneficiary +properties: + accountType: + type: string + enum: + - INR_ACCOUNT + example: INR_ACCOUNT + payment_rails: + type: array + items: + type: string + const: + - Upi + description: Supported payment rails for this currency. Auto-populated based on + account type. + receivingCurrency: + type: string + const: INR + description: Receiving currency code. Auto-populated based on account type. + vpa: + type: string + description: The VPA of the bank + beneficiary: + type: object + required: + - fullName + properties: + 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: + type: object + required: [] + properties: + line1: + type: string + description: Address line 1 + postalCode: + type: string + description: Postal code + country: + type: string + description: Country code + line2: + type: string + description: Address line 2 + city: + type: string + description: City + state: + type: string + description: State or province diff --git a/openapi/components/schemas/external_accounts/MxnAccountInfo.yaml b/openapi/components/schemas/external_accounts/MxnAccountInfo.yaml new file mode 100644 index 00000000..49253b37 --- /dev/null +++ b/openapi/components/schemas/external_accounts/MxnAccountInfo.yaml @@ -0,0 +1,80 @@ +type: object +title: MXN Account +description: 'Required fields for USD -> MXN corridor. Supported payment rails: Spei.' +required: +- accountType +- clabeNumber +- beneficiary +properties: + accountType: + type: string + enum: + - MXN_ACCOUNT + example: MXN_ACCOUNT + payment_rails: + type: array + items: + type: string + const: + - Spei + description: Supported payment rails for this currency. Auto-populated based on + account type. + receivingCurrency: + type: string + const: MXN + description: Receiving currency code. Auto-populated based on account type. + clabeNumber: + type: string + description: The CLABE number of the bank + example: '123456789012345678' + minLength: 18 + maxLength: 18 + pattern: ^[0-9]{18}$ + beneficiary: + type: object + required: + - fullName + properties: + 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: + type: object + required: [] + properties: + line1: + type: string + description: Address line 1 + postalCode: + type: string + description: Postal code + country: + type: string + description: Country code + line2: + type: string + description: Address line 2 + city: + type: string + description: City + state: + type: string + description: State or province diff --git a/openapi/components/schemas/external_accounts/MyrAccountInfo.yaml b/openapi/components/schemas/external_accounts/MyrAccountInfo.yaml new file mode 100644 index 00000000..9f634ebb --- /dev/null +++ b/openapi/components/schemas/external_accounts/MyrAccountInfo.yaml @@ -0,0 +1,80 @@ +type: object +title: MYR Account +description: 'Required fields for USD -> MYR corridor. Supported payment rails: Local.' +required: +- accountType +- bankName +- accountNumber +- beneficiary +properties: + accountType: + type: string + enum: + - MYR_ACCOUNT + example: MYR_ACCOUNT + payment_rails: + type: array + items: + type: string + const: + - Local + description: Supported payment rails for this currency. Auto-populated based on + account type. + receivingCurrency: + type: string + const: MYR + description: Receiving currency code. Auto-populated based on account type. + bankName: + type: string + description: The bank name of the bank + accountNumber: + type: string + description: The account number of the bank + beneficiary: + type: object + required: + - fullName + properties: + 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: + type: object + required: [] + properties: + line1: + type: string + description: Address line 1 + postalCode: + type: string + description: Postal code + country: + type: string + description: Country code + line2: + type: string + description: Address line 2 + city: + type: string + description: City + state: + type: string + description: State or province diff --git a/openapi/components/schemas/external_accounts/PhpAccountInfo.yaml b/openapi/components/schemas/external_accounts/PhpAccountInfo.yaml new file mode 100644 index 00000000..4ff81d9c --- /dev/null +++ b/openapi/components/schemas/external_accounts/PhpAccountInfo.yaml @@ -0,0 +1,80 @@ +type: object +title: PHP Account +description: 'Required fields for USD -> PHP corridor. Supported payment rails: Local.' +required: +- accountType +- bankName +- accountNumber +- beneficiary +properties: + accountType: + type: string + enum: + - PHP_ACCOUNT + example: PHP_ACCOUNT + payment_rails: + type: array + items: + type: string + const: + - Local + description: Supported payment rails for this currency. Auto-populated based on + account type. + receivingCurrency: + type: string + const: PHP + description: Receiving currency code. Auto-populated based on account type. + bankName: + type: string + description: The bank name of the bank + accountNumber: + type: string + description: The account number of the bank + beneficiary: + type: object + required: + - fullName + properties: + 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: + type: object + required: [] + properties: + line1: + type: string + description: Address line 1 + postalCode: + type: string + description: Postal code + country: + type: string + description: Country code + line2: + type: string + description: Address line 2 + city: + type: string + description: City + state: + type: string + description: State or province diff --git a/openapi/components/schemas/external_accounts/SgdAccountInfo.yaml b/openapi/components/schemas/external_accounts/SgdAccountInfo.yaml new file mode 100644 index 00000000..9ce34c30 --- /dev/null +++ b/openapi/components/schemas/external_accounts/SgdAccountInfo.yaml @@ -0,0 +1,80 @@ +type: object +title: SGD Account +description: 'Required fields for USD -> SGD corridor. Supported payment rails: Local.' +required: +- accountType +- bankName +- accountNumber +- beneficiary +properties: + accountType: + type: string + enum: + - SGD_ACCOUNT + example: SGD_ACCOUNT + payment_rails: + type: array + items: + type: string + const: + - Local + description: Supported payment rails for this currency. Auto-populated based on + account type. + receivingCurrency: + type: string + const: SGD + description: Receiving currency code. Auto-populated based on account type. + bankName: + type: string + description: The bank name of the bank + accountNumber: + type: string + description: The account number of the bank + beneficiary: + type: object + required: + - fullName + properties: + 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: + type: object + required: [] + properties: + line1: + type: string + description: Address line 1 + postalCode: + type: string + description: Postal code + country: + type: string + description: Country code + line2: + type: string + description: Address line 2 + city: + type: string + description: City + state: + type: string + description: State or province diff --git a/openapi/components/schemas/external_accounts/ThbAccountInfo.yaml b/openapi/components/schemas/external_accounts/ThbAccountInfo.yaml new file mode 100644 index 00000000..370f8ad2 --- /dev/null +++ b/openapi/components/schemas/external_accounts/ThbAccountInfo.yaml @@ -0,0 +1,80 @@ +type: object +title: THB Account +description: 'Required fields for USD -> THB corridor. Supported payment rails: Local.' +required: +- accountType +- bankName +- accountNumber +- beneficiary +properties: + accountType: + type: string + enum: + - THB_ACCOUNT + example: THB_ACCOUNT + payment_rails: + type: array + items: + type: string + const: + - Local + description: Supported payment rails for this currency. Auto-populated based on + account type. + receivingCurrency: + type: string + const: THB + description: Receiving currency code. Auto-populated based on account type. + bankName: + type: string + description: The bank name of the bank + accountNumber: + type: string + description: The account number of the bank + beneficiary: + type: object + required: + - fullName + properties: + 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: + type: object + required: [] + properties: + line1: + type: string + description: Address line 1 + postalCode: + type: string + description: Postal code + country: + type: string + description: Country code + line2: + type: string + description: Address line 2 + city: + type: string + description: City + state: + type: string + description: State or province diff --git a/openapi/components/schemas/external_accounts/UsdAccountInfo.yaml b/openapi/components/schemas/external_accounts/UsdAccountInfo.yaml new file mode 100644 index 00000000..c6628408 --- /dev/null +++ b/openapi/components/schemas/external_accounts/UsdAccountInfo.yaml @@ -0,0 +1,84 @@ +type: object +title: USD Account +description: 'Required fields for USD -> USD corridor. Supported payment rails: Rtp, + Ach.' +required: +- accountType +- accountNumber +- routingNumber +- beneficiary +properties: + accountType: + type: string + enum: + - USD_ACCOUNT + example: USD_ACCOUNT + payment_rails: + type: array + items: + type: string + const: + - Rtp + - Ach + description: Supported payment rails for this currency. Auto-populated based on + account type. + receivingCurrency: + type: string + const: USD + description: Receiving currency code. Auto-populated based on account type. + accountNumber: + type: string + description: The account number of the bank + routingNumber: + type: string + description: The routing number of the bank + beneficiary: + type: object + required: + - birthDate + - fullName + - nationality + properties: + 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: + type: object + required: [] + properties: + line1: + type: string + description: Address line 1 + postalCode: + type: string + description: Postal code + country: + type: string + description: Country code + line2: + type: string + description: Address line 2 + city: + type: string + description: City + state: + type: string + description: State or province diff --git a/openapi/components/schemas/external_accounts/VndAccountInfo.yaml b/openapi/components/schemas/external_accounts/VndAccountInfo.yaml new file mode 100644 index 00000000..389454c1 --- /dev/null +++ b/openapi/components/schemas/external_accounts/VndAccountInfo.yaml @@ -0,0 +1,80 @@ +type: object +title: VND Account +description: 'Required fields for USD -> VND corridor. Supported payment rails: Local.' +required: +- accountType +- bankName +- accountNumber +- beneficiary +properties: + accountType: + type: string + enum: + - VND_ACCOUNT + example: VND_ACCOUNT + payment_rails: + type: array + items: + type: string + const: + - Local + description: Supported payment rails for this currency. Auto-populated based on + account type. + receivingCurrency: + type: string + const: VND + description: Receiving currency code. Auto-populated based on account type. + bankName: + type: string + description: The bank name of the bank + accountNumber: + type: string + description: The account number of the bank + beneficiary: + type: object + required: + - fullName + properties: + 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: + type: object + required: [] + properties: + line1: + type: string + description: Address line 1 + postalCode: + type: string + description: Postal code + country: + type: string + description: Country code + line2: + type: string + description: Address line 2 + city: + type: string + description: City + state: + type: string + description: State or province From dd0ec4d4242e39beea10219e0db4c0d205ac7bc6 Mon Sep 17 00:00:00 2001 From: Aaryaman Bhute Date: Tue, 10 Feb 2026 14:31:32 -0800 Subject: [PATCH 2/3] add --- mintlify/openapi.yaml | 1226 +++++++++++++++-- openapi.yaml | 1226 +++++++++++++++-- .../schemas/common/GbpAccountInfo.yaml | 22 - .../schemas/common/PhpAccountInfo.yaml | 18 - .../schemas/common/SgdAccountInfo.yaml | 26 - .../BaseExternalAccountInfo.yaml | 6 +- .../ExternalAccountInfoOneOf.yaml | 103 +- .../GbpAccountExternalAccountInfo.yaml | 9 - .../PhpAccountExternalAccountInfo.yaml | 9 - .../SgdAccountExternalAccountInfo.yaml | 9 - 10 files changed, 2221 insertions(+), 433 deletions(-) delete mode 100644 openapi/components/schemas/common/GbpAccountInfo.yaml delete mode 100644 openapi/components/schemas/common/PhpAccountInfo.yaml delete mode 100644 openapi/components/schemas/common/SgdAccountInfo.yaml delete mode 100644 openapi/components/schemas/external_accounts/GbpAccountExternalAccountInfo.yaml delete mode 100644 openapi/components/schemas/external_accounts/PhpAccountExternalAccountInfo.yaml delete mode 100644 openapi/components/schemas/external_accounts/SgdAccountExternalAccountInfo.yaml diff --git a/mintlify/openapi.yaml b/mintlify/openapi.yaml index 9540ce96..9bd723f7 100644 --- a/mintlify/openapi.yaml +++ b/mintlify/openapi.yaml @@ -5237,16 +5237,1048 @@ components: - UNDER_REVIEW - INACTIVE description: Status of an external account - UsAccountExternalAccountInfo: - allOf: - - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/UsAccountInfo' - - type: object + BrlAccountInfo: + type: object + title: BRL Account + description: 'Required fields for USD -> BRL corridor. Supported payment rails: Pix.' + required: + - accountType + - pixKey + - pixKeyType + - taxId + - beneficiary + properties: + accountType: + type: string + enum: + - BRL_ACCOUNT + example: BRL_ACCOUNT + payment_rails: + type: array + items: + type: string + const: + - Pix + description: Supported payment rails for this currency. Auto-populated based on account type. + receivingCurrency: + type: string + const: BRL + description: Receiving currency code. Auto-populated based on account type. + pixKey: + type: string + description: The PIX key of the bank + pixKeyType: + type: string + description: The type of PIX key of the bank + taxId: + type: string + description: The tax ID of the bank account + beneficiary: + type: object + required: + - fullName + properties: + 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: + type: object + required: [] + properties: + line1: + type: string + description: Address line 1 + postalCode: + type: string + description: Postal code + country: + type: string + description: Country code + line2: + type: string + description: Address line 2 + city: + type: string + description: City + state: + type: string + description: State or province + DkkAccountInfo: + type: object + title: DKK Account + description: 'Required fields for USD -> DKK corridor. Supported payment rails: Sepa.' + required: + - accountType + - iban + - beneficiary + properties: + accountType: + type: string + enum: + - DKK_ACCOUNT + example: DKK_ACCOUNT + payment_rails: + type: array + items: + type: string + const: + - Sepa + description: Supported payment rails for this currency. Auto-populated based on account type. + receivingCurrency: + type: string + const: DKK + description: Receiving currency code. Auto-populated based on account type. + iban: + type: string + description: The IBAN of the bank + swiftBic: + type: string + description: The SWIFT BIC of the bank + beneficiary: + type: object + required: + - fullName + properties: + 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: + type: object + required: [] + properties: + line1: + type: string + description: Address line 1 + postalCode: + type: string + description: Postal code + country: + type: string + description: Country code + line2: + type: string + description: Address line 2 + city: + type: string + description: City + state: + type: string + description: State or province + GbpAccountInfo: + type: object + title: GBP Account + description: 'Required fields for USD -> GBP corridor. Supported payment rails: Local.' + required: + - accountType + - sortCode + - accountNumber + - beneficiary + properties: + accountType: + type: string + enum: + - GBP_ACCOUNT + example: GBP_ACCOUNT + payment_rails: + type: array + items: + type: string + const: + - Local + description: Supported payment rails for this currency. Auto-populated based on account type. + receivingCurrency: + type: string + const: GBP + description: Receiving currency code. Auto-populated based on account type. + sortCode: + type: string + description: The sort code of the bank + accountNumber: + type: string + description: The account number of the bank + beneficiary: + type: object + required: + - fullName + properties: + 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: + type: object + required: [] + properties: + line1: + type: string + description: Address line 1 + postalCode: + type: string + description: Postal code + country: + type: string + description: Country code + line2: + type: string + description: Address line 2 + city: + type: string + description: City + state: + type: string + description: State or province + HkdAccountInfo: + type: object + title: HKD Account + description: 'Required fields for USD -> HKD corridor. Supported payment rails: Local.' + required: + - accountType + - bankName + - accountNumber + - beneficiary + properties: + accountType: + type: string + enum: + - HKD_ACCOUNT + example: HKD_ACCOUNT + payment_rails: + type: array + items: + type: string + const: + - Local + description: Supported payment rails for this currency. Auto-populated based on account type. + receivingCurrency: + type: string + const: HKD + description: Receiving currency code. Auto-populated based on account type. + bankName: + type: string + description: The bank name of the bank + accountNumber: + type: string + description: The account number of the bank + beneficiary: + type: object + required: + - fullName + properties: + 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: + type: object + required: [] + properties: + line1: + type: string + description: Address line 1 + postalCode: + type: string + description: Postal code + country: + type: string + description: Country code + line2: + type: string + description: Address line 2 + city: + type: string + description: City + state: + type: string + description: State or province + IdrAccountInfo: + type: object + title: IDR Account + description: 'Required fields for USD -> IDR corridor. Supported payment rails: Local.' + required: + - accountType + - sortCode + - accountNumber + - beneficiary + properties: + accountType: + type: string + enum: + - IDR_ACCOUNT + example: IDR_ACCOUNT + payment_rails: + type: array + items: + type: string + const: + - Local + description: Supported payment rails for this currency. Auto-populated based on account type. + receivingCurrency: + type: string + const: IDR + description: Receiving currency code. Auto-populated based on account type. + sortCode: + type: string + description: The sort code of the bank + accountNumber: + type: string + description: The account number of the bank + beneficiary: + type: object + required: + - fullName + properties: + 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: + type: object + required: [] + properties: + line1: + type: string + description: Address line 1 + postalCode: + type: string + description: Postal code + country: + type: string + description: Country code + line2: + type: string + description: Address line 2 + city: + type: string + description: City + state: + type: string + description: State or province + InrAccountInfo: + type: object + title: INR Account + description: 'Required fields for USD -> INR corridor. Supported payment rails: Upi.' + required: + - accountType + - vpa + - beneficiary + properties: + accountType: + type: string + enum: + - INR_ACCOUNT + example: INR_ACCOUNT + payment_rails: + type: array + items: + type: string + const: + - Upi + description: Supported payment rails for this currency. Auto-populated based on account type. + receivingCurrency: + type: string + const: INR + description: Receiving currency code. Auto-populated based on account type. + vpa: + type: string + description: The VPA of the bank + beneficiary: + type: object + required: + - fullName + properties: + 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: + type: object + required: [] + properties: + line1: + type: string + description: Address line 1 + postalCode: + type: string + description: Postal code + country: + type: string + description: Country code + line2: + type: string + description: Address line 2 + city: + type: string + description: City + state: + type: string + description: State or province + MxnAccountInfo: + type: object + title: MXN Account + description: 'Required fields for USD -> MXN corridor. Supported payment rails: Spei.' + required: + - accountType + - clabeNumber + - beneficiary + properties: + accountType: + type: string + enum: + - MXN_ACCOUNT + example: MXN_ACCOUNT + payment_rails: + type: array + items: + type: string + const: + - Spei + description: Supported payment rails for this currency. Auto-populated based on account type. + receivingCurrency: + type: string + const: MXN + description: Receiving currency code. Auto-populated based on account type. + clabeNumber: + type: string + description: The CLABE number of the bank + example: '123456789012345678' + minLength: 18 + maxLength: 18 + pattern: ^[0-9]{18}$ + beneficiary: + type: object + required: + - fullName + properties: + 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: + type: object + required: [] + properties: + line1: + type: string + description: Address line 1 + postalCode: + type: string + description: Postal code + country: + type: string + description: Country code + line2: + type: string + description: Address line 2 + city: + type: string + description: City + state: + type: string + description: State or province + MyrAccountInfo: + type: object + title: MYR Account + description: 'Required fields for USD -> MYR corridor. Supported payment rails: Local.' + required: + - accountType + - bankName + - accountNumber + - beneficiary + properties: + accountType: + type: string + enum: + - MYR_ACCOUNT + example: MYR_ACCOUNT + payment_rails: + type: array + items: + type: string + const: + - Local + description: Supported payment rails for this currency. Auto-populated based on account type. + receivingCurrency: + type: string + const: MYR + description: Receiving currency code. Auto-populated based on account type. + bankName: + type: string + description: The bank name of the bank + accountNumber: + type: string + description: The account number of the bank + beneficiary: + type: object + required: + - fullName + properties: + 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: + type: object + required: [] + properties: + line1: + type: string + description: Address line 1 + postalCode: + type: string + description: Postal code + country: + type: string + description: Country code + line2: + type: string + description: Address line 2 + city: + type: string + description: City + state: + type: string + description: State or province + PhpAccountInfo: + type: object + title: PHP Account + description: 'Required fields for USD -> PHP corridor. Supported payment rails: Local.' + required: + - accountType + - bankName + - accountNumber + - beneficiary + properties: + accountType: + type: string + enum: + - PHP_ACCOUNT + example: PHP_ACCOUNT + payment_rails: + type: array + items: + type: string + const: + - Local + description: Supported payment rails for this currency. Auto-populated based on account type. + receivingCurrency: + type: string + const: PHP + description: Receiving currency code. Auto-populated based on account type. + bankName: + type: string + description: The bank name of the bank + accountNumber: + type: string + description: The account number of the bank + beneficiary: + type: object + required: + - fullName + properties: + 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: + type: object + required: [] + properties: + line1: + type: string + description: Address line 1 + postalCode: + type: string + description: Postal code + country: + type: string + description: Country code + line2: + type: string + description: Address line 2 + city: + type: string + description: City + state: + type: string + description: State or province + SgdAccountInfo: + type: object + title: SGD Account + description: 'Required fields for USD -> SGD corridor. Supported payment rails: Local.' + required: + - accountType + - bankName + - accountNumber + - beneficiary + properties: + accountType: + type: string + enum: + - SGD_ACCOUNT + example: SGD_ACCOUNT + payment_rails: + type: array + items: + type: string + const: + - Local + description: Supported payment rails for this currency. Auto-populated based on account type. + receivingCurrency: + type: string + const: SGD + description: Receiving currency code. Auto-populated based on account type. + bankName: + type: string + description: The bank name of the bank + accountNumber: + type: string + description: The account number of the bank + beneficiary: + type: object required: - - beneficiary + - fullName properties: - beneficiary: - $ref: '#/components/schemas/BeneficiaryOneOf' + 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: + type: object + required: [] + properties: + line1: + type: string + description: Address line 1 + postalCode: + type: string + description: Postal code + country: + type: string + description: Country code + line2: + type: string + description: Address line 2 + city: + type: string + description: City + state: + type: string + description: State or province + ThbAccountInfo: + type: object + title: THB Account + description: 'Required fields for USD -> THB corridor. Supported payment rails: Local.' + required: + - accountType + - bankName + - accountNumber + - beneficiary + properties: + accountType: + type: string + enum: + - THB_ACCOUNT + example: THB_ACCOUNT + payment_rails: + type: array + items: + type: string + const: + - Local + description: Supported payment rails for this currency. Auto-populated based on account type. + receivingCurrency: + type: string + const: THB + description: Receiving currency code. Auto-populated based on account type. + bankName: + type: string + description: The bank name of the bank + accountNumber: + type: string + description: The account number of the bank + beneficiary: + type: object + required: + - fullName + properties: + 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: + type: object + required: [] + properties: + line1: + type: string + description: Address line 1 + postalCode: + type: string + description: Postal code + country: + type: string + description: Country code + line2: + type: string + description: Address line 2 + city: + type: string + description: City + state: + type: string + description: State or province + UsdAccountInfo: + type: object + title: USD Account + description: 'Required fields for USD -> USD corridor. Supported payment rails: Rtp, Ach.' + required: + - accountType + - accountNumber + - routingNumber + - beneficiary + properties: + accountType: + type: string + enum: + - USD_ACCOUNT + example: USD_ACCOUNT + payment_rails: + type: array + items: + type: string + const: + - Rtp + - Ach + description: Supported payment rails for this currency. Auto-populated based on account type. + receivingCurrency: + type: string + const: USD + description: Receiving currency code. Auto-populated based on account type. + accountNumber: + type: string + description: The account number of the bank + routingNumber: + type: string + description: The routing number of the bank + beneficiary: + type: object + required: + - birthDate + - fullName + - nationality + properties: + 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: + type: object + required: [] + properties: + line1: + type: string + description: Address line 1 + postalCode: + type: string + description: Postal code + country: + type: string + description: Country code + line2: + type: string + description: Address line 2 + city: + type: string + description: City + state: + type: string + description: State or province + VndAccountInfo: + type: object + title: VND Account + description: 'Required fields for USD -> VND corridor. Supported payment rails: Local.' + required: + - accountType + - bankName + - accountNumber + - beneficiary + properties: + accountType: + type: string + enum: + - VND_ACCOUNT + example: VND_ACCOUNT + payment_rails: + type: array + items: + type: string + const: + - Local + description: Supported payment rails for this currency. Auto-populated based on account type. + receivingCurrency: + type: string + const: VND + description: Receiving currency code. Auto-populated based on account type. + bankName: + type: string + description: The bank name of the bank + accountNumber: + type: string + description: The account number of the bank + beneficiary: + type: object + required: + - fullName + properties: + 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: + type: object + required: [] + properties: + line1: + type: string + description: Address line 1 + postalCode: + type: string + description: Postal code + country: + type: string + description: Country code + line2: + type: string + description: Address line 2 + city: + type: string + description: City + state: + type: string + description: State or province BaseExternalAccountInfo: type: object required: @@ -5264,9 +6296,9 @@ components: UPI: '#/components/schemas/UpiAccountExternalAccountInfo' NGN_ACCOUNT: '#/components/schemas/NgnAccountExternalAccountInfo' CAD_ACCOUNT: '#/components/schemas/CadAccountExternalAccountInfo' - GBP_ACCOUNT: '#/components/schemas/GbpAccountExternalAccountInfo' - PHP_ACCOUNT: '#/components/schemas/PhpAccountExternalAccountInfo' - SGD_ACCOUNT: '#/components/schemas/SgdAccountExternalAccountInfo' + GBP_ACCOUNT: '#/components/schemas/GbpAccountInfo' + PHP_ACCOUNT: '#/components/schemas/PhpAccountInfo' + SGD_ACCOUNT: '#/components/schemas/SgdAccountInfo' SPARK_WALLET: '#/components/schemas/SparkWalletExternalAccountInfo' LIGHTNING: '#/components/schemas/LightningExternalAccountInfo' SOLANA_WALLET: '#/components/schemas/SolanaWalletExternalAccountInfo' @@ -5356,6 +6388,16 @@ components: mapping: INDIVIDUAL: '#/components/schemas/IndividualBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + UsAccountExternalAccountInfo: + allOf: + - $ref: '#/components/schemas/BaseExternalAccountInfo' + - $ref: '#/components/schemas/UsAccountInfo' + - type: object + required: + - beneficiary + properties: + beneficiary: + $ref: '#/components/schemas/BeneficiaryOneOf' ClabeAccountExternalAccountInfo: allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' @@ -5467,105 +6509,6 @@ components: properties: beneficiary: $ref: '#/components/schemas/BeneficiaryOneOf' - GbpAccountInfo: - type: object - required: - - sortCode - - accountNumber - - accountType - properties: - accountType: - type: string - enum: - - GBP_ACCOUNT - sortCode: - type: string - description: UK bank sort code (6 digits, may include hyphens) - example: 20-00-00 - pattern: ^[0-9]{2}-?[0-9]{2}-?[0-9]{2}$ - accountNumber: - type: string - description: UK bank account number (8 digits) - example: '12345678' - minLength: 8 - maxLength: 8 - pattern: ^[0-9]{8}$ - GbpAccountExternalAccountInfo: - allOf: - - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/GbpAccountInfo' - - type: object - required: - - beneficiary - properties: - beneficiary: - $ref: '#/components/schemas/BeneficiaryOneOf' - PhpAccountInfo: - type: object - required: - - bankName - - accountNumber - - accountType - properties: - accountType: - type: string - enum: - - PHP_ACCOUNT - bankName: - type: string - description: Name of the beneficiary's bank - example: BDO Unibank - accountNumber: - type: string - description: Bank account number - example: '001234567890' - PhpAccountExternalAccountInfo: - allOf: - - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/PhpAccountInfo' - - type: object - required: - - beneficiary - properties: - beneficiary: - $ref: '#/components/schemas/BeneficiaryOneOf' - SgdAccountInfo: - type: object - required: - - bankName - - swiftCode - - accountNumber - - accountType - properties: - accountType: - type: string - enum: - - SGD_ACCOUNT - bankName: - type: string - description: Name of the beneficiary's bank - example: DBS Bank Ltd - swiftCode: - type: string - description: SWIFT/BIC code (8 or 11 characters) - example: DBSSSGSG - minLength: 8 - maxLength: 11 - pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ - accountNumber: - type: string - description: Bank account number - example: '0123456789' - SgdAccountExternalAccountInfo: - allOf: - - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/SgdAccountInfo' - - type: object - required: - - beneficiary - properties: - beneficiary: - $ref: '#/components/schemas/BeneficiaryOneOf' SparkWalletExternalAccountInfo: allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' @@ -5636,26 +6579,32 @@ components: example: US_ACCOUNT ExternalAccountInfoOneOf: oneOf: - - title: US Account - $ref: '#/components/schemas/UsAccountExternalAccountInfo' - - title: CLABE Account - $ref: '#/components/schemas/ClabeAccountExternalAccountInfo' - - title: PIX Account - $ref: '#/components/schemas/PixAccountExternalAccountInfo' - - title: IBAN Account - $ref: '#/components/schemas/IbanAccountExternalAccountInfo' - - title: UPI Account - $ref: '#/components/schemas/UpiAccountExternalAccountInfo' - - title: NGN Account - $ref: '#/components/schemas/NgnAccountExternalAccountInfo' - - title: CAD Account - $ref: '#/components/schemas/CadAccountExternalAccountInfo' + - title: BRL Account + $ref: '#/components/schemas/BrlAccountInfo' + - title: DKK Account + $ref: '#/components/schemas/DkkAccountInfo' - title: GBP Account - $ref: '#/components/schemas/GbpAccountExternalAccountInfo' + $ref: '#/components/schemas/GbpAccountInfo' + - title: HKD Account + $ref: '#/components/schemas/HkdAccountInfo' + - title: IDR Account + $ref: '#/components/schemas/IdrAccountInfo' + - title: INR Account + $ref: '#/components/schemas/InrAccountInfo' + - title: MXN Account + $ref: '#/components/schemas/MxnAccountInfo' + - title: MYR Account + $ref: '#/components/schemas/MyrAccountInfo' - title: PHP Account - $ref: '#/components/schemas/PhpAccountExternalAccountInfo' + $ref: '#/components/schemas/PhpAccountInfo' - title: SGD Account - $ref: '#/components/schemas/SgdAccountExternalAccountInfo' + $ref: '#/components/schemas/SgdAccountInfo' + - title: THB Account + $ref: '#/components/schemas/ThbAccountInfo' + - title: USD Account + $ref: '#/components/schemas/UsdAccountInfo' + - title: VND Account + $ref: '#/components/schemas/VndAccountInfo' - title: Spark Wallet $ref: '#/components/schemas/SparkWalletExternalAccountInfo' - title: Lightning @@ -5671,16 +6620,19 @@ components: discriminator: propertyName: accountType mapping: - US_ACCOUNT: '#/components/schemas/UsAccountExternalAccountInfo' - CLABE: '#/components/schemas/ClabeAccountExternalAccountInfo' - PIX: '#/components/schemas/PixAccountExternalAccountInfo' - IBAN: '#/components/schemas/IbanAccountExternalAccountInfo' - UPI: '#/components/schemas/UpiAccountExternalAccountInfo' - NGN_ACCOUNT: '#/components/schemas/NgnAccountExternalAccountInfo' - CAD_ACCOUNT: '#/components/schemas/CadAccountExternalAccountInfo' - GBP_ACCOUNT: '#/components/schemas/GbpAccountExternalAccountInfo' - PHP_ACCOUNT: '#/components/schemas/PhpAccountExternalAccountInfo' - SGD_ACCOUNT: '#/components/schemas/SgdAccountExternalAccountInfo' + BRL_ACCOUNT: '#/components/schemas/BrlAccountInfo' + DKK_ACCOUNT: '#/components/schemas/DkkAccountInfo' + GBP_ACCOUNT: '#/components/schemas/GbpAccountInfo' + HKD_ACCOUNT: '#/components/schemas/HkdAccountInfo' + IDR_ACCOUNT: '#/components/schemas/IdrAccountInfo' + INR_ACCOUNT: '#/components/schemas/InrAccountInfo' + MXN_ACCOUNT: '#/components/schemas/MxnAccountInfo' + MYR_ACCOUNT: '#/components/schemas/MyrAccountInfo' + PHP_ACCOUNT: '#/components/schemas/PhpAccountInfo' + SGD_ACCOUNT: '#/components/schemas/SgdAccountInfo' + THB_ACCOUNT: '#/components/schemas/ThbAccountInfo' + USD_ACCOUNT: '#/components/schemas/UsdAccountInfo' + VND_ACCOUNT: '#/components/schemas/VndAccountInfo' SPARK_WALLET: '#/components/schemas/SparkWalletExternalAccountInfo' LIGHTNING: '#/components/schemas/LightningExternalAccountInfo' SOLANA_WALLET: '#/components/schemas/SolanaWalletExternalAccountInfo' diff --git a/openapi.yaml b/openapi.yaml index 9540ce96..9bd723f7 100644 --- a/openapi.yaml +++ b/openapi.yaml @@ -5237,16 +5237,1048 @@ components: - UNDER_REVIEW - INACTIVE description: Status of an external account - UsAccountExternalAccountInfo: - allOf: - - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/UsAccountInfo' - - type: object + BrlAccountInfo: + type: object + title: BRL Account + description: 'Required fields for USD -> BRL corridor. Supported payment rails: Pix.' + required: + - accountType + - pixKey + - pixKeyType + - taxId + - beneficiary + properties: + accountType: + type: string + enum: + - BRL_ACCOUNT + example: BRL_ACCOUNT + payment_rails: + type: array + items: + type: string + const: + - Pix + description: Supported payment rails for this currency. Auto-populated based on account type. + receivingCurrency: + type: string + const: BRL + description: Receiving currency code. Auto-populated based on account type. + pixKey: + type: string + description: The PIX key of the bank + pixKeyType: + type: string + description: The type of PIX key of the bank + taxId: + type: string + description: The tax ID of the bank account + beneficiary: + type: object + required: + - fullName + properties: + 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: + type: object + required: [] + properties: + line1: + type: string + description: Address line 1 + postalCode: + type: string + description: Postal code + country: + type: string + description: Country code + line2: + type: string + description: Address line 2 + city: + type: string + description: City + state: + type: string + description: State or province + DkkAccountInfo: + type: object + title: DKK Account + description: 'Required fields for USD -> DKK corridor. Supported payment rails: Sepa.' + required: + - accountType + - iban + - beneficiary + properties: + accountType: + type: string + enum: + - DKK_ACCOUNT + example: DKK_ACCOUNT + payment_rails: + type: array + items: + type: string + const: + - Sepa + description: Supported payment rails for this currency. Auto-populated based on account type. + receivingCurrency: + type: string + const: DKK + description: Receiving currency code. Auto-populated based on account type. + iban: + type: string + description: The IBAN of the bank + swiftBic: + type: string + description: The SWIFT BIC of the bank + beneficiary: + type: object + required: + - fullName + properties: + 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: + type: object + required: [] + properties: + line1: + type: string + description: Address line 1 + postalCode: + type: string + description: Postal code + country: + type: string + description: Country code + line2: + type: string + description: Address line 2 + city: + type: string + description: City + state: + type: string + description: State or province + GbpAccountInfo: + type: object + title: GBP Account + description: 'Required fields for USD -> GBP corridor. Supported payment rails: Local.' + required: + - accountType + - sortCode + - accountNumber + - beneficiary + properties: + accountType: + type: string + enum: + - GBP_ACCOUNT + example: GBP_ACCOUNT + payment_rails: + type: array + items: + type: string + const: + - Local + description: Supported payment rails for this currency. Auto-populated based on account type. + receivingCurrency: + type: string + const: GBP + description: Receiving currency code. Auto-populated based on account type. + sortCode: + type: string + description: The sort code of the bank + accountNumber: + type: string + description: The account number of the bank + beneficiary: + type: object + required: + - fullName + properties: + 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: + type: object + required: [] + properties: + line1: + type: string + description: Address line 1 + postalCode: + type: string + description: Postal code + country: + type: string + description: Country code + line2: + type: string + description: Address line 2 + city: + type: string + description: City + state: + type: string + description: State or province + HkdAccountInfo: + type: object + title: HKD Account + description: 'Required fields for USD -> HKD corridor. Supported payment rails: Local.' + required: + - accountType + - bankName + - accountNumber + - beneficiary + properties: + accountType: + type: string + enum: + - HKD_ACCOUNT + example: HKD_ACCOUNT + payment_rails: + type: array + items: + type: string + const: + - Local + description: Supported payment rails for this currency. Auto-populated based on account type. + receivingCurrency: + type: string + const: HKD + description: Receiving currency code. Auto-populated based on account type. + bankName: + type: string + description: The bank name of the bank + accountNumber: + type: string + description: The account number of the bank + beneficiary: + type: object + required: + - fullName + properties: + 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: + type: object + required: [] + properties: + line1: + type: string + description: Address line 1 + postalCode: + type: string + description: Postal code + country: + type: string + description: Country code + line2: + type: string + description: Address line 2 + city: + type: string + description: City + state: + type: string + description: State or province + IdrAccountInfo: + type: object + title: IDR Account + description: 'Required fields for USD -> IDR corridor. Supported payment rails: Local.' + required: + - accountType + - sortCode + - accountNumber + - beneficiary + properties: + accountType: + type: string + enum: + - IDR_ACCOUNT + example: IDR_ACCOUNT + payment_rails: + type: array + items: + type: string + const: + - Local + description: Supported payment rails for this currency. Auto-populated based on account type. + receivingCurrency: + type: string + const: IDR + description: Receiving currency code. Auto-populated based on account type. + sortCode: + type: string + description: The sort code of the bank + accountNumber: + type: string + description: The account number of the bank + beneficiary: + type: object + required: + - fullName + properties: + 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: + type: object + required: [] + properties: + line1: + type: string + description: Address line 1 + postalCode: + type: string + description: Postal code + country: + type: string + description: Country code + line2: + type: string + description: Address line 2 + city: + type: string + description: City + state: + type: string + description: State or province + InrAccountInfo: + type: object + title: INR Account + description: 'Required fields for USD -> INR corridor. Supported payment rails: Upi.' + required: + - accountType + - vpa + - beneficiary + properties: + accountType: + type: string + enum: + - INR_ACCOUNT + example: INR_ACCOUNT + payment_rails: + type: array + items: + type: string + const: + - Upi + description: Supported payment rails for this currency. Auto-populated based on account type. + receivingCurrency: + type: string + const: INR + description: Receiving currency code. Auto-populated based on account type. + vpa: + type: string + description: The VPA of the bank + beneficiary: + type: object + required: + - fullName + properties: + 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: + type: object + required: [] + properties: + line1: + type: string + description: Address line 1 + postalCode: + type: string + description: Postal code + country: + type: string + description: Country code + line2: + type: string + description: Address line 2 + city: + type: string + description: City + state: + type: string + description: State or province + MxnAccountInfo: + type: object + title: MXN Account + description: 'Required fields for USD -> MXN corridor. Supported payment rails: Spei.' + required: + - accountType + - clabeNumber + - beneficiary + properties: + accountType: + type: string + enum: + - MXN_ACCOUNT + example: MXN_ACCOUNT + payment_rails: + type: array + items: + type: string + const: + - Spei + description: Supported payment rails for this currency. Auto-populated based on account type. + receivingCurrency: + type: string + const: MXN + description: Receiving currency code. Auto-populated based on account type. + clabeNumber: + type: string + description: The CLABE number of the bank + example: '123456789012345678' + minLength: 18 + maxLength: 18 + pattern: ^[0-9]{18}$ + beneficiary: + type: object + required: + - fullName + properties: + 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: + type: object + required: [] + properties: + line1: + type: string + description: Address line 1 + postalCode: + type: string + description: Postal code + country: + type: string + description: Country code + line2: + type: string + description: Address line 2 + city: + type: string + description: City + state: + type: string + description: State or province + MyrAccountInfo: + type: object + title: MYR Account + description: 'Required fields for USD -> MYR corridor. Supported payment rails: Local.' + required: + - accountType + - bankName + - accountNumber + - beneficiary + properties: + accountType: + type: string + enum: + - MYR_ACCOUNT + example: MYR_ACCOUNT + payment_rails: + type: array + items: + type: string + const: + - Local + description: Supported payment rails for this currency. Auto-populated based on account type. + receivingCurrency: + type: string + const: MYR + description: Receiving currency code. Auto-populated based on account type. + bankName: + type: string + description: The bank name of the bank + accountNumber: + type: string + description: The account number of the bank + beneficiary: + type: object + required: + - fullName + properties: + 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: + type: object + required: [] + properties: + line1: + type: string + description: Address line 1 + postalCode: + type: string + description: Postal code + country: + type: string + description: Country code + line2: + type: string + description: Address line 2 + city: + type: string + description: City + state: + type: string + description: State or province + PhpAccountInfo: + type: object + title: PHP Account + description: 'Required fields for USD -> PHP corridor. Supported payment rails: Local.' + required: + - accountType + - bankName + - accountNumber + - beneficiary + properties: + accountType: + type: string + enum: + - PHP_ACCOUNT + example: PHP_ACCOUNT + payment_rails: + type: array + items: + type: string + const: + - Local + description: Supported payment rails for this currency. Auto-populated based on account type. + receivingCurrency: + type: string + const: PHP + description: Receiving currency code. Auto-populated based on account type. + bankName: + type: string + description: The bank name of the bank + accountNumber: + type: string + description: The account number of the bank + beneficiary: + type: object + required: + - fullName + properties: + 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: + type: object + required: [] + properties: + line1: + type: string + description: Address line 1 + postalCode: + type: string + description: Postal code + country: + type: string + description: Country code + line2: + type: string + description: Address line 2 + city: + type: string + description: City + state: + type: string + description: State or province + SgdAccountInfo: + type: object + title: SGD Account + description: 'Required fields for USD -> SGD corridor. Supported payment rails: Local.' + required: + - accountType + - bankName + - accountNumber + - beneficiary + properties: + accountType: + type: string + enum: + - SGD_ACCOUNT + example: SGD_ACCOUNT + payment_rails: + type: array + items: + type: string + const: + - Local + description: Supported payment rails for this currency. Auto-populated based on account type. + receivingCurrency: + type: string + const: SGD + description: Receiving currency code. Auto-populated based on account type. + bankName: + type: string + description: The bank name of the bank + accountNumber: + type: string + description: The account number of the bank + beneficiary: + type: object required: - - beneficiary + - fullName properties: - beneficiary: - $ref: '#/components/schemas/BeneficiaryOneOf' + 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: + type: object + required: [] + properties: + line1: + type: string + description: Address line 1 + postalCode: + type: string + description: Postal code + country: + type: string + description: Country code + line2: + type: string + description: Address line 2 + city: + type: string + description: City + state: + type: string + description: State or province + ThbAccountInfo: + type: object + title: THB Account + description: 'Required fields for USD -> THB corridor. Supported payment rails: Local.' + required: + - accountType + - bankName + - accountNumber + - beneficiary + properties: + accountType: + type: string + enum: + - THB_ACCOUNT + example: THB_ACCOUNT + payment_rails: + type: array + items: + type: string + const: + - Local + description: Supported payment rails for this currency. Auto-populated based on account type. + receivingCurrency: + type: string + const: THB + description: Receiving currency code. Auto-populated based on account type. + bankName: + type: string + description: The bank name of the bank + accountNumber: + type: string + description: The account number of the bank + beneficiary: + type: object + required: + - fullName + properties: + 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: + type: object + required: [] + properties: + line1: + type: string + description: Address line 1 + postalCode: + type: string + description: Postal code + country: + type: string + description: Country code + line2: + type: string + description: Address line 2 + city: + type: string + description: City + state: + type: string + description: State or province + UsdAccountInfo: + type: object + title: USD Account + description: 'Required fields for USD -> USD corridor. Supported payment rails: Rtp, Ach.' + required: + - accountType + - accountNumber + - routingNumber + - beneficiary + properties: + accountType: + type: string + enum: + - USD_ACCOUNT + example: USD_ACCOUNT + payment_rails: + type: array + items: + type: string + const: + - Rtp + - Ach + description: Supported payment rails for this currency. Auto-populated based on account type. + receivingCurrency: + type: string + const: USD + description: Receiving currency code. Auto-populated based on account type. + accountNumber: + type: string + description: The account number of the bank + routingNumber: + type: string + description: The routing number of the bank + beneficiary: + type: object + required: + - birthDate + - fullName + - nationality + properties: + 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: + type: object + required: [] + properties: + line1: + type: string + description: Address line 1 + postalCode: + type: string + description: Postal code + country: + type: string + description: Country code + line2: + type: string + description: Address line 2 + city: + type: string + description: City + state: + type: string + description: State or province + VndAccountInfo: + type: object + title: VND Account + description: 'Required fields for USD -> VND corridor. Supported payment rails: Local.' + required: + - accountType + - bankName + - accountNumber + - beneficiary + properties: + accountType: + type: string + enum: + - VND_ACCOUNT + example: VND_ACCOUNT + payment_rails: + type: array + items: + type: string + const: + - Local + description: Supported payment rails for this currency. Auto-populated based on account type. + receivingCurrency: + type: string + const: VND + description: Receiving currency code. Auto-populated based on account type. + bankName: + type: string + description: The bank name of the bank + accountNumber: + type: string + description: The account number of the bank + beneficiary: + type: object + required: + - fullName + properties: + 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: + type: object + required: [] + properties: + line1: + type: string + description: Address line 1 + postalCode: + type: string + description: Postal code + country: + type: string + description: Country code + line2: + type: string + description: Address line 2 + city: + type: string + description: City + state: + type: string + description: State or province BaseExternalAccountInfo: type: object required: @@ -5264,9 +6296,9 @@ components: UPI: '#/components/schemas/UpiAccountExternalAccountInfo' NGN_ACCOUNT: '#/components/schemas/NgnAccountExternalAccountInfo' CAD_ACCOUNT: '#/components/schemas/CadAccountExternalAccountInfo' - GBP_ACCOUNT: '#/components/schemas/GbpAccountExternalAccountInfo' - PHP_ACCOUNT: '#/components/schemas/PhpAccountExternalAccountInfo' - SGD_ACCOUNT: '#/components/schemas/SgdAccountExternalAccountInfo' + GBP_ACCOUNT: '#/components/schemas/GbpAccountInfo' + PHP_ACCOUNT: '#/components/schemas/PhpAccountInfo' + SGD_ACCOUNT: '#/components/schemas/SgdAccountInfo' SPARK_WALLET: '#/components/schemas/SparkWalletExternalAccountInfo' LIGHTNING: '#/components/schemas/LightningExternalAccountInfo' SOLANA_WALLET: '#/components/schemas/SolanaWalletExternalAccountInfo' @@ -5356,6 +6388,16 @@ components: mapping: INDIVIDUAL: '#/components/schemas/IndividualBeneficiary' BUSINESS: '#/components/schemas/BusinessBeneficiary' + UsAccountExternalAccountInfo: + allOf: + - $ref: '#/components/schemas/BaseExternalAccountInfo' + - $ref: '#/components/schemas/UsAccountInfo' + - type: object + required: + - beneficiary + properties: + beneficiary: + $ref: '#/components/schemas/BeneficiaryOneOf' ClabeAccountExternalAccountInfo: allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' @@ -5467,105 +6509,6 @@ components: properties: beneficiary: $ref: '#/components/schemas/BeneficiaryOneOf' - GbpAccountInfo: - type: object - required: - - sortCode - - accountNumber - - accountType - properties: - accountType: - type: string - enum: - - GBP_ACCOUNT - sortCode: - type: string - description: UK bank sort code (6 digits, may include hyphens) - example: 20-00-00 - pattern: ^[0-9]{2}-?[0-9]{2}-?[0-9]{2}$ - accountNumber: - type: string - description: UK bank account number (8 digits) - example: '12345678' - minLength: 8 - maxLength: 8 - pattern: ^[0-9]{8}$ - GbpAccountExternalAccountInfo: - allOf: - - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/GbpAccountInfo' - - type: object - required: - - beneficiary - properties: - beneficiary: - $ref: '#/components/schemas/BeneficiaryOneOf' - PhpAccountInfo: - type: object - required: - - bankName - - accountNumber - - accountType - properties: - accountType: - type: string - enum: - - PHP_ACCOUNT - bankName: - type: string - description: Name of the beneficiary's bank - example: BDO Unibank - accountNumber: - type: string - description: Bank account number - example: '001234567890' - PhpAccountExternalAccountInfo: - allOf: - - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/PhpAccountInfo' - - type: object - required: - - beneficiary - properties: - beneficiary: - $ref: '#/components/schemas/BeneficiaryOneOf' - SgdAccountInfo: - type: object - required: - - bankName - - swiftCode - - accountNumber - - accountType - properties: - accountType: - type: string - enum: - - SGD_ACCOUNT - bankName: - type: string - description: Name of the beneficiary's bank - example: DBS Bank Ltd - swiftCode: - type: string - description: SWIFT/BIC code (8 or 11 characters) - example: DBSSSGSG - minLength: 8 - maxLength: 11 - pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ - accountNumber: - type: string - description: Bank account number - example: '0123456789' - SgdAccountExternalAccountInfo: - allOf: - - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/SgdAccountInfo' - - type: object - required: - - beneficiary - properties: - beneficiary: - $ref: '#/components/schemas/BeneficiaryOneOf' SparkWalletExternalAccountInfo: allOf: - $ref: '#/components/schemas/BaseExternalAccountInfo' @@ -5636,26 +6579,32 @@ components: example: US_ACCOUNT ExternalAccountInfoOneOf: oneOf: - - title: US Account - $ref: '#/components/schemas/UsAccountExternalAccountInfo' - - title: CLABE Account - $ref: '#/components/schemas/ClabeAccountExternalAccountInfo' - - title: PIX Account - $ref: '#/components/schemas/PixAccountExternalAccountInfo' - - title: IBAN Account - $ref: '#/components/schemas/IbanAccountExternalAccountInfo' - - title: UPI Account - $ref: '#/components/schemas/UpiAccountExternalAccountInfo' - - title: NGN Account - $ref: '#/components/schemas/NgnAccountExternalAccountInfo' - - title: CAD Account - $ref: '#/components/schemas/CadAccountExternalAccountInfo' + - title: BRL Account + $ref: '#/components/schemas/BrlAccountInfo' + - title: DKK Account + $ref: '#/components/schemas/DkkAccountInfo' - title: GBP Account - $ref: '#/components/schemas/GbpAccountExternalAccountInfo' + $ref: '#/components/schemas/GbpAccountInfo' + - title: HKD Account + $ref: '#/components/schemas/HkdAccountInfo' + - title: IDR Account + $ref: '#/components/schemas/IdrAccountInfo' + - title: INR Account + $ref: '#/components/schemas/InrAccountInfo' + - title: MXN Account + $ref: '#/components/schemas/MxnAccountInfo' + - title: MYR Account + $ref: '#/components/schemas/MyrAccountInfo' - title: PHP Account - $ref: '#/components/schemas/PhpAccountExternalAccountInfo' + $ref: '#/components/schemas/PhpAccountInfo' - title: SGD Account - $ref: '#/components/schemas/SgdAccountExternalAccountInfo' + $ref: '#/components/schemas/SgdAccountInfo' + - title: THB Account + $ref: '#/components/schemas/ThbAccountInfo' + - title: USD Account + $ref: '#/components/schemas/UsdAccountInfo' + - title: VND Account + $ref: '#/components/schemas/VndAccountInfo' - title: Spark Wallet $ref: '#/components/schemas/SparkWalletExternalAccountInfo' - title: Lightning @@ -5671,16 +6620,19 @@ components: discriminator: propertyName: accountType mapping: - US_ACCOUNT: '#/components/schemas/UsAccountExternalAccountInfo' - CLABE: '#/components/schemas/ClabeAccountExternalAccountInfo' - PIX: '#/components/schemas/PixAccountExternalAccountInfo' - IBAN: '#/components/schemas/IbanAccountExternalAccountInfo' - UPI: '#/components/schemas/UpiAccountExternalAccountInfo' - NGN_ACCOUNT: '#/components/schemas/NgnAccountExternalAccountInfo' - CAD_ACCOUNT: '#/components/schemas/CadAccountExternalAccountInfo' - GBP_ACCOUNT: '#/components/schemas/GbpAccountExternalAccountInfo' - PHP_ACCOUNT: '#/components/schemas/PhpAccountExternalAccountInfo' - SGD_ACCOUNT: '#/components/schemas/SgdAccountExternalAccountInfo' + BRL_ACCOUNT: '#/components/schemas/BrlAccountInfo' + DKK_ACCOUNT: '#/components/schemas/DkkAccountInfo' + GBP_ACCOUNT: '#/components/schemas/GbpAccountInfo' + HKD_ACCOUNT: '#/components/schemas/HkdAccountInfo' + IDR_ACCOUNT: '#/components/schemas/IdrAccountInfo' + INR_ACCOUNT: '#/components/schemas/InrAccountInfo' + MXN_ACCOUNT: '#/components/schemas/MxnAccountInfo' + MYR_ACCOUNT: '#/components/schemas/MyrAccountInfo' + PHP_ACCOUNT: '#/components/schemas/PhpAccountInfo' + SGD_ACCOUNT: '#/components/schemas/SgdAccountInfo' + THB_ACCOUNT: '#/components/schemas/ThbAccountInfo' + USD_ACCOUNT: '#/components/schemas/UsdAccountInfo' + VND_ACCOUNT: '#/components/schemas/VndAccountInfo' SPARK_WALLET: '#/components/schemas/SparkWalletExternalAccountInfo' LIGHTNING: '#/components/schemas/LightningExternalAccountInfo' SOLANA_WALLET: '#/components/schemas/SolanaWalletExternalAccountInfo' diff --git a/openapi/components/schemas/common/GbpAccountInfo.yaml b/openapi/components/schemas/common/GbpAccountInfo.yaml deleted file mode 100644 index 68a9a163..00000000 --- a/openapi/components/schemas/common/GbpAccountInfo.yaml +++ /dev/null @@ -1,22 +0,0 @@ -type: object -required: - - sortCode - - accountNumber - - accountType -properties: - accountType: - type: string - enum: - - GBP_ACCOUNT - sortCode: - type: string - description: UK bank sort code (6 digits, may include hyphens) - example: '20-00-00' - pattern: '^[0-9]{2}-?[0-9]{2}-?[0-9]{2}$' - accountNumber: - type: string - description: UK bank account number (8 digits) - example: '12345678' - minLength: 8 - maxLength: 8 - pattern: ^[0-9]{8}$ diff --git a/openapi/components/schemas/common/PhpAccountInfo.yaml b/openapi/components/schemas/common/PhpAccountInfo.yaml deleted file mode 100644 index 9b01eda6..00000000 --- a/openapi/components/schemas/common/PhpAccountInfo.yaml +++ /dev/null @@ -1,18 +0,0 @@ -type: object -required: - - bankName - - accountNumber - - accountType -properties: - accountType: - type: string - enum: - - PHP_ACCOUNT - bankName: - type: string - description: Name of the beneficiary's bank - example: BDO Unibank - accountNumber: - type: string - description: Bank account number - example: '001234567890' diff --git a/openapi/components/schemas/common/SgdAccountInfo.yaml b/openapi/components/schemas/common/SgdAccountInfo.yaml deleted file mode 100644 index 1821b632..00000000 --- a/openapi/components/schemas/common/SgdAccountInfo.yaml +++ /dev/null @@ -1,26 +0,0 @@ -type: object -required: - - bankName - - swiftCode - - accountNumber - - accountType -properties: - accountType: - type: string - enum: - - SGD_ACCOUNT - bankName: - type: string - description: Name of the beneficiary's bank - example: DBS Bank Ltd - swiftCode: - type: string - description: SWIFT/BIC code (8 or 11 characters) - example: DBSSSGSG - minLength: 8 - maxLength: 11 - pattern: ^[A-Z]{4}[A-Z]{2}[A-Z0-9]{2}([A-Z0-9]{3})?$ - accountNumber: - type: string - description: Bank account number - example: '0123456789' diff --git a/openapi/components/schemas/external_accounts/BaseExternalAccountInfo.yaml b/openapi/components/schemas/external_accounts/BaseExternalAccountInfo.yaml index ea40286e..894846ea 100644 --- a/openapi/components/schemas/external_accounts/BaseExternalAccountInfo.yaml +++ b/openapi/components/schemas/external_accounts/BaseExternalAccountInfo.yaml @@ -14,9 +14,9 @@ discriminator: UPI: ./UpiAccountExternalAccountInfo.yaml NGN_ACCOUNT: ./NgnAccountExternalAccountInfo.yaml CAD_ACCOUNT: ./CadAccountExternalAccountInfo.yaml - GBP_ACCOUNT: ./GbpAccountExternalAccountInfo.yaml - PHP_ACCOUNT: ./PhpAccountExternalAccountInfo.yaml - SGD_ACCOUNT: ./SgdAccountExternalAccountInfo.yaml + GBP_ACCOUNT: ./GbpAccountInfo.yaml + PHP_ACCOUNT: ./PhpAccountInfo.yaml + SGD_ACCOUNT: ./SgdAccountInfo.yaml SPARK_WALLET: ./SparkWalletExternalAccountInfo.yaml LIGHTNING: ./LightningExternalAccountInfo.yaml SOLANA_WALLET: ./SolanaWalletExternalAccountInfo.yaml diff --git a/openapi/components/schemas/external_accounts/ExternalAccountInfoOneOf.yaml b/openapi/components/schemas/external_accounts/ExternalAccountInfoOneOf.yaml index 30ae0e9f..ff358a2c 100644 --- a/openapi/components/schemas/external_accounts/ExternalAccountInfoOneOf.yaml +++ b/openapi/components/schemas/external_accounts/ExternalAccountInfoOneOf.yaml @@ -1,24 +1,32 @@ oneOf: -- title: US Account - $ref: ./UsAccountExternalAccountInfo.yaml -- title: CLABE Account - $ref: ./ClabeAccountExternalAccountInfo.yaml -- title: PIX Account - $ref: ./PixAccountExternalAccountInfo.yaml -- title: IBAN Account - $ref: ./IbanAccountExternalAccountInfo.yaml -- title: UPI Account - $ref: ./UpiAccountExternalAccountInfo.yaml -- title: NGN Account - $ref: ./NgnAccountExternalAccountInfo.yaml -- title: CAD Account - $ref: ./CadAccountExternalAccountInfo.yaml +# Fiat accounts +- title: BRL Account + $ref: ./BrlAccountInfo.yaml +- title: DKK Account + $ref: ./DkkAccountInfo.yaml - title: GBP Account - $ref: ./GbpAccountExternalAccountInfo.yaml + $ref: ./GbpAccountInfo.yaml +- title: HKD Account + $ref: ./HkdAccountInfo.yaml +- title: IDR Account + $ref: ./IdrAccountInfo.yaml +- title: INR Account + $ref: ./InrAccountInfo.yaml +- title: MXN Account + $ref: ./MxnAccountInfo.yaml +- title: MYR Account + $ref: ./MyrAccountInfo.yaml - title: PHP Account - $ref: ./PhpAccountExternalAccountInfo.yaml + $ref: ./PhpAccountInfo.yaml - title: SGD Account - $ref: ./SgdAccountExternalAccountInfo.yaml + $ref: ./SgdAccountInfo.yaml +- title: THB Account + $ref: ./ThbAccountInfo.yaml +- title: USD Account + $ref: ./UsdAccountInfo.yaml +- title: VND Account + $ref: ./VndAccountInfo.yaml +# Crypto wallets - title: Spark Wallet $ref: ./SparkWalletExternalAccountInfo.yaml - title: Lightning @@ -31,58 +39,27 @@ oneOf: $ref: ./PolygonWalletExternalAccountInfo.yaml - title: Base Wallet $ref: ./BaseWalletExternalAccountInfo.yaml -- title: THB Account - $ref: ./ThbAccountInfo.yaml -- title: BRL Account - $ref: ./BrlAccountInfo.yaml -- title: IDR Account - $ref: ./IdrAccountInfo.yaml -- title: SGD Account - $ref: ./SgdAccountInfo.yaml -- title: USD Account - $ref: ./UsdAccountInfo.yaml -- title: PHP Account - $ref: ./PhpAccountInfo.yaml -- title: MYR Account - $ref: ./MyrAccountInfo.yaml -- title: INR Account - $ref: ./InrAccountInfo.yaml -- title: DKK Account - $ref: ./DkkAccountInfo.yaml -- title: VND Account - $ref: ./VndAccountInfo.yaml -- title: MXN Account - $ref: ./MxnAccountInfo.yaml -- title: GBP Account - $ref: ./GbpAccountInfo.yaml -- title: HKD Account - $ref: ./HkdAccountInfo.yaml discriminator: propertyName: accountType mapping: - US_ACCOUNT: ./UsAccountExternalAccountInfo.yaml - CLABE: ./ClabeAccountExternalAccountInfo.yaml - PIX: ./PixAccountExternalAccountInfo.yaml - IBAN: ./IbanAccountExternalAccountInfo.yaml - UPI: ./UpiAccountExternalAccountInfo.yaml - NGN_ACCOUNT: ./NgnAccountExternalAccountInfo.yaml - CAD_ACCOUNT: ./CadAccountExternalAccountInfo.yaml - GBP_ACCOUNT: ./GbpAccountExternalAccountInfo.yaml - PHP_ACCOUNT: ./PhpAccountExternalAccountInfo.yaml - SGD_ACCOUNT: ./SgdAccountExternalAccountInfo.yaml + # Fiat accounts + BRL_ACCOUNT: ./BrlAccountInfo.yaml + DKK_ACCOUNT: ./DkkAccountInfo.yaml + GBP_ACCOUNT: ./GbpAccountInfo.yaml + HKD_ACCOUNT: ./HkdAccountInfo.yaml + IDR_ACCOUNT: ./IdrAccountInfo.yaml + INR_ACCOUNT: ./InrAccountInfo.yaml + MXN_ACCOUNT: ./MxnAccountInfo.yaml + MYR_ACCOUNT: ./MyrAccountInfo.yaml + PHP_ACCOUNT: ./PhpAccountInfo.yaml + SGD_ACCOUNT: ./SgdAccountInfo.yaml + THB_ACCOUNT: ./ThbAccountInfo.yaml + USD_ACCOUNT: ./UsdAccountInfo.yaml + VND_ACCOUNT: ./VndAccountInfo.yaml + # Crypto wallets SPARK_WALLET: ./SparkWalletExternalAccountInfo.yaml LIGHTNING: ./LightningExternalAccountInfo.yaml SOLANA_WALLET: ./SolanaWalletExternalAccountInfo.yaml TRON_WALLET: ./TronWalletExternalAccountInfo.yaml POLYGON_WALLET: ./PolygonWalletExternalAccountInfo.yaml BASE_WALLET: ./BaseWalletExternalAccountInfo.yaml - THB_ACCOUNT: ./ThbAccountInfo.yaml - BRL_ACCOUNT: ./BrlAccountInfo.yaml - IDR_ACCOUNT: ./IdrAccountInfo.yaml - USD_ACCOUNT: ./UsdAccountInfo.yaml - MYR_ACCOUNT: ./MyrAccountInfo.yaml - INR_ACCOUNT: ./InrAccountInfo.yaml - DKK_ACCOUNT: ./DkkAccountInfo.yaml - VND_ACCOUNT: ./VndAccountInfo.yaml - MXN_ACCOUNT: ./MxnAccountInfo.yaml - HKD_ACCOUNT: ./HkdAccountInfo.yaml diff --git a/openapi/components/schemas/external_accounts/GbpAccountExternalAccountInfo.yaml b/openapi/components/schemas/external_accounts/GbpAccountExternalAccountInfo.yaml deleted file mode 100644 index d9d01c90..00000000 --- a/openapi/components/schemas/external_accounts/GbpAccountExternalAccountInfo.yaml +++ /dev/null @@ -1,9 +0,0 @@ -allOf: - - $ref: ./BaseExternalAccountInfo.yaml - - $ref: ../common/GbpAccountInfo.yaml - - type: object - required: - - beneficiary - properties: - beneficiary: - $ref: ./BeneficiaryOneOf.yaml diff --git a/openapi/components/schemas/external_accounts/PhpAccountExternalAccountInfo.yaml b/openapi/components/schemas/external_accounts/PhpAccountExternalAccountInfo.yaml deleted file mode 100644 index d69becbe..00000000 --- a/openapi/components/schemas/external_accounts/PhpAccountExternalAccountInfo.yaml +++ /dev/null @@ -1,9 +0,0 @@ -allOf: - - $ref: ./BaseExternalAccountInfo.yaml - - $ref: ../common/PhpAccountInfo.yaml - - type: object - required: - - beneficiary - properties: - beneficiary: - $ref: ./BeneficiaryOneOf.yaml diff --git a/openapi/components/schemas/external_accounts/SgdAccountExternalAccountInfo.yaml b/openapi/components/schemas/external_accounts/SgdAccountExternalAccountInfo.yaml deleted file mode 100644 index 7e4cca1e..00000000 --- a/openapi/components/schemas/external_accounts/SgdAccountExternalAccountInfo.yaml +++ /dev/null @@ -1,9 +0,0 @@ -allOf: - - $ref: ./BaseExternalAccountInfo.yaml - - $ref: ../common/SgdAccountInfo.yaml - - type: object - required: - - beneficiary - properties: - beneficiary: - $ref: ./BeneficiaryOneOf.yaml \ No newline at end of file From 58909c083e61f5aa3aa2d963c3cdb27ccd326f47 Mon Sep 17 00:00:00 2001 From: Aaryaman Bhute Date: Tue, 10 Feb 2026 15:08:10 -0800 Subject: [PATCH 3/3] remove unused --- mintlify/openapi.yaml | 219 +----------------- openapi.yaml | 219 +----------------- .../BaseExternalAccountInfo.yaml | 7 - .../CadAccountExternalAccountInfo.yaml | 9 - .../ClabeAccountExternalAccountInfo.yaml | 9 - .../IbanAccountExternalAccountInfo.yaml | 9 - .../NgnAccountExternalAccountInfo.yaml | 27 --- .../PixAccountExternalAccountInfo.yaml | 9 - .../UpiAccountExternalAccountInfo.yaml | 9 - .../UsAccountExternalAccountInfo.yaml | 9 - 10 files changed, 8 insertions(+), 518 deletions(-) delete mode 100644 openapi/components/schemas/external_accounts/CadAccountExternalAccountInfo.yaml delete mode 100644 openapi/components/schemas/external_accounts/ClabeAccountExternalAccountInfo.yaml delete mode 100644 openapi/components/schemas/external_accounts/IbanAccountExternalAccountInfo.yaml delete mode 100644 openapi/components/schemas/external_accounts/NgnAccountExternalAccountInfo.yaml delete mode 100644 openapi/components/schemas/external_accounts/PixAccountExternalAccountInfo.yaml delete mode 100644 openapi/components/schemas/external_accounts/UpiAccountExternalAccountInfo.yaml delete mode 100644 openapi/components/schemas/external_accounts/UsAccountExternalAccountInfo.yaml diff --git a/mintlify/openapi.yaml b/mintlify/openapi.yaml index 9bd723f7..6e58e38e 100644 --- a/mintlify/openapi.yaml +++ b/mintlify/openapi.yaml @@ -6279,6 +6279,10 @@ components: state: type: string description: State or province + SparkWalletExternalAccountInfo: + allOf: + - $ref: '#/components/schemas/BaseExternalAccountInfo' + - $ref: '#/components/schemas/SparkWalletInfo' BaseExternalAccountInfo: type: object required: @@ -6289,13 +6293,6 @@ components: discriminator: propertyName: accountType mapping: - US_ACCOUNT: '#/components/schemas/UsAccountExternalAccountInfo' - CLABE: '#/components/schemas/ClabeAccountExternalAccountInfo' - PIX: '#/components/schemas/PixAccountExternalAccountInfo' - IBAN: '#/components/schemas/IbanAccountExternalAccountInfo' - UPI: '#/components/schemas/UpiAccountExternalAccountInfo' - NGN_ACCOUNT: '#/components/schemas/NgnAccountExternalAccountInfo' - CAD_ACCOUNT: '#/components/schemas/CadAccountExternalAccountInfo' GBP_ACCOUNT: '#/components/schemas/GbpAccountInfo' PHP_ACCOUNT: '#/components/schemas/PhpAccountInfo' SGD_ACCOUNT: '#/components/schemas/SgdAccountInfo' @@ -6305,214 +6302,6 @@ components: TRON_WALLET: '#/components/schemas/TronWalletExternalAccountInfo' POLYGON_WALLET: '#/components/schemas/PolygonWalletExternalAccountInfo' BASE_WALLET: '#/components/schemas/BaseWalletExternalAccountInfo' - IndividualBeneficiary: - allOf: - - $ref: '#/components/schemas/BaseBeneficiary' - - type: object - required: - - fullName - - birthDate - - nationality - - beneficiaryType - properties: - beneficiaryType: - type: string - enum: - - INDIVIDUAL - fullName: - type: string - description: Individual's full name - example: John Michael Doe - birthDate: - type: string - format: date - description: Date of birth in ISO 8601 format (YYYY-MM-DD) - example: '1990-01-15' - nationality: - type: string - description: Country code (ISO 3166-1 alpha-2) - example: US - BaseBeneficiary: - type: object - required: - - beneficiaryType - properties: - beneficiaryType: - $ref: '#/components/schemas/BeneficiaryType' - address: - $ref: '#/components/schemas/Address' - discriminator: - propertyName: beneficiaryType - mapping: - INDIVIDUAL: '#/components/schemas/IndividualBeneficiary' - BUSINESS: '#/components/schemas/BusinessBeneficiary' - BusinessBeneficiary: - allOf: - - $ref: '#/components/schemas/BaseBeneficiary' - - type: object - required: - - legalName - - beneficiaryType - properties: - beneficiaryType: - type: string - enum: - - BUSINESS - legalName: - type: string - description: Legal name of the business - example: Acme Corporation, Inc. - registrationNumber: - type: string - description: Business registration number - example: BRN-123456789 - taxId: - type: string - description: Tax identification number - example: EIN-987654321 - BeneficiaryType: - type: string - enum: - - INDIVIDUAL - - BUSINESS - description: Whether the beneficiary is an individual or a business entity - example: INDIVIDUAL - BeneficiaryOneOf: - oneOf: - - title: Individual Beneficiary - $ref: '#/components/schemas/IndividualBeneficiary' - - title: Business Beneficiary - $ref: '#/components/schemas/BusinessBeneficiary' - discriminator: - propertyName: beneficiaryType - mapping: - INDIVIDUAL: '#/components/schemas/IndividualBeneficiary' - BUSINESS: '#/components/schemas/BusinessBeneficiary' - UsAccountExternalAccountInfo: - allOf: - - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/UsAccountInfo' - - type: object - required: - - beneficiary - properties: - beneficiary: - $ref: '#/components/schemas/BeneficiaryOneOf' - ClabeAccountExternalAccountInfo: - allOf: - - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/ClabeAccountInfo' - - type: object - required: - - beneficiary - properties: - beneficiary: - $ref: '#/components/schemas/BeneficiaryOneOf' - PixAccountExternalAccountInfo: - allOf: - - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/PixAccountInfo' - - type: object - required: - - beneficiary - properties: - beneficiary: - $ref: '#/components/schemas/BeneficiaryOneOf' - IbanAccountExternalAccountInfo: - allOf: - - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/IbanAccountInfo' - - type: object - required: - - beneficiary - properties: - beneficiary: - $ref: '#/components/schemas/BeneficiaryOneOf' - UpiAccountExternalAccountInfo: - allOf: - - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/UpiAccountInfo' - - type: object - required: - - beneficiary - properties: - beneficiary: - $ref: '#/components/schemas/BeneficiaryOneOf' - NgnAccountExternalAccountInfo: - allOf: - - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/NgnAccountInfo' - - type: object - required: - - purposeOfPayment - - beneficiary - properties: - purposeOfPayment: - type: string - enum: - - GIFT - - SELF - - GOODS_OR_SERVICES - - EDUCATION - - HEALTH_OR_MEDICAL - - REAL_ESTATE_PURCHASE - - LOAN_PAYMENT - - TAX_PAYMENT - - UTILITY_BILL - - DONATION - - TRAVEL - - OTHER - description: Purpose of payment - example: GOODS_OR_SERVICES - beneficiary: - $ref: '#/components/schemas/BeneficiaryOneOf' - CadAccountInfo: - type: object - required: - - bankCode - - branchCode - - accountNumber - - accountType - properties: - accountType: - type: string - enum: - - CAD_ACCOUNT - bankCode: - type: string - description: Canadian financial institution number (3 digits) - example: '001' - minLength: 3 - maxLength: 3 - pattern: ^[0-9]{3}$ - branchCode: - type: string - description: Transit number identifying the branch (5 digits) - example: '00012' - minLength: 5 - maxLength: 5 - pattern: ^[0-9]{5}$ - accountNumber: - type: string - description: Bank account number (7-12 digits) - example: '1234567' - minLength: 7 - maxLength: 12 - pattern: ^[0-9]{7,12}$ - CadAccountExternalAccountInfo: - allOf: - - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/CadAccountInfo' - - type: object - required: - - beneficiary - properties: - beneficiary: - $ref: '#/components/schemas/BeneficiaryOneOf' - SparkWalletExternalAccountInfo: - allOf: - - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/SparkWalletInfo' LightningInfo: type: object description: | diff --git a/openapi.yaml b/openapi.yaml index 9bd723f7..6e58e38e 100644 --- a/openapi.yaml +++ b/openapi.yaml @@ -6279,6 +6279,10 @@ components: state: type: string description: State or province + SparkWalletExternalAccountInfo: + allOf: + - $ref: '#/components/schemas/BaseExternalAccountInfo' + - $ref: '#/components/schemas/SparkWalletInfo' BaseExternalAccountInfo: type: object required: @@ -6289,13 +6293,6 @@ components: discriminator: propertyName: accountType mapping: - US_ACCOUNT: '#/components/schemas/UsAccountExternalAccountInfo' - CLABE: '#/components/schemas/ClabeAccountExternalAccountInfo' - PIX: '#/components/schemas/PixAccountExternalAccountInfo' - IBAN: '#/components/schemas/IbanAccountExternalAccountInfo' - UPI: '#/components/schemas/UpiAccountExternalAccountInfo' - NGN_ACCOUNT: '#/components/schemas/NgnAccountExternalAccountInfo' - CAD_ACCOUNT: '#/components/schemas/CadAccountExternalAccountInfo' GBP_ACCOUNT: '#/components/schemas/GbpAccountInfo' PHP_ACCOUNT: '#/components/schemas/PhpAccountInfo' SGD_ACCOUNT: '#/components/schemas/SgdAccountInfo' @@ -6305,214 +6302,6 @@ components: TRON_WALLET: '#/components/schemas/TronWalletExternalAccountInfo' POLYGON_WALLET: '#/components/schemas/PolygonWalletExternalAccountInfo' BASE_WALLET: '#/components/schemas/BaseWalletExternalAccountInfo' - IndividualBeneficiary: - allOf: - - $ref: '#/components/schemas/BaseBeneficiary' - - type: object - required: - - fullName - - birthDate - - nationality - - beneficiaryType - properties: - beneficiaryType: - type: string - enum: - - INDIVIDUAL - fullName: - type: string - description: Individual's full name - example: John Michael Doe - birthDate: - type: string - format: date - description: Date of birth in ISO 8601 format (YYYY-MM-DD) - example: '1990-01-15' - nationality: - type: string - description: Country code (ISO 3166-1 alpha-2) - example: US - BaseBeneficiary: - type: object - required: - - beneficiaryType - properties: - beneficiaryType: - $ref: '#/components/schemas/BeneficiaryType' - address: - $ref: '#/components/schemas/Address' - discriminator: - propertyName: beneficiaryType - mapping: - INDIVIDUAL: '#/components/schemas/IndividualBeneficiary' - BUSINESS: '#/components/schemas/BusinessBeneficiary' - BusinessBeneficiary: - allOf: - - $ref: '#/components/schemas/BaseBeneficiary' - - type: object - required: - - legalName - - beneficiaryType - properties: - beneficiaryType: - type: string - enum: - - BUSINESS - legalName: - type: string - description: Legal name of the business - example: Acme Corporation, Inc. - registrationNumber: - type: string - description: Business registration number - example: BRN-123456789 - taxId: - type: string - description: Tax identification number - example: EIN-987654321 - BeneficiaryType: - type: string - enum: - - INDIVIDUAL - - BUSINESS - description: Whether the beneficiary is an individual or a business entity - example: INDIVIDUAL - BeneficiaryOneOf: - oneOf: - - title: Individual Beneficiary - $ref: '#/components/schemas/IndividualBeneficiary' - - title: Business Beneficiary - $ref: '#/components/schemas/BusinessBeneficiary' - discriminator: - propertyName: beneficiaryType - mapping: - INDIVIDUAL: '#/components/schemas/IndividualBeneficiary' - BUSINESS: '#/components/schemas/BusinessBeneficiary' - UsAccountExternalAccountInfo: - allOf: - - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/UsAccountInfo' - - type: object - required: - - beneficiary - properties: - beneficiary: - $ref: '#/components/schemas/BeneficiaryOneOf' - ClabeAccountExternalAccountInfo: - allOf: - - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/ClabeAccountInfo' - - type: object - required: - - beneficiary - properties: - beneficiary: - $ref: '#/components/schemas/BeneficiaryOneOf' - PixAccountExternalAccountInfo: - allOf: - - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/PixAccountInfo' - - type: object - required: - - beneficiary - properties: - beneficiary: - $ref: '#/components/schemas/BeneficiaryOneOf' - IbanAccountExternalAccountInfo: - allOf: - - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/IbanAccountInfo' - - type: object - required: - - beneficiary - properties: - beneficiary: - $ref: '#/components/schemas/BeneficiaryOneOf' - UpiAccountExternalAccountInfo: - allOf: - - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/UpiAccountInfo' - - type: object - required: - - beneficiary - properties: - beneficiary: - $ref: '#/components/schemas/BeneficiaryOneOf' - NgnAccountExternalAccountInfo: - allOf: - - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/NgnAccountInfo' - - type: object - required: - - purposeOfPayment - - beneficiary - properties: - purposeOfPayment: - type: string - enum: - - GIFT - - SELF - - GOODS_OR_SERVICES - - EDUCATION - - HEALTH_OR_MEDICAL - - REAL_ESTATE_PURCHASE - - LOAN_PAYMENT - - TAX_PAYMENT - - UTILITY_BILL - - DONATION - - TRAVEL - - OTHER - description: Purpose of payment - example: GOODS_OR_SERVICES - beneficiary: - $ref: '#/components/schemas/BeneficiaryOneOf' - CadAccountInfo: - type: object - required: - - bankCode - - branchCode - - accountNumber - - accountType - properties: - accountType: - type: string - enum: - - CAD_ACCOUNT - bankCode: - type: string - description: Canadian financial institution number (3 digits) - example: '001' - minLength: 3 - maxLength: 3 - pattern: ^[0-9]{3}$ - branchCode: - type: string - description: Transit number identifying the branch (5 digits) - example: '00012' - minLength: 5 - maxLength: 5 - pattern: ^[0-9]{5}$ - accountNumber: - type: string - description: Bank account number (7-12 digits) - example: '1234567' - minLength: 7 - maxLength: 12 - pattern: ^[0-9]{7,12}$ - CadAccountExternalAccountInfo: - allOf: - - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/CadAccountInfo' - - type: object - required: - - beneficiary - properties: - beneficiary: - $ref: '#/components/schemas/BeneficiaryOneOf' - SparkWalletExternalAccountInfo: - allOf: - - $ref: '#/components/schemas/BaseExternalAccountInfo' - - $ref: '#/components/schemas/SparkWalletInfo' LightningInfo: type: object description: | diff --git a/openapi/components/schemas/external_accounts/BaseExternalAccountInfo.yaml b/openapi/components/schemas/external_accounts/BaseExternalAccountInfo.yaml index 894846ea..81ba4846 100644 --- a/openapi/components/schemas/external_accounts/BaseExternalAccountInfo.yaml +++ b/openapi/components/schemas/external_accounts/BaseExternalAccountInfo.yaml @@ -7,13 +7,6 @@ properties: discriminator: propertyName: accountType mapping: - US_ACCOUNT: ./UsAccountExternalAccountInfo.yaml - CLABE: ./ClabeAccountExternalAccountInfo.yaml - PIX: ./PixAccountExternalAccountInfo.yaml - IBAN: ./IbanAccountExternalAccountInfo.yaml - UPI: ./UpiAccountExternalAccountInfo.yaml - NGN_ACCOUNT: ./NgnAccountExternalAccountInfo.yaml - CAD_ACCOUNT: ./CadAccountExternalAccountInfo.yaml GBP_ACCOUNT: ./GbpAccountInfo.yaml PHP_ACCOUNT: ./PhpAccountInfo.yaml SGD_ACCOUNT: ./SgdAccountInfo.yaml diff --git a/openapi/components/schemas/external_accounts/CadAccountExternalAccountInfo.yaml b/openapi/components/schemas/external_accounts/CadAccountExternalAccountInfo.yaml deleted file mode 100644 index 055b788c..00000000 --- a/openapi/components/schemas/external_accounts/CadAccountExternalAccountInfo.yaml +++ /dev/null @@ -1,9 +0,0 @@ -allOf: - - $ref: ./BaseExternalAccountInfo.yaml - - $ref: ../common/CadAccountInfo.yaml - - type: object - required: - - beneficiary - properties: - beneficiary: - $ref: ./BeneficiaryOneOf.yaml diff --git a/openapi/components/schemas/external_accounts/ClabeAccountExternalAccountInfo.yaml b/openapi/components/schemas/external_accounts/ClabeAccountExternalAccountInfo.yaml deleted file mode 100644 index e422f992..00000000 --- a/openapi/components/schemas/external_accounts/ClabeAccountExternalAccountInfo.yaml +++ /dev/null @@ -1,9 +0,0 @@ -allOf: - - $ref: ./BaseExternalAccountInfo.yaml - - $ref: ../common/ClabeAccountInfo.yaml - - type: object - required: - - beneficiary - properties: - beneficiary: - $ref: ./BeneficiaryOneOf.yaml \ No newline at end of file diff --git a/openapi/components/schemas/external_accounts/IbanAccountExternalAccountInfo.yaml b/openapi/components/schemas/external_accounts/IbanAccountExternalAccountInfo.yaml deleted file mode 100644 index 085cdbc8..00000000 --- a/openapi/components/schemas/external_accounts/IbanAccountExternalAccountInfo.yaml +++ /dev/null @@ -1,9 +0,0 @@ -allOf: - - $ref: ./BaseExternalAccountInfo.yaml - - $ref: ../common/IbanAccountInfo.yaml - - type: object - required: - - beneficiary - properties: - beneficiary: - $ref: ./BeneficiaryOneOf.yaml \ No newline at end of file diff --git a/openapi/components/schemas/external_accounts/NgnAccountExternalAccountInfo.yaml b/openapi/components/schemas/external_accounts/NgnAccountExternalAccountInfo.yaml deleted file mode 100644 index 959e1bfd..00000000 --- a/openapi/components/schemas/external_accounts/NgnAccountExternalAccountInfo.yaml +++ /dev/null @@ -1,27 +0,0 @@ -allOf: - - $ref: ./BaseExternalAccountInfo.yaml - - $ref: ../common/NgnAccountInfo.yaml - - type: object - required: - - purposeOfPayment - - beneficiary - properties: - purposeOfPayment: - type: string - enum: - - GIFT - - SELF - - GOODS_OR_SERVICES - - EDUCATION - - HEALTH_OR_MEDICAL - - REAL_ESTATE_PURCHASE - - LOAN_PAYMENT - - TAX_PAYMENT - - UTILITY_BILL - - DONATION - - TRAVEL - - OTHER - description: Purpose of payment - example: GOODS_OR_SERVICES - beneficiary: - $ref: ./BeneficiaryOneOf.yaml \ No newline at end of file diff --git a/openapi/components/schemas/external_accounts/PixAccountExternalAccountInfo.yaml b/openapi/components/schemas/external_accounts/PixAccountExternalAccountInfo.yaml deleted file mode 100644 index f492c457..00000000 --- a/openapi/components/schemas/external_accounts/PixAccountExternalAccountInfo.yaml +++ /dev/null @@ -1,9 +0,0 @@ -allOf: - - $ref: ./BaseExternalAccountInfo.yaml - - $ref: ../common/PixAccountInfo.yaml - - type: object - required: - - beneficiary - properties: - beneficiary: - $ref: ./BeneficiaryOneOf.yaml diff --git a/openapi/components/schemas/external_accounts/UpiAccountExternalAccountInfo.yaml b/openapi/components/schemas/external_accounts/UpiAccountExternalAccountInfo.yaml deleted file mode 100644 index e7675259..00000000 --- a/openapi/components/schemas/external_accounts/UpiAccountExternalAccountInfo.yaml +++ /dev/null @@ -1,9 +0,0 @@ -allOf: - - $ref: ./BaseExternalAccountInfo.yaml - - $ref: ../common/UpiAccountInfo.yaml - - type: object - required: - - beneficiary - properties: - beneficiary: - $ref: ./BeneficiaryOneOf.yaml \ No newline at end of file diff --git a/openapi/components/schemas/external_accounts/UsAccountExternalAccountInfo.yaml b/openapi/components/schemas/external_accounts/UsAccountExternalAccountInfo.yaml deleted file mode 100644 index 6fa6a96e..00000000 --- a/openapi/components/schemas/external_accounts/UsAccountExternalAccountInfo.yaml +++ /dev/null @@ -1,9 +0,0 @@ -allOf: - - $ref: ./BaseExternalAccountInfo.yaml - - $ref: ../common/UsAccountInfo.yaml - - type: object - required: - - beneficiary - properties: - beneficiary: - $ref: ./BeneficiaryOneOf.yaml \ No newline at end of file