SPI  1.1.52
Secured Payment Interface
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Pages
Classes | Namespaces | Typedefs | Enumerations
SPIDEF.h File Reference

This file conatins all defenitions which are used in SPI API.

More...

#include <iostream>
#include <string>
#include <cstring>
#include "types.def"

Go to the source code of this file.

Classes

struct  Modularity::SPI::ReceiptLine
 A struct which reprensts a line in receipt. More...
 

Namespaces

namespace  Modularity
 This namespace contains avilible API from Modularity Inc.
 
namespace  Modularity::SPI
 This namespace contains avilible classes and enumerators for SPI library.
 
namespace  Modularity::SPI::Ashrait
 This namespace contains requiered enumerators for AshraitEMV service.
 

Typedefs

typedef void * APIHandle
 
typedef usint PortType
 
typedef uint64_t AmountType
 
typedef int32_t PaymentType
 
typedef sint PPIDType
 
typedef sint ResultType
 
typedef uint64_t RateType
 
typedef int32_t PercentType
 
typedef int32_t MonthType
 
typedef ulint TimeOutType
 
typedef byte FrequencyType
 
typedef int32_t CurrencyISOType
 
typedef usint CounterType
 

Enumerations

enum  Modularity::SPI::SPI_RET_VAL {
  Modularity::SPI::SPI_SUCCESS = 0, Modularity::SPI::SPI_ALREADY_EXIST = -1, Modularity::SPI::SPI_FAIL = -2, Modularity::SPI::SPI_INVALID = -3,
  Modularity::SPI::SPI_MISSING_EVENT_HANDLER = -4, Modularity::SPI::SPI_NOT_SUPPORTED = -5, Modularity::SPI::SPI_ABORTED = -6, Modularity::SPI::SPI_CONNECTION_ERR = -7,
  Modularity::SPI::SPI_TIME_OUT = -8, Modularity::SPI::SPI_NO_INIT = -999
}
 
enum  Modularity::SPI::SPI_STATUS {
  Modularity::SPI::SPI_READY = 0, Modularity::SPI::SPI_READY_ONLINE = 1, Modularity::SPI::SPI_NOT_ESTABLISHED = -1, Modularity::SPI::SPI_NOT_READY = -2,
  Modularity::SPI::SPI_ERROR = -3
}
 
enum  Modularity::SPI::TransactionStatus { Modularity::SPI::Tran_NotCompleted, Modularity::SPI::Tran_Phase1Now, Modularity::SPI::Tran_Completed }
 
enum  Modularity::SPI::EndOfDayStatus { Modularity::SPI::EndOfDay_NotCompleted, Modularity::SPI::EndOfDay_Completed }
 
enum  Modularity::SPI::ExcUnitLocation { Modularity::SPI::SPIEXCUNIT_THISINT = 0, Modularity::SPI::SPIEXCUNIT_IPINT = 1, Modularity::SPI::SPIEXCUNIT_SERIALINT = 2, Modularity::SPI::SPIEXCUNIT_NONE = 99 }
 
enum  Modularity::SPI::ServiceID { Modularity::SPI::AshraitService = 0, Modularity::SPI::DebitService = 1, Modularity::SPI::TransportationService = 2 }
 
enum  Modularity::SPI::PP_Protocol { Modularity::SPI::MP3 = 0, Modularity::SPI::MPOS = 1, Modularity::SPI::XPI = 2 }
 
enum  Modularity::SPI::ReportType { Modularity::SPI::X_REPORT = 0, Modularity::SPI::Z_REPORT = 1 }
 
enum  Modularity::SPI::ZReportFormat { Modularity::SPI::ZReport_Narrow = 0, Modularity::SPI::ZReport_Medium = 1, Modularity::SPI::ZReport_Wide = 2, Modularity::SPI::ZReport_XML = 3 }
 
enum  Modularity::SPI::CurrencyType { Modularity::SPI::Curr_Shekel = 376, Modularity::SPI::Curr_Dollar = 840, Modularity::SPI::Curr_Foreign = 0 }
 
enum  Modularity::SPI::ExtendedEMVStatus {
  Modularity::SPI::EMVStatus_Idle = 0, Modularity::SPI::EMVStatus_Processing = 1, Modularity::SPI::EMVStatus_WaitForCard = 2, Modularity::SPI::EMVStatus_ReadingCard = 3,
  Modularity::SPI::EMVStatus_ApplicationSelection = 4, Modularity::SPI::EMVStatus_Loyalty = 5, Modularity::SPI::EMVStatus_PinCode = 6, Modularity::SPI::EMVStatus_FirstCardDecision = 7,
  Modularity::SPI::EMVStatus_WaitProcessorApproval = 8, Modularity::SPI::EMVStatus_FinalCardDecision = 9, Modularity::SPI::EMVStatus_Completed = 10
}
 
