4D Payments SDK 2016 .NET Edition
4D Payments SDK 2016 .NET Edition
Questions / Feedback?

PTechChargeResponse Type

Contains the response to the authorization.

Remarks

This type contains the results of a transaction made with the PTechCharge component. The fields contained by this type are listed below.

Fields

ApprovalCode
String

Contains an authorization code when a transaction has been approved, or an error code. This six character field contains an authorization code when a transaction has been approved. If the Code returned indicates that the transaction has not been approved, then this field will contain an error code, and the Text field will contain the description. Note that the host does not send back an actual authorization code for Credit Returns. Instead, the host sends back six blank spaces in the authorization code field. Credit VOIDS return the original authorization number.

See the list of errors for this component for more information.

AuthorizedAmount
String

Used for partial authorizations. Indicates the actual amount authorized from the stored value card. If the customer does not have enough on his stored value card to cover the complete cost of the purchase, the merchant may request that the host perform a partial redemption. The full stored value card will be used to fund as much of the transaction as possible, and the remainder may be funded by some other form of payment. When PartialRedemption is set to True, the host will supply the actual amount authorized from the stored value card in the AuthorizedAmount field.

Note that the AuthorizedAmount will only contain a value if the PartialRedemption property in the authorizing component was set to True. It will remain blank otherwise.

AuthSource
String

Indicates the source of the authorization code stored in ApprovalCode. This field contains a one character code indicating the source of the ApprovalCode. The received code must be stored and submitted in the batch settlement. Valid source codes:

CodeDescription
1STIP (Stand-In Processing): time-out response.
2STIP: amount below issuer limit.
3STIP: issuer in Suppress Inquiry mode.
4STIP: issuer unavailable.
5Issuer generated response.
6Off-line approval: POS device generated.
7Acquirer approval: Base I unavailable.
8Acquirer approval of a referral.
9Use for non-authorized transactions; such as credit card credits.
DReferral: authorization code manually keyed.
EOff-line approval: authorization code manually keyed.
FCAFIS Interface Off-Line Post-Auth.*
GIssuer Approval: Post-Auth.*
TAdvice of a Telcode File change initiated by the VisaPhone Issuer Direct Service.

* Currently in use by Japan Acquirer Services (JAS).

AVSResult
String

Contains the Address Verification System result code. This one character field contains the Address Verification System (AVS) result code. An AVS result code can provide additional information concerning the authentication of a particular transaction for which cardholder address verification was requested. An AVS result code of "0" will be returned in the response message when no address verification has been requested. The value returned should be stored and submitted as part of the batch settlement. The valid AVS codes are listed in the table below. Please see the Code field for a more detailed list of Code and AVSResult code combinations.

Valid AVS Codes:

CodeDescription
0Address verification was not requested.
ACustomerAddress matches, CustomerZip does not.
EAVS error / Ineligible (not a mail/phone order).
GVer Unavailable - Non-US Issuer does not participate.
IVer Unavailable - Address information not verified for international transaction.
MExact Match - CustomerAddress match for international transaction.
NNo match on CustomerAddress or CustomerZip.
RRetry - Issuer system unavailable.
SService not supported by issuer.
UAddress information is unavailable.
WNine digit CustomerZip matches, CustomerAddress does not.
XExact AVS match, nine digit CustomerZip.
YExact AVS match, five digit CustomerZip.
ZFive digit CustomerZip matches, CustomerAddress does not.

If supporting international transactions, six additional International Address Verification Service (IAVS) codes are introduced:

BStreet address match for international transaction. Postal code not verified due to incompatible formats (acquirer sent both street address and postal code).
CStreet address and postal code not verified for international transaction due to incompatible formats (acquirer sent both street address and postal code).
DStreet addresses and postal codes match for international transaction.
IAddress information not verified for international transaction.
MStreet addresses and postal codes match for international transaction.
PPostal codes match for international transaction. Street address not verified due to incompatible formats (acquirer sent both street address and postal code).

BatchNumber
String

Current open batch number This field is returned after sending a BatchInquiry or BatchRelease transaction with the PTechHostSettle component, or after a SendSettlement sent using the PTechManualSettle component.

