Bank accounts management

Discover ways to manage all aspects of your bank accounts.

Introduction

The bank accounts are the destination of the settlements. We provide a function for adding your bank account before settlements, helping you manage them effectively. So consider this step a preparation of your future settlements.

The bank account added can be used for the scenarios below:

  • Schedule settlement: We will fetch the saved bank account information when creating scheduled settlements.
  • On-demand settlement: You can simply include the bank account ID in the API request instead of the full bank account information. This will minimize the chances of errors when managing many fields.

Bank accounts must be linked to either a liable account or a user account.

Add a bank account to an existing account

The detailed bank account information requirements are the same as with payout and vary per country. For more detailed information, please refer to the Payouts country requirements.

When performing scheduled settlements, if you have added multiple bank accounts to an account, we will set a default account for you in the configuration.

Example request

Check the complete information in our API Reference section.

{
"bank": {
   "country": "AR",
   "currency": "ARS",
   "code": 55,
   "account_number": "4578981237412",
   "type": "local",
   "branch": "34",
   "account_type": "checking",
   "swift": "BFRPARBA",
   "beneficiary": {
     "name": "Pedro",
     "last_name": "Perez",
     "document_id": "38655345",
     "document_type": "DNI",
     "address": "Montevideo 567",
     "phone": "+5493517896611",
     "email": "[email protected]"
    }
}
}

Overall flow

Validation check

When you add a bank account, we perform all possible validation checks to avoid errors during settlement creation. This includes:

  1. The basic validity field checks such as length of account number, special characters acceptance of account holder name, etc. You will receive the HTTP error for this scenario.
  2. In certain countries, we will validate bank accounts using local providers to ensure the account exists and the beneficiary matches the user's account. The results will be reflected in the status fields.

Be aware that when you add a bank account, we may need some time to perform these validations. You can subscribe to our webhook or use Get bank account API to see if the bank account status is active and therefor valid to process a settlement.

Example response

{
       "account_id": "d907f733-5e17-4470-b963-c2ac2c11a440",
       "bank_account_id": "303ccb43-f346-4365-a245-910aeafea032",
       "creation_date": "2023-07-10T00:00:00.000Z",
       "status": "ACTIVE",
       "status_code": "200",
       "status_detail": "Bank account enabled",
       "bank": {
            "country": "AR",
            "currency": "ARS",          
            "code": 55,
            "account_number": "4578981237412",
            "type": "local",
            "branch": "34",
            "swift": "BFRPARBA",
            "account_type": "checking",
            "beneficiary":{
                 "name": "Pedro",
                 "last_name": "Perez",
                 "document_id": "38655345",
                 "document_type": "DNI",
                 "address": "Montevideo 567",
                 "email": "[email protected]",
                 "phone": "+5493517896611"
        }
    }
}

Handle bank accounts

Get bank account information

You can obtain bank account information in two ways:

  • By providing the specific bank account ID. We will respond with all relevant details and the current status of that bank account.
  • By providing an account ID. We will return all bank accounts associated with that account.

Explore full details in our API Documentation section.

Bank account status

StatusStatus codeCan do a settlement?Description
PENDING100NOBank account under review by dLocal.
ACTIVE200YESBank account enabled.
INACTIVE300NOBank account disabled by the merchant.
REJECTED500NOBank account rejected by dLocal.