Amadis

Merchant/Operator Application Integration

Overall Architecture

 

 

AgnosEP

AgnosEP provides the main point of entry to initiate EMV transactions for CL acceptance system. It shall be called from the payment application which shall manage two structures:

  • tPaymentContext (in/out)

  • tOutComeParameter (out)

Each time a new transaction is triggered these two structures shall be initialized .That call shall be performed once the system has been properly initialized.

AgnosMW

AgnosMW provides a set of primitives to manage the transient data model. It also defines the C structures used to manage transaction flows, mainly:

  • tPaymentContext

  • tOutComeParameter

Agnos

Agnos provides a set of EMV core primitives which support EMV transaction flow.

These primitives are used by:

  • CT payment applications (study emvco.c as an example, or OLA for Agnos)

  • CL card processing applications (alias CL kernels)

 

Agnos encapsulates an EMV tags database. This API is usually not accessed from payment application excepted to manage “unknow tags’', alias proprietary tags (see below).

 

Agnos is split up into two sets of primitives:

  • Selection set: explicit selection and pse selection.

  • EMV set: Final Select, GPO, Read Record, ODA (SDA,DDA, CDA), CVM, Terminal Action Analysis, Card Action Analysis

 

Agnos provides three modes of execution (see Training modules for more details):

  • Direct Execution (meant for contact): an EMV transaction is peformed from Final Select to Generate AC1

  • Granular Calls (meant for contactless): an EMV transaction is performed step-by-step depending on a specific logic. Each EMV step is directly called and the control is implemented outside the core engine

  • State Machine (meant for contact and contactless): an EMV transaction can be formed performed step-by-step with the control inside and outside the core engine (a mix between to 2 previous modes to reduce the complexity of granular calls sequence)

Callbacks

There are 8 callbacks available at different levels of Agnos Framework API (see architecture model above).