Configure Connected Accounts

An external fiat account will be required later on when you call the create fiat payment API call and need to specify a destination for fiat funds.

The external account ID you set as the destination will determine where your funds are deposited. For a payment processing platform, you’ll likely have one or more external accounts per customer on your platform.

  • Note: Beam does not associate these external accounts to your customers. Your payment processing system’s data model will need to manage the association of your customer and their external fiat accounts outside of Beam.

There are two ways to configure the external bank accounts you can send money to. One is through the Beam Hub:

  1. Login to the Beam Hub
  2. Navigate to the Connected Accounts page on the left hand sidebar
  3. For bank accounts, make sure the Fiat tab is selected
  4. Add all the destination bank accounts information including name, address, account number and routing number for wire-enabled accounts, and account type, number, and routing number for ACH-enabled accounts.

The second is through API:


Endpoint

POST /smb/externalAccounts/ach

Example

curl --request POST  
     --url <https://api.getbeam.cash/smb/externalAccounts/ach>  
     --header 'Authorization: Bearer beam_sandbox_abc123'  
     --header 'accept: application/json'  
     --header 'Content-Type: application/json'  
     --data '  
{  
  "routingNumber": "084106768",  
  "accountNumber": "12346880",  
  "accountType": "checking",  
  "description": "Mercury ACH"  
}'

Note: If you’d like to connect an external wire account, you can also do that via a different endpoint .


Retrieve Accounts

Once you've setup external accounts in the Beam Hub or via API, you can use the following API to retrieve those accounts:

Endpoint

GET /smb/externalAccounts/fiat

Example

curl --request GET  
     --url <https://api.getbeam.cash/smb/externalAccounts/fiat>  
     --header 'Authorization: Bearer beam_sandbox_abc123'  
     --header 'Content-Type: application/json'

Response

[  
  {  
    "id": "aca95453-f438-456c-ab0a-cd522e20f36d",  
    "description": "Mercury Wire",  
    "bankName": "Evolve Bank & Trust",  
    "type": "wire",  
    "routingNumber": "084106768",  
    "last4": "6880",  
    "createdAt": "2024-02-26T15:52:13.899Z",  
    "updatedAt": "2024-10-16T15:04:21.777Z"  
  },  
  {  
    "id": "367825ed-1bdc-458f-8424-c7d398f5764f",  
    "description": "Mercury ACH",  
    "bankName": "Evolve Bank And Trust",  
    "type": "financial",  
    "routingNumber": "084106768",  
    "last4": "6880",  
    "createdAt": "2024-02-27T15:52:13.899Z",  
    "updatedAt": "2024-10-16T15:04:20.976Z"  
  }  
]

Endpoint

POST /smb/externalAccounts/ach

Example

curl --request POST  
     --url <https://api.getbeam.cash/smb/externalAccounts/ach>  
     --header 'Authorization: Bearer beam_sandbox_abc123'  
     --header 'accept: application/json'  
     --header 'Content-Type: application/json'  
     --data '  
{  
  "routingNumber": "084106768",  
  "accountNumber": "12346880",  
  "accountType": "checking",  
  "description": "Mercury ACH"  
}'

Once your external accounts are created within Beam, you’ll be able to use them as destinations in the Money Movements section.