globalpayments-api 3.11.3 → 3.11.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (77) hide show
  1. package/CHANGELOG.md +4 -1
  2. package/lib/src/Entities/Address.d.ts +1 -0
  3. package/lib/src/Entities/Address.js +1 -0
  4. package/lib/src/Entities/Address.js.map +1 -1
  5. package/lib/src/Entities/Enums/AcquisitionType.d.ts +2 -1
  6. package/lib/src/Entities/Enums/AcquisitionType.js +1 -0
  7. package/lib/src/Entities/Enums/AcquisitionType.js.map +1 -1
  8. package/lib/src/Terminals/Abstractions/IDeviceResponse.d.ts +2 -0
  9. package/lib/src/Terminals/Builders/TerminalAuthBuilder.d.ts +13 -0
  10. package/lib/src/Terminals/Builders/TerminalAuthBuilder.js +24 -0
  11. package/lib/src/Terminals/Builders/TerminalAuthBuilder.js.map +1 -1
  12. package/lib/src/Terminals/Builders/TerminalBuilder.d.ts +3 -3
  13. package/lib/src/Terminals/Builders/TerminalBuilder.js.map +1 -1
  14. package/lib/src/Terminals/Builders/TerminalManageBuilder.d.ts +3 -0
  15. package/lib/src/Terminals/Builders/TerminalManageBuilder.js +6 -0
  16. package/lib/src/Terminals/Builders/TerminalManageBuilder.js.map +1 -1
  17. package/lib/src/Terminals/UPA/Reponses/TransactionResponse.d.ts +2 -0
  18. package/lib/src/Terminals/UPA/Reponses/TransactionResponse.js +6 -0
  19. package/lib/src/Terminals/UPA/Reponses/TransactionResponse.js.map +1 -1
  20. package/lib/src/Terminals/UPA/UpaController.js +31 -7
  21. package/lib/src/Terminals/UPA/UpaController.js.map +1 -1
  22. package/lib/src/Terminals/UPA/UpaInterface.d.ts +1 -1
  23. package/lib/src/Terminals/UPA/UpaInterface.js +4 -2
  24. package/lib/src/Terminals/UPA/UpaInterface.js.map +1 -1
  25. package/lib/test/Unit/Terminals/Builders/TerminalBuilderParityTests.d.ts +17 -0
  26. package/lib/test/Unit/Terminals/Builders/TerminalBuilderParityTests.js +325 -0
  27. package/lib/test/Unit/Terminals/Builders/TerminalBuilderParityTests.js.map +1 -0
  28. package/lib/test/Unit/Terminals/UPA/UpaAdmin.test.js +195 -3
  29. package/lib/test/Unit/Terminals/UPA/UpaAdmin.test.js.map +1 -1
  30. package/lib/test/Unit/Terminals/UPA/UpaCredit.test.js +100 -2
  31. package/lib/test/Unit/Terminals/UPA/UpaCredit.test.js.map +1 -1
  32. package/lib/test/Unit/Terminals/UPA/UpaEMVParameterValidation.test.d.ts +7 -0
  33. package/lib/test/Unit/Terminals/UPA/UpaEMVParameterValidation.test.js +258 -0
  34. package/lib/test/Unit/Terminals/UPA/UpaEMVParameterValidation.test.js.map +1 -0
  35. package/lib/test/Unit/Terminals/UPA/UpaJiraStoryValidation.test.d.ts +26 -0
  36. package/lib/test/Unit/Terminals/UPA/UpaJiraStoryValidation.test.js +389 -0
  37. package/lib/test/Unit/Terminals/UPA/UpaJiraStoryValidation.test.js.map +1 -0
  38. package/lib/test/Unit/Terminals/UPA/UpaLanguageCode.test.d.ts +18 -0
  39. package/lib/test/Unit/Terminals/UPA/UpaLanguageCode.test.js +314 -0
  40. package/lib/test/Unit/Terminals/UPA/UpaLanguageCode.test.js.map +1 -0
  41. package/package.json +1 -1
  42. package/lib/test/Integration/Terminals/UPA/UpaTransactionResponseLive.test.d.ts +0 -1
  43. package/lib/test/Integration/Terminals/UPA/UpaTransactionResponseLive.test.js +0 -378
  44. package/lib/test/Integration/Terminals/UPA/UpaTransactionResponseLive.test.js.map +0 -1
  45. package/lib/test/Unit/Builders/AuthorizationBuilder/SupplementaryData.test.d.ts +0 -1
  46. package/lib/test/Unit/Builders/AuthorizationBuilder/SupplementaryData.test.js +0 -147
  47. package/lib/test/Unit/Builders/AuthorizationBuilder/SupplementaryData.test.js.map +0 -1
  48. package/lib/test/Unit/Terminals/UPA/Reponses/BatchList.test.d.ts +0 -1
  49. package/lib/test/Unit/Terminals/UPA/Reponses/BatchList.test.js +0 -64
  50. package/lib/test/Unit/Terminals/UPA/Reponses/BatchList.test.js.map +0 -1
  51. package/lib/test/Unit/Terminals/UPA/Reponses/BatchReportResponse.test.d.ts +0 -1
  52. package/lib/test/Unit/Terminals/UPA/Reponses/BatchReportResponse.test.js +0 -145
  53. package/lib/test/Unit/Terminals/UPA/Reponses/BatchReportResponse.test.js.map +0 -1
  54. package/lib/test/Unit/Terminals/UPA/Reponses/OpenTabDetailsResponse.test.d.ts +0 -1
  55. package/lib/test/Unit/Terminals/UPA/Reponses/OpenTabDetailsResponse.test.js +0 -70
  56. package/lib/test/Unit/Terminals/UPA/Reponses/OpenTabDetailsResponse.test.js.map +0 -1
  57. package/lib/test/Unit/Terminals/UPA/Reponses/SafReportResponse.test.d.ts +0 -1
  58. package/lib/test/Unit/Terminals/UPA/Reponses/SafReportResponse.test.js +0 -112
  59. package/lib/test/Unit/Terminals/UPA/Reponses/SafReportResponse.test.js.map +0 -1
  60. package/lib/test/Unit/Terminals/UPA/Reponses/UpaEODResponse.test.d.ts +0 -1
  61. package/lib/test/Unit/Terminals/UPA/Reponses/UpaEODResponse.test.js +0 -108
  62. package/lib/test/Unit/Terminals/UPA/Reponses/UpaEODResponse.test.js.map +0 -1
  63. package/lib/test/Unit/Terminals/UPA/Reponses/UpaSAFResponse.test.d.ts +0 -1
  64. package/lib/test/Unit/Terminals/UPA/Reponses/UpaSAFResponse.test.js +0 -95
  65. package/lib/test/Unit/Terminals/UPA/Reponses/UpaSAFResponse.test.js.map +0 -1
  66. package/lib/test/Unit/Terminals/UPA/Responses/UpaTransactionResponse.test.d.ts +0 -1
  67. package/lib/test/Unit/Terminals/UPA/Responses/UpaTransactionResponse.test.js +0 -1624
  68. package/lib/test/Unit/Terminals/UPA/Responses/UpaTransactionResponse.test.js.map +0 -1
  69. package/lib/test/Unit/Terminals/UPA/UpaStory1Methods.test.d.ts +0 -1
  70. package/lib/test/Unit/Terminals/UPA/UpaStory1Methods.test.js +0 -250
  71. package/lib/test/Unit/Terminals/UPA/UpaStory1Methods.test.js.map +0 -1
  72. package/lib/test/Unit/Terminals/UPA/UpaStory2Methods.test.d.ts +0 -1
  73. package/lib/test/Unit/Terminals/UPA/UpaStory2Methods.test.js +0 -1277
  74. package/lib/test/Unit/Terminals/UPA/UpaStory2Methods.test.js.map +0 -1
  75. package/lib/test/Unit/Terminals/UPA/UpaStory3_4Methods.test.d.ts +0 -1
  76. package/lib/test/Unit/Terminals/UPA/UpaStory3_4Methods.test.js +0 -411
  77. package/lib/test/Unit/Terminals/UPA/UpaStory3_4Methods.test.js.map +0 -1
