SPI
1.2111.2
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
80
typedef
uint32_t
UnsignedNumericType
;
81
82
83
84
namespace
Modularity {
85
86
namespace
SPI {
88
enum
SPI_RET_VAL
89
{
90
SPI_SUCCESS
= 0,
91
SPI_ALREADY_EXIST
= -1,
92
SPI_FAIL
= -2,
93
SPI_INVALID
= -3,
94
SPI_MISSING_EVENT_HANDLER
= -4,
95
SPI_NOT_SUPPORTED
= -5,
96
SPI_ABORTED
= -6,
97
SPI_CONNECTION_ERR
= -7,
98
SPI_TIME_OUT
= -8,
99
SPI_NO_INIT
= -999
100
};
101
103
enum
SPI_STATUS
104
{
105
SPI_READY
= 0,
106
SPI_READY_ONLINE
= 1,
107
SPI_NOT_ESTABLISHED
= -1,
108
SPI_NOT_READY
= -2,
109
SPI_ERROR
= -3
110
};
111
113
enum
TransactionStatus
114
{
115
Tran_NotCompleted
,
116
Tran_Phase1Now
,
117
Tran_AuthoriztionNumber
,
118
Tran_CVV
,
119
Tran_CardHolderId
,
120
Tran_Completed
121
};
122
124
enum
EndOfDayStatus
125
{
126
EndOfDay_NotCompleted
,
127
EndOfDay_Completed
128
};
129
131
enum
ExcUnitLocation
132
{
133
SPIEXCUNIT_THISINT
= 0,
134
SPIEXCUNIT_IPINT
= 1,
135
SPIEXCUNIT_SERIALINT
= 2,
136
SPIEXCUNIT_NONE
= 99
137
};
138
140
enum
ServiceID
141
{
142
AshraitService
= 0,
143
DebitService
= 1,
144
TransportationService
= 2,
145
NayaxVendService
= 3,
146
NayaxEngineService
= 4
147
};
148
150
enum
DeviceId
151
{
152
ModularityDevice
= 0,
153
};
154
155
157
enum
PP_Protocol
158
{
159
MP3
= 0,
160
MPOS
= 1,
161
XPI
= 2
162
};
163
165
enum
ReportType
166
{
167
X_REPORT
= 0,
168
Z_REPORT
= 1,
169
ACCM_REPORT
= 2,
170
PARAM_REPORT
= 3,
171
QUERY_TRANSACTIONS_REPORT
= 4,
172
QUERY_REPORTS_REPORT
= 5
173
};
174
176
enum
ZReportFormat
177
{
178
ZReport_Narrow
= 0,
179
ZReport_Medium
= 1,
180
ZReport_Wide
= 2,
181
ZReport_XML
= 3,
182
};
183
185
enum
CurrencyType
186
{
187
Curr_Shekel
= 376,
188
Curr_Dollar
= 840,
189
Curr_Foreign
= 0
190
};
191
194
struct
ReceiptLine
195
{
196
string
key
;
197
string
value
;
198
};
199
202
struct
AcquiredBrandInfo
203
{
204
string
brandName
;
205
string
acquireName
;
206
string
businessNumber
;
207
string
phoneNumber
;
208
};
209
212
struct
SubRetailer
213
{
214
string
RetailerId
;
215
string
RetailerName
;
216
bool
IsActivated
;
217
bool
StartWork
;
218
};
219
220
221
224
struct
EndOfDayReportInfo
225
{
226
string
AckNumber
;
227
string
Date
;
228
};
229
231
enum
ExtendedEMVStatus
232
{
233
EMVStatus_Idle
= 0,
234
EMVStatus_Processing
= 1,
235
EMVStatus_WaitForCard
= 2,
236
EMVStatus_ReadingCard
= 3,
237
EMVStatus_ApplicationSelection
= 4,
238
EMVStatus_Loyalty
= 5,
239
EMVStatus_PinCode
= 6,
240
EMVStatus_FirstCardDecision
= 7,
241
EMVStatus_WaitProcessorApproval
= 8,
242
EMVStatus_FinalCardDecision
= 9,
243
EMVStatus_Completed
= 10,
244
};
245
247
enum
ExtendedPeriodicStatus
248
{
249
PeriodicStatus_Idle
= 0,
250
PeriodicStatus_SendDynamicParameterRequest
= 1001,
251
PeriodicStatus_RecvDynamicParameterResponse
= 1002,
252
PeriodicStatus_RecvDynamicParameterIsraelResponse
= 1003,
253
PeriodicStatus_RecvDynamicParameterTouristResponse
= 1004,
254
PeriodicStatus_RecvDynamicParameterGeneralResponse
= 1005,
255
PeriodicStatus_RecvTkefimIsracard
= 1056,
256
PeriodicStatus_RecvTikrutPL
= 1201,
257
PeriodicStatus_RecvTikrutLocal
= 1202,
258
PeriodicStatus_RecvTikrutTourist
= 1204,
259
PeriodicStatus_RecvIsracardPermission
= 1301,
260
PeriodicStatus_RecvIsracardNames
= 1304,
261
PeriodicStatus_RecvNonPLServiceCodeChecks
= 1306,
262
PeriodicStatus_RecvCalImmediateChargeIdentification
= 1311,
263
PeriodicStatus_RecvPLServiceCodeChecks
= 1312,
264
PeriodicStatus_RecvCalPermissions
= 1315,
265
PeriodicStatus_RecvCalNames
= 1318,
266
PeriodicStatus_RecvLeumiPermissions
= 1331,
267
PeriodicStatus_RecvLeumiNames
= 1334,
268
PeriodicStatus_RecvFutureManpikPermissions
= 1341,
269
PeriodicStatus_RecvFutureNames
= 1344,
270
PeriodicStatus_RecvTouristNames
= 1364,
271
PeriodicStatus_RecvUnauthorizedIsraeliCards
= 1380,
272
PeriodicStatus_RecvBenefitsDefinitions
= 1381,
273
PeriodicStatus_RecvPrivateFieldsInChipLocation
= 1382,
274
PeriodicStatus_RecvCardMaskingDefinitions
= 1383,
275
PeriodicStatus_RecvIssuerPrefixAssociation
= 1390,
276
PeriodicStatus_RecvSolekDefinitions
= 1391,
277
PeriodicStatus_RecvBrandDefinitions
= 1392,
278
PeriodicStatus_RecvManpikDefinitions
= 1393,
279
PeriodicStatus_RecvSystemMessage
= 1400,
280
PeriodicStatus_SendBatchRequest
= 1401,
281
PeriodicStatus_SendBatchBlock
= 1402,
282
PeriodicStatus_SendBatchAmounts
= 1403,
283
PeriodicStatus_RecvBatchResponse
= 1404,
284
PeriodicStatus_RecvCommReportResponse
= 1502,
285
PeriodicStatus_SendBlockedCardsRequest
= 1601,
286
PeriodicStatus_RecvBlockedCardsResponseFull
= 1604,
287
PeriodicStatus_RecvBlockedCardsResponseSmall
= 1605,
288
PeriodicStatus_SendPinPadParametersRequest
= 1701,
289
PeriodicStatus_RecvPinPadParametersResponseParameters
= 1702,
290
PeriodicStatus_RecvPinPadParametersResponseCAKey
= 1703,
291
PeriodicStatus_RecvPinPadParametersResponseBins
= 1704,
292
PeriodicStatus_UpdatingPinpadParameters
= 1,
293
PeriodicStatus_Completed
= 10,
294
};
295
297
enum
SPILogLevel
298
{
299
SPILog_Emergency
= 0,
300
SPILog_Alert
= 1,
301
SPILog_Critical
= 2,
302
SPILog_Error
= 3,
303
SPILog_Warning
= 4,
304
SPILog_Notice
= 5,
305
SPILog_Info
= 6,
306
SPILog_Debug
= 7,
307
};
308
310
enum
SPILanguage
311
{
312
SPILanguage_Hebrew
= 1,
313
SPILanguage_English
= 2,
314
};
315
317
enum
ServiceProperty
318
{
319
ServiceProperty_TransmitTime
= 1,
320
ServiceProperty_SystemTrace
= 2,
321
ServiceProperty_DeviceSerial
= 3,
322
ServiceProperty_CountryCode
= 4,
323
ServiceProperty_Currency
= 5,
324
ServiceProperty_DecimalPlace
= 6,
325
ServiceProperty_AcquirerTermianlId
= 7,
326
ServiceProperty_RavSapak
= 8,
327
};
328
330
enum
DeviceProperty
331
{
332
DeviceProperty_SN
= 1,
333
DeviceProperty_NayaxSN
= 2,
334
DeviceProperty_AppVersion
= 3,
335
};
336
338
enum
DcsStatus
339
{
340
DcsStatus_NotActivated
= 0,
341
DcsStatus_Activated
= 1,
342
DcsStatus_TokenOnly
= 2,
343
};
344
346
enum
DcsActivationMode
347
{
348
DcsActivationMode_FullActivation
= 1,
349
DcsActivationMode_TokenOnly
= 2,
350
};
351
353
enum
DcsProperty
354
{
355
DcsProperty_RetailerNumber
= 1,
356
DcsProperty_Token
= 2,
357
DcsProperty_NayaxSN
= 3,
358
DcsProperty_ActivationError
= 4,
359
DcsProperty_Parameters
= 5,
360
DcsProperty_PaymentMethods
= 6,
361
};
362
364
enum
MasterSlaveMode
365
{
366
MasterSlaveMode_None
= 0,
367
MasterSlaveMode_Master
= 1,
368
MasterSlaveMode_Slave
= 2,
369
};
370
374
namespace
Ashrait {
375
377
enum
VirtualReason
378
{
379
SwipeData
= 1,
380
Balance
= 2,
381
CancelRegisteredTransaction
= 3,
382
CancelPreAuthorization
= 4,
383
GenerateStandingOrder
= 5,
384
RetreiveTransaction
= 6,
385
Settelment
= 7,
386
RetreiveTransactionByVuid
= 8,
387
};
388
390
enum
CreditTerms
391
{
392
CT_Regular
= 1,
393
CT_IsracreditVisaMaofVisa30
= 2,
394
CT_Immidiate
= 3,
395
CT_CreditFixed
= 6,
396
CT_Payments
= 8,
397
};
398
400
enum
PaymentLinked
401
{
402
ToNone
= 0,
403
ToCPI
= 1,
404
ToDollar
= 2,
405
};
406
408
enum
Status
409
{
410
Ready
= 0,
411
NotEstablished
= -1,
412
BatchNeeded
= -2,
413
DBError
= -3,
414
PinpadError
= -4,
415
VersionError
= -5,
416
Unknown
= -6,
417
BatchRequiered
= -7,
418
NotConnected
= -8,
419
};
420
422
enum
CardNotPresentType
423
{
424
CNP_Signature
= 1,
425
CNP_Phone
= 2,
426
CNP_Internet
= 3,
427
};
428
430
enum
TransactionType
431
{
432
TT_Informative
= 0,
433
TT_Regular
= 1,
434
TT_Unload
= 2,
435
TT_Forced
= 3,
436
TT_CashBack
= 6,
437
TT_Cash
= 7,
438
TT_StandingOrder
= 11,
439
TT_BalanceCheck
= 30,
440
TT_Refund
= 53,
441
TT_Charge
= 55,
442
};
443
445
enum
IPayType
446
{
447
IPay_Money
= 0,
448
IPay_Starts
= 1,
449
IPay_Points
= 2,
450
IPay_Club
= 3,
451
IPay_NoIpay
= 99,
452
};
453
455
enum
ECIType
456
{
457
ECI_InternetNoSign
= 1,
458
ECI_InternetManpikNotRegistered
= 2,
459
ECI_InternetWithSign
= 3,
460
};
461
463
enum
MissingEventType
464
{
465
MissingNone
= 0,
466
MissingAuthorizationNumber
= 1,
467
MissingAVSDeatils
= 2,
468
MissingUnknown
= 3,
469
};
470
472
enum
Manpik
473
{
474
Manpik_Tourist
= 0,
475
Manpik_Isracard
= 1,
476
Manpik_CAL
= 2,
477
Manpik_LeumiCard
= 6,
478
};
479
481
enum
Solek
482
{
483
Solek_Isracard
= 1,
484
Solek_Cal
= 2,
485
Solek_LeumiCard
= 6,
486
Solek_Cardcom
= 7,
487
};
488
490
enum
Mutag
491
{
492
Mutag_PL
= 0,
493
Mutag_Mastercard
= 1,
494
Mutag_Visa
= 2,
495
Mutag_Diners
= 3,
496
Mutag_Amex
= 4,
497
Mutag_Isracard
= 5,
498
Mutag_JCB
= 6,
499
Mutag_Discover
= 7,
500
Mutag_Maestro
= 8
501
};
502
504
enum
PanEntryMode
505
{
506
PEM_Magnetic
= 0,
507
PEM_Magnetic_Contactless
= 4,
508
PEM_EMV_Contactless
= 5,
509
PEM_Mobile_Magnetic_Contactless
= 6,
510
PEM_EMV_Mobile_Contactless
= 7,
511
PEM_PhoneNumber
= 10,
512
PEM_RFU
= 11,
513
PEM_EMV_Contact
= 40,
514
PEM_Phone
= 50,
515
PEM_Signeture_Only
= 51,
516
PEM_Internet
= 52,
517
PEM_Fallback
= 80,
518
PEM_Empty_Candidate_List
= 81,
519
PEM_Empty
= 99,
520
};
521
523
enum
ProcessorId
524
{
525
ABS
= 1,
526
Pelecard
= 2,
527
CreditGuard
= 3,
528
Tranzila
= 4,
529
EZCard
= 5,
530
Arkom
= 6,
531
Nayax
= 7,
532
};
533
535
enum
GasolineType
536
{
537
GasolinType_None
= 0,
538
GasolinType_91
= 1,
539
GasolinType_96
= 2,
540
GasolinType_95Unleaded
= 3,
541
GasolinType_Diesel
= 4,
542
GasolinType_Motorcycle
= 5,
543
GasolinType_MiliteryGasoline
= 6,
544
GasolinType_MiliteryDiesel
= 7,
545
GasolinType_Kerosene
= 8,
546
GasolinType_Other
= 9,
547
GasolinType_91Unleaded
= 10,
548
GasolinType_98
= 11,
549
GasolinType_98Unleaded
= 12,
550
GasolinType_DieselUnleaded
= 14,
551
GasolinType_LiquefiedPetroleumGas
= 36,
552
GasolinType_Urea
= 37,
553
};
554
556
enum
AuthCodeIssuer
557
{
558
AuthCodeIssuer_Unauthorized
= 0,
559
AuthCodeIssuer_ApprovedByIssuer
= 1,
560
AuthCodeIssuer_DeclinedByIssuer
= 2,
561
AuthCodeIssuer_ApprovedByAbsSTIP
= 3,
562
AuthCodeIssuer_DeclinedByAbsSTIP
= 4,
563
AuthCodeIssuer_ApprovedByVoice
= 5,
564
AuthCodeIssuer_DeclinedByVoice
= 6,
565
AuthCodeIssuer_ApprovedByIssuerPreAuth
= 7,
566
AuthCodeIssuer_ApprovedByCard
= 8,
567
};
568
569
}
570
574
namespace
NayaxVend {
575
577
enum
CardEntryType
578
{
579
CardEntry_MsrSwipe
= 1,
580
CardEntry_Contactless
= 2,
581
CardEntry_Contact
= 3,
582
};
583
585
enum
UnitOfMeasurement
586
{
587
Measurement_Item
= 0,
589
};
590
592
enum
CardType
593
{
594
CardType_Unknown
= 0,
595
CardType_Proprietary
= 1,
596
CardType_Visa
= 2,
597
CardType_MasterCard
= 3,
598
CardType_ChinaUnionPay
= 4,
599
CardType_Maestro
= 5,
600
CardType_Interac
= 6,
601
CardType_Monyx
= 7,
603
};
604
605
}
606
}
607
}
608
609
610
611
612
613
614
615
Generated by
1.8.2