SPI
1.1.30
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
198
namespace
Ashrait {
199
201
enum
VirtualReason
202
{
203
SwipeData
= 1,
204
Balance
= 2,
205
CancelRegisteredTransaction
= 3,
206
CancelPreAuthorization
= 4,
207
GenerateStandingOrder
= 5,
208
RetreiveTransaction
= 6,
209
};
210
212
enum
CreditTerms
213
{
214
CT_Regular
= 1,
215
CT_IsracreditVisaMaofVisa30
= 2,
216
CT_Immidiate
= 3,
217
CT_CreditFixed
= 6,
218
CT_Payments
= 8,
219
};
220
222
enum
PaymentLinked
223
{
224
ToNone
= 0,
225
ToCPI
= 1,
226
ToDollar
= 2,
227
};
228
230
enum
Status
231
{
232
Ready
= 0,
233
NotEstablished
= -1,
234
BatchNeeded
= -2,
235
DBError
= -3,
236
PinpadError
= -4,
237
VersionError
= -5,
238
Unknown
= -6,
239
BatchRequiered
= -7,
240
NotConnected
= -8,
241
};
242
244
enum
CardNotPresentType
245
{
246
CNP_Signature
= 1,
247
CNP_Phone
= 2,
248
CNP_Internet
= 3,
249
};
250
252
enum
TransactionType
253
{
254
TT_Informative
= 0,
255
TT_Regular
= 1,
256
TT_Unload
= 2,
257
TT_Forced
= 3,
258
TT_CashBack
= 6,
259
TT_Cash
= 7,
260
TT_StandingOrder
= 11,
261
TT_BalanceCheck
= 30,
262
TT_Refund
= 53,
263
TT_Charge
= 55,
264
};
265
267
enum
IPayType
268
{
269
IPay_Money
= 0,
270
IPay_Starts
= 1,
271
IPay_Points
= 2,
272
IPay_Club
= 3,
273
IPay_NoIpay
= 99,
274
};
275
277
enum
ECIType
278
{
279
ECI_InternetNoSign
= 1,
280
ECI_InternetManpikNotRegistered
= 2,
281
ECI_InternetWithSign
= 3,
282
};
283
285
enum
MissingEventType
286
{
287
MissingNone
= 0,
288
MissingAuthorizationNumber
= 1,
289
MissingAVSDeatils
= 2,
290
MissingUnknown
= 3,
291
};
292
294
enum
Manpik
295
{
296
Manpik_Tourist
= 0,
297
Manpik_Isracard
= 1,
298
Manpik_CAL
= 2,
299
Manpik_LeumiCard
= 6,
300
};
301
303
enum
Solek
304
{
305
Solek_Isracard
= 1,
306
Solek_Cal
= 2,
307
Solek_LeumiCard
= 6,
308
};
309
311
enum
Mutag
312
{
313
Mutag_PL
= 0,
314
Mutag_Mastercard
= 1,
315
Mutag_Visa
= 2,
316
Mutag_Diners
= 3,
317
Mutag_Amex
= 4,
318
Mutag_Isracard
= 5,
319
Mutag_JCB
= 6,
320
Mutag_Discover
= 7,
321
Mutag_Maestro
= 8
322
};
323
325
enum
PanEntryMode
326
{
327
PEM_Magnetic
= 0,
328
PEM_Magnetic_Contactless
= 4,
329
PEM_EMV_Contactless
= 5,
330
PEM_Mobile_Magnetic_Contactless
= 6,
331
PEM_EMV_Mobile_Contactless
= 7,
332
PEM_PhoneNumber
= 10,
333
PEM_RFU
= 11,
334
PEM_EMV_Contact
= 40,
335
PEM_Phone
= 50,
336
PEM_Signeture_Only
= 51,
337
PEM_Internet
= 52,
338
PEM_Fallback
= 80,
339
PEM_Empty_Candidate_List
= 81,
340
PEM_Empty
= 99,
341
};
342
344
enum
ProcessorId
345
{
346
ABS
= 1,
347
Pelecard
= 2,
348
};
349
351
enum
GasolineType
352
{
353
GasolinType_None
= 0,
354
GasolinType_91
= 1,
355
GasolinType_96
= 2,
356
GasolinType_95Unleaded
= 3,
357
GasolinType_Diesel
= 4,
358
GasolinType_Motorcycle
= 5,
359
GasolinType_MiliteryGasoline
= 6,
360
GasolinType_MiliteryDiesel
= 7,
361
GasolinType_Kerosene
= 8,
362
GasolinType_Other
= 9,
363
GasolinType_91Unleaded
= 10,
364
GasolinType_98
= 11,
365
GasolinType_98Unleaded
= 12,
366
GasolinType_DieselUnleaded
= 14,
367
GasolinType_LiquefiedPetroleumGas
= 36,
368
GasolinType_Urea
= 37,
369
};
370
371
}
372
}
373
}
374
375
376
377
378
379
380
381
Generated by
1.8.2