Transaction Processing

We support the following transaction types:

  1. Card - We do not accept card numbers through the API.  Please use our Secure Card Entry, iframe, or another process to obtain a token (3 or 4 below).

  2. ACH - Pass us traditional ACH info (Routing number and Account number) and we process via the ACH.  The response indicates whether the routing number was correct, it does not "approve" as a credit card transaction would.

  3. Customer - A "token" transaction using a multi-use token associated with a customer record in our system.  Supports sales, authorize, and credit.  The response contains whether the transaction was approved.

  4. Token - A one-time use token obtained via our iframe "tokenizer". Supports sales, authorize, and credit.  The response contains whether the transaction was approved.

  5. Terminal - For processing a transaction from a physical terminal we have deployed for you.  Since the terminal connects to the API you can use the API to trigger the terminal to start processing a transaction.  Supports sales, authorize, and credit.  The response contains whether the transaction was approved.

Response Codes

0 Unknown

99 Pending payment - used in redirect processors prior to payment being received

100 Approved

110 Partial approval

101 Approved, pending customer approval

200 Decline

201 Do not honor

202 Insufficient funds

203 Exceeds withdrawal limit

204 Invalid Transaction

220 Invalid Amount

221 No such Issuer

222 No credit Acct

223 Expired Card

225 Invalid CVC

226 Cannot Verify Pin

240 Refer to issuer

250 Pick up card (no fraud)

251 Lost card, pick up (fraud account)

252 Stolen card, pick up (fraud account)

253 Pick up card, special condition

261 Stop recurring

262 Stop recurring

300 Gateway Decline

310 Gateway Decline - Rule Engine

400 Transaction error returned by processor

410 Invalid merchant configuration

421 Communication error with processor

430 Duplicate transaction at processor

440 Processor Format error

Searching Transactions

transaction_id  (QuerySearchString)  --> Searches for transaction id
user_id  (QuerySearchString)  --> Searches for user_id
type  (QuerySearchString)  --> Searches for transaction type (sale, authorize...etc)
ip_address  (QuerySearchString)  --> Searches for ip_address, either ipv4 or ipv6
amount  (QuerySearchInt)  --> Searches for originally requested amount
amount_authorized  (QuerySearchInt)  --> Searches for amount_authorized
amount_captured  (QuerySearchInt)  --> Searches for amount_captured
amount_settled  (QuerySearchInt)  --> Searches for amount_settled
tax_amount  (QuerySearchInt)  --> Searches for tax_amount
po_number  (QuerySearchString)  --> Searches for po_number
order_id  (QuerySearchString)  --> Searches for order_id
payment_method  (QuerySearchString)  --> Searches by payment_method, (token, card, terminal)
payment_type  (QuerySearchString)  --> Searches by payment_type (card, echeck)
status  (QuerySearchString)  --> Searches by transaction status (unknown, declined, authorized, pending_settlement, settled, voided, reversed, refunded)
processor_id  (QuerySearchString)  --> Searches by processor_id
customer_id  (QuerySearchString)  --> Searches by customer_id
created_at  (QueryDateRange)  --> Searches by created_at between the provided start_date and end_date. Dates in UTC "YYYY-MM-DDTHH:II:SSZ"
captured_at  (QueryDateRange)  --> Searches by captured_at between the provided start_date and end_date. Dates in UTC "YYYY-MM-DDTHH:II:SSZ"
settled_at  (QueryDateRange)  --> Searches by settled_at between the provided start_date and end_date. Dates in UTC "YYYY-MM-DDTHH:II:SSZ"
billing_address.address_id  (QuerySearchString)  --> Searches by billing_address.id
billing_address.first_name  (QuerySearchString)  --> Searches by billing_address.first_name (0-50 characters)
billing_address.last_name  (QuerySearchString)  --> Searches by billing_address.last_name (0-50 characters)
billing_address.company  (QuerySearchString)  --> Searches by billing_address.company (0-50 characters)
billing_address.address_line_1  (QuerySearchString)  --> Searches by billing_address.address_line_1 (0-100 characters)
billing_address.address_line_2  (QuerySearchString)  --> Searches by billing_address.address_line_2 (0-100 characters)
billing_address.city  (QuerySearchString)  --> Searches by billing_address.city (0-50 characters)
billing_address.state  (QuerySearchString)  --> Searches by billing_address.state (2 Character)
billing_address.postal_code  (QuerySearchString)  --> Searches by billing_address.postal_code (0-6 Characters)
billing_address.country  (QuerySearchString)  --> Searches by billing_address.country (2 Characters)
billing_address.email  (QuerySearchString)  --> Searches by billing_address.email
billing_address.phone  (QuerySearchString)  --> Searches by billing_address.phone (0-14 digits only)
billing_address.fax  (QuerySearchString)  --> Searches by billing_address.fax (0-14 digits only)
shipping_address.address_id  (QuerySearchString)  --> Searches by shipping_address.id
shipping_address.first_name  (QuerySearchString)  --> Searches by shipping_address.first_name (0-50 characters)
shipping_address.last_name  (QuerySearchString)  --> Searches by shipping_address.last_name (0-50 characters)
shipping_address.company  (QuerySearchString)  --> Searches by shipping_address.company (0-50 characters)
shipping_address.address_line_1  (QuerySearchString)  --> Searches by shipping_address.address_line_1 (0-100 characters)
shipping_address.address_line_2  (QuerySearchString)  --> Searches by shipping_address.address_line_2 (0-100 characters)
shipping_address.city  (QuerySearchString)  --> Searches by shipping_address.city (0-50 characters)
shipping_address.state  (QuerySearchString)  --> Searches by shipping_address.state (2 Character)
shipping_address.postal_code  (QuerySearchString)  --> Searches by shipping_address.postal_code (0-6 Characters)
shipping_address.country  (QuerySearchString)  --> Searches by shipping_address.country (2 Characters)
shipping_address.email  (QuerySearchString)  --> Searches by shipping_address.email
shipping_address.phone  (QuerySearchString)  --> Searches by shipping_address.phone (0-14 digits only)
shipping_address.fax  (QuerySearchString)  --> Searches by shipping_address.fax (0-14 digits only)
limit  (int)  --> Maximum records to return (0-100)
offset  (int)  --> Number of records to offset the return by

Search Types

QuerySearchString --> =, !=

QuerySearchInt --> =, !=, <, >