Amadis

AgnosEP API - version 3.5.23.23782

 

API _Version _Revision

Description

API _Version _Revision

Description

_AgnosEP _version 3.5.23 _revision 23782

Agnos EP Interface provides a set of primitives to manage EMV contactless card processing. It encapsulates EMVCo Book A and B.

 

 

Agnos Entry Point

Agnos Entry Point

See entrypoint.h, loader.h

#include

//---- AgnosMW Headers ---- #include "paymentMW.h" //---- Global Headers ---- #include "gpi_agnos_framework_globals.h"

--

ApplicationSelectionMethod

typedef tPaymentError (*ApplicationSelectionMethod) ( tADFList *mutualList, tByte *MLIndex, tBoolean CL );

Callback definition. Called after PPSE selection if defined

KernelSelectionMethod

typedef tBoolean (*KernelSelectionMethod) ( tByte* kernelIdentifier, tByte kernelIdentifierLen, tByte* requestedKernelIdentifier );

Callback definition. Called during combination selection if defined

enpConnectPaymentServices

Connect entry point onto available L2 CL kernels. This call shall be performed only when the system is cycled up

enpDisconnectPaymentServices

Disconnect entry point from connected L2 CL kernels. This call shall be performed only when the system is cycled up

 

enpInitialize

Set internal context to prepare the entry point for the subsequent transaction

 

Important:

Prior to that call:

  • If payment is set NULL, L3 must set following flags

    • payment->mEMVContact if contact supported

    • payment->mEMVContactless if contactless supported

    • payment->mMagstripe if magstripe supported

 

  • If autorun is supported. L3 must set following fields

    • payment->mAmount

enpSetLegacyXXXStatus

Enable legacy selection rule for a given payment scheme. Payment schemes' specifications, outside Book Cx, use selection rules that might differ for error management. it is important to set appropriate flag duting TA

enpSetPollingTimeout

Set timeout value used during gpiPolling to detect a card presentation

enpSetLongTapTimeoutExpired

Indicate to the entry point that the online transaction has timed out and consequently the long tap has timed out

enpGetPollingTimeout

Return timeout value used during gpiPolling to detect a card presentation

enpPSESelectionPerformed

Deprecated

enpGetPPSEFCI

Return PPSE’s FCI stored at PPSE selection so payment application can fetch any proprietary tags (for example, tag 9F0A, ASPRD). If SW1SW2 is defined then the entry point returns the status word

enpGetMutualList

Return the mutual list calculated at PPSE selection time. See Agnos and Selection module to get details on tADFList

enpAreAllCLAppplicationsNotAllowed

Return bTRUE if there is no elligible contactless application after preprocessing. If no CL application is elligible, provide a specific status so payment application may fallback to contact or magstripe depeding on interfaces supported by the device

enpResetAreAllCLAppplicationsNotAllowed

Reset corresponding state

enpGetLastCardDetectionStatus

Return the last gpiPolling error obtain at the last START_B

enpSkipPollingOnNextStartB

When gpiPolling is performed from outside the entry point, skip gpiPolling call from inside the entry point to avoid double tap

enpReleasePaymentServices

Broadcast afsRelease to all L2 CL kernels. This call shall be performed only when the system is cycled down.

enpExecutePaymentTransaction

Main point of entry to initiate a CL transaction.

tPaymentContext shall be set accordingly

tOutcomeParameter provides final status in lign with L2 TA’s test plans

Set sp to:

  • spSTART_A: to initiate a new transaction

  • spSTART_D: to activate the kernel used for the current transaction

  • spNO_START: to clean the context

enpGetTerminalAID

 

enpGetCurrentTerminalAID

 

 

Code Example

Code Example

See entrypoint.h

Â