enum  Modularity::SPI::ExtendedPeriodicStatus {
  Modularity::SPI::PeriodicStatus_Idle = 0, Modularity::SPI::PeriodicStatus_SendDynamicParameterRequest = 1001, Modularity::SPI::PeriodicStatus_RecvDynamicParameterResponse = 1002, Modularity::SPI::PeriodicStatus_RecvDynamicParameterIsraelResponse = 1003,
  Modularity::SPI::PeriodicStatus_RecvDynamicParameterTouristResponse = 1004, Modularity::SPI::PeriodicStatus_RecvDynamicParameterGeneralResponse = 1005, Modularity::SPI::PeriodicStatus_RecvTkefimIsracard = 1056, Modularity::SPI::PeriodicStatus_RecvTikrutPL = 1201,
  Modularity::SPI::PeriodicStatus_RecvTikrutLocal = 1202, Modularity::SPI::PeriodicStatus_RecvTikrutTourist = 1204, Modularity::SPI::PeriodicStatus_RecvIsracardPermission = 1301, Modularity::SPI::PeriodicStatus_RecvIsracardNames = 1304,
  Modularity::SPI::PeriodicStatus_RecvNonPLServiceCodeChecks = 1306, Modularity::SPI::PeriodicStatus_RecvCalImmediateChargeIdentification = 1311, Modularity::SPI::PeriodicStatus_RecvPLServiceCodeChecks = 1312, Modularity::SPI::PeriodicStatus_RecvCalPermissions = 1315,
  Modularity::SPI::PeriodicStatus_RecvCalNames = 1318, Modularity::SPI::PeriodicStatus_RecvLeumiPermissions = 1331, Modularity::SPI::PeriodicStatus_RecvLeumiNames = 1334, Modularity::SPI::PeriodicStatus_RecvFutureManpikPermissions = 1341,
  Modularity::SPI::PeriodicStatus_RecvFutureNames = 1344, Modularity::SPI::PeriodicStatus_RecvTouristNames = 1364, Modularity::SPI::PeriodicStatus_RecvUnauthorizedIsraeliCards = 1380, Modularity::SPI::PeriodicStatus_RecvBenefitsDefinitions = 1381,
  Modularity::SPI::PeriodicStatus_RecvPrivateFieldsInChipLocation = 1382, Modularity::SPI::PeriodicStatus_RecvCardMaskingDefinitions = 1383, Modularity::SPI::PeriodicStatus_RecvIssuerPrefixAssociation = 1390, Modularity::SPI::PeriodicStatus_RecvSolekDefinitions = 1391,
  Modularity::SPI::PeriodicStatus_RecvBrandDefinitions = 1392, Modularity::SPI::PeriodicStatus_RecvManpikDefinitions = 1393, Modularity::SPI::PeriodicStatus_RecvSystemMessage = 1400, Modularity::SPI::PeriodicStatus_SendBatchRequest = 1401,
  Modularity::SPI::PeriodicStatus_SendBatchBlock = 1402, Modularity::SPI::PeriodicStatus_SendBatchAmounts = 1403, Modularity::SPI::PeriodicStatus_RecvBatchResponse = 1404, Modularity::SPI::PeriodicStatus_RecvCommReportResponse = 1502,
  Modularity::SPI::PeriodicStatus_SendBlockedCardsRequest = 1601, Modularity::SPI::PeriodicStatus_RecvBlockedCardsResponseFull = 1604, Modularity::SPI::PeriodicStatus_RecvBlockedCardsResponseSmall = 1605, Modularity::SPI::PeriodicStatus_SendPinPadParametersRequest = 1701,
  Modularity::SPI::PeriodicStatus_RecvPinPadParametersResponseParameters = 1702, Modularity::SPI::PeriodicStatus_RecvPinPadParametersResponseCAKey = 1703, Modularity::SPI::PeriodicStatus_UpdatingPinpadParameters = 1, Modularity::SPI::PeriodicStatus_Completed = 10
}
 
enum  Modularity::SPI::SPILogLevel {
  Modularity::SPI::SPILog_Emergency = 0, Modularity::SPI::SPILog_Alert = 1, Modularity::SPI::SPILog_Critical = 2, Modularity::SPI::SPILog_Error = 3,
  Modularity::SPI::SPILog_Warning = 4, Modularity::SPI::SPILog_Notice = 5, Modularity::SPI::SPILog_Info = 6, Modularity::SPI::SPILog_Debug = 7
}
 
enum  Modularity::SPI::Ashrait::VirtualReason {
  Modularity::SPI::Ashrait::SwipeData = 1, Modularity::SPI::Ashrait::Balance = 2, Modularity::SPI::Ashrait::CancelRegisteredTransaction = 3, Modularity::SPI::Ashrait::CancelPreAuthorization = 4,
  Modularity::SPI::Ashrait::GenerateStandingOrder = 5, Modularity::SPI::Ashrait::RetreiveTransaction = 6
}
 
