FinancialAccountKYCFields

data class FinancialAccountKYCFields(val bankName: String? = null, val bankAccountType: String? = null, val bankAccountNumber: String? = null, val bankNumber: String? = null, val bankPhoneNumber: String? = null, val bankBranchNumber: String? = null, val externalTransferMemo: String? = null, val clabeNumber: String? = null, val cbuNumber: String? = null, val cbuAlias: String? = null, val mobileMoneyNumber: String? = null, val mobileMoneyProvider: String? = null, val cryptoAddress: String? = null, val cryptoMemo: String? = null)

Financial account information for KYC verification.

Contains bank account, mobile money, and cryptocurrency account details for receiving or sending payments. These fields can be used directly for natural persons or nested within organization fields using a prefix.

Supports multiple account types:

  • Traditional bank accounts (with routing numbers, branch codes)

  • Regional banking systems (CLABE for Mexico, CBU for Argentina)

  • Mobile money accounts

  • Cryptocurrency addresses

Example - Bank account:

val account = FinancialAccountKYCFields(
bankName = "Example Bank",
bankAccountNumber = "1234567890",
bankNumber = "123456789", // Routing number
bankBranchNumber = "001",
bankAccountType = "checking"
)

// Extract fields for submission
val fields = account.fields()

Example - Cryptocurrency:

val account = FinancialAccountKYCFields(
cryptoAddress = "GDJK...",
externalTransferMemo = "12345"
)

Example - With organization prefix:

val orgAccount = FinancialAccountKYCFields(
bankName = "Corporate Bank",
bankAccountNumber = "9876543210"
)

// When used in organization context, fields will have "organization." prefix
val fields = orgAccount.fields(keyPrefix = "organization.")
// Result: {"organization.bank_name": "Corporate Bank", ...}

See also:

Constructors

Link copied to clipboard
constructor(bankName: String? = null, bankAccountType: String? = null, bankAccountNumber: String? = null, bankNumber: String? = null, bankPhoneNumber: String? = null, bankBranchNumber: String? = null, externalTransferMemo: String? = null, clabeNumber: String? = null, cbuNumber: String? = null, cbuAlias: String? = null, mobileMoneyNumber: String? = null, mobileMoneyProvider: String? = null, cryptoAddress: String? = null, cryptoMemo: String? = null)

Types

Link copied to clipboard
object Companion

Properties

Link copied to clipboard

Account number identifying the bank account

Link copied to clipboard

Type of bank account (e.g., checking, savings)

Link copied to clipboard

Branch identifier for the bank

Link copied to clipboard

Name of the bank (useful in regions without unified routing)

Link copied to clipboard

Bank routing number (in US) or equivalent identifier

Link copied to clipboard

Phone number with country code for the bank

Link copied to clipboard

Alias for a CBU or CVU account

Link copied to clipboard

CBU (Clave Bancaria Uniforme) or CVU (Clave Virtual Uniforme) for Argentina

Link copied to clipboard

Bank account number for Mexico (CLABE system)

Link copied to clipboard

Cryptocurrency account address

Link copied to clipboard

Destination tag/memo for crypto transactions (deprecated, use externalTransferMemo)

Link copied to clipboard

Destination tag/memo for transaction identification

Link copied to clipboard

Mobile phone number in E.164 format for mobile money account

Link copied to clipboard

Name of the mobile money service provider

Functions

Link copied to clipboard
fun fields(keyPrefix: String = ""): Map<String, String>

Converts all financial account KYC fields to a map for SEP-9 submission.