QSAPI Response Format

Below are all the variables that can be received into response to posts made to QSAPI along with a brief description of their function

Variable Name Max Type Description
account_balance_1 9 Numeric See Balance Chart below for more information
ONLY returned when transaction_type=BALANCE
account_balance_2 9 Numeric See Balance Chart below for more information
ONLY returned when transaction_type=BALANCE
account_balance_3 9 Numeric See Balance Chart below for more information
ONLY returned when transaction_type=BALANCE
authorization_code 6 Alphanumeric This is the auth code returned by the processor.
authorization_message 50 Alphanumeric APPROVED or the auth message from the processor (e.g. AUTH DECLINED 200).
avs_response 1 Enumerated A single letter address verification response:
DFJMQVXY - Address and ZIP code match
LWZ - ZIP code match, address is wrong
ABOP - Address match, ZIP code is wrong
KN - No match, address and ZIP is wrong
U - No data from issuer/banknet switch
R - AVS System unable to process
S - Issuing bank does not support AVS
E - Error, AVS not supported for your business
C - Invalid address and ZIP format (International)
I - Address not verifiable (International)
G - Global non-verifiable address (International)
? - Unrecognized codes (none of the above) (empty) - No AVS data (blank)
card_brand n/a Enumerated VISA, MASTERCARD, AMERICAN EXPRESS, DISCOVER, ACH, EBT
card_expiration 4 Numeric The month and year of the card expiration date in the format MMYY. For example, 0120 for January 2020.
custom_data 65K Character The same variable submitted in the request.
custom_id 50 Character The same variable submitted in the request.
cvv2_response 1 Enumerated A single letter card verification value response:
M - CVV match
N - CVV does not match
P - CVV not processed
S - Card has CVV, customer says it doesn't
U - No CVV data from issuer
? - Unrecognized codes (none of the above) (empty) - No CVV data (blank)
dest_account 12 Numeric The Payconex account identification number that a "copy" transaction was created in.
entry_mode 9 Enumerated Indicates the mode of entry of the transaction. Can be used instead of keyed and swipe variables with responses of:
Keyed
Swiped
EMV
Contactless
Fallback Swiped
NFC
error 1 Boolean True for error conditions or decline.
error_code 5 Numeric 0 for no error, > 0 for error number.
error_message ? Character DECLINED or textual description of other API errors (e.g., “Must send card_number” or “Invalid bank_account_number”).
error_msg ? Character Deprecated (Legacy), same as error_message
first_name 50 Character The same variable submitted in the request. *May be returned with last_name concatenated
ip_address 15 NNN.NNN.NNN.NNN IP address of the client which initiated the transaction.
keyed 1 Boolean True for keyed transaction.
last_name 50 Character The same variable submitted in the request. *May be returned concatenated in the first_name field.
last4 4 Numeric The last four digits of the card number or Primary Account Number (PAN). For ACH, it is the last four digits of the account number.
network ? Character This response could be returned if processing thru to RapidConnect or Elavon. It is their name for the network which the transaction was routed thru, used for EMV and MSR (non-EMV), CREDIT, DEBIT and EBT.
original_transaction_id 12 Numeric Will be returned for refunds. This is the original transaction_id of the Sale transaction that was refunded. It is provided for reference purposes.
request_amount 9 Numeric Used only in partial auth. Indicates the amount of money that the merchant attempted to authorize the card for.
*only supported in QSAPI 3.7 and higher
swiped 1 Boolean True for swiped transaction.
tender_type n/a Enumerated This will be the same as the tender_type provided in the request. It is provided for reference purposes. See Response Format for list.
transaction_amount 9 Numeric with decimal The same variable submitted in the request. If a partial auth is valid, this represents the actual amount authorized.
transaction_approved 1 Boolean True for approved.
transaction_description 65K Character The same variable submitted in the request.
transaction_id 12 Numeric The transaction id for the new transaction. When using tokenization, this is the transaction_id that you submit as the token_id.
transaction_timestamp 19 YYYY-MM-DD HH:MM:SS This is the timestamp of the newly created transaction.
transaction_type n/a Enumerated This is the transaction_type of the original transaction.

📘

Note

For Boolean responses, if the “response_format” variable was FORM, responses will return a 1 for True and NULL for False. Other response formats will return the native Boolean response of True or False.

Account Balance Inquiry (Elavon Only)

In the QSAPI request, if you use the transaction_type with a value of BALANCE, then the response is based on the table below.

Variable Name tender_type=CARD tender_type=DEBIT tender_type=EBT
account_balance_1 Pre-paid Pre-paid Food Stamp
account_balance_2 Gift Card Gift Card Cash Benefit
account_balance_3 Loyalty Loyalty N/A

Depending on the tender_type value (also in the QSAPI request), the variable that could be returned and the description of the balance is shown. Example if QSAPI request has:
transaction_type=BALANCE tender_type = DEBIT

If there is account_balance_1 returned, the value is the actual balance of the pre-paid portion remaining on the debit card used, according to the end processor (Elavon).