enum  Modularity::SPI::Ashrait::CreditTerms {
  Modularity::SPI::Ashrait::CT_Regular = 1, Modularity::SPI::Ashrait::CT_IsracreditVisaMaofVisa30 = 2, Modularity::SPI::Ashrait::CT_Immidiate = 3, Modularity::SPI::Ashrait::CT_CreditFixed = 6,
  Modularity::SPI::Ashrait::CT_Payments = 8
}
 
enum  Modularity::SPI::Ashrait::PaymentLinked { Modularity::SPI::Ashrait::ToNone = 0, Modularity::SPI::Ashrait::ToCPI = 1, Modularity::SPI::Ashrait::ToDollar = 2 }
 
enum  Modularity::SPI::Ashrait::Status {
  Modularity::SPI::Ashrait::Ready = 0, Modularity::SPI::Ashrait::NotEstablished = -1, Modularity::SPI::Ashrait::BatchNeeded = -2, Modularity::SPI::Ashrait::DBError = -3,
  Modularity::SPI::Ashrait::PinpadError = -4, Modularity::SPI::Ashrait::VersionError = -5, Modularity::SPI::Ashrait::Unknown = -6, Modularity::SPI::Ashrait::BatchRequiered = -7,
  Modularity::SPI::Ashrait::NotConnected = -8
}
 
enum  Modularity::SPI::Ashrait::CardNotPresentType { Modularity::SPI::Ashrait::CNP_Signature = 1, Modularity::SPI::Ashrait::CNP_Phone = 2, Modularity::SPI::Ashrait::CNP_Internet = 3 }
 
enum  Modularity::SPI::Ashrait::TransactionType {
  Modularity::SPI::Ashrait::TT_Informative = 0, Modularity::SPI::Ashrait::TT_Regular = 1, Modularity::SPI::Ashrait::TT_Unload = 2, Modularity::SPI::Ashrait::TT_Forced = 3,
  Modularity::SPI::Ashrait::TT_CashBack = 6, Modularity::SPI::Ashrait::TT_Cash = 7, Modularity::SPI::Ashrait::TT_StandingOrder = 11, Modularity::SPI::Ashrait::TT_BalanceCheck = 30,
  Modularity::SPI::Ashrait::TT_Refund = 53, Modularity::SPI::Ashrait::TT_Charge = 55
}
 
enum  Modularity::SPI::Ashrait::IPayType {
  Modularity::SPI::Ashrait::IPay_Money = 0, Modularity::SPI::Ashrait::IPay_Starts = 1, Modularity::SPI::Ashrait::IPay_Points = 2, Modularity::SPI::Ashrait::IPay_Club = 3,
  Modularity::SPI::Ashrait::IPay_NoIpay = 99
}
 
enum  Modularity::SPI::Ashrait::ECIType { Modularity::SPI::Ashrait::ECI_InternetNoSign = 1, Modularity::SPI::Ashrait::ECI_InternetManpikNotRegistered = 2, Modularity::SPI::Ashrait::ECI_InternetWithSign = 3 }
 
enum  Modularity::SPI::Ashrait::MissingEventType { Modularity::SPI::Ashrait::MissingNone = 0, Modularity::SPI::Ashrait::MissingAuthorizationNumber = 1, Modularity::SPI::Ashrait::MissingAVSDeatils = 2, Modularity::SPI::Ashrait::MissingUnknown = 3 }
 
enum  Modularity::SPI::Ashrait::Manpik { Modularity::SPI::Ashrait::Manpik_Tourist = 0, Modularity::SPI::Ashrait::Manpik_Isracard = 1, Modularity::SPI::Ashrait::Manpik_CAL = 2, Modularity::SPI::Ashrait::Manpik_LeumiCard = 6 }
 
enum  Modularity::SPI::Ashrait::Solek { Modularity::SPI::Ashrait::Solek_Isracard = 1, Modularity::SPI::Ashrait::Solek_Cal = 2, Modularity::SPI::Ashrait::Solek_LeumiCard = 6 }
 
enum  Modularity::SPI::Ashrait::Mutag {
  Modularity::SPI::Ashrait::Mutag_PL = 0, Modularity::SPI::Ashrait::Mutag_Mastercard = 1, Modularity::SPI::Ashrait::Mutag_Visa = 2, Modularity::SPI::Ashrait::Mutag_Diners = 3,
  Modularity::SPI::Ashrait::Mutag_Amex = 4, Modularity::SPI::Ashrait::Mutag_Isracard = 5, Modularity::SPI::Ashrait::Mutag_JCB = 6, Modularity::SPI::Ashrait::Mutag_Discover = 7,
  Modularity::SPI::Ashrait::Mutag_Maestro = 8
}
 