CardLevel
String

This field contains a two-character code created by Visa during the authorization process.

The current list of possible return values can be found below: Visa Card Level Results Code:

CodeMeaning
SpacesNot applicable
A^Visa Traditional
AX*American Express
B^Visa Traditional Rewards
C^Visa Signature
D^Visa Infinite
DI*Discover
E^Reserved
F^Reserved
G^Visa Business Card
G1Visa Signature Business
G2Visa Business Check Card
H^Classic Visa Check Card
I^Visa Commerce
J^Reserved
J1Visa General Prepaid
J2Visa Prepaid Gift Card
J3Visa Prepaid Healthcare
J4Visa Prepaid Commercial
K^Visa Corporate Card
K1Visa GSA Corporate T&E
L^Reserved
M^*MasterCard/EuroCard and Diners
N^ - P^Reserved
Q^Private Label
Q1Private Label Prepaid
R^Proprietary Card
S^Visa Purchasing Card
S1Visa Fleet
S2Visa GSA Purchasing
S3Visa GSA Purchasing with Fleet
T^Reserved/Interlink
U^Visa TravelMoney
W^ - Z^Reserved
0^ - 9^Reserved

^ Space
* Valid only when the transaction was re-routed to Visa for authorization.

CardType
String

Type of the credit card.

Paymentech determines the type of credit card used for each authorization, and returns that value to the merchant in the response. The following is a list of card mnemonics and their meanings.

VIVisa
MCMasterCard
AEAmerican Exp.
DSDiscover
JCJCB
DBDebit
EBEBT
SVStored Value
CKCheck Authorization
IGIn Good Taste
PLRetail PL
CCClub Card
SCSmarte Carte
THTCH Light Fleet
TSTCRS Consumer Card
IRIrving Oil PL
RARAI
DYDisney Rewards
SRSears PL
BEBest
ENEnmark
GCFleetCor / GasCard
VYVoyager
FOFleet One
SHShell
GTGate
WXWEX
MMMotoMart
??Included in Batch Totals by Card Type responses when the host has summarized more than 14 card types within the batch (includes all other card types in the batch over 14).
99Supported in Enhanced Batch Inquiry requests when "all" details or totals are being requested.

Code
String

Indicates the status of the authorization request. This is the field used to determine whether a transaction has been approved or not. Valid values for this field are:

ATransaction is Approved.
EError condition or card declined (see the Error section of the help file for more information).

See the list of errors for this component for more information.

CVVResult
String

Contains the returned CVV result code if it was requested. If a CVV value was present in the CVVData field before authorizing the transaction, this one character field will contain the host returned Card Verification Value result code. Please note that a CVV Result code is never returned for an American Express transaction, even if the Card.CVVData; field is filled. Instead, an AMEX transaction will be declined if the CVV value does not match, with an Text indicating such. The following is a list of current result codes:

MCVV2 match.
NCVV2 no match.
PNot processed.
SMerchant has indicated that CVV2 is not present on card.
UIssuer not certified and/or has not provided Visa encryption keys.

DebitSurcharge
String

Additional fee charged for debit transactions. This field contains the fee, if any, charged by the host for debit card transactions. The Surcharge Fee field is present only if greater than 0.00. If there was no surcharge for this transaction, the DebitSurcharge property will remain empty. If present, the Surcharge amount must print on receipt and be labeled as "TERMINAL FEE".

Note: If either the DebitPIN or DebitKSN properties are present, the component will assume this is a debit card transaction. Debit transactions are only supported by the Retail IndustryType, and only for Card Present transactions. For any other type of transaction the component throws an exception.


  component.IndustryType = itRetail 
  component.Card = new CCCard("9999999800002773=05121015432112345678", EntryDataSources.edsTrack2)
  component.TransactionAmount = "25.00"
  component.PINCapability = ppVerifiedPIN
  component.DebitPIN = "623F36B53CC18393"
  component.DebitKSN = "000000008F000021"
  component.DebitCashBack = "5.00"
  component.Sale()

DebitTrace
String

This field is returned in the response to a debit card transaction. The returned value is used for transaction tracking purposes, and must be printed on the customer's receipt.

