SPI
1.1.58
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
258
enum
SPILanguage
259
{
260
SPILanguage_Hebrew
= 1,
261
SPILanguage_English
= 2,
262
};
263
265
enum
ServiceProperty
266
{
267
ServiceProperty_TransmitTime
= 1,
268
};
269
273
namespace
Ashrait {
274
276
enum
VirtualReason
277
{
278
SwipeData
= 1,
279
Balance
= 2,
280
CancelRegisteredTransaction
= 3,
281
CancelPreAuthorization
= 4,
282
GenerateStandingOrder
= 5,
283
RetreiveTransaction
= 6,
284
};
285
287
enum
CreditTerms
288
{
289
CT_Regular
= 1,
290
CT_IsracreditVisaMaofVisa30
= 2,
291
CT_Immidiate
= 3,
292
CT_CreditFixed
= 6,
293
CT_Payments
= 8,
294
};
295
297
enum
PaymentLinked
298
{
299
ToNone
= 0,
300
ToCPI
= 1,
301
ToDollar
= 2,
302
};
303
305
enum
Status
306
{
307
Ready
= 0,
308
NotEstablished
= -1,
309
BatchNeeded
= -2,
310
DBError
= -3,
311
PinpadError
= -4,
312
VersionError
= -5,
313
Unknown
= -6,
314
BatchRequiered
= -7,
315
NotConnected
= -8,
316
};
317
319
enum
CardNotPresentType
320
{
321
CNP_Signature
= 1,
322
CNP_Phone
= 2,
323
CNP_Internet
= 3,
324
};
325
327
enum
TransactionType
328
{
329
TT_Informative
= 0,
330
TT_Regular
= 1,
331
TT_Unload
= 2,
332
TT_Forced
= 3,
333
TT_CashBack
= 6,
334
TT_Cash
= 7,
335
TT_StandingOrder
= 11,
336
TT_BalanceCheck
= 30,
337
TT_Refund
= 53,
338
TT_Charge
= 55,
339
};
340
342
enum
IPayType
343
{
344
IPay_Money
= 0,
345
IPay_Starts
= 1,
346
IPay_Points
= 2,
347
IPay_Club
= 3,
348
IPay_NoIpay
= 99,
349
};
350
352
enum
ECIType
353
{
354
ECI_InternetNoSign
= 1,
355
ECI_InternetManpikNotRegistered
= 2,
356
ECI_InternetWithSign
= 3,
357
};
358
360
enum
MissingEventType
361
{
362
MissingNone
= 0,
363
MissingAuthorizationNumber
= 1,
364
MissingAVSDeatils
= 2,
365
MissingUnknown
= 3,
366
};
367
369
enum
Manpik
370
{
371
Manpik_Tourist
= 0,
372
Manpik_Isracard
= 1,
373
Manpik_CAL
= 2,
374
Manpik_LeumiCard
= 6,
375
};
376
378
enum
Solek
379
{
380
Solek_Isracard
= 1,
381
Solek_Cal
= 2,
382
Solek_LeumiCard
= 6,
383
};
384
386
enum
Mutag
387
{
388
Mutag_PL
= 0,
389
Mutag_Mastercard
= 1,
390
Mutag_Visa
= 2,
391
Mutag_Diners
= 3,
392
Mutag_Amex
= 4,
393
Mutag_Isracard
= 5,
394
Mutag_JCB
= 6,
395
Mutag_Discover
= 7,
396
Mutag_Maestro
= 8
397
};
398
400
enum
PanEntryMode
401
{
402
PEM_Magnetic
= 0,
403
PEM_Magnetic_Contactless
= 4,
404
PEM_EMV_Contactless
= 5,
405
PEM_Mobile_Magnetic_Contactless
= 6,
406
PEM_EMV_Mobile_Contactless
= 7,
407
PEM_PhoneNumber
= 10,
408
PEM_RFU
= 11,
409
PEM_EMV_Contact
= 40,
410
PEM_Phone
= 50,
411
PEM_Signeture_Only
= 51,
412
PEM_Internet
= 52,
413
PEM_Fallback
= 80,
414
PEM_Empty_Candidate_List
= 81,
415
PEM_Empty
= 99,
416
};
417
419
enum
ProcessorId
420
{
421
ABS
= 1,
422
Pelecard
= 2,
423
};
424
426
enum
GasolineType
427
{
428
GasolinType_None
= 0,
429
GasolinType_91
= 1,
430
GasolinType_96
= 2,
431
GasolinType_95Unleaded
= 3,
432
GasolinType_Diesel
= 4,
433
GasolinType_Motorcycle
= 5,
434
GasolinType_MiliteryGasoline
= 6,
435
GasolinType_MiliteryDiesel
= 7,
436
GasolinType_Kerosene
= 8,
437
GasolinType_Other
= 9,
438
GasolinType_91Unleaded
= 10,
439
GasolinType_98
= 11,
440
GasolinType_98Unleaded
= 12,
441
GasolinType_DieselUnleaded
= 14,
442
GasolinType_LiquefiedPetroleumGas
= 36,
443
GasolinType_Urea
= 37,
444
};
445
446
}
447
}
448
}
449
450
451
452
453
454
455
456
Generated by
1.8.2