ACH Sale
The ACH Sale API debits the purchase amount from provided bank account
POST
https://<Platform-host>/api/payment/ach
Request Body
data.account_token*
String
Bank Account Token
data.transaction_amount*
string
Max Length=12 Allowed characters: 0-9 and .(dot) Note: this value always reflects the total dollar amount for example 1.00 and 1 both will be considered $1.00 and 0.10 will be 10 cents.
merchant_id*
string
Merchant ID
data.internal_transaction_id
string
An internal ID from integrating system. Will be returned in the response and associated refunds if provided.
data.order_number
string
Order number or PO number specified in billing statement of the cardholder. Alphanumeric (a-z A-Z 0-9) maximum 20 characters
data.description
string
Transaction description. Character limit is 255
data.additional_data
object
Optional data. Currently, it is specific to certain use case for accounting integration
data.metadata
object
Add any additional metadata by passing a json object
id
string
Platform payment ID for the sale request
Required
transaction_id
string
Unique transaction ID
Required
merchant_id
string
Merchant ID
Required
gateway_id
string
ID of the gateway through which the transaction is processed
Optional
description
string
Transaction Description
Optional
token
string
Bank token provided in the request that is used to process this ACH transaction
Required
internal_transaction_id
string
Internal Transaction ID provided in the request
Optional
order_number
string
Order number provided in the request
Optional
ach_response.status
string
Transaction execution status. Allowed values PASS | FAIL
Required
ach_response.response_code
string
The code representing the status of the processed request. It comes from the processor
Required
ach_response.response_message
string
The corresponding message for the response code. It comes from the processor
Required
ach_response.ach_host_transaction_id
string
The unique identifier for the ACH transaction by the processor
Optional
ach_response.ach_host_message
string
Host response message from acquiring processor
Optional
ach_response.task_id
string
Task identification number from acquiring processor
Optional
ach_response.transaction_id
string
Transaction Identifier
Optional
ach_response.transaction_timestamp
string
Transaction timestamp in merchant's timezone
Required
ach_response.customer_receipt
string
Printable customer receipt
Optional
ach_response.merchant_receipt
string
Printable merchant receipt
Optional
additional_data
object
Additional Data from the request
Optional
metadata
object
Metadata from the request
Optional
Sample Request / Response
{
"merchant_id": "8bb35bfc-1620-4901-bb7e-f926710024a1",
"data": {
"account_token": "ba_sandbox_xxxx",
"transaction_amount": "100.00",
"internal_transaction_id": "987654321",
"description": "Payment for the services",
"order_number": "150t65898",
"metadata": {
"customer_id": "123",
"email" : "[email protected]"
}
}
}
Webhook Payload Example
{
"event_uid": "ebcb043c76820147048847ae098ff29f",
"event": "PAYMENT_ACH",
"data": {
"token": "ba_sandbox_pjkaTwqPT9VbXAkW8PJRyIvD",
"metadata": {
"customer_id": "123",
"email" : "[email protected]"
},
"account_id": "fa3ac0a8-0cda-4e38-ba9d-357b0f0bd844",
"gateway_id": "1f3e0f67-d560-494c-bb1a-97558a462cc5",
"payment_id": "026ef76b-b058-4e8a-968a-8ea5053b8f41",
"description": "Payment for the services",,
"merchant_id": "1e4e6029-2cc9-4b2c-87c1-7a4b2af6d6c6",
"ach_response": {
"status": "PASS",
"task_id": "14947358",
"total_amount": "150.00",
"response_code": "A0000",
"transaction_id": "14697466",
"customer_receipt": " Sandbox US Merchant \\n 200 Epcot Center Dr \\n Orlando, FL 32836 \\n 800-490-8514 \\n \\n \\n 2025-04-02 06:49 PM \\n ACH - SALE \\n Entry Mode : KEYED \\n Transaction ID: 14697466 \\n Invoice Number: 150t65898 \\n SUBTOTAL: USD $150.00 \\n TOTAL: USD $150.00 \\n \\n \\n NO SIGNATURE REQUIRED \\n APPROVED \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n Customer Copy \\n",
"merchant_receipt": " Sandbox US Merchant \\n 200 Epcot Center Dr \\n Orlando, FL 32836 \\n 800-490-8514 \\n \\n \\n 2025-04-02 06:49 PM \\n ACH - SALE \\n Entry Mode : KEYED \\n Transaction ID: 14697466 \\n Invoice Number: 150t65898 \\n SUBTOTAL: USD $150.00 \\n TOTAL: USD $150.00 \\n \\n \\n X_______________________ \\nI AGREE TO PAY ABOVE TOTAL AMOUNT IN\\n ACCORDANCE WITH CARD ISSUER's AGREE\\nMENT (MERCHANT AGREEMENT IF CREDIT V\\n OUCHER) \\n KEEP COPY FOR YOUR RECORDS \\n \\n \\n \\n APPROVED \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n Merchant Copy \\n",
"processed_amount": "150.00",
"response_message": "Success",
"transaction_amount": "150.00",
"host_reference_number": "679105875316",
"transaction_timestamp": "2025-04-02T18:49:47"
},
"order_number": "150t65898",
"transaction_id": "0b8ff792-04a5-44c2-b28d-62236668ffb2",
"internal_transaction_id": "987654321"
}
}
Last updated