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).
Updated almost 4 years ago