The Bank Account object

Description

Caution - Payouts refused to Bank Accounts created after April 30, 2026

Bank Account objects created after April 30, 2026, will not be usable for payouts. External accounts must be registered using the Recipient endpoints and authenticated using SCA.

Payouts to Bank Accounts created after May 1, 2026, will fail with the ResultCode 121018. To resolve this, register the external account using POST Create a Recipient and retry the payout.

Note – Replaced by Recipients feature

The Bank Account object and endpoints have been replaced by the Recipients feature, which all platforms should integrate instead.

Legacy active Bank Accounts (Active is true) have been migrated to the new feature and their data is retrievable via the GET View a Recipient endpoint using the same BankAccountId. Read more about legacy bank account migration.

The Bank Account object represents the actual bank account of the user and is therefore required to:

  • Process a bank wire payout
  • Set up a mandate to process a pay-in by direct debit with a mandate (BACS or SEPA network only)

Different information is required for bank accounts in different countries. This is managed by the Type parameter, which determines the information that needs to be provided via the dedicated endpoint. The values are:

  • IBAN – For accounts registered in countries that use IBAN (including the UK when the payout currency is not GBP)
  • US – For accounts registered in the United States
  • CA – For accounts registered in Canada
  • GB – For accounts registered in the United Kingdom only when the payout currency is GBP (for other payout currencies, use the IBAN type)
  • OTHER – For accounts registered in countries that do not use IBAN (and are not the US, Canada, or the UK)

The country of registration of a bank account is not linked to its currency.

Caution – Creating the wrong type can lead to processing delays

Failure to use the correct type can lead to processing delays. Use the dedicated types for US, CA, and GB. Only use OTHER if the country isn’t one of these and doesn’t use IBAN.

Note – Bank Account creation blocked in restricted countries

Due to anti-money laundering policy, Mangopay doesn’t accept the creation of bank accounts registered in some countries (see the Country restrictions article).

Attributes

OwnerAddress
objectRequired

Information about the address of residence of the bank account owner.

AddressLine1
stringRequired

Max. length: 255 characters The first line of the address.

AddressLine2
string

Max. length: 255 characters
The second line of the address.

City
stringRequired

Max. length: 255 characters
The city of the address.

Region
string

Max. length: 255 characters
The region of the address. This field is optional except if the Country is US, CA, or MX.

PostalCode
string

Max. length: 255 characters
The postal code of the address. The postal code can contain the following characters: alphanumeric, dashes, and spaces.

Country
stringRequired

The country of the address.

OwnerName
stringRequired

Max. length: 255 characters The full name of the owner of the bank account. (Format: FirstName LastName)

Tag
string

Max. length: 255 characters
Custom data that you can add to this object.
For preauthorizations, you can use this parameter to identify corresponding information regarding the user or transaction on your platform.

IBAN
stringRequired

Max. length: 34 characters
The IBAN (international bank account number) of the bank account. It follows the CCDDBBAN format in which:

  • CC represents the country code (ISO 3166-1 alpha 2)
  • DD represents two check digits used by banking systems to avoid simple errors
  • BBAN stands for the Basic Bank Account Number which is up to 30 alphanumeric characters that are country-specific.
    Note: You will need a valid IBAN (i.e., existing in real life) when testing on a Sandbox account even if no actual payout will be processed.
AccountNumber
stringRequired

Format: Digits only
The unique number of the bank account (between 7 to 35 digits).

BIC
string

The BIC (international identifier of the bank) for IBAN or OTHER-type bank accounts.

The BIC can have one of the two following formats:

  • BIC8 – 8-character BIC (AAAABBCC)
  • BIC11 – 11-character BIC (AAAABBCCDDD)

In which:

  • AAAA represents the bank code: 4 characters defining the bank
  • BB represents the country code: 2 characters forming the country ISO code (ISO 3166 format)
  • CC represents the location code: 2 localization characters (alphabetical or numeric) to distinguish banks from the same country
  • DDD represents the branch code: 3 characters used to define the branch of the bank (sometimes replaced with XXX)

Note: On IBAN-type bank accounts, the full 11-character version (not using XXX) may be required for the BIC to be accepted as valid. Alternatively, this optional field can be omitted.

ABA
stringRequired

Length: 9 characters
The American Banking Association (ABA) routing number for US-type bank accounts.

DepositAccountType
string

Allowed values: CHECKING, SAVINGS

The deposit type for US-type bank accounts.

InstitutionNumber
stringRequired

Length: 3 digits
The 3-digit number assigned to Canadian financial institutions, for CA-type bank accounts.

BranchCode
stringRequired

Length: 5 digits
The 5-digit number assigned to branches of Canadian financial institutions, for CA-type bank accounts.

BankName
stringRequired

Max. length: 50 characters (letters and digits only)
The name of the Canadian bank for CA-type bank accounts.

SortCode
stringRequired

The 6-digit sort code, assigned to UK financial institutions, for GB-type bank accounts.

Country
stringRequired

The country of the address.

UserId
stringRequired

The unique identifier of the user the card belongs to.

Type
string

Returned values: DEBIT, CREDIT, CHARGE CARD.

The type of card product.

Id
string

The unique identifier of the object.

CreationDate
Unix timestamp

The date and time at which the object was created.

Active
booleanRequired

Whether or not the Bank Account is active. Mangopay automatically sets this parameter to false if the bank account is closed or does not exist anymore.