|
---|
See ola_contactless.h |
#include
| Code Block |
---|
| #include "ola_emv.h"
#include <stdint.h> |
| |
#define
| Code Block |
---|
#define OLA_KERNEL_ID_MASTERCARD 2
#define OLA_KERNEL_ID_VISA 3
#define OLA_KERNEL_ID_AMEX 4
#define OLA_KERNEL_ID_JCB 5
#define OLA_KERNEL_ID_DISCOVER 6
#define OLA_KERNEL_ID_CUP 7
#define OLA_MSD_ID_APPROVED 0x03
#define OLA_MSD_ID_NOT_AUTHORISED 0x07
#define OLA_MSD_ID_PLEASE_INSERT_OR_SWIPE_CARD 0x18
#define OLA_MSD_ID_AUTHORISING_PLEASE_WAIT 0x1B
#define OLA_MSD_ID_INSERT_SWIPE_OR_TRY_ANOTHER_CARD 0x1C
#define OLA_MSD_ID_SEE_PHONE_FOR_INSTRUCTIONS 0x20 |
| |
| Code Block |
---|
typedef enum
{
ctsNone,
ctsPreprocess,
ctsBuildCandidate,
ctsFinalSelect,
ctsActivate
} tOlaContactlessTransactionStep; |
| |
tOlaOutcome
| Code Block |
---|
| typedef enum
{
outcNone,
outcSelectNext,
outcTryAgain,
outcApproved,
outcDeclined,
outcOnlineRequest,
outcTryAnotherInterface,
outcEndApplication
} tOlaOutcome; |
| |
tOlaStartPoint
| Code Block |
---|
| typedef enum
{
spNoStart,
spStartA,
spStartB,
spStartC,
spStartD,
} tOlaStartPoint; |
| |
tOlaOnlineResponseData
| Code Block |
---|
| typedef enum
{
ordNone,
ordEmv,
ordAny
} tOlaOnlineResponseData; |
| |
tOlaAlternateInterfacePreference
| Code Block |
---|
| typedef enum
{
aipNone,
aipContactChip,
aipMagneticStripe
} tOlaAlternateInterfacePreference; |
| |
| Code Block |
---|
| typedef enum
{
cvmclNone,
cvmclNoCvm,
cvmclSignature,
cvmclOnlinePin,
cvmclConfirmationCodeVerified
} tOlaCVMethodContactless; |
| |
tOlaStatus
| Code Block |
---|
| typedef enum
{
staNone,
staNotReady,
staIdle,
staReadyToRead,
staProcessing,
staCardReadSuccessfully,
staProcessingError
} tOlaStatus; |
| |
tOlaValueQualifier
| Code Block |
---|
| typedef enum
{
vqNone,
vqAmount,
vqBalance
} tOlaValueQualifier; |
| |
tOlaOutcomeParameter
| Code Block |
---|
| typedef struct
{
tOlaOutcome outCome;
tOlaStartPoint startingPoint;
tOlaOnlineResponseData onlineResponseData;
tOlaCVMethodContactless cvm;
int UIReqOnOutcomePresent;
int UIReqOnRestartPresent;
int receipt;
int dataRecordPresent;
int discretionaryDataPresent;
tOlaAlternateInterfacePreference alternateInterfacePreference;
uint32_t fieldOffReq;
uint32_t removalTimeout;
} tOlaOutcomeParameter; |
| |
tOlaUIRequest
| Code Block |
---|
| typedef struct
{
uint8_t messageIdentifier;
tOlaStatus status;
uint32_t holdTime;
uint8_t languagePreference[8]; // List of languages, ISO 639-1 representation
tOlaValueQualifier valueQualifier;
uint8_t value[6]; // BCD
uint8_t currencyCode[2]; // Numeric ISO 4217
} tOlaUIRequest; |
| |