SPI
1.1.52
Secured Payment Interface
Main Page
Related Pages
Namespaces
Classes
Files
Examples
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Pages
SPIDEF.h
Go to the documentation of this file.
1
13
#pragma once
14
15
#include <iostream>
16
#include <string>
17
#include <cstring>
18
#include "types.def"
19
20
#ifdef WIN32
21
#ifdef SPI_EXPORTS
22
#define SPILIBRARY_API __declspec(dllexport)
23
#elif SPI_NOEXPORTS
24
#define SPILIBRARY_API
25
#else
26
#define SPILIBRARY_API __declspec(dllimport)
27
#endif
28
#elif __GNUC__
29
#ifdef SPI_EXPORTS
30
#define SPILIBRARY_API __attribute__((visibility("default")))
31
#else
32
#define SPILIBRARY_API
33
#endif
34
#endif
35
36
37
38
using
std::string;
39
41
typedef
void
*
APIHandle
;
42
44
typedef
usint
PortType
;
45
47
typedef
uint64_t
AmountType
;
48
50
typedef
int32_t
PaymentType
;
51
53
typedef
sint
PPIDType
;
54
56
typedef
sint
ResultType
;
57
59
typedef
uint64_t
RateType
;
60
62
typedef
int32_t
PercentType
;
63
65
typedef
int32_t
MonthType
;
66
68
typedef
ulint
TimeOutType
;
69
71
typedef
byte
FrequencyType
;
72
74
typedef
int32_t
CurrencyISOType
;
75
77
typedef
usint
CounterType
;
78
79
namespace
Modularity {
80
81
namespace
SPI {
83
enum
SPI_RET_VAL
84
{
85
SPI_SUCCESS
= 0,
86
SPI_ALREADY_EXIST
= -1,
87
SPI_FAIL
= -2,
88
SPI_INVALID
= -3,
89
SPI_MISSING_EVENT_HANDLER
= -4,
90
SPI_NOT_SUPPORTED
= -5,
91
SPI_ABORTED
= -6,
92
SPI_CONNECTION_ERR
= -7,
93
SPI_TIME_OUT
= -8,
94
SPI_NO_INIT
= -999
95
};
96
98
enum
SPI_STATUS
99
{
100
SPI_READY
= 0,
101
SPI_READY_ONLINE
= 1,
102
SPI_NOT_ESTABLISHED
= -1,
103
SPI_NOT_READY
= -2,
104
SPI_ERROR
= -3
105
};
106
108
enum
TransactionStatus
109
{
110
Tran_NotCompleted
,
111
Tran_Phase1Now
,
112
Tran_Completed
113
};
114
116
enum
EndOfDayStatus
117
{
118
EndOfDay_NotCompleted
,
119
EndOfDay_Completed
120
};
121
123
enum
ExcUnitLocation
124
{
125
SPIEXCUNIT_THISINT
= 0,
126
SPIEXCUNIT_IPINT
= 1,
127
SPIEXCUNIT_SERIALINT
= 2,
128
SPIEXCUNIT_NONE
= 99
129
};
130
132
enum
ServiceID
133
{
134
AshraitService
= 0,
135
DebitService
= 1,
136
TransportationService
= 2
137
};
138
140
enum
PP_Protocol
141
{
142
MP3
= 0,
143
MPOS
= 1,
144
XPI
= 2
145
};
146
148
enum
ReportType
149
{
150
X_REPORT
= 0,
151
Z_REPORT
= 1
152
};
153
155
enum
ZReportFormat
156
{
157
ZReport_Narrow
= 0,
158
ZReport_Medium
= 1,
159
ZReport_Wide
= 2,
160
ZReport_XML
= 3,
161
};
162
164
enum
CurrencyType
165
{
166
Curr_Shekel
= 376,
167
Curr_Dollar
= 840,
168
Curr_Foreign
= 0
169
};
170
173
struct
ReceiptLine
174
{
175
string
key
;
176
string
value
;
177
};
178
180
enum
ExtendedEMVStatus
181
{
182
EMVStatus_Idle
= 0,
183
EMVStatus_Processing
= 1,
184
EMVStatus_WaitForCard
= 2,
185
EMVStatus_ReadingCard
= 3,
186
EMVStatus_ApplicationSelection
= 4,
187
EMVStatus_Loyalty
= 5,
188
EMVStatus_PinCode
= 6,
189
EMVStatus_FirstCardDecision
= 7,
190
EMVStatus_WaitProcessorApproval
= 8,
191
EMVStatus_FinalCardDecision
= 9,
192
EMVStatus_Completed
= 10,
193
};
194
196
enum
ExtendedPeriodicStatus
197
{
198
PeriodicStatus_Idle
= 0,
199
PeriodicStatus_SendDynamicParameterRequest
= 1001,
200
PeriodicStatus_RecvDynamicParameterResponse
= 1002,
201
PeriodicStatus_RecvDynamicParameterIsraelResponse
= 1003,
202
PeriodicStatus_RecvDynamicParameterTouristResponse
= 1004,
203
PeriodicStatus_RecvDynamicParameterGeneralResponse
= 1005,
204
PeriodicStatus_RecvTkefimIsracard
= 1056,
205
PeriodicStatus_RecvTikrutPL
= 1201,
206
PeriodicStatus_RecvTikrutLocal
= 1202,
207
PeriodicStatus_RecvTikrutTourist
= 1204,
208
PeriodicStatus_RecvIsracardPermission
= 1301,
209
PeriodicStatus_RecvIsracardNames
= 1304,
210
PeriodicStatus_RecvNonPLServiceCodeChecks
= 1306,
211
PeriodicStatus_RecvCalImmediateChargeIdentification
= 1311,
212
PeriodicStatus_RecvPLServiceCodeChecks
= 1312,
213
PeriodicStatus_RecvCalPermissions
= 1315,
214
PeriodicStatus_RecvCalNames
= 1318,
215
PeriodicStatus_RecvLeumiPermissions
= 1331,
216
PeriodicStatus_RecvLeumiNames
= 1334,
217
PeriodicStatus_RecvFutureManpikPermissions
= 1341,
218
PeriodicStatus_RecvFutureNames
= 1344,
219
PeriodicStatus_RecvTouristNames
= 1364,
220
PeriodicStatus_RecvUnauthorizedIsraeliCards
= 1380,
221
PeriodicStatus_RecvBenefitsDefinitions
= 1381,
222
PeriodicStatus_RecvPrivateFieldsInChipLocation
= 1382,
223
PeriodicStatus_RecvCardMaskingDefinitions
= 1383,
224
PeriodicStatus_RecvIssuerPrefixAssociation
= 1390,
225
PeriodicStatus_RecvSolekDefinitions
= 1391,
226
PeriodicStatus_RecvBrandDefinitions
= 1392,
227
PeriodicStatus_RecvManpikDefinitions
= 1393,
228
PeriodicStatus_RecvSystemMessage
= 1400,
229
PeriodicStatus_SendBatchRequest
= 1401,
230
PeriodicStatus_SendBatchBlock
= 1402,
231
PeriodicStatus_SendBatchAmounts
= 1403,
232
PeriodicStatus_RecvBatchResponse
= 1404,
233
PeriodicStatus_RecvCommReportResponse
= 1502,
234
PeriodicStatus_SendBlockedCardsRequest
= 1601,
235
PeriodicStatus_RecvBlockedCardsResponseFull
= 1604,
236
PeriodicStatus_RecvBlockedCardsResponseSmall
= 1605,
237
PeriodicStatus_SendPinPadParametersRequest
= 1701,
238
PeriodicStatus_RecvPinPadParametersResponseParameters
= 1702,
239
PeriodicStatus_RecvPinPadParametersResponseCAKey
= 1703,
240
PeriodicStatus_UpdatingPinpadParameters
= 1,
241
PeriodicStatus_Completed
= 10,
242
};
243
245
enum
SPILogLevel
246
{
247
SPILog_Emergency
= 0,
248
SPILog_Alert
= 1,
249
SPILog_Critical
= 2,
250
SPILog_Error
= 3,
251
SPILog_Warning
= 4,
252
SPILog_Notice
= 5,
253
SPILog_Info
= 6,
254
SPILog_Debug
= 7,
255
};
256
260
namespace
Ashrait {
261
263
enum
VirtualReason
264
{
265
SwipeData
= 1,
266
Balance
= 2,
267
CancelRegisteredTransaction
= 3,
268
CancelPreAuthorization
= 4,
269
GenerateStandingOrder
= 5,
270
RetreiveTransaction
= 6,
271
};
272
274
enum
CreditTerms
275
{
276
CT_Regular
= 1,
277
CT_IsracreditVisaMaofVisa30
= 2,
278
CT_Immidiate
= 3,
279
CT_CreditFixed
= 6,
280
CT_Payments
= 8,
281
};
282
284
enum
PaymentLinked
285
{
286
ToNone
= 0,
287
ToCPI
= 1,
288
ToDollar
= 2,
289
};
290
292
enum
Status
293
{
294
Ready
= 0,
295
NotEstablished
= -1,
296
BatchNeeded
= -2,
297
DBError
= -3,
298
PinpadError
= -4,
299
VersionError
= -5,
300
Unknown
= -6,
301
BatchRequiered
= -7,
302
NotConnected
= -8,
303
};
304
306
enum
CardNotPresentType
307
{
308
CNP_Signature
= 1,
309
CNP_Phone
= 2,
310
CNP_Internet
= 3,
311
};
312
314
enum
TransactionType
315
{
316
TT_Informative
= 0,
317
TT_Regular
= 1,
318
TT_Unload
= 2,
319
TT_Forced
= 3,
320
TT_CashBack
= 6,
321
TT_Cash
= 7,
322
TT_StandingOrder
= 11,
323
TT_BalanceCheck
= 30,
324
TT_Refund
= 53,
325
TT_Charge
= 55,
326
};
327
329
enum
IPayType
330
{
331
IPay_Money
= 0,
332
IPay_Starts
= 1,
333
IPay_Points
= 2,
334
IPay_Club
= 3,
335
IPay_NoIpay
= 99,
336
};
337
339
enum
ECIType
340
{
341
ECI_InternetNoSign
= 1,
342
ECI_InternetManpikNotRegistered
= 2,
343
ECI_InternetWithSign
= 3,
344
};
345
347
enum
MissingEventType
348
{
349
MissingNone
= 0,
350
MissingAuthorizationNumber
= 1,
351
MissingAVSDeatils
= 2,
352
MissingUnknown
= 3,
353
};
354
356
enum
Manpik
357
{
358
Manpik_Tourist
= 0,
359
Manpik_Isracard
= 1,
360
Manpik_CAL
= 2,
361
Manpik_LeumiCard
= 6,
362
};
363
365
enum
Solek
366
{
367
Solek_Isracard
= 1,
368
Solek_Cal
= 2,
369
Solek_LeumiCard
= 6,
370
};
371
373
enum
Mutag
374
{
375
Mutag_PL
= 0,
376
Mutag_Mastercard
= 1,
377
Mutag_Visa
= 2,
378
Mutag_Diners
= 3,
379
Mutag_Amex
= 4,
380
Mutag_Isracard
= 5,
381
Mutag_JCB
= 6,
382
Mutag_Discover
= 7,
383
Mutag_Maestro
= 8
384
};
385
387
enum
PanEntryMode
388
{
389
PEM_Magnetic
= 0,
390
PEM_Magnetic_Contactless
= 4,
391
PEM_EMV_Contactless
= 5,
392
PEM_Mobile_Magnetic_Contactless
= 6,
393
PEM_EMV_Mobile_Contactless
= 7,
394
PEM_PhoneNumber
= 10,
395
PEM_RFU
= 11,
396
PEM_EMV_Contact
= 40,
397
PEM_Phone
= 50,
398
PEM_Signeture_Only
= 51,
399
PEM_Internet
= 52,
400
PEM_Fallback
= 80,
401
PEM_Empty_Candidate_List
= 81,
402
PEM_Empty
= 99,
403
};
404
406
enum
ProcessorId
407
{
408
ABS
= 1,
409
Pelecard
= 2,
410
};
411
413
enum
GasolineType
414
{
415
GasolinType_None
= 0,
416
GasolinType_91
= 1,
417
GasolinType_96
= 2,
418
GasolinType_95Unleaded
= 3,
419
GasolinType_Diesel
= 4,
420
GasolinType_Motorcycle
= 5,
421
GasolinType_MiliteryGasoline
= 6,
422
GasolinType_MiliteryDiesel
= 7,
423
GasolinType_Kerosene
= 8,
424
GasolinType_Other
= 9,
425
GasolinType_91Unleaded
= 10,
426
GasolinType_98
= 11,
427
GasolinType_98Unleaded
= 12,
428
GasolinType_DieselUnleaded
= 14,
429
GasolinType_LiquefiedPetroleumGas
= 36,
430
GasolinType_Urea
= 37,
431
};
432
433
}
434
}
435
}
436
437
438
439
440
441
442
443
Generated by
1.8.2