...
tPaymentContext (paymentMW.h)
Code Block | ||||
---|---|---|---|---|
| ||||
typedef struct {
////////////////////////////////////////////////////////////////////
// Information provided by Level3
tAmount *mAmount;// EMV Tag 9F02 = "Amount, Authorized" + "Amount, Other"
tAmount *mCashBack;// EMV Tag 9F03 = "Amount, Other"
tTransactionType mTransactionType;// EMV Tag 9C
tNumericDate mTransactionDate[3];// EMV Tag 9A
tNumericDate mTransactionTime[3];// EMV Tag 9F21
tByte mMerchantCustomData[20];// EMV Tag 9F7C
tByte mTransactionCurrencyCode[2];// EMV Tag 5F2A
tByte mTransactionCurrencyExponent;// EMV Tag 5F36
tByte mTransactionCategoryCode;// EMV Tag 9F53
tByte mMerchantCategoryCode[2];// EMV Tag 9F15
tByte mMerchantID[15];// EMV Tag 9F16
tBoolean mForcedOnline;// As per merchant decision
char mWorkingPath[2*MAX_NAME_LENGTH];
////////////////////////////////////////////////////////////////////
// Information set by Payment System
tBoolean mEMVContact;// by configuration (terminal)
tBoolean mEMVContactless;// by configuration (terminal)
tBoolean mMagstripe;// by configuration (terminal)
|
...
tAmount mAmountReferenceCurrency;// EMV Tag 9F3A - not used yet
|
...
tByte mTransactionReferenceCurrencyCode[2];// EMV Tag 9F3C - not used yet
|
...
tByte mTransactionReferenceCurrencyExponent;// EMV Tag 9F3D - not used yet
|
...
tByte mTerminalRiskManagementData[8];// EMV Tag 9F1D - not used yet
|
...
tAccountType mAccountType;// EMV Tag 5F57 - payment application specific
|
...
tByte mPOSEntryMode;// EMV Tag 9F39 - payment application specific
|
...
tCounter mTransactionSequenceCounter;
|
...
tARC mARC;//Authorization Response Code, eg mapping from Issuer's Response Code (ISO8583:DE39)
|
...
tBoolean mUnableToGoOnline;
|
...
//////////////////////////////////////////////////////////////////// |
...
// Information set by Payment Application (from Agnos primitives) |
...
|
...
tByte mRID[RID_LENGTH];
|
...
tADF mADF;
|
...
tByte mADFOrderNumber;// For a given configuration, AID's order number
|
...
tBoolean mAdvice;
|
...
tBoolean mBatchData; |
...
tBoolean mReversal;
|
...
////////////////////////////////////////////////////////////////////
|
...
// Information set by EMV Library
|
...
tSessionId mSession;
|
...
tByte mCID;// Information used by Level3 to detect transaction's outcome requested by ICC
|
...
////////////////////////////////////////////////////////////////////
|
...
// Information calculated by Level3 once transaction is completed (from paymentMW primitives) |
...
|
...
tByte mFinal9F02[6]; |
...
tByte mCVMResult[3]; |
...
|
...
tByte mTVR[5];
|
...
tByte mTSI[2]; |
...
tByte mAC[8]; |
...
|
...
tByte mUN[4]; |
...
tByte mAID[MAX_AID_LENGTH]; |
...
|
...
tByte mAIDLen; |
...
tByte mPANSHA[20]; |
...
|
...
tByte mCardholderNameLen; |
...
tByte mCardholderName[26]; |
...
tByte mAgnosTVR[AGNOS_TVR_SIZE];
#ifdef _AGNOSISR_ |
...
|
...
tBoolean mIsScriptExecuted; |
...
tByte mIssuerScriptResultLen; |
...
|
...
tByte mIssuerScriptResult[2*MAX_SCRIPT*sizeof(tScriptResult)];
#endif
|
...
//////////////////////////////////////////////////////////////////// |
...
// Level3 <-> Level2 communication |
...
tDataExchange mDataExchange;
} tPaymentContext;
|
tDataExchange (dataechng.h)
...