4D Payments SDK 2016 .NET Edition
Questions / Feedback?
Contains the response to a debit transaction.
This type contains the results of a transaction made with the GlobalDebit component. The
fields contained by this type are listed below.
Contains the transaction authorization code from the card issuer.
For approved transaction responses (Code 0 or 200)
the Global Transport Gateway sends a 6-character approval code in the ApprovalCode field and
a human-readable approval message in the Message field. In the case of a decline, the ApprovalCode will contain an error message. Your application should display the ApprovalCode as part of the approval message for an approved transaction. For declined responses, the HostCode field will contain an additional code that provides detail on the reason for the decline.
The number of the batch this transaction is currently contained in. If this is a reply to an AuthOnly transaction, the BatchNumber field will be blank, as auth-onlys are not added to the open batch until
a Capture is performed.
Indicates the card type or payment method.
For credit card transactions, this field will contain the name of the credit card type.
For instance, "VISA", "MASTERCARD", "AMEX", etc. For Debit or Electronic Benefit
transactions, this field will contain "DEBIT" or "EBT".
Contains the transaction result code from the Global Transport Gateway.
This value signifies the result of the transaction (i.e. approved, declined, etc).
When programmatically validating a transaction's result, this value should
ALWAYS be used instead of any response message describing the result.
See the table below for a full list of result codes and descriptions.
|-100||Transaction NOT Processed; Generic Host Error.|
|3||Invalid Transaction Type.|
|3||Unsupported Transaction Type.|
|4||Invalid Cash Back Amount.|
|5||Invalid Merchant Information.|
|6||Time Out Waiting for Host Response.|
|7||Field Format Error. See Message and MessageDetail for more info.|
|7||Swiped and Card Present transactions are not supported in Card Not Present markets.|
|8||Not a Transaction Server.|
|11||Client Timeout Waiting for Response.|
|14||Transaction Type Not Supported In This Version.|
|19||Original Transaction Id, PNRef, or Approval Code Not Found.|
|20||Customer Reference Number Not Found.|
|22||Invalid ABA Number.|
|23||Invalid Account Number.|
|24||Invalid Expiration Date.|
|25||Transaction Type Not Supported by Host.|
|26||Invalid Reference Number or PNRef.|
|27||Invalid Receipt Information.|
|28||Invalid Check Holder Name.|
|29||Invalid Check Number.|
|30||Check DL Verification Requires DL State.|
|31||Cannot perform multiple captures on a PreAuth.|
|40||Not Currently Supported.|
|50||Insufficient Funds Available.|
|100||Invalid Transaction Returned from Host.|
|101||Timeout Value too Small or Invalid Time Out Value.|
|102||Processor Not Available.|
|103||Error Reading Response from Host.|
|104||Timeout waiting for Processor Response.|
|106||Host Not Available.|
|107||Duplicate Suppression Timeout.|
|108||Void Error/Cannot void a previously voided or settled transaction.|
|109||Timeout Waiting for Host Response.|
|112||Failed AVS Check.|
|113||Cannot Exceed Sales Cap / Requested Refund Exceeds Available Refund Amount.|
|114||Cannot refund a voided transaction.|
|115||Sum of Tax, Tip, and Cash Back amount cannot exceed total Amount.|
|116||Unsupported Card Type.|
|117||Only Sales, Repeat Sales, Force Captures, and Post Authorizations can be refunded.|
|118||The amount of a Pre-Auth Complete (Capture) must be less than or equal to the original amount authorized. Please retry.|
|200||A Partial Authorization of a pre-paid card. This is considered an Approved transaction. Check the AuthorizedAmount field for the amount approved. See below for more information.|
|1000||Generic Host Error or General Exception. (Missing or invalid data). See Message and MessageDetail for more info.|
|1001||Invalid Login Information.|
|1002||Insufficient Privilege or Invalid Amount.|
|1002||AVS Only transactions are not supported in E-Commerce markets.|
|1002||Debit/EBT Return transactions must provide the PNRef from the original Sale. Please retry.|
|1002||Zip is required for AVS Only transaction type.|
|1003||Invalid Login Blocked.|
|1004||Invalid Login Deactivated.|
|1005||Transaction Type or Service Not Allowed.|
|1007||Invalid Request Message.|
|1008||Invalid Version / The MAC value is required.|
|1010||Payment Type Not Supported.|
|1011||Error Starting Transaction.|
|1012||Error Finishing Transaction.|
|1013||Error Checking Duplicate.|
|1014||No Records To Settle (in the current batch).|
|1015||No Records To Process (in the current batch).|
A Partial Authorization transaction occurs when the issuer authorizes part of the sale
amount on a pre-paid credit card. The transaction is approved for an amount less
than the original TransactionAmount, and the customer must tender the remaining balance with
another form of payment. When a transaction is partially approved, the Code will contain
"200", the Message will contain "Partial Approval", and the MessageDetail will contain
"PARTIAL AP", "PARTIALLY APPROVED", or "PARTIALLY APPROVED AUTHONLY" (for auth-only transactions).
the AuthorizedAmount will contain the amount of the transaction that was authorized, and
the BalanceDue field will indicate the amount still owed by the customer.
If a partial authorization occurs and the customer does not wish to go through with the transaction,
you must submit a reversal of the authorization in order to return funds to the prepaid card.
Contains the raw response data from the Global Payments host.
Action code returned by Global Payments.
Typically, if the transaction is approved, this will be the batch reference number. If
the transaction is declined, the HostCode will indicate the reason for the decline.
The table below lists the possible HostCode and Message combinations for error
|000||AP ||Approved or Completed Successfully.|
|000||AP NEW INFO ||Approved with updated cardholder data.|
|000||PARTIAL AP ||Only part of the requested amount was approved.|
|001||CALL AE ||Refer to American Express.|
|001||CALL DC ||Refer to Diners Club.|
|001||CALL DISCOVER ||Refer to Discover.|
|001||CALL ND ||Call your Visa/MasterCard Voice Authorization Center.|
|001||CALL TK ||Refer to TeleCheck.|
|001||CALL XXXXXXXXXX ||Call indicated number.|
|001||ISSUER UNAVAIL ||Global Payments cannot contact issuing bank for authorization.|
|002||CALL AE ||Touchtone capture, won't roll to an operator.|
|002||CALL DC ||Touchtone capture, won't roll to an operator.|
|002||CALL DISCOVER ||Touchtone capture, won't roll to an operator.|
|002||CALL ND ||Touchtone capture, won't roll to an operator.|
|002||CALL XXXXXXXXXX ||Touchtone capture, won't roll to an operator.|
|002||ISSUER UNAVAIL ||Touchtone capture, won't roll to an operator.|
|003||INVLD MERCH ID ||Invalid Merchant ID.|
|004||PIC UP ||Authorization Declined.|
|005||DECLINE ||Authorization Declined.|
|005||DECLINE NEW INFO ||Update cardholder data.|
|005||DECLINE TRY LATER ||Try again in 3 days.|
|005||REVK PAY ORDERED ||Stop payment of a specific recurring payment.|
|005||STOP PAY ORDERED ||Stop all future recurring payments.|
|006||REVERSED ||Requested transaction reversal was successful.|
|007||DECLINE-CV2 FAIL ||Response for CVV2 failure. Declined. (Visa).|
|008||AP WITH ID ||Approved with positive ID. Host does not capture this transaction.|
|012||INVLD TRAN CODE ||Processing code entered is incorrect. Please refer to valid processing code.|
|013||INVLD AMOUNT ||Amount entered is invalid.|
|014||INVLD ACCT ||Account number does not pass issuer's edit checks.|
|014||INVLD CODE ACCT ||Valid account number matched with a transaction code for a different card type.|
|014||INVLD CID ||American Express CID failure.|
|019||PLEASE RETRY ||Retry the transaction.|
|054||INVLD EXP DATE ||Expiration date entered is incorrect.|
|055||PIN INVALID ||Incorrect PIN entered.|
|058||UNAUTH TRANS ||Merchant not set up for transaction code used.|
|075||MAX PIN RETRIES ||Maximum PIN number entry attempts exceeded.|
|094||AP DUPE ||Transaction entered is a duplicate.|
|0C1||SYSTEM UNAVAILABLE ||Global Payments Check System unavailable.|
|0N2||INV AMT MATCH ||The amount entered for a void or adjustment transaction does not match the amount stored in the host for that item.|
|0N3||INV ITEM NUM ||The item number entered for a void or adjustment transaction is incorrect.|
|0N4||ITEM VOIDED ||An adjustment or item review was attempted on a transaction previously voided.|
|0N5||MUST BALANCE NOW ||Terminal has not been balanced within time specified in the Global Payments Merchant Master File for this merchant.|
|0N6||USE DUP THEN BAL ||Originating device has not been balanced within time specified in the Global Payments Merchant Master File for this merchant, but merchant is set up to perform extra transactions before balancing.|
|0N7||NO DUP FOUND ||Override transaction is attempted on a non-duplicated transaction.|
|0N8||INVALID DATA ||Format of the transaction is incorrect.|
|0NA||NO TRANS FOUND ||Reversal transaction is attempted on a transaction that is not in the open batch on the host.|
|0NC||AP NOT CAPTURED ||Approved but not captured (applies only to credit card transactions)- stand in.|
|0NE||AP AUTH-ONLY ||Approved but this EDC merchant is not set up to capture this card type (applies only to credit card transactions).|
| ||PART AP AUTH-ONLY ||Only part of the requested amount was approved, but this EDC merchant is not set up to capture this card type (applies only to credit card transactions).|
|0P1||APPROVED ||Approved debit card transaction.|
|0P2||DB UNAVAIL 02 ||Global Payments is experiencing a problem.|
|0P5||UNAUTH USER ||Merchant is not set up for debit on Global Payments Merchant Master File.|
|0P6||INVALID CARD ||Invalid card number.|
|0T1||EDC UNAVAILABLE ||EDC application down, try later.|
|0T2||DB UNAVAIL 01 ||Debit application down, try later.|
|121||EXCEEDS MAX AMT ||Exceeds withdrawal amount limit.|
|121||EXCEEDS MAX AMT ||Exceeds withdrawal amount limit.|
IMPORTANT: When programmatically validating a transaction's result, the Code value
should ALWAYS be used instead of any other response messages describing the result.
For example, do not use HostCode, Message, MessageDetail, or
any other responses, as these values may vary. This tables is included for
informational purposes only.
Contains the same invoice number for the transaction that was originally sent in the request to the Global Transport Gateway.
This field has a maximum length of 25 alphanumeric characters.
Merchant Id code which must be printed on all receipts.
This field will contain a 15-character code that identifies
the merchant on the Global Payments host.
Contains a human-readable response message concerning the processed transaction.
This value is typically either Approved or Declined, but may also contain
a description of any error condition. Do NOT use this when programmatically
validating a transaction's result; use the Code field instead.
Contains a formatted response message concerning the processed transaction.
This field will contain an additional message about the results of the transaction,
providing more detail than the Message field alone. For approved transactions this
field will typically be "APPROVAL", and for declined transactions will contain
a detailed error message. Do NOT use this when programmatically
validating a transaction's result; Use the Code field instead.
Note: For Debit Card Sales and Refund, the string value in MessageDetail
includes non-printable characters. Global Transport removes all
non-printable characters from the returned MessageDetail.
Contains a number which uniquely identifies the transaction in the Global Transport system.
This value should be stored by the POS to enable the processing transactions
based on a previous transaction. For instance, Capture, Void, Refund, TipAdjustment, etc.