Share
Explore

sample 3223

Flow - how’s it work?

It all starts with the customer:
image.png


View of Create a customer profile with ACHQ
0
Search
Name
Description
Type
Required
Notes
1
name
The customer’s full name or business name.
string
True
Open
2
type
The customer entity type. Set to individual or business
string
True
Open
3
email
Customer's email address
string
True
Open
4
address_1
Address line 1 (e.g., street, PO Box)
string
False
Open
5
address_2
Address line 2 (e.g., apartment, suite, unit, or building)
string
False
Open
6
city
City of Customer's permanent location
string
False
Open
7
state
Two letter abbreviation of the state in which the Customer is located
string
False
Open
8
zip
Postal code of Customer's permanent location
string
True
Open
9
phone
Customer's 10 digit phone number. No hyphens or other separators, e.g. 5555555555
string
True
Open
10
external_id
A unique string value attached to a customer which can be used for traceability between ACHQ and your application.
string
False
Open
11
IP
Customer's IP address.
string
True
Open
12
tax_id
Last four or full 9 digits of the an individual’s Social Security Number or business’ Employer Identification Number
string
False
Open
13
dob
Date of birth for individual customers
string
False
Open
14
meta_data
Set of key-value pairs that you can attach to an object. This can be useful for storing additional information about the customer in a structured format.
object
False
Open
There are no rows in this table
Sample request
POST /customers HTTP/1.1
Host: achq.com
Content-Type: application/json

{
"name": "John Doe",
"type": "individual",
"email": "johndoe@example.com",
"address_1": "123 Main St",
"address_2": "Apt 4",
"city": "Anytown",
"state": "NY",
"zip": "12345",
"phone": "5555555555",
"IP": "192.168.0.1",
"tax_id": "1234",
"dob": "1970-01-01",
"external_id": "123456",
"meta_data": {
"customer #": "2323123"
}
}

Sample Response
HTTP/1.1 201 Created Content-Type: application/json
{ "object": "customer", ​ "id": "5f5e55c7-30f5-4e7d-9d5b-f9135e5f5c7f",
"status": "verified", "name": "John Doe", "type": "individual", "email": "johndoe@example.com", "address_1": "123 Main St", "address_2": "Apt 4", "city": "Anytown", "state": "NY", "zip": "12345", "phone": "5555555555", "external_id": "123456", "IP": "192.168.0.1", "tax_id": "1234", "dob": "1970-01-01", "meta_data": { "foo": "bar" } }

“Pay by bank”
image.png
User customer_id to initiate bank connect widget
Group 1.png

ACHQ automatically associates the bank account with the verified customer and matches customer name to name on account
The API will return a payment token to your application along with masked bank details to display in UI for the customer check-out.
Create a Payment
Send the customer_id and payment_token along with the amount when the user confirms checkout. ACHQ will verify balance in real time and accept/reject.
The charge will be initiated via the next available Fed processing window and the store/merchant paid within 48 hours.
POST /charges HTTP/1.1
Host: achq.com
Content-Type: application/json

{
"customer_id": "cus_1234567890",
"payment_token": "tok_1234567890",
"payment_date": "2023-02-17",
"amount": "100.00",
"payment_IP": "192.168.0.1",
"sec_code": "WEB",
"delivery_window": "firstavailable",
"metaData": {
"foo": "bar",
},
"external_id": "123456"
}
verify_balance: true

Want to print your doc?
This is not the way.
Try clicking the ⋯ next to your doc name or using a keyboard shortcut (
CtrlP
) instead.