Helcim Logo Support & Tutorials

© Copyright 2006-2018 Helcim Inc.

All Rights Reserved.

Helcim Commerce API » Processing Payments » EFT/ACH Payments »

EFT/ACH Withdrawal

This API call let's you process a EFT/ACH withdrawal. The response is an XML of the processed withdrawal.

Request Fields

Field Name Type Required Description
transactionEFTType String Yes withdrawal
accountId Integer Yes The Helcim Commerce account ID.
apiToken String Yes API token used for authentication and access control. 
amount Decimal Yes The amount of the transaction.
terminalId Integer No The terminal ID.
customerCode String No The customer code.
bankAccountToken String Yes The bank account token.
bankAccountL4L4 Integer Yes The last four digits of the routing number, and the last four digits of the bank account number.
orderNumber String No The order number.

Response Fields (XML)

Field Name Type Description
message - XML structure
response Integer 1 or 0. Whether the transaction was approved or declined.
responseMessage String Result of transaction (Approved/Denied).
notice String Error/warning message from Helcim. 
transaction - XML structure
transactionEFTId Integer The transaction ID.
transactionType String The transaction type (purchase, refund, pre-auth, capture).
date String The date of the transactions
time String The time of the transaction.
amount Decimal The amount of the transactions.
currency String The transaction currency.
approvalCode String The approval code.
bankAccountType String The bank account type (CHK, SAV).
bankAccountCorporate String The type of account (CHK-chequing, SAV-savings).
bankAccountToken String The bank account token.
bankAccountFinancialNumber String The bank account financial number.
bankTransitNumber String The bank account transit number.
bankAccountNumber String The bank account transit number.


For all API requests, there are also generic API authentication and user access restriction errors.
Response Code Error Code Message Description
0 - Invalid Amount The transaction amount was not entered.
0 - Invalid Bank Account Token The bank account token is invalid, or not entered.
0 - Bank Account L4L4 Does Not Match Bank Account Token The bank account L4L4(last 4 digits of routing number, last 4 digits of bank account number) do not match the bank account token, or were not entered.
0 - Transaction amount cannot be larger than amount due of order The amount of the withdrawal is larger than the order. (Error can only appear when field orderNumber is entered in Request Fields)

Code Samples

Sample EFT/ACH Withdrawal Response XML

<?xml version="1.0"?>

HTML Form Sample HTML

<input type="hidden" name="accountId" value="YOUR-ACCOUNT-ID">
<input type="hidden" name="apiToken" value="YOUR-API-TOKEN">
<input type="hidden" name="transactionEFTType" value="withdrawal">
<input type="hidden" name="amount" value="12.99">
<input type="hidden" name="terminalId" value="1004">
<input type="hidden" name="customerCode" value="12A1177">
<input type="hidden" name="bankAccountToken" value="The customer's bank account token">
<input type="hidden" name="bankAccountL4L4" value="The last four digits of the routing number, and the last four digits of the customer's bank account number">
<input type="hidden" name="orderNumber" value="11735">