IDTech iOS/OSX SDK Guide  1.1.084
API reference for UniPay 1.5
Enumeration Reference
IDTMSRData

typedef enum _CAPTURE_ENCODE_TYPE{
CAPTURE_ENCODE_TYPE_ISOABA=0,
CAPTURE_ENCODE_TYPE_AAMVA=1,
CAPTURE_ENCODE_TYPE_Other=3,
CAPTURE_ENCODE_TYPE_Raw=4,
CAPTURE_ENCODE_TYPE_JIS_II=5,
CAPTURE_ENCODE_TYPE_JIS_I=6,
CAPTURE_ENCODE_TYPE_MANUAL_ENTRY=7
} CAPTURE_ENCODE_TYPE;

typedef enum{
CAPTURE_ENCRYPT_TYPE_TDES=0,
CAPTURE_ENCRYPT_TYPE_AES=1
} CAPTURE_ENCRYPT_TYPE;

IDTCommon

typedef enum{
POWER_ON_OPTION_IFS_FLAG=1,
POWER_ON_OPTION_EXPLICIT_PPS_FLAG=2,
POWER_ON_OPTION_AUTO_PPS_FLAG=64,
POWER_ON_OPTION_IFS_RESPONSE_CHECK_FLAG=128
}POWER_ON_OPTION;

typedef enum{
LANGUAGE_TYPE_ENGLISH=1,
LANGUAGE_TYPE_PORTUGUESE,
LANGUAGE_TYPE_SPANISH,
LANGUAGE_TYPE_FRENCH
}LANGUAGE_TYPE;

typedef enum{
PIN_KEY_TDES_MKSK_extp=0x00,
PIN_KEY_TDES_DUKPT_extp=0x01,
PIN_KEY_TDES_MKSK_intl=0x10,
PIN_KEY_TDES_DUKPT_intl=0x11,
}PIN_KEY_Types;

typedef enum{
EVENT_PINPAD_UNKNOWN = 11,
EVENT_PINPAD_ENCRYPTED_PIN,
EVENT_PINPAD_NUMERIC,
EVENT_PINPAD_AMOUNT,
EVENT_PINPAD_ACCOUNT,
EVENT_PINPAD_ENCRYPTED_DATA,
EVENT_PINPAD_CANCEL,
EVENT_PINPAD_TIMEOUT,
EVENT_PINPAD_FUNCTION_KEY,
EVENT_PINPAD_DATA_ERROR
}EVENT_PINPAD_Types;

typedef enum{
IDT_DEVICE_BTPAY_IOS = 0,
IDT_DEVICE_BTPAY_OSX_BT,
IDT_DEVICE_BTPAY_OSX_USB,
IDT_DEVICE_UNIPAY_IOS,
IDT_DEVICE_UNIPAY_OSX_USB,
IDT_DEVICE_UniPayIII_IOS,
IDT_DEVICE_UniPayIII_OSX_USB,
IDT_DEVICE_IMAG_IOS,
IDT_DEVICE_VENDI_MOBILE,
IDT_DEVICE_UniPayI_V_IOS,
IDT_DEVICE_UniPayI_V_OSX_USB
}IDT_DEVICE_Types;

typedef enum{
EVENT_MSR_UNKNOWN = 31,
EVENT_MSR_CARD_DATA,
EVENT_MSR_CANCEL_KEY,
EVENT_MSR_BACKSPACE_KEY,
EVENT_MSR_ENTER_KEY,
EVENT_MSR_DATA_ERROR,
EVENT_MSR_ICC_START,
EVENT_BTPAY_CARD_DATA,
EVENT_UniPayIII_EMV_NO_ICC_MSR_DATA,
EVENT_UniPayIII_EMV_FALLBACK_DATA
}EVENT_MSR_Types;

typedef enum{
EVENT_ACTIVE_TRANSACTION = 51
}EVENT_CTLS_Types;