@@ -1,378 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- /**
4
- * Integration tests for UPA TransactionResponse using live MIC device.
5
- *
6
- * These tests run actual UPA transactions against a live merchant device
7
- * to verify proper mapping of all transaction response fields.
8
- *
9
- * Prerequisites:
10
- * - UPA device configured and connected via MEET_IN_THE_CLOUD (MITC)
11
- * - Environment variables set:
12
- * - GP_API_APP_ID: Global Payments API application ID
13
- * - GP_API_APP_KEY: Global Payments API application key
14
- * - UPA_LIVE: Set to "true" to enable live testing
15
- * - GP_API_ACCOUNT_NAME: (Optional) Account name for transaction processing
16
- *
17
- * Test Configuration:
18
- * - Region: US
19
- * - Gateway: GP-API
20
- * - Environment: Test (Sandbox)
21
- * - Connection Mode: MEET_IN_THE_CLOUD (MITC)
22
- * - Payment types: VISA, MC (Mastercard), AMEX
23
- */
24
- const src_1 = require("../../../../src");
25
- const UpaHelpertest_1 = require("../../../Unit/Terminals/UPA/UpaHelpertest");
26
- jest.setTimeout(120000); // 2 minutes timeout for live device interaction
27
- /**
28
- * Helper to add delay between transactions to allow device to settle
29
- */
30
- async function settleDevice(delayMs = 3000) {
31
- if (UpaHelpertest_1.useLiveMic) {
32
- await new Promise((resolve) => setTimeout(resolve, delayMs));
33
- }
34
- }
35
- (0, UpaHelpertest_1.describeUpaLive)("UPA Live Transaction Response Field Mapping - VISA", () => {
36
- let device;
37
- beforeEach(() => {
38
- device = (0, UpaHelpertest_1.createTestDevice)();
39
- });
40
- afterEach(async () => {
41
- await settleDevice();
42
- });
43
- test("should map all fields from VISA sale transaction", async () => {
44
- try {
45
- const response = await device
46
- .sale(10.0) // $10.00
47
- .withCurrency("USD")
48
- .execute();
49
- // Verify response is TransactionResponse instance
50
- expect(response).toBeInstanceOf(src_1.TransactionResponse);
51
- // === Response ID and Status Fields ===
52
- expect(response.responseId).toBeDefined();
53
- expect(response.responseId).not.toBe("");
54
- expect(response.status).toBeDefined();
55
- expect(response.command).toBe("Sale");
56
- // === Reference and Terminal Numbers ===
57
- expect(response.referenceNumber).toBeDefined();
58
- expect(response.terminalRefNumber).toBeDefined();
59
- expect(response.requestId).toBeDefined();
60
- // === Response Codes ===
61
- expect(response.responseCode).toBeDefined();
62
- expect(response.responseText).toBeDefined();
63
- expect(response.approvalCode).toBeDefined();
64
- expect(response.deviceResponseCode).toBeDefined();
65
- expect(response.deviceResponseText).toBeDefined();
66
- // === AVS and CVV Response Fields ===
67
- expect(response.avsResponseCode).toBeDefined();
68
- expect(response.avsResponseText).toBeDefined();
69
- expect(response.cvvResponseCode).toBeDefined();
70
- expect(response.cvvResponseText).toBeDefined();
71
- // === Amount Fields ===
72
- expect(response.baseAmount).toBe(1000); // 10.00 in cents
73
- expect(response.transactionAmount).toBe(1000);
74
- expect(response.tipAmount).toBeGreaterThanOrEqual(0);
75
- expect(response.taxAmount).toBeGreaterThanOrEqual(0);
76
- expect(response.authorizedAmount).toBeGreaterThanOrEqual(0);
77
- expect(response.cashBackAmount).toBeGreaterThanOrEqual(0);
78
- expect(response.balanceAmount).toBeGreaterThanOrEqual(0);
79
- // === Card Information ===
80
- expect(response.paymentType).toBe("VISA");
81
- expect(response.cardType).toBe("VISA");
82
- expect(response.maskedCardNumber).toMatch(/^\d{4}\*+\d{4}$/);
83
- expect(response.cardBIN).toBeDefined();
84
- expect(response.expirationDate).toMatch(/^\d{4}$/); // MMYY format
85
- expect(response.entryMethod).toBeDefined();
86
- expect(response.cardHolderName).toBeDefined();
87
- expect(response.panSequenceNumber).toBeDefined();
88
- // === EMV Tag Fields (Chip Card) ===
89
- // These should be populated for chip card transactions
90
- if (response.entryMethod === "CHIP") {
91
- expect(response.applicationLabel).toBeDefined();
92
- expect(response.applicationId).toBeDefined();
93
- expect(response.emvApplicationLabel).toBeDefined();
94
- expect(response.emvApplicationId).toBeDefined();
95
- expect(response.emvApplicationCryptogram).toBeDefined();
96
- expect(response.cardHolderVerificationMethod).toBeDefined();
97
- expect(response.terminalVerificationResults).toBeDefined();
98
- // Verify EMV tag mappings
99
- expect(response.applicationIdentifier).toBeDefined();
100
- expect(response.transactionDate).toMatch(/^\d{6}$/); // YYMMDD
101
- expect(response.amountAuthorised).toBeDefined();
102
- expect(response.terminalType).toBeDefined();
103
- expect(response.applicationTransactionCounter).toBeDefined();
104
- }
105
- // === Token Fields (if supported) ===
106
- if (response.token) {
107
- expect(response.tokenResponseCode).toBeDefined();
108
- expect(response.tokenResponseMessage).toBeDefined();
109
- }
110
- console.log("✓ VISA sale response fields validated successfully");
111
- console.log(` Response ID: ${response.responseId}`);
112
- console.log(` Transaction ID: ${response.referenceNumber}`);
113
- console.log(` Amount: ${response.transactionAmount / 100} USD`);
114
- console.log(` Card: ${response.maskedCardNumber}`);
115
- console.log(` EMV Label: ${response.applicationLabel}`);
116
- }
117
- catch (error) {
118
- console.error("Error during VISA sale:", error);
119
- throw error;
120
- }
121
- });
122
- test("should map all fields from VISA sale with tip", async () => {
123
- try {
124
- const response = await device
125
- .sale(50.0) // $50.00
126
- .withCurrency("USD")
127
- .withTip(5.0) // $5.00 tip
128
- .execute();
129
- expect(response.status).toBeDefined();
130
- expect(response.baseAmount).toBe(5000); // 50.00
131
- expect(response.tipAmount).toBe(500); // 5.00
132
- expect(response.transactionAmount).toBe(5500); // 50.00 + 5.00
133
- expect(response.paymentType).toBe("VISA");
134
- console.log("✓ VISA sale with tip response fields validated successfully");
135
- console.log(` Base Amount: ${response.baseAmount / 100} USD`);
136
- console.log(` Tip Amount: ${response.tipAmount / 100} USD`);
137
- console.log(` Total: ${response.transactionAmount / 100} USD`);
138
- }
139
- catch (error) {
140
- console.error("Error during VISA sale with tip:", error);
141
- throw error;
142
- }
143
- });
144
- test("should map authorization fields from VISA pre-auth", async () => {
145
- try {
146
- const response = await device
147
- .preAuth(25.0) // $25.00
148
- .withCurrency("USD")
149
- .execute();
150
- expect(response.status).toBeDefined();
151
- expect(response.command).toBe("PreAuth");
152
- expect(response.approvalCode).toBeDefined();
153
- expect(response.authorizedAmount).toBe(2500); // 25.00
154
- expect(response.paymentType).toBe("VISA");
155
- console.log("✓ VISA pre-auth response fields validated successfully");
156
- console.log(` Authorized Amount: ${response.authorizedAmount / 100} USD`);
157
- }
158
- catch (error) {
159
- console.error("Error during VISA pre-auth:", error);
160
- throw error;
161
- }
162
- });
163
- });
164
- (0, UpaHelpertest_1.describeUpaLive)("UPA Live Transaction Response Field Mapping - Mastercard", () => {
165
- let device;
166
- beforeEach(() => {
167
- device = (0, UpaHelpertest_1.createTestDevice)();
168
- });
169
- afterEach(async () => {
170
- await settleDevice();
171
- });
172
- test("should map all fields from Mastercard sale transaction", async () => {
173
- try {
174
- const response = await device
175
- .sale(15.0) // $15.00
176
- .withCurrency("USD")
177
- .execute();
178
- // Verify response is TransactionResponse instance
179
- expect(response).toBeInstanceOf(src_1.TransactionResponse);
180
- // === Basic Response Fields ===
181
- expect(response.responseId).toBeDefined();
182
- expect(response.status).toBeDefined();
183
- expect(response.command).toBe("Sale");
184
- // === Card Information ===
185
- expect(response.paymentType).toBe("MC");
186
- expect(response.cardType).toBe("MC");
187
- expect(response.maskedCardNumber).toMatch(/^\d{4}\*+\d{4}$/);
188
- // === Amount Fields ===
189
- expect(response.baseAmount).toBe(1500); // 15.00 in cents
190
- expect(response.transactionAmount).toBe(1500);
191
- // === AVS/CVV ===
192
- expect(response.avsResponseCode).toBeDefined();
193
- expect(response.cvvResponseCode).toBeDefined();
194
- // === EMV Fields (if chip) ===
195
- if (response.entryMethod === "CHIP") {
196
- expect(response.emvApplicationLabel).toBe("MASTERCARD");
197
- expect(response.applicationLabel).toBeDefined();
198
- }
199
- console.log("✓ Mastercard sale response fields validated successfully");
200
- console.log(` Card: ${response.maskedCardNumber}`);
201
- console.log(` Amount: ${response.transactionAmount / 100} USD`);
202
- }
203
- catch (error) {
204
- console.error("Error during Mastercard sale:", error);
205
- throw error;
206
- }
207
- });
208
- test("should map all fields from Mastercard sale with cashback", async () => {
209
- try {
210
- const response = await device
211
- .sale(30.0) // $30.00
212
- .withCurrency("USD")
213
- .withCashBack(10.0) // $10.00 cashback
214
- .execute();
215
- expect(response.status).toBeDefined();
216
- expect(response.baseAmount).toBe(3000); // 30.00
217
- expect(response.cashBackAmount).toBe(1000); // 10.00
218
- expect(response.transactionAmount).toBe(4000); // 30.00 + 10.00
219
- expect(response.paymentType).toBe("MC");
220
- console.log("✓ Mastercard sale with cashback response fields validated");
221
- console.log(` Base Amount: ${response.baseAmount / 100} USD`);
222
- console.log(` Cashback: ${response.cashBackAmount / 100} USD`);
223
- }
224
- catch (error) {
225
- console.error("Error during Mastercard sale with cashback:", error);
226
- throw error;
227
- }
228
- });
229
- });
230
- (0, UpaHelpertest_1.describeUpaLive)("UPA Live Transaction Response Field Mapping - AMEX", () => {
231
- let device;
232
- beforeEach(() => {
233
- device = (0, UpaHelpertest_1.createTestDevice)();
234
- });
235
- afterEach(async () => {
236
- await settleDevice();
237
- });
238
- test("should map all fields from AMEX sale transaction", async () => {
239
- try {
240
- const response = await device
241
- .sale(20.0) // $20.00
242
- .withCurrency("USD")
243
- .execute();
244
- // Verify response is TransactionResponse instance
245
- expect(response).toBeInstanceOf(src_1.TransactionResponse);
246
- // === Basic Response Fields ===
247
- expect(response.responseId).toBeDefined();
248
- expect(response.status).toBeDefined();
249
- // === Card Information ===
250
- expect(response.paymentType).toBe("AMEX");
251
- expect(response.cardType).toBe("AMEX");
252
- expect(response.maskedCardNumber).toMatch(/^\d{4}\*+\d{4}$/);
253
- // === Amount Fields ===
254
- expect(response.baseAmount).toBe(2000); // 20.00 in cents
255
- expect(response.transactionAmount).toBe(2000);
256
- // === Response Codes ===
257
- expect(response.responseCode).toBeDefined();
258
- expect(response.approvalCode).toBeDefined();
259
- console.log("✓ AMEX sale response fields validated successfully");
260
- console.log(` Card: ${response.maskedCardNumber}`);
261
- console.log(` Amount: ${response.transactionAmount / 100} USD`);
262
- }
263
- catch (error) {
264
- console.error("Error during AMEX sale:", error);
265
- throw error;
266
- }
267
- });
268
- });
269
- (0, UpaHelpertest_1.describeUpaLive)("UPA Live Transaction Response - EMV Tag Verification", () => {
270
- let device;
271
- beforeEach(() => {
272
- device = (0, UpaHelpertest_1.createTestDevice)();
273
- });
274
- afterEach(async () => {
275
- await settleDevice();
276
- });
277
- test("should include all EMV tags from chip card transaction", async () => {
278
- try {
279
- const response = await device
280
- .sale(12.5) // $12.50
281
- .withCurrency("USD")
282
- .execute();
283
- if (response.entryMethod !== "CHIP") {
284
- console.warn("Skipping EMV tag test - card was not inserted as chip (entry method: " +
285
- response.entryMethod +
286
- ")");
287
- return;
288
- }
289
- // Verify key EMV tags are populated
290
- const emvFields = {
291
- "Application Label (50)": response.applicationLabel,
292
- "Application ID (9F06)": response.applicationId,
293
- "Application Preferred Name (9F12)": response.applicationPreferredName,
294
- "Application Cryptogram (9F26)": response.applicationCryptogram,
295
- "CVM Results (9F34)": response.cardHolderVerificationMethod,
296
- "Terminal Verification Results (95)": response.terminalVerificationResults,
297
- "Transaction Date (9A)": response.transactionDate,
298
- "Transaction Type (9C)": response.transactionTypeEMV,
299
- "Terminal Type (9F35)": response.terminalType,
300
- };
301
- let emvTagsFound = 0;
302
- const emvTagsMissing = [];
303
- for (const [tagName, tagValue] of Object.entries(emvFields)) {
304
- if (tagValue && tagValue !== "") {
305
- emvTagsFound++;
306
- console.log(` ✓ ${tagName}: ${tagValue}`);
307
- }
308
- else {
309
- emvTagsMissing.push(tagName);
310
- }
311
- }
312
- expect(emvTagsFound).toBeGreaterThan(0);
313
- if (emvTagsMissing.length > 0) {
314
- console.warn(` Note: Some EMV tags not present: ${emvTagsMissing.join(", ")}`);
315
- }
316
- console.log(`✓ EMV tag verification complete - ${emvTagsFound} tags populated`);
317
- }
318
- catch (error) {
319
- console.error("Error during EMV tag verification:", error);
320
- throw error;
321
- }
322
- });
323
- });
324
- (0, UpaHelpertest_1.describeUpaLive)("UPA Live Transaction Response - Void/Reversal Mapping", () => {
325
- let device;
326
- beforeEach(() => {
327
- device = (0, UpaHelpertest_1.createTestDevice)();
328
- });
329
- afterEach(async () => {
330
- await settleDevice();
331
- });
332
- test("should map fields from transaction void", async () => {
333
- try {
334
- // First, perform a sale
335
- const saleResponse = await device
336
- .sale(18.0) // $18.00
337
- .withCurrency("USD")
338
- .execute();
339
- expect(saleResponse.status).toBeDefined();
340
- const transactionId = saleResponse.referenceNumber;
341
- // Now void the transaction
342
- const voidResponse = await device
343
- .voidTransaction()
344
- .withTransactionId(transactionId)
345
- .execute();
346
- // Verify void response fields
347
- expect(voidResponse.responseId).toBeDefined();
348
- expect(voidResponse.status).toBeDefined();
349
- expect(voidResponse.responseCode).toBeDefined();
350
- expect(voidResponse.referenceNumber).toBeDefined();
351
- console.log("✓ Void transaction response fields validated successfully");
352
- console.log(` Original Transaction: ${transactionId}`);
353
- console.log(` Void Response ID: ${voidResponse.responseId}`);
354
- }
355
- catch (error) {
356
- console.error("Error during void transaction:", error);
357
- throw error;
358
- }
359
- });
360
- });
361
- // Test setup message
362
- if (!UpaHelpertest_1.useLiveMic) {
363
- console.log("⚠️ Live UPA tests are SKIPPED (UPA_LIVE not set to 'true')");
364
- console.log("To run live tests, set environment variables:");
365
- console.log(" $env:UPA_LIVE='true'");
366
- console.log(" $env:GP_API_APP_ID='<your-app-id>'");
367
- console.log(" $env:GP_API_APP_KEY='<your-app-key>'");
368
- }
369
- else {
370
- console.log("🚀 Running LIVE UPA Transaction Response tests...");
371
- console.log(` Gateway: GP-API`);
372
- console.log(` Region: US`);
373
- console.log(` Environment: Test (Sandbox)`);
374
- console.log(` Connection Mode: MEET_IN_THE_CLOUD (MITC)`);
375
- console.log(` Payment Types: VISA, MC, AMEX`);
376
- console.log("");
377
- }
378
- //# sourceMappingURL=UpaTransactionResponseLive.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"UpaTransactionResponseLive.test.js","sourceRoot":"","sources":["../../../../../test/Integration/Terminals/UPA/UpaTransactionResponseLive.test.ts"],"names":[],"mappings":"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"}
@@ -1,147 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const src_1 = require("../../../../src");
4
- const GpApiAuthorizationRequestBuilder_1 = require("../../../../src/Builders/RequestBuilder/GpApi/GpApiAuthorizationRequestBuilder");
5
- const buildConfig = () => {
6
- const config = new src_1.GpApiConfig();
7
- config.appId = "test-app-id";
8
- config.appKey = "test-app-key";
9
- config.environment = src_1.Environment.Test;
10
- config.channel = src_1.Channel.CardNotPresent;
11
- config.country = "GB";
12
- config.accessTokenInfo = new src_1.AccessTokenInfo();
13
- config.accessTokenInfo.transactionProcessingAccountName =
14
- "transaction_processing";
15
- config.accessTokenInfo.transactionProcessingAccountID = "TRA_test_account_id";
16
- return config;
17
- };
18
- const buildCard = () => {
19
- const card = new src_1.CreditCardData();
20
- card.number = "4263970000005262";
21
- card.expMonth = "12";
22
- card.expYear = "2027";
23
- card.cvn = "123";
24
- card.cardHolderName = "James Mason";
25
- return card;
26
- };
27
- describe("AuthorizationBuilder.withSupplementaryData (VISA_DIRECT_AFT)", () => {
28
- test("stores supplementary data on the builder", () => {
29
- const fields = [
30
- "Sender Name",
31
- "Sender Address",
32
- "Sender City",
33
- "Sender Country",
34
- "Account Number Type",
35
- "Recipient Account Number",
36
- ];
37
- const builder = buildCard()
38
- .charge(19.99)
39
- .withCurrency("EUR")
40
- .withSupplementaryData("VISA_DIRECT_AFT", fields);
41
- expect(builder.supplementaryData).toEqual({
42
- VISA_DIRECT_AFT: fields,
43
- });
44
- });
45
- test("registers multiple supplementary data types independently", () => {
46
- const builder = buildCard()
47
- .charge(19.99)
48
- .withCurrency("EUR")
49
- .withSupplementaryData("VISA_DIRECT_AFT", ["Sender Name"])
50
- .withSupplementaryData("ANOTHER_TYPE", ["Field A"]);
51
- expect(builder.supplementaryData).toEqual({
52
- VISA_DIRECT_AFT: ["Sender Name"],
53
- ANOTHER_TYPE: ["Field A"],
54
- });
55
- });
56
- });
57
- describe("GpApiAuthorizationRequestBuilder supplementary_data serialization", () => {
58
- test("emits order.supplementary_data for VISA_DIRECT_AFT sale", () => {
59
- const config = buildConfig();
60
- const fields = [
61
- "Sender Name",
62
- "Sender Address",
63
- "Sender City",
64
- "Sender Country",
65
- "Account Number Type",
66
- "Recipient Account Number",
67
- ];
68
- const builder = buildCard()
69
- .charge(19.99)
70
- .withCurrency("EUR")
71
- .withClientTransactionId("APM-20200417")
72
- .withSupplementaryData("VISA_DIRECT_AFT", fields);
73
- const request = new GpApiAuthorizationRequestBuilder_1.GpApiAuthorizationRequestBuilder().buildRequest(builder, config);
74
- const body = JSON.parse(request.requestBody);
75
- expect(body.order).toBeDefined();
76
- expect(body.order.supplementary_data).toEqual([
77
- { type: "VISA_DIRECT_AFT", fields },
78
- ]);
79
- });
80
- test("merges supplementary_data with an existing order.reference (orderId)", () => {
81
- const config = buildConfig();
82
- const builder = buildCard()
83
- .charge(19.99)
84
- .withCurrency("EUR")
85
- .withOrderId("ORDER-123")
86
- .withSupplementaryData("VISA_DIRECT_AFT", ["Sender Name"]);
87
- const request = new GpApiAuthorizationRequestBuilder_1.GpApiAuthorizationRequestBuilder().buildRequest(builder, config);
88
- const body = JSON.parse(request.requestBody);
89
- expect(body.order.reference).toBe("ORDER-123");
90
- expect(body.order.supplementary_data).toEqual([
91
- { type: "VISA_DIRECT_AFT", fields: ["Sender Name"] },
92
- ]);
93
- });
94
- test("emits one entry per supplementary data type", () => {
95
- const config = buildConfig();
96
- const builder = buildCard()
97
- .charge(19.99)
98
- .withCurrency("EUR")
99
- .withSupplementaryData("VISA_DIRECT_AFT", ["Sender Name"])
100
- .withSupplementaryData("ANOTHER_TYPE", ["Field A", "Field B"]);
101
- const request = new GpApiAuthorizationRequestBuilder_1.GpApiAuthorizationRequestBuilder().buildRequest(builder, config);
102
- const body = JSON.parse(request.requestBody);
103
- expect(body.order.supplementary_data).toEqual(expect.arrayContaining([
104
- { type: "VISA_DIRECT_AFT", fields: ["Sender Name"] },
105
- { type: "ANOTHER_TYPE", fields: ["Field A", "Field B"] },
106
- ]));
107
- expect(body.order.supplementary_data).toHaveLength(2);
108
- });
109
- test("normalizes a single string value into a fields array", () => {
110
- const config = buildConfig();
111
- const builder = buildCard()
112
- .charge(19.99)
113
- .withCurrency("EUR")
114
- .withSupplementaryData("VISA_DIRECT_AFT", "Sender Name");
115
- const request = new GpApiAuthorizationRequestBuilder_1.GpApiAuthorizationRequestBuilder().buildRequest(builder, config);
116
- const body = JSON.parse(request.requestBody);
117
- expect(body.order.supplementary_data).toEqual([
118
- { type: "VISA_DIRECT_AFT", fields: ["Sender Name"] },
119
- ]);
120
- });
121
- test("does not add order.supplementary_data when none is configured", () => {
122
- const config = buildConfig();
123
- const builder = buildCard().charge(19.99).withCurrency("EUR");
124
- const request = new GpApiAuthorizationRequestBuilder_1.GpApiAuthorizationRequestBuilder().buildRequest(builder, config);
125
- const body = JSON.parse(request.requestBody);
126
- if (body.order) {
127
- expect(body.order.supplementary_data).toBeUndefined();
128
- }
129
- else {
130
- expect(body.order).toBeUndefined();
131
- }
132
- });
133
- test("skips entries with empty type or empty fields", () => {
134
- const config = buildConfig();
135
- const builder = buildCard()
136
- .charge(19.99)
137
- .withCurrency("EUR")
138
- .withSupplementaryData("VISA_DIRECT_AFT", ["Sender Name"])
139
- .withSupplementaryData("EMPTY_FIELDS", []);
140
- const request = new GpApiAuthorizationRequestBuilder_1.GpApiAuthorizationRequestBuilder().buildRequest(builder, config);
141
- const body = JSON.parse(request.requestBody);
142
- expect(body.order.supplementary_data).toEqual([
143
- { type: "VISA_DIRECT_AFT", fields: ["Sender Name"] },
144
- ]);
145
- });
146
- });
147
- //# sourceMappingURL=SupplementaryData.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SupplementaryData.test.js","sourceRoot":"","sources":["../../../../../test/Unit/Builders/AuthorizationBuilder/SupplementaryData.test.ts"],"names":[],"mappings":"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"}
@@ -1,64 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const BatchList_1 = require("../../../../../src/Terminals/UPA/Reponses/BatchList");
4
- const UpaHelpertest_1 = require("../UpaHelpertest");
5
- jest.setTimeout(240000);
6
- function sleep(delayMs) {
7
- return new Promise((resolve) => setTimeout(resolve, delayMs));
8
- }
9
- async function settleDevice(delayMs = 8000) {
10
- if (UpaHelpertest_1.useLiveMic) {
11
- await sleep(delayMs);
12
- }
13
- }
14
- afterEach(async () => {
15
- await settleDevice();
16
- });
17
- (0, UpaHelpertest_1.describeUpaLive)("UPA Response – BatchList (all fields, live MITC)", () => {
18
- let device;
19
- beforeEach(() => {
20
- device = (0, UpaHelpertest_1.createTestDevice)();
21
- });
22
- test.only("findBatches() populates every IDeviceResponse + top-level field", async () => {
23
- let response = await (0, UpaHelpertest_1.findLiveBatches)(device);
24
- if (response.batches.length === 0) {
25
- const sale = await (0, UpaHelpertest_1.createLiveSale)(device);
26
- (0, UpaHelpertest_1.expectLiveSuccess)(sale, "Sale");
27
- await settleDevice(5000);
28
- response = await (0, UpaHelpertest_1.findLiveBatches)(device);
29
- }
30
- expect(response).toBeInstanceOf(BatchList_1.BatchList);
31
- expect(response.command).toBe("AvailableBatches");
32
- expect(typeof response.status).toBe("string");
33
- expect(typeof response.deviceResponseCode).toBe("string");
34
- expect(typeof response.deviceResponseText).toBe("string");
35
- expect(typeof response.referenceNumber).toBe("string");
36
- expect(typeof response.version).toBe("string");
37
- expect(typeof response.ecrId).toBe("string");
38
- expect(typeof response.deviceSerialNumber).toBe("string");
39
- expect(Array.isArray(response.batches)).toBe(true);
40
- });
41
- test("findBatches() batches are numeric and returned DESC per §12.4.12.5", async () => {
42
- let response = await (0, UpaHelpertest_1.findLiveBatches)(device);
43
- if (response.batches.length === 0) {
44
- const sale = await (0, UpaHelpertest_1.createLiveSale)(device);
45
- (0, UpaHelpertest_1.expectLiveSuccess)(sale, "Sale");
46
- await settleDevice(5000);
47
- response = await (0, UpaHelpertest_1.findLiveBatches)(device);
48
- }
49
- if (response.status !== "Success") {
50
- expect(["BATCH002", "APP011"]).toContain(response.deviceResponseCode);
51
- console.warn(`findBatches() returned ${response.deviceResponseCode}; DESC assertions skipped.`);
52
- return;
53
- }
54
- for (const batchId of response.batches) {
55
- expect(typeof batchId).toBe("number");
56
- expect(Number.isFinite(batchId)).toBe(true);
57
- }
58
- if (response.batches.length >= 2) {
59
- const sortedDesc = [...response.batches].sort((a, b) => b - a);
60
- expect(response.batches).toEqual(sortedDesc);
61
- }
62
- });
63
- });
64
- //# sourceMappingURL=BatchList.test.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"BatchList.test.js","sourceRoot":"","sources":["../../../../../../test/Unit/Terminals/UPA/Reponses/BatchList.test.ts"],"names":[],"mappings":"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"}