Documentation under development…
This is a new features brought by AGF 3.5.x. While callback mechanism is interesting to extend L2 logic and to control the processing card flow from the L3, it has a major drawback: the calling stack is not empty the time the flow exits the L2 logic. Should the L3 need to stop the transaction during the callback, it needs to come back to the L2. That alternative is not always possible depending on the architecture. Exit Conditions is an answer to that constraint.
Exit Conditions mechanismdefines a series of events depending on the technoloogy:
For contact, it is possible to stop the EMV contact card flow ateach at each EMV step, and resume it
Fonr contactless.
...
using agnInitiateEMVTransaction()
For contactless, it is possible to exit the EMV contactless card flow at a predefined step (see below), and resume it using agnInitiateEMVTransaction()
CONTACT EVENTS | |||
Event | Comments | Trigger | Agnos State |
EC_CNT_EVENT_GET_PSE_FCI | |||
EC_CNT_EVENT_GET_CANDIDATE_LIST | |||
EC_CNT_EVENT_PROCESSING | |||
EC_CNT_EVENT_GET_FINAL_SELECT_FCI | Exit before Final Select | By configuration | asREADY |
EC_CNT_EVENT_GET_GPO | Exit before Get Processing Options | By configuration | asSELECT |
EC_CNT_EVENT_APP_DATA_AVAILABLE | Exit before Read Record | By configuration | asGPO |
EC_CNT_EVENT_RESTRICTION_PERFORMED | Exit before Processing Restrictions | By configuration | asREAD |
EC_CNT_EVENT_ODA_PERFORMED | Exit before Offline Data Authentication | By configuration | asRESTRICTION |
EC_CNT_EVENT_CVM_PERFORMED | Exit before Cardholder Verificaiton Method | By configuration | asODA |
EC_CNT_EVENT_TRM_PERFORMED | Exit before Terminal Risk Management | By configuration | asCVM |
EC_CNT_EVENT_TAA_PERFORMED | Exit before Terminal Action Analysis | By configuration | asTRM |
EC_CNT_EVENT_CAA_PERFORMED | Not Used | -- | -- |
EC_CNT_EVENT_GET_FIRST_GEN_AC | Exit before Card Action Analysis | By configuration | asTAA |
EC_CNT_EVENT_GET_PIN | |||
EC_CNT_EVENT_ISSUER_SCRIPT_1_RESULTS | Not Used | -- | -- |
EC_CNT_EVENT_GET_SECOND_GEN_AC | Not Used | -- | -- |
EC_CNT_EVENT_ISSUER_SCRIPT_2_RESULTS | Not Used | -- | -- |
CONTACTLESS EVENTS | |||
Event | Comments | ||
EC_CTLSS_EVENT_GET_PRE_PROCESSING_RESULT | |||
EC_CTLSS_EVENT_STATUS_READY_TO_READ | |||
EC_CTLSS_EVENT_COLLISION_DETECTED | |||
EC_CTLSS_EVENT_CARD_DETECTED | |||
EC_CTLSS_EVENT_GET_PPSE_FCI | |||
EC_CTLSS_EVENT_GET_CANDIDATE_LIST | |||
EC_CTLSS_EVENT_GET_FINAL_SELECT_FCI | |||
EC_CTLSS_EVENT_STATUS_PROCESSING | |||
EC_CTLSS_EVENT_APP_DATA_AVAILABLE | |||
EC_CTLSS_EVENT_STATUS_CARD_READ_SUCCESSFULLY | |||
EC_CTLSS_EVENT_SEE_PHONE | |||
EC_CTLSS_EVENT_REMOVE_CARD |