Bank Accounts
Store customer bank accounts for quick and easy processing.
The Bank Account Object
A bank
object is created and stored against a customer
object, when any payment is processed through the Helcim system with ACH bank details. A customer's bank information can be saved through a range of Helcim payment tools, including HelcimPay.js, Payment Pages, Virtual Terminal, and more.
A bank account stores a number of core payment details for the customer, including:
- Non-sensitive bank holder details, such as account type, institution and transit numbers for Canadian bank details, or routing for US bank details, as well as the last 4 digits of the bank account number.
- A unique
bankToken
value to allow processing within the ACH Payment API. - A range of date values indicating when the bank account was created, last updated, last used, and verified.
- Whether the bank account details are verified and ready to process payments.
- Address details for the bank account details.
// Example bank account object
{
"id": 53539,
"customerId": 22745923,
"dateCreated": "2024-07-05 09:50:13",
"dateUpdated": "2024-07-05 09:50:13",
"dateLastUsed": "0000-00-00 00:00:00",
"dateVerified": "2024-07-05 09:50:13",
"bankToken": "d6ad2df48c348351152bbd",
"accountType": "CHECKING",
"accountCorporate": "PERSONAL",
"verified": 1,
"ready": 1,
"bankIdNumber": "003",
"transitNumber": "23456",
"routingNumber": "",
"bankAccountNumberL4": "6789",
"address": {
"name": "John Doe",
"street1": "123 Test Street",
"street2": "",
"city": "Calgary",
"province": "AB",
"country": "CAN",
"postalCode": "H0H0H0",
"phone": "",
"email": ""
}
}
Capturing Customer Bank Account Details
The Helcim system will verify and tokenize any bank account information used to process a payment through our payment tools, storing this against a customer for later processing.
- If a payment is linked to an existing customer before processing, the payment and bank account details used for that payment will also be stored against the
customer
object. - If a payment is not linked to an existing customer before processing, the Helcim system will create a basic
customer
object to store the payment details against.
Using the ACH Payment API or HelcimPay.js to Capture Bank Account Details
Capturing customer bank account details can be completed using the ACH Payment API or HelcimPay.js, to create a unique
bankToken
value that can be used to process payments within the Helcim system.
Understanding Verified and Ready
A bank
object in the Helcim system has two parameters that dictate whether the bank account information is valid and ready to process payments.
Parameter | Description |
---|---|
verified | Banking that is verified has been validated and signed off by the Helcim team. ACH payments will still go through a second level of verification by the customers bank during the settlement process. |
ready | Banking that is ready has been approved by the customer through an authorized PAD agreement. |
Bank Account Endpoints
Create, request, and retrieve bank account information, and set a new default bank account for a customer, using the following endpoints.
Endpoint | Description | Version |
---|---|---|
Create a bank account | Create a new bank object for a customer to process ACH bank payments. | V2.2 |
Request bank account information from a customer | Request bank account information from a customer to create a new bank object for processing ACH bank payments. | V2.2 |
Get customer bank account | Retrieve a customer bank object, based on customerId and bankAccountId . | V2.1 |
Get customer bank accounts | Retrieve an array of customer bank objects, based on customerId . | V2.1 |
Set customer bank account as default | Set a customer bank account as the default account for processing. Default accounts will be used for all recurring payments and display as the primary account in many Helcim payment tools. | V2.1 |
Updated 5 days ago