typedef enum {
RETURN_CODE_DO_SUCCESS = 0,
RETURN_CODE_ERR_DISCONNECT,
RETURN_CODE_ERR_CMD_RESPONSE,
RETURN_CODE_ERR_TIMEDOUT,
RETURN_CODE_ERR_INVALID_PARAMETER,
RETURN_CODE_SDK_BUSY_MSR,
RETURN_CODE_SDK_BUSY_PINPAD,
RETURN_CODE_SDK_BUSY_CTLS,
RETURN_CODE_ERR_OTHER,
RETURN_CODE_FAILED,
RETURN_CODE_NOT_ATTACHED,
RETURN_CODE_MONO_AUDIO,
RETURN_CODE_CONNECTED,
RETURN_CODE_LOW_VOLUME,
RETURN_CODE_CANCELED,
RETURN_CODE_EMV_AUTHORIZATION_ACCEPTED = 0x0E00,
RETURN_CODE_EMV_AUTHORIZATION_UNABLE_TO_GO_ONLINE = 0x0E01,
RETURN_CODE_EMV_AUTHORIZATION_TECHNICAL_ISSUE = 0x0E02,
RETURN_CODE_EMV_AUTHORIZATION_DECLINED = 0x0E03,
RETURN_CODE_EMV_AUTHORIZATION_ISSUER_REFERRAL = 0x0E04,
RETURN_CODE_EMV_APPROVED = 0x0F00,ction
RETURN_CODE_EMV_DECLINED = 0x0F01,
RETURN_CODE_EMV_GO_ONLINE = 0x0F02,
RETURN_CODE_EMV_FAILED = 0x0F03,
RETURN_CODE_EMV_SYSTEM_ERROR = 0x0F05,
RETURN_CODE_EMV_NOT_ACCEPTED = 0x0F07,
RETURN_CODE_EMV_FALLBACK = 0x0F0A,
RETURN_CODE_EMV_CANCEL = 0x0F0C,
RETURN_CODE_EMV_TIMEOUT = 0x0F0D,
RETURN_CODE_EMV_OTHER_ERROR = 0x0F0F,
RETURN_CODE_EMV_OFFLINE_APPROVED = 0x0F10,
RETURN_CODE_EMV_OFFLINE_DECLINED = 0x0F11,
RETURN_CODE_EMV_NEW_SELECTION = 0x0F21,
RETURN_CODE_EMV_NO_AVAILABLE_APPS = 0x0F22,
RETURN_CODE_EMV_NO_TERMINAL_FILE = 0x0F23,
RETURN_CODE_EMV_NO_CAPK_FILE = 0x0F24,
RETURN_CODE_EMV_NO_CRL_ENTRY = 0x0F25,
RETURN_CODE_BLOCKING_DISABLED = 0x0FFE,
RETURN_CODE_COMMAND_UNAVAILABLE = 0x0FFF
} RETURN_CODE;

