Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

tPaymentContext (paymentMW.h)

Code Block
breakoutModewide
languagecpp
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)

...