diff --git a/openapi/components/schemas/external_accounts/ExternalAccountInfoOneOf.yaml b/openapi/components/schemas/external_accounts/ExternalAccountInfoOneOf.yaml index 3833c6b..c5844e1 100644 --- a/openapi/components/schemas/external_accounts/ExternalAccountInfoOneOf.yaml +++ b/openapi/components/schemas/external_accounts/ExternalAccountInfoOneOf.yaml @@ -1,36 +1,40 @@ 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: MxnSpeiAccountInfo + $ref: ./MxnSpeiAccountInfo.yaml +- title: InrUpiAccountInfo + $ref: ./InrUpiAccountInfo.yaml discriminator: propertyName: accountType mapping: @@ -50,3 +54,5 @@ discriminator: TRON_WALLET: ./TronWalletExternalAccountInfo.yaml POLYGON_WALLET: ./PolygonWalletExternalAccountInfo.yaml BASE_WALLET: ./BaseWalletExternalAccountInfo.yaml + MXN_SPEI_ACCOUNT: ./MxnSpeiAccountInfo.yaml + INR_UPI_ACCOUNT: ./InrUpiAccountInfo.yaml diff --git a/openapi/components/schemas/external_accounts/InrUpiAccountInfo.yaml b/openapi/components/schemas/external_accounts/InrUpiAccountInfo.yaml new file mode 100644 index 0000000..d76c370 --- /dev/null +++ b/openapi/components/schemas/external_accounts/InrUpiAccountInfo.yaml @@ -0,0 +1,31 @@ +type: object +title: InrUpiAccountInfo +description: Required fields for USD -> INR corridor via Upi +required: +- accountType +- beneficiary +- fullName +- vpa +properties: + accountType: + type: string + enum: + - INR_UPI_ACCOUNT + example: INR_UPI_ACCOUNT + fullName: + type: string + description: Full name of the beneficiary + example: John Michael Doe + vpa: + type: string + description: Virtual Payment Address for UPI payments + example: somecustomers@okbank + beneficiary: + oneOf: + - $ref: ./IndividualBeneficiary.yaml + - $ref: ./BusinessBeneficiary.yaml + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: ./IndividualBeneficiary.yaml + BUSINESS: ./BusinessBeneficiary.yaml diff --git a/openapi/components/schemas/external_accounts/MxnSpeiAccountInfo.yaml b/openapi/components/schemas/external_accounts/MxnSpeiAccountInfo.yaml new file mode 100644 index 0000000..cc1aae4 --- /dev/null +++ b/openapi/components/schemas/external_accounts/MxnSpeiAccountInfo.yaml @@ -0,0 +1,34 @@ +type: object +title: MxnSpeiAccountInfo +description: Required fields for USD -> MXN corridor via Spei +required: +- accountType +- beneficiary +- clabeNumber +- name +properties: + accountType: + type: string + enum: + - MXN_SPEI_ACCOUNT + example: MXN_SPEI_ACCOUNT + clabeNumber: + type: string + description: 18-digit CLABE number (Mexican banking standard) + example: '123456789012345678' + minLength: 18 + maxLength: 18 + pattern: ^[0-9]{18}$ + name: + type: string + description: Full name of the payee + example: Jane Smith + beneficiary: + oneOf: + - $ref: ./IndividualBeneficiary.yaml + - $ref: ./BusinessBeneficiary.yaml + discriminator: + propertyName: beneficiaryType + mapping: + INDIVIDUAL: ./IndividualBeneficiary.yaml + BUSINESS: ./BusinessBeneficiary.yaml