Overview

Common themes and understanding required for interacting with the ACHQ platform API

1. Basic Request Template – The following table defines the basic data fields that will be required when submitting any request through the ACHQ Payment API:

Field NameUsageField Value Format Constraints
ProviderIDRequiredProvided by your Account Manager
Provider_GateIDRequiredProvided by your Account Manager
Provider_GateKeyRequiredProvided by your Account Manager
MerchantIDRequiredProvided to the merchant by ACHQ
Merchant_GateIDRequiredProvided to the merchant by ACHQ
Merchant_GateKeyRequiredProvided to the merchant by ACHQ
CommandVersionRequiredSet to 2.0 to enforce this API documentation revision
TestModeOptionalSet this value to On to generate an API response without creating a record

2. Submitting a an API request – To submit an API request to ACHQ, use either HTTP POST or GET to transmit the necessary fields to the following secure URL:

https://www.speedchex.com/datalinks/transact.aspx

If using HTTP GET, please make sure that all data values have been encoded to be URL-safe.

3. Response Template – In response to any command, the ACHQ API will return a JSON response indicating whether the command succeeded or failed and any additional information necessary to interpret the response. The following table defines the field values that will be returned in every response and their meaning:

Field NameField ContentsMax LengthAdditional Information
CommandStatusReturns one of the following values: • ApprovedDeclinedError30Indicates the success or failure of the command issued.
ResponseCodeA 3 digit code indicating command success or reason for command failure.3Refer to Response Code Definitions for a list of possible values
DescriptionDescription of the ResponseCode value255Refer to Response Code Definitions for a list of possible values
ErrorInformationAdditional information to help determine the source of an error.50Refer to Response Code Definitions for a list of possible values
ExpressVerify.StatusReturns one of the following values if Express Verify is activated: ‘POS’, ‘NEG’, ‘UNK’ or ‘ERR’.3Refer to Verification Code Definitions for a list of possible values
ExpressVerify.CodeA code indicating the reason for the ExpressVerify.Status value5Refer to Verification Code Definitions for a list of possible values
ExpressVerify.DescriptionA brief explanation for the ExpressVerify.Status value255Refer to Verification Code Definitions for a list of possible values
ResponseDataPlease see the documentation for the specific command to be issued for an explanation of the possible value(s) for this field.This is a generic object that can take the form of any scalar or complex object called for by the command that is issued.
ACHQTokenA unique token that can be used to represent the supplied bank routing and account information on any future payments.50A token will only be generated if directed requested on the Create_ACHQToken parameter.
Provider_TransactionIDThe Provider_TransactionID value defined in the command.50This value can be used as a transaction reference when processing responses must be deferred (like for batch uploads)
Transact_ReferenceIDA unique ID assigned to each command submitted to the ACHQ Gateway.30This value can be used for as a unique transaction identifier or as a reference for support on any command.

Note: The ECheck.VerifyPlus command contains additional response fields detailed in that command ‘s definition