enum  Modularity::SPI::Ashrait::PanEntryMode {
  Modularity::SPI::Ashrait::PEM_Magnetic = 0, Modularity::SPI::Ashrait::PEM_Magnetic_Contactless = 4, Modularity::SPI::Ashrait::PEM_EMV_Contactless = 5, Modularity::SPI::Ashrait::PEM_Mobile_Magnetic_Contactless = 6,
  Modularity::SPI::Ashrait::PEM_EMV_Mobile_Contactless = 7, Modularity::SPI::Ashrait::PEM_PhoneNumber = 10, Modularity::SPI::Ashrait::PEM_RFU = 11, Modularity::SPI::Ashrait::PEM_EMV_Contact = 40,
  Modularity::SPI::Ashrait::PEM_Phone = 50, Modularity::SPI::Ashrait::PEM_Signeture_Only = 51, Modularity::SPI::Ashrait::PEM_Internet = 52, Modularity::SPI::Ashrait::PEM_Fallback = 80,
  Modularity::SPI::Ashrait::PEM_Empty_Candidate_List = 81, Modularity::SPI::Ashrait::PEM_Empty = 99
}
 
enum  Modularity::SPI::Ashrait::ProcessorId { Modularity::SPI::Ashrait::ABS = 1, Modularity::SPI::Ashrait::Pelecard = 2 }
 
enum  Modularity::SPI::Ashrait::GasolineType {
  Modularity::SPI::Ashrait::GasolinType_None = 0, Modularity::SPI::Ashrait::GasolinType_91 = 1, Modularity::SPI::Ashrait::GasolinType_96 = 2, Modularity::SPI::Ashrait::GasolinType_95Unleaded = 3,
  Modularity::SPI::Ashrait::GasolinType_Diesel = 4, Modularity::SPI::Ashrait::GasolinType_Motorcycle = 5, Modularity::SPI::Ashrait::GasolinType_MiliteryGasoline = 6, Modularity::SPI::Ashrait::GasolinType_MiliteryDiesel = 7,
  Modularity::SPI::Ashrait::GasolinType_Kerosene = 8, Modularity::SPI::Ashrait::GasolinType_Other = 9, Modularity::SPI::Ashrait::GasolinType_91Unleaded = 10, Modularity::SPI::Ashrait::GasolinType_98 = 11,
  Modularity::SPI::Ashrait::GasolinType_98Unleaded = 12, Modularity::SPI::Ashrait::GasolinType_DieselUnleaded = 14, Modularity::SPI::Ashrait::GasolinType_LiquefiedPetroleumGas = 36, Modularity::SPI::Ashrait::GasolinType_Urea = 37
}
 

Detailed Description

This file conatins all defenitions which are used in SPI API.

Author
Ido Algom
Date
1/12/2017

Definition in file SPIDEF.h.

Typedef Documentation

typedef uint64_t AmountType

Number. Uses to describe amount of money or units. Can't be double/float or negative.

Definition at line 47 of file SPIDEF.h.

typedef void* APIHandle

The class handle. Only for internal use

Definition at line 41 of file SPIDEF.h.

typedef usint CounterType

Number. Uses to describe counted number. Can't be double/float or negative.

Definition at line 77 of file SPIDEF.h.

typedef int32_t CurrencyISOType

Number. Uses to describe ISO code of foreign currencies. Can't be double/float or negative.

Definition at line 74 of file SPIDEF.h.

typedef byte FrequencyType

Number. Uses to describe frequency in months. Can't be double/float or negative.

Definition at line 71 of file SPIDEF.h.

typedef int32_t MonthType

Number. Uses to describe amount of months. Can't be double/float or negative.

Definition at line 65 of file SPIDEF.h.

typedef int32_t PaymentType

Number. Uses to describe amount of payments. Can't be double/float or negative.

Definition at line 50 of file SPIDEF.h.

typedef int32_t PercentType

Number. Uses to describe partial in percunts. Can't be double/float or negative.

Definition at line 62 of file SPIDEF.h.

typedef usint PortType

Number. Uses to describe port number of a server

Definition at line 44 of file SPIDEF.h.

typedef sint PPIDType

Number. Uses to describe identification number of Pinpad device. Can't be double/float or negative.

Definition at line 53 of file SPIDEF.h.

typedef uint64_t RateType

Number. Uses to describe change rate of foreign currency. Can't be double/float or negative.

Definition at line 59 of file SPIDEF.h.

typedef sint ResultType

Number. Uses to describe result code of Transaction.

Definition at line 56 of file SPIDEF.h.

typedef ulint TimeOutType

Number. Uses to describe timeout. Can't be double/float or negative.

Definition at line 68 of file SPIDEF.h.