typedef enum{
EMV_RESULT_CODE_V2_APPROVED_OFFLINE = 0x0000,
EMV_RESULT_CODE_V2_DECLINED_OFFLINE = 0x0001,
EMV_RESULT_CODE_V2_APPROVED = 0x0002,
EMV_RESULT_CODE_V2_DECLINED = 0x0003,
EMV_RESULT_CODE_V2_GO_ONLINE = 0x0004,
EMV_RESULT_CODE_V2_CALL_YOUR_BANK = 0x0005,
EMV_RESULT_CODE_V2_NOT_ACCEPTED = 0x0006,
EMV_RESULT_CODE_V2_USE_MAGSTRIPE = 0x0007,
EMV_RESULT_CODE_V2_TIME_OUT = 0x0008,
EMV_RESULT_CODE_V2_START_TRANS_SUCCESS = 0x0010,
EMV_RESULT_CODE_V2_MSR_SUCCESS = 0x0011,
EMV_RESULT_CODE_V2_FILE_ARG_INVALID = 0x1001,
EMV_RESULT_CODE_V2_FILE_OPEN_FAILED = 0x1002,
EMV_RESULT_CODE_V2_FILE_OPERATION_FAILED = 0X1003,
EMV_RESULT_CODE_V2_MEMORY_NOT_ENOUGH = 0x2001,
EMV_RESULT_CODE_V2_SMARTCARD_FAIL = 0x3001,
EMV_RESULT_CODE_V2_SMARTCARD_INIT_FAILED = 0x3003,
EMV_RESULT_CODE_V2_FALLBACK_SITUATION = 0x3004,
EMV_RESULT_CODE_V2_SMARTCARD_ABSENT = 0x3005,
EMV_RESULT_CODE_V2_SMARTCARD_TIMEOUT = 0x3006,
EMV_RESULT_CODE_V2_MSR_CARD_ERROR = 0x3007,
EMV_RESULT_CODE_V2_PARSING_TAGS_FAILED= 0X5001,
EMV_RESULT_CODE_V2_CARD_DATA_ELEMENT_DUPLICATE = 0X5002,
EMV_RESULT_CODE_V2_DATA_FORMAT_INCORRECT = 0X5003,
EMV_RESULT_CODE_V2_APP_NO_TERM = 0X5004,
EMV_RESULT_CODE_V2_APP_NO_MATCHING = 0X5005,
EMV_RESULT_CODE_V2_AMANDATORY_OBJECT_MISSING = 0X5006,
EMV_RESULT_CODE_V2_APP_SELECTION_RETRY = 0X5007,
EMV_RESULT_CODE_V2_AMOUNT_ERROR_GET = 0X5008,
EMV_RESULT_CODE_V2_CARD_REJECTED = 0X5009,
EMV_RESULT_CODE_V2_AIP_NOT_RECEIVED = 0X5010,
EMV_RESULT_CODE_V2_AFL_NOT_RECEIVEDE = 0X5011,
EMV_RESULT_CODE_V2_AFL_LEN_OUT_OF_RANGE = 0X5012,
EMV_RESULT_CODE_V2_SFI_OUT_OF_RANGE = 0X5013,
EMV_RESULT_CODE_V2_AFL_INCORRECT = 0X5014,
EMV_RESULT_CODE_V2_EXP_DATE_INCORRECT = 0X5015,
EMV_RESULT_CODE_V2_EFF_DATE_INCORRECT = 0X5016,
EMV_RESULT_CODE_V2_ISS_COD_TBL_OUT_OF_RANGE = 0X5017,
EMV_RESULT_CODE_V2_CRYPTOGRAM_TYPE_INCORRECT = 0X5018,
EMV_RESULT_CODE_V2_PSE_BY_CARD_NOT_SUPPORTED = 0X5019,
EMV_RESULT_CODE_V2_USER_LANGUAGE_SELECTED = 0X5020,
EMV_RESULT_CODE_V2_SERVICE_NOT_ALLOWED = 0X5021,
EMV_RESULT_CODE_V2_NO_TAG_FOUND = 0X5022,
EMV_RESULT_CODE_V2_CARD_BLOCKED = 0X5023,
EMV_RESULT_CODE_V2_LEN_INCORRECT = 0X5024,
EMV_RESULT_CODE_V2_CARD_COM_ERROR = 0X5025,
EMV_RESULT_CODE_V2_TSC_NOT_INCREASED = 0X5026,
EMV_RESULT_CODE_V2_HASH_INCORRECT = 0X5027,
EMV_RESULT_CODE_V2_ARC_NOT_PRESENCED = 0X5028,
EMV_RESULT_CODE_V2_ARC_INVALID = 0X5029,
EMV_RESULT_CODE_V2_COMM_NO_ONLINE = 0X5030,
EMV_RESULT_CODE_V2_TRAN_TYPE_INCORRECT = 0X5031,
EMV_RESULT_CODE_V2_APP_NO_SUPPORT = 0X5032,
EMV_RESULT_CODE_V2_APP_NOT_SELECT = 0X5033,
EMV_RESULT_CODE_V2_LANG_NOT_SELECT = 0X5034,
EMV_RESULT_CODE_V2_TERM_DATA_NOT_PRESENCED = 0X5035,
EMV_RESULT_CODE_V2_CVM_TYPE_UNKNOWN = 0X6001,
EMV_RESULT_CODE_V2_CVM_AIP_NOT_SUPPORTED = 0X6002,
EMV_RESULT_CODE_V2_CVM_TAG_8E_MISSING = 0X6003,
EMV_RESULT_CODE_V2_CVM_TAG_8E_FORMAT_ERROR = 0X6004,
EMV_RESULT_CODE_V2_CVM_CODE_IS_NOT_SUPPORTED = 0X6005,
EMV_RESULT_CODE_V2_CVM_COND_CODE_IS_NOT_SUPPORTED = 0X6006,
EMV_RESULT_CODE_V2_CVM_NO_MORE = 0X6007,
EMV_RESULT_CODE_V2_PIN_BYPASSED_BEFORE = 0X6008
} EMV_RESULT_CODE_V2_Types;

typedef enum{
EMV_AUTHORIZATION_RESULT_ACCEPTED = 0X00,
EMV_AUTHORIZATION_RESULT_UNABLE_TO_GO_ONLINE = 0X01,
EMV_AUTHORIZATION_RESULT_TECHNICAL_ISSUE = 0X02,
EMV_AUTHORIZATION_RESULT_DECLINED = 0X03,
EMV_AUTHORIZATION_RESULT_ISSUER_REFERAL = 0X04
} EMV_AUTHORIZATION_RESULT;