Create a demand deposit account
TxB allows clients to create physical accounts for deposits, payables and receivables. To learn about creating virtual accounts, check out our virtual accounts guide.
Step by step guide
Step 1 - Reserve a list of accounts
The first step in account creation is retrieving a pre-reserved set of account numbers.
GET /v2/accounts/reserved
returns:
{
"reservedAccountNumbers": [
{
"accountNumber": "800013210000",
"iban": null, // only applicable for non-US accounts
"bankIdentifier": null, // only applicable for non-US accounts
"externalPaymentIds": null
}
]
}
Note: Your query can be filtered by:
- entityId – For clients who work with multiple entities and want to disambiguate the response
- branchCountry – For clients operating across multiple TxB branches
US clients will receive 12 digit account numbers Clients outside of the US will receive account numbers, IBANs and Bank Identifier information.
Step 2 - Create a physical account
Next, you should use an account from the reserved response to open a physical account. It’s important to specify the correct branchCountry as this will drive which local routing information will be available as well as the available rails.
POST /v2/accounts/PHYSICAL
with this sample payload:
{
"physicalAccountRequest": {
"requestId": "DDAOpening1",
"branchCountry": US
"isVirtualEnabled": false,
"administrative": {
"accountName": "My First DDA ",
"accountNickname": "DDA 1",
"accountCurrency": "USD",
"accountPurposes": [
"COMMERCIAL_PAYMENTS"
]
},
"accountIdentifiers": {
"accountNumber": "800013210000"
},
"ownershipAndControl": {
"thirdPartyIndicator": false // true where depositor entity differs from creation entity
}
}
}
Note: The Id’s to be used within the OwnershipAndControl object can be retrieved by using the associated entityId in GET/v2/entities/{entityId} (Link). If the account is being created for the requesting entity, then thirdPartyIndicator = false and no further information is required – this will be inherited systematically.
Step 3 - Monitor the status of an account request
Account creation is async, so you need to monitor the creation process.
GET /v2/accounts/requests/DDAOpening1?requestType=CREATE
returns:
{
"accountNumber": "800013210000",
"status": "COMPLETED"
}
Step 4 - Verify that account object is now created
After your async account creation is "COMPLETED", you can now retrieve the details of the account you created.
GET /v2/accounts/800013210000
returns:
{
"type": "PHYSICAL",
"accountStatus": "ACTIVE",
"accountCurrency": "USD",
"rate": null,
"branchCountry": "US",
"admistrative": {
"openDate": "2022-03-15T15:49:24.845Z",
"accountName": "My First DDA",
"accountNickname": "DDA 1",
(...)
}
}
Step 5 – Enable payment products on the account
Once the account is created, you can now enable products and rails for usage.
To enable products then you must submit the relevant information via API.
POST /v2/products/800013210000
with this representative payload:
{
"requestId": "DDAProducts1",
"achInformation": {
"companyId": "1234567891",
"secCodes": [
"CCD",
"WEB"
],
"originationProfile": "Standard Originator",
"desiredOriginationDate": "T+0",
"incomingincomingDebitAuthorization": "Accept",
"incomingCreditAuthorization": "Accept"
}
}
For some products, evidence must be provided in the form of documentation. Details of this will be communicated as part of your onboarding with TxB.
Step 6 – Monitor Product Enablement
Once your product request has been successfully submitted, you can monitor the status.
All product requests will need to be reviewed and approved by TxB operations to ensure completeness and, where applicable, market setup.
GET /v2/products/requests/DDAProducts1
returns:
{
"accountNumber": "80001319",
"status": "COMPLETED"
}
Once your status is complete, you can begin to execute further API calls related to the available products.
Was this page useful?
Give feedback to help us improve developer.gs.com and serve you better.