Note: If either the DebitPIN or DebitKSN properties are present, the component will assume this is a debit card transaction. Debit transactions are only supported by the Retail IndustryType, and only for Card Present transactions. For any other type of transaction the component throws an exception.


  component.IndustryType = itRetail 
  component.Card = new CCCard("9999999800002773=05121015432112345678", EntryDataSources.edsTrack2)
  component.TransactionAmount = "25.00"
  component.PINCapability = ppVerifiedPIN
  component.DebitPIN = "623F36B53CC18393"
  component.DebitKSN = "000000008F000021"
  component.DebitCashBack = "5.00"
  component.Sale()

Note: For normal credit card transactions, this field may contain Interchange compliance data for qualified Visa and MasterCard transactions.

NetworkId
String

Authorizing network Identifier which indicates which network approved this transaction. A list of codes follows.

00Not electronically authorized
31Chase Paymentech Stored Value
01VisaNet
65Comdata/SVS Stored Value
02MasterCard BankNet
34Bank of Nova Scotia
03Maestro Direct
35Royal Bank of Canada - V
04Club Card Private Label
36Royal Bank of Canada - T
05MAC Direct
37Royal Bank of Canada - M
06American Express Direct
38The Toronto-Dominion Bank - 1
11WEX (Wright Express)
39The Toronto-Dominion Bank - 3
12Novus (Discover)
40National Bank of Canada
15Sears Private Label
43d'economie Desjardins du Quebec
16Fleet One
44Credit Union Central of Canada
17Shell
45CGI Credit Union Central of Canada - 2
19TCH
46CGI
20Pulse Direct
48CU Connect
21Interlink Direct
49CIBC - 5
22MotoMart
51Shazam Direct
23Private Label - PL1
53AFFN Direct
25NYCE Direct
54CIBC - 6
28FleetCor / GasCard Authorizer
56CU Central of British Columbia
29MPS Gateway - Accell, AFFN, Alaska Option, CU24, CU24M, Explore, Honor, Interlink MPS, Jeannie, MAC-MPS, Maestro, Moneystation, MPS EBT Gateway, NYCE, PULSE, Shazam, Tempo
64Maestro Canada
30STAR Direct
69ACCEL Direct
33Bank of Montreal
73ETC Scan Check Authorizer

RetrievalNumber
String

Reference number returned from the Paymentech host. This is the reference number of the transaction as assigned by the Paymentech host. This number must remain with the transaction for the duration of the transaction's life cycle. This information is sent as a parameter in the VoidTransaction method.

If the SettlementMode is set to manual this field will contain the POSRetrievalNumber submitted in the authorization. If no POSRetrievalNumber was sent, this field will contain all zeros, and you will not have a reference number for the transaction.

If the SettlementMode is set to host settle, this field will always contain the Paymentech-generated retrieval number returned by the transaction server, regardless of the value contained in the POSRetrievalNumber property.

In all cases, the RetrievalNumber will contain the number used to reference the transaction when issuing voids or reversals.

SequenceNumber
String

SequenceNumber echoed from the authorization. After any transaction this field will contain the same value sent in the SequenceNumber property.

Text
String

Approval/Decline/Error text message information This field contains a response or display text message, and is used by the terminal to display the authorization result. This field will contain human-readable text indicating whether the transaction was approved or declined, or will contain a description of the error. The actual error code will be returned in the ApprovalCode field. The Text field is for informational use only, and should not be used in determining whether a transaction has been approved or not. Instead, use the Code field to determine this.

See the list of errors for this component for more information.

TransactionId
String

This 15-character field contains the Transaction Identifier assigned by the card issuer or network. Transaction Identifier is used to link subsequent MIT transactions to an original CIT transaction.

Note: Merchants are responsible for retaining the response TransactionId from the original transaction and submitting the TransactionId in subsequent MIT transactions.

Constructors

[VB.NET]
Public PTechChargeResponse()

[C#]
public PTechChargeResponse();



 
 
Copyright (c) 2020 4D Payments Inc. - All rights reserved.
4D Payments SDK 2016 .NET Edition - Version 16.0 [Build 7311]