@houlak/plexo-sdk 0.1.1-rc.1 → 0.1.2-h

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 (99) hide show
  1. package/lib/handler/PlexoHandler.d.ts +17 -7
  2. package/lib/handler/PlexoHandler.js +166 -11
  3. package/lib/index.d.ts +1 -0
  4. package/lib/index.js +4 -1
  5. package/lib/lib/logger.lib.d.ts +1 -6
  6. package/lib/lib/logger.lib.js +10 -6
  7. package/lib/sdk/IPaymentGatewayClient.d.ts +2 -2
  8. package/lib/sdk/PaymentGatewayClient.d.ts +2 -2
  9. package/lib/sdk/PaymentGatewayClient.js +9 -8
  10. package/lib/sdk/PaymentGatewayMock.d.ts +2 -2
  11. package/lib/sdk/PaymentGatewayMock.js +2 -8
  12. package/lib/sdk/enums/plexo-error-enum.d.ts +1 -0
  13. package/lib/sdk/enums/plexo-error-enum.js +1 -0
  14. package/lib/sdk/helpers/signature/signatureHelper.d.ts +3 -7
  15. package/lib/sdk/helpers/signature/signatureHelper.js +65 -195
  16. package/lib/sdk/helpers/signature/signatureUtils.d.ts +10 -0
  17. package/lib/sdk/helpers/signature/signatureUtils.js +157 -0
  18. package/lib/sdk/helpers/signature/stringifyWithFloats.js +2 -0
  19. package/lib/sdk/models/Authorization.d.ts +4 -5
  20. package/lib/sdk/models/Authorization.js +2 -1
  21. package/lib/sdk/models/BuiltInPagesOptions.d.ts +5 -0
  22. package/lib/sdk/models/BuiltInPagesOptions.js +11 -0
  23. package/lib/sdk/models/DisplayOptions.d.ts +8 -0
  24. package/lib/sdk/models/DisplayOptions.js +14 -0
  25. package/lib/sdk/models/ExpressCheckoutSettings.d.ts +7 -0
  26. package/lib/sdk/models/{ExpressCheckoutSettingsDto.js → ExpressCheckoutSettings.js} +3 -1
  27. package/lib/sdk/models/FieldType.d.ts +6 -0
  28. package/lib/sdk/models/FieldType.js +6 -0
  29. package/lib/sdk/models/IndexSDK.d.ts +8 -6
  30. package/lib/sdk/models/IndexSDK.js +16 -14
  31. package/lib/sdk/models/IssuerData.d.ts +2 -0
  32. package/lib/sdk/models/TokenizationSettings.d.ts +5 -0
  33. package/lib/sdk/models/TokenizationSettings.js +10 -0
  34. package/lib/sdk/models/TransactionsCSV.d.ts +3 -0
  35. package/lib/sdk/models/TransactionsCSV.js +2 -0
  36. package/lib/sdk/models/{UIOptionsDto.d.ts → UIOptions.d.ts} +2 -2
  37. package/lib/sdk/models/{UIOptionsDto.js → UIOptions.js} +5 -5
  38. package/lib/sdk/models/WebFormSettings.d.ts +9 -0
  39. package/lib/sdk/models/WebFormSettings.js +12 -0
  40. package/lib/sdk/models/webhook/Address.d.ts +9 -0
  41. package/lib/sdk/models/webhook/Address.js +15 -0
  42. package/lib/sdk/models/webhook/CancellationInfo.d.ts +11 -0
  43. package/lib/sdk/models/webhook/CancellationInfo.js +17 -0
  44. package/lib/sdk/models/webhook/Client.d.ts +9 -0
  45. package/lib/sdk/models/webhook/Client.js +14 -0
  46. package/lib/sdk/models/webhook/Commerce.d.ts +6 -0
  47. package/lib/sdk/models/webhook/Commerce.js +12 -0
  48. package/lib/sdk/models/webhook/Currency.d.ts +8 -0
  49. package/lib/sdk/models/webhook/Currency.js +14 -0
  50. package/lib/sdk/models/webhook/Customer.d.ts +17 -0
  51. package/lib/sdk/models/webhook/Customer.js +22 -0
  52. package/lib/sdk/models/webhook/Document.d.ts +5 -0
  53. package/lib/sdk/models/webhook/Document.js +11 -0
  54. package/lib/sdk/models/webhook/Instrument.d.ts +17 -0
  55. package/lib/sdk/models/webhook/Instrument.js +21 -0
  56. package/lib/sdk/models/webhook/Issuer.d.ts +8 -0
  57. package/lib/sdk/models/webhook/Issuer.js +14 -0
  58. package/lib/sdk/models/webhook/IssuerData.d.ts +8 -0
  59. package/lib/sdk/models/webhook/IssuerData.js +13 -0
  60. package/lib/sdk/models/webhook/IssuerDto.d.ts +5 -0
  61. package/lib/sdk/models/webhook/IssuerDto.js +11 -0
  62. package/lib/sdk/models/webhook/Item.d.ts +14 -0
  63. package/lib/sdk/models/webhook/Item.js +19 -0
  64. package/lib/sdk/models/webhook/PartialRefundsInfo.d.ts +12 -0
  65. package/lib/sdk/models/webhook/PartialRefundsInfo.js +18 -0
  66. package/lib/sdk/models/webhook/PaymentFacilitator.d.ts +8 -0
  67. package/lib/sdk/models/webhook/PaymentFacilitator.js +13 -0
  68. package/lib/sdk/models/webhook/PaymentProcessor.d.ts +5 -0
  69. package/lib/sdk/models/webhook/PaymentProcessor.js +11 -0
  70. package/lib/sdk/models/webhook/PurchaseInfo.d.ts +16 -0
  71. package/lib/sdk/models/webhook/PurchaseInfo.js +22 -0
  72. package/lib/sdk/models/webhook/RefundInfo.d.ts +12 -0
  73. package/lib/sdk/models/webhook/RefundInfo.js +18 -0
  74. package/lib/sdk/models/webhook/ReserveInfo.d.ts +13 -0
  75. package/lib/sdk/models/webhook/ReserveInfo.js +19 -0
  76. package/lib/sdk/models/webhook/Shipping.d.ts +7 -0
  77. package/lib/sdk/models/webhook/Shipping.js +12 -0
  78. package/lib/sdk/models/webhook/Transaction.d.ts +31 -0
  79. package/lib/sdk/models/webhook/Transaction.js +36 -0
  80. package/lib/sdk/models/webhook/TransactionResult.d.ts +5 -0
  81. package/lib/sdk/models/webhook/TransactionResult.js +10 -0
  82. package/lib/sdk/models/webhook/index.d.ts +21 -0
  83. package/lib/sdk/models/webhook/index.js +45 -0
  84. package/lib/utils/boolean.utils.d.ts +4 -0
  85. package/lib/utils/boolean.utils.js +53 -0
  86. package/lib/utils/case.util.d.ts +4 -0
  87. package/lib/utils/case.util.js +61 -0
  88. package/lib/utils/index.d.ts +1 -0
  89. package/lib/utils/index.js +5 -0
  90. package/package.json +3 -3
  91. package/lib/sdk/models/BuiltInPagesOptionsDto.d.ts +0 -4
  92. package/lib/sdk/models/BuiltInPagesOptionsDto.js +0 -9
  93. package/lib/sdk/models/DisplayOptionsDto.d.ts +0 -7
  94. package/lib/sdk/models/DisplayOptionsDto.js +0 -9
  95. package/lib/sdk/models/ExpressCheckoutSettingsDto.d.ts +0 -6
  96. package/lib/sdk/models/TokenizationSettingsDto.d.ts +0 -4
  97. package/lib/sdk/models/TokenizationSettingsDto.js +0 -9
  98. package/lib/sdk/models/WebFormSettingsDto.d.ts +0 -8
  99. package/lib/sdk/models/WebFormSettingsDto.js +0 -9
@@ -1,21 +1,31 @@
1
- import { Authorization, BaseServerResponse, CancelRequest, ClientSignedResponse, Commerce, CommerceIdRequest, CommerceIssuerIdRequest, CommerceRequest, DeleteInstrumentRequest, ExpressCheckoutRequest, InstrumentCallback, IssuerData, IssuerInfo, IssuerProcessor, PaymentRequest, ServerResponse, ServerSignedCallback, Session, Transaction, TransactionCallback } from '../sdk/index';
1
+ import { Authorization, AuthorizationInfo, BaseServerResponse, CancelRequest, ClientSignedResponse, CodeRequest, Commerce, CommerceIdRequest, CommerceIssuerIdRequest, CommerceModifyRequest, CommerceRequest, CreateBankInstrumentRequest, DeleteInstrumentRequest, ExpressCheckoutRequest, InstrumentCallback, IssuerData, IssuerInfo, IssuerProcessor, PaymentInstrument, PaymentRequest, Reference, Reserve, ReserveRequest, ServerResponse, Session, Transaction, TransactionCallback, TransactionCursor, TransactionQuery, TransactionsCSV } from '../sdk/index';
2
2
  import { BaseResponse } from './types/BaseResponse';
3
3
  export declare const PlexoHandler: {
4
4
  AddCommerce: (commerceRequest: CommerceRequest) => Promise<BaseResponse<Commerce>>;
5
5
  AddIssuerCommerce: (issuerData: IssuerData) => Promise<BaseResponse<IssuerData>>;
6
- GetCommerceIssuers: (commerceIdRequest: CommerceIdRequest) => Promise<BaseResponse<IssuerData[]>>;
7
- GetCommerces: () => Promise<BaseResponse<Commerce[]>>;
8
6
  DeleteCommerce: (commerceIdRequest: CommerceIdRequest) => Promise<BaseResponse<BaseServerResponse>>;
9
- DeleteIssuerCommerce: (commerceIssuerIdRequest: CommerceIssuerIdRequest) => Promise<BaseResponse<BaseServerResponse>>;
10
7
  DeleteInstrument: (instrument: DeleteInstrumentRequest) => Promise<BaseResponse<BaseServerResponse>>;
8
+ DeleteIssuerCommerce: (commerceIssuerIdRequest: CommerceIssuerIdRequest) => Promise<BaseResponse<BaseServerResponse>>;
9
+ GetCommerceIssuers: (commerceIdRequest: CommerceIdRequest) => Promise<BaseResponse<IssuerData[]>>;
10
+ GetCommerces: () => Promise<BaseResponse<Commerce[]>>;
11
11
  GetSupportedIssuers: () => Promise<BaseResponse<IssuerInfo[]>>;
12
12
  GetSupportedPaymentProcessors: () => Promise<BaseResponse<IssuerProcessor[]>>;
13
+ ModifyCommerce: (commerceModifyRequest: CommerceModifyRequest) => Promise<BaseResponse<Commerce>>;
14
+ GetInstruments: (authorizationInfo: AuthorizationInfo) => Promise<BaseResponse<PaymentInstrument[]>>;
15
+ SetDefaultCommerce: (commerceIdRequest: CommerceIdRequest) => Promise<BaseResponse<BaseServerResponse>>;
13
16
  Authorize: (authorization: Authorization) => Promise<BaseResponse<Session>>;
14
17
  Cancel: (cancellation: CancelRequest) => Promise<BaseResponse<Transaction>>;
18
+ CodeAction: (request: CodeRequest) => Promise<BaseResponse<Transaction>>;
19
+ StartReserve: (payment: ReserveRequest) => Promise<BaseResponse<Transaction>>;
20
+ Status: (payment: Reference) => Promise<BaseResponse<Transaction>>;
15
21
  ExpressCheckout: (expressCheckout: ExpressCheckoutRequest) => Promise<BaseResponse<Session>>;
22
+ ObtainCsvTransactions: (query: TransactionQuery) => Promise<BaseResponse<TransactionsCSV>>;
23
+ ObtainTransactions: (query: TransactionQuery) => Promise<BaseResponse<TransactionCursor>>;
16
24
  Purchase: (purchase: PaymentRequest) => Promise<BaseResponse<Transaction>>;
17
- UnwrapInstrumentCallback: (instrumentCallback: ServerSignedCallback<InstrumentCallback>) => Promise<BaseResponse<InstrumentCallback>>;
18
- UnwrapTransactionCallback: (transactionCallback: ServerSignedCallback<TransactionCallback>) => Promise<BaseResponse<TransactionCallback>>;
25
+ CreateBankInstrument: (request: CreateBankInstrumentRequest) => Promise<BaseResponse<PaymentInstrument>>;
26
+ EndReserve: (reserve: Reserve) => Promise<BaseResponse<Transaction>>;
27
+ UnwrapInstrumentCallback: (instrumentCallback: any) => Promise<BaseResponse<InstrumentCallback>>;
28
+ UnwrapTransactionCallback: (transactionCallback: any) => Promise<BaseResponse<TransactionCallback>>;
19
29
  SignInstrumentCallback: (instrumentCallback: ServerResponse<InstrumentCallback>) => Promise<BaseResponse<ClientSignedResponse>>;
20
- SignTransactionCallback: (transactionCallback: ServerResponse<TransactionCallback>) => Promise<BaseResponse<ClientSignedResponse>>;
30
+ SignTransactionCallback: (transactionCallback: any) => Promise<BaseResponse<ClientSignedResponse>>;
21
31
  };
@@ -1,4 +1,15 @@
1
1
  "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
2
13
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
14
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
15
  return new (P || (P = Promise))(function (resolve, reject) {
@@ -41,6 +52,7 @@ var index_1 = require("../sdk/index");
41
52
  var evaluator_service_1 = require("./services/evaluator.service");
42
53
  var config_1 = require("../config/config");
43
54
  var PaymentGatewayMock_1 = require("../sdk/PaymentGatewayMock");
55
+ var utils_1 = require("../utils");
44
56
  var isTesting = config_1.config.env === 'TEST';
45
57
  var paymentGatewayClient = isTesting
46
58
  ? new PaymentGatewayMock_1.PaymentGatewayMock()
@@ -156,6 +168,43 @@ var GetSupportedPaymentProcessors = function () { return __awaiter(void 0, void
156
168
  }
157
169
  });
158
170
  }); };
171
+ var ModifyCommerce = function (commerceModifyRequest) { return __awaiter(void 0, void 0, void 0, function () {
172
+ var modifyCommerceResponse;
173
+ return __generator(this, function (_a) {
174
+ switch (_a.label) {
175
+ case 0: return [4 /*yield*/, paymentGatewayClient.ModifyCommerceAsync(commerceModifyRequest)];
176
+ case 1:
177
+ modifyCommerceResponse = _a.sent();
178
+ return [2 /*return*/, evaluator_service_1.Evaluator.genericEvaluator(commerceModifyRequest, modifyCommerceResponse)];
179
+ }
180
+ });
181
+ }); };
182
+ var GetInstruments = function (authorizationInfo) { return __awaiter(void 0, void 0, void 0, function () {
183
+ var instrumentsResponse;
184
+ return __generator(this, function (_a) {
185
+ switch (_a.label) {
186
+ case 0: return [4 /*yield*/, paymentGatewayClient.GetInstrumentsAsync(authorizationInfo)];
187
+ case 1:
188
+ instrumentsResponse = _a.sent();
189
+ return [2 /*return*/, evaluator_service_1.Evaluator.genericEvaluator(authorizationInfo, instrumentsResponse)];
190
+ }
191
+ });
192
+ }); };
193
+ var SetDefaultCommerce = function (commerceIdRequest) { return __awaiter(void 0, void 0, void 0, function () {
194
+ var setDefaultCommerceResponse, wrappedResponse;
195
+ return __generator(this, function (_a) {
196
+ switch (_a.label) {
197
+ case 0: return [4 /*yield*/, paymentGatewayClient.SetDefaultCommerceAsync(commerceIdRequest)];
198
+ case 1:
199
+ setDefaultCommerceResponse = _a.sent();
200
+ wrappedResponse = {
201
+ response: setDefaultCommerceResponse,
202
+ resultCode: setDefaultCommerceResponse.resultCode,
203
+ };
204
+ return [2 /*return*/, evaluator_service_1.Evaluator.genericEvaluator(commerceIdRequest, wrappedResponse)];
205
+ }
206
+ });
207
+ }); };
159
208
  var Authorize = function (authorization) { return __awaiter(void 0, void 0, void 0, function () {
160
209
  var authorizationResponse;
161
210
  return __generator(this, function (_a) {
@@ -179,6 +228,39 @@ var Cancel = function (cancellation) { return __awaiter(void 0, void 0, void 0,
179
228
  }
180
229
  });
181
230
  }); };
231
+ var CodeAction = function (request) { return __awaiter(void 0, void 0, void 0, function () {
232
+ var codeActionResponse;
233
+ return __generator(this, function (_a) {
234
+ switch (_a.label) {
235
+ case 0: return [4 /*yield*/, paymentGatewayClient.CodeActionAsync(request)];
236
+ case 1:
237
+ codeActionResponse = _a.sent();
238
+ return [2 /*return*/, evaluator_service_1.Evaluator.genericEvaluator(request, codeActionResponse)];
239
+ }
240
+ });
241
+ }); };
242
+ var StartReserve = function (payment) { return __awaiter(void 0, void 0, void 0, function () {
243
+ var reserveResponse;
244
+ return __generator(this, function (_a) {
245
+ switch (_a.label) {
246
+ case 0: return [4 /*yield*/, paymentGatewayClient.StartReserveAsync(payment)];
247
+ case 1:
248
+ reserveResponse = _a.sent();
249
+ return [2 /*return*/, evaluator_service_1.Evaluator.transactionEvaluator(payment, reserveResponse, 'Reserve', index_1.TransactionType.Reserve)];
250
+ }
251
+ });
252
+ }); };
253
+ var Status = function (payment) { return __awaiter(void 0, void 0, void 0, function () {
254
+ var statusResponse;
255
+ return __generator(this, function (_a) {
256
+ switch (_a.label) {
257
+ case 0: return [4 /*yield*/, paymentGatewayClient.StatusAsync(payment)];
258
+ case 1:
259
+ statusResponse = _a.sent();
260
+ return [2 /*return*/, evaluator_service_1.Evaluator.genericEvaluator(payment, statusResponse)];
261
+ }
262
+ });
263
+ }); };
182
264
  var ExpressCheckout = function (expressCheckout) { return __awaiter(void 0, void 0, void 0, function () {
183
265
  var expressCheckoutResponse;
184
266
  return __generator(this, function (_a) {
@@ -190,6 +272,31 @@ var ExpressCheckout = function (expressCheckout) { return __awaiter(void 0, void
190
272
  }
191
273
  });
192
274
  }); };
275
+ var ObtainCsvTransactions = function (query) { return __awaiter(void 0, void 0, void 0, function () {
276
+ var csvTransactionsStringResponse, csvTransactionsResponse;
277
+ return __generator(this, function (_a) {
278
+ switch (_a.label) {
279
+ case 0: return [4 /*yield*/, paymentGatewayClient.ObtainCsvTransactionsAsync(query)];
280
+ case 1:
281
+ csvTransactionsStringResponse = _a.sent();
282
+ csvTransactionsResponse = __assign(__assign({}, csvTransactionsStringResponse), { response: {
283
+ csv: csvTransactionsStringResponse.response,
284
+ } });
285
+ return [2 /*return*/, evaluator_service_1.Evaluator.genericEvaluator(query, csvTransactionsResponse)];
286
+ }
287
+ });
288
+ }); };
289
+ var ObtainTransactions = function (query) { return __awaiter(void 0, void 0, void 0, function () {
290
+ var transactionsResponse;
291
+ return __generator(this, function (_a) {
292
+ switch (_a.label) {
293
+ case 0: return [4 /*yield*/, paymentGatewayClient.ObtainTransactionsAsync(query)];
294
+ case 1:
295
+ transactionsResponse = _a.sent();
296
+ return [2 /*return*/, evaluator_service_1.Evaluator.genericEvaluator(query, transactionsResponse)];
297
+ }
298
+ });
299
+ }); };
193
300
  var Purchase = function (purchase) { return __awaiter(void 0, void 0, void 0, function () {
194
301
  var purchaseResponse;
195
302
  return __generator(this, function (_a) {
@@ -201,11 +308,35 @@ var Purchase = function (purchase) { return __awaiter(void 0, void 0, void 0, fu
201
308
  }
202
309
  });
203
310
  }); };
311
+ var CreateBankInstrument = function (request) { return __awaiter(void 0, void 0, void 0, function () {
312
+ var bankInstrumentResponse;
313
+ return __generator(this, function (_a) {
314
+ switch (_a.label) {
315
+ case 0: return [4 /*yield*/, paymentGatewayClient.CreateBankInstrumentAsync(request)];
316
+ case 1:
317
+ bankInstrumentResponse = _a.sent();
318
+ return [2 /*return*/, evaluator_service_1.Evaluator.genericEvaluator(request, bankInstrumentResponse)];
319
+ }
320
+ });
321
+ }); };
322
+ var EndReserve = function (reserve) { return __awaiter(void 0, void 0, void 0, function () {
323
+ var endReserveResponse;
324
+ return __generator(this, function (_a) {
325
+ switch (_a.label) {
326
+ case 0: return [4 /*yield*/, paymentGatewayClient.EndReserveAsync(reserve)];
327
+ case 1:
328
+ endReserveResponse = _a.sent();
329
+ return [2 /*return*/, evaluator_service_1.Evaluator.transactionEvaluator(reserve, endReserveResponse, 'Reserve', index_1.TransactionType.Reserve)];
330
+ }
331
+ });
332
+ }); };
204
333
  var UnwrapInstrumentCallback = function (instrumentCallback) { return __awaiter(void 0, void 0, void 0, function () {
205
- var instrumentCallbackResponse;
334
+ var instrumentCallbackCamelCase, instrumentCallbackResponse;
206
335
  return __generator(this, function (_a) {
207
336
  switch (_a.label) {
208
- case 0: return [4 /*yield*/, paymentGatewayClient.UnwrapInstrumentCallbackAsync(instrumentCallback)];
337
+ case 0:
338
+ instrumentCallbackCamelCase = utils_1.caseUtils.toCamelKeys(instrumentCallback);
339
+ return [4 /*yield*/, paymentGatewayClient.UnwrapInstrumentCallbackAsync(instrumentCallbackCamelCase)];
209
340
  case 1:
210
341
  instrumentCallbackResponse = _a.sent();
211
342
  return [2 /*return*/, evaluator_service_1.Evaluator.genericEvaluator(instrumentCallback, instrumentCallbackResponse)];
@@ -213,10 +344,12 @@ var UnwrapInstrumentCallback = function (instrumentCallback) { return __awaiter(
213
344
  });
214
345
  }); };
215
346
  var UnwrapTransactionCallback = function (transactionCallback) { return __awaiter(void 0, void 0, void 0, function () {
216
- var transactionCallbackResponse;
347
+ var transactionCallbackCamelCase, transactionCallbackResponse;
217
348
  return __generator(this, function (_a) {
218
349
  switch (_a.label) {
219
- case 0: return [4 /*yield*/, paymentGatewayClient.UnwrapTransactionCallbackAsync(transactionCallback)];
350
+ case 0:
351
+ transactionCallbackCamelCase = utils_1.caseUtils.toCamelKeys(transactionCallback);
352
+ return [4 /*yield*/, paymentGatewayClient.UnwrapTransactionCallbackAsync(transactionCallbackCamelCase)];
220
353
  case 1:
221
354
  transactionCallbackResponse = _a.sent();
222
355
  return [2 /*return*/, evaluator_service_1.Evaluator.genericEvaluator(transactionCallback, transactionCallbackResponse)];
@@ -224,41 +357,63 @@ var UnwrapTransactionCallback = function (transactionCallback) { return __awaite
224
357
  });
225
358
  }); };
226
359
  var SignInstrumentCallback = function (instrumentCallback) { return __awaiter(void 0, void 0, void 0, function () {
227
- var signInstrumentCallbackResponse;
360
+ var signInstrumentCallbackResponse, serverResponse;
228
361
  return __generator(this, function (_a) {
229
362
  switch (_a.label) {
230
363
  case 0: return [4 /*yield*/, paymentGatewayClient.SignInstrumentCallback(instrumentCallback)];
231
364
  case 1:
232
365
  signInstrumentCallbackResponse = _a.sent();
233
- return [2 /*return*/, evaluator_service_1.Evaluator.genericEvaluator(instrumentCallback, signInstrumentCallbackResponse)];
366
+ serverResponse = {
367
+ response: signInstrumentCallbackResponse,
368
+ resultCode: signInstrumentCallbackResponse.object.object.resultCode,
369
+ errorMessage: signInstrumentCallbackResponse.object.object.errorMessage,
370
+ i18ErrorMessages: signInstrumentCallbackResponse.object.object.i18ErrorMessages,
371
+ };
372
+ return [2 /*return*/, evaluator_service_1.Evaluator.genericEvaluator(instrumentCallback, serverResponse)];
234
373
  }
235
374
  });
236
375
  }); };
237
376
  var SignTransactionCallback = function (transactionCallback) { return __awaiter(void 0, void 0, void 0, function () {
238
- var signTransactionCallbackResponse;
377
+ var signTransactionCallbackResponse, serverResponse;
239
378
  return __generator(this, function (_a) {
240
379
  switch (_a.label) {
241
380
  case 0: return [4 /*yield*/, paymentGatewayClient.SignTransactionCallback(transactionCallback)];
242
381
  case 1:
243
382
  signTransactionCallbackResponse = _a.sent();
244
- return [2 /*return*/, evaluator_service_1.Evaluator.genericEvaluator(transactionCallback, signTransactionCallbackResponse)];
383
+ serverResponse = {
384
+ response: signTransactionCallbackResponse,
385
+ resultCode: signTransactionCallbackResponse.object.object.resultCode,
386
+ errorMessage: signTransactionCallbackResponse.object.object.errorMessage,
387
+ i18ErrorMessages: signTransactionCallbackResponse.object.object.i18ErrorMessages,
388
+ };
389
+ return [2 /*return*/, evaluator_service_1.Evaluator.genericEvaluator(transactionCallback, serverResponse)];
245
390
  }
246
391
  });
247
392
  }); };
248
393
  exports.PlexoHandler = {
249
394
  AddCommerce: AddCommerce,
250
395
  AddIssuerCommerce: AddIssuerCommerce,
251
- GetCommerceIssuers: GetCommerceIssuers,
252
- GetCommerces: GetCommerces,
253
396
  DeleteCommerce: DeleteCommerce,
254
- DeleteIssuerCommerce: DeleteIssuerCommerce,
255
397
  DeleteInstrument: DeleteInstrument,
398
+ DeleteIssuerCommerce: DeleteIssuerCommerce,
399
+ GetCommerceIssuers: GetCommerceIssuers,
400
+ GetCommerces: GetCommerces,
256
401
  GetSupportedIssuers: GetSupportedIssuers,
257
402
  GetSupportedPaymentProcessors: GetSupportedPaymentProcessors,
403
+ ModifyCommerce: ModifyCommerce,
404
+ GetInstruments: GetInstruments,
405
+ SetDefaultCommerce: SetDefaultCommerce,
258
406
  Authorize: Authorize,
259
407
  Cancel: Cancel,
408
+ CodeAction: CodeAction,
409
+ StartReserve: StartReserve,
410
+ Status: Status,
260
411
  ExpressCheckout: ExpressCheckout,
412
+ ObtainCsvTransactions: ObtainCsvTransactions,
413
+ ObtainTransactions: ObtainTransactions,
261
414
  Purchase: Purchase,
415
+ CreateBankInstrument: CreateBankInstrument,
416
+ EndReserve: EndReserve,
262
417
  UnwrapInstrumentCallback: UnwrapInstrumentCallback,
263
418
  UnwrapTransactionCallback: UnwrapTransactionCallback,
264
419
  SignInstrumentCallback: SignInstrumentCallback,
package/lib/index.d.ts CHANGED
@@ -1,2 +1,3 @@
1
1
  export { PlexoHandler } from './handler/PlexoHandler';
2
2
  export * as ModelsSDK from './sdk/models/IndexSDK';
3
+ export * as ModelsAPI from './sdk/models/webhook';
package/lib/index.js CHANGED
@@ -1,6 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ModelsSDK = exports.PlexoHandler = void 0;
3
+ exports.ModelsAPI = exports.ModelsSDK = exports.PlexoHandler = void 0;
4
4
  var PlexoHandler_1 = require("./handler/PlexoHandler");
5
5
  Object.defineProperty(exports, "PlexoHandler", { enumerable: true, get: function () { return PlexoHandler_1.PlexoHandler; } });
6
+ // Model for transaction callback (WS Service)
6
7
  exports.ModelsSDK = require("./sdk/models/IndexSDK");
8
+ // Model for plexo webhook (API)
9
+ exports.ModelsAPI = require("./sdk/models/webhook");
@@ -2,12 +2,7 @@ declare const logger: import("pino").Logger<{
2
2
  level: string;
3
3
  base: null;
4
4
  nestedKey: string;
5
- transport: {
6
- target: string;
7
- options: {
8
- colorize: boolean;
9
- };
10
- };
5
+ transport: any;
11
6
  serializers: {
12
7
  data: (data: any | Error) => any;
13
8
  };
@@ -2,16 +2,20 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  var pino_1 = require("pino");
4
4
  var config_1 = require("../config/config");
5
+ var transport = null;
6
+ if (['LOCAL', 'TEST'].includes(config_1.config.env)) {
7
+ transport = {
8
+ target: 'pino-pretty',
9
+ options: {
10
+ colorize: true,
11
+ },
12
+ };
13
+ }
5
14
  var logger = (0, pino_1.default)({
6
15
  level: config_1.config.logger.level,
7
16
  base: null,
8
17
  nestedKey: 'data',
9
- transport: {
10
- target: 'pino-pretty',
11
- options: {
12
- colorize: config_1.config.env === 'LOCAL' ? true : false,
13
- },
14
- },
18
+ transport: transport,
15
19
  serializers: {
16
20
  // Needed because errors don't get serialized when using nestedKey
17
21
  /* eslint-disable */
@@ -26,6 +26,6 @@ export interface IPaymentGatewayClient {
26
26
  EndReserveAsync(reserve: Reserve): Promise<ServerResponse<Transaction>>;
27
27
  UnwrapInstrumentCallbackAsync(serverSignedInstrumentCallback: ServerSignedCallback<InstrumentCallback>): Promise<ServerResponse<InstrumentCallback>>;
28
28
  UnwrapTransactionCallbackAsync(serverSignedTransactionCallback: ServerSignedCallback<TransactionCallback>): Promise<ServerResponse<TransactionCallback>>;
29
- SignInstrumentCallback(serverResponse: ServerResponse<InstrumentCallback>): Promise<ServerResponse<ClientSignedResponse>>;
30
- SignTransactionCallback(serverResponse: ServerResponse<TransactionCallback>): Promise<ServerResponse<ClientSignedResponse>>;
29
+ SignInstrumentCallback(serverResponse: ServerResponse<InstrumentCallback>): Promise<ClientSignedResponse>;
30
+ SignTransactionCallback(serverResponse: ServerResponse<TransactionCallback>): Promise<ClientSignedResponse>;
31
31
  }
@@ -27,6 +27,6 @@ export declare class PaymentGatewayClient implements IPaymentGatewayClient {
27
27
  EndReserveAsync(reserve: Reserve): Promise<ServerResponse<Transaction>>;
28
28
  UnwrapInstrumentCallbackAsync(serverSignedInstrumentCallback: ServerSignedCallback<InstrumentCallback>): Promise<ServerResponse<InstrumentCallback>>;
29
29
  UnwrapTransactionCallbackAsync(serverSignedTransactionCallback: ServerSignedCallback<TransactionCallback>): Promise<ServerResponse<TransactionCallback>>;
30
- SignInstrumentCallback(serverResponse: ServerResponse<InstrumentCallback>): Promise<ServerResponse<ClientSignedResponse>>;
31
- SignTransactionCallback(serverResponse: ServerResponse<TransactionCallback>): Promise<ServerResponse<ClientSignedResponse>>;
30
+ SignInstrumentCallback(serverResponse: ServerResponse<InstrumentCallback>): Promise<ClientSignedResponse>;
31
+ SignTransactionCallback(serverResponse: ServerResponse<TransactionCallback>): Promise<ClientSignedResponse>;
32
32
  }
@@ -52,6 +52,7 @@ var axios_1 = require("axios");
52
52
  var logger_lib_1 = require("../lib/logger.lib");
53
53
  var config_1 = require("../config/config");
54
54
  var signatureHelper_1 = require("./helpers/signature/signatureHelper");
55
+ var utils_1 = require("../utils");
55
56
  var client = axios_1.default.create({
56
57
  baseURL: config_1.config.plexoUrl,
57
58
  });
@@ -70,16 +71,16 @@ var requestToPlexo = function (endpoint, request) { return __awaiter(void 0, voi
70
71
  utcUnixTimeExpiration: Date.parse(new Date().toString()),
71
72
  object: object,
72
73
  };
73
- return [4 /*yield*/, signatureHelper_1.SignatureHelper.getSignatureFromPlexo(stateObject)];
74
+ return [4 /*yield*/, signatureHelper_1.SignatureHelper.signRequest(stateObject)];
74
75
  case 1:
75
76
  signedClientRequest = _a.sent();
76
- logger_lib_1.default.debug("URL PX --> ".concat(endpoint));
77
- logger_lib_1.default.debug("SIGNED CLIENT REQUEST --> ".concat(JSON.stringify(signedClientRequest)));
77
+ logger_lib_1.default.debug("URL PX: ".concat(endpoint));
78
+ logger_lib_1.default.debug(signedClientRequest, 'Signed client request');
78
79
  return [4 /*yield*/, client.post(endpoint, __assign({}, signedClientRequest))];
79
80
  case 2:
80
81
  data = (_a.sent()).data;
81
82
  logger_lib_1.default.debug({ data: data });
82
- return [2 /*return*/, signatureHelper_1.SignatureHelper.toCamelKeys(data.Object.Object)];
83
+ return [2 /*return*/, utils_1.caseUtils.toCamelKeys(data.Object.Object)];
83
84
  case 3:
84
85
  err_1 = _a.sent();
85
86
  logger_lib_1.default.error({ err: err_1 });
@@ -326,7 +327,7 @@ var PaymentGatewayClient = /** @class */ (function () {
326
327
  var verify;
327
328
  return __generator(this, function (_a) {
328
329
  switch (_a.label) {
329
- case 0: return [4 /*yield*/, signatureHelper_1.SignatureHelper.getPlexoSignature(serverSignedInstrumentCallback.object.fingerprint, serverSignedInstrumentCallback)];
330
+ case 0: return [4 /*yield*/, signatureHelper_1.SignatureHelper.unwrapCallback(serverSignedInstrumentCallback.object.fingerprint, serverSignedInstrumentCallback)];
330
331
  case 1:
331
332
  verify = _a.sent();
332
333
  return [2 /*return*/, verify];
@@ -339,7 +340,7 @@ var PaymentGatewayClient = /** @class */ (function () {
339
340
  var verify;
340
341
  return __generator(this, function (_a) {
341
342
  switch (_a.label) {
342
- case 0: return [4 /*yield*/, signatureHelper_1.SignatureHelper.getPlexoSignature(serverSignedTransactionCallback.object.fingerprint, serverSignedTransactionCallback)];
343
+ case 0: return [4 /*yield*/, signatureHelper_1.SignatureHelper.unwrapCallback(serverSignedTransactionCallback.object.fingerprint, serverSignedTransactionCallback)];
343
344
  case 1:
344
345
  verify = _a.sent();
345
346
  return [2 /*return*/, verify];
@@ -352,7 +353,7 @@ var PaymentGatewayClient = /** @class */ (function () {
352
353
  var response;
353
354
  return __generator(this, function (_a) {
354
355
  switch (_a.label) {
355
- case 0: return [4 /*yield*/, signatureHelper_1.SignatureHelper.getSignatureFromCallback(serverResponse)];
356
+ case 0: return [4 /*yield*/, signatureHelper_1.SignatureHelper.signCallback(serverResponse)];
356
357
  case 1:
357
358
  response = _a.sent();
358
359
  return [2 /*return*/, response];
@@ -365,7 +366,7 @@ var PaymentGatewayClient = /** @class */ (function () {
365
366
  var response;
366
367
  return __generator(this, function (_a) {
367
368
  switch (_a.label) {
368
- case 0: return [4 /*yield*/, signatureHelper_1.SignatureHelper.getSignatureFromCallback(serverResponse)];
369
+ case 0: return [4 /*yield*/, signatureHelper_1.SignatureHelper.signCallback(serverResponse)];
369
370
  case 1:
370
371
  response = _a.sent();
371
372
  return [2 /*return*/, response];
@@ -26,6 +26,6 @@ export declare class PaymentGatewayMock implements IPaymentGatewayClient {
26
26
  EndReserveAsync(reserve: Reserve): Promise<ServerResponse<Transaction>>;
27
27
  UnwrapInstrumentCallbackAsync(serverSignedInstrumentCallback: ServerSignedCallback<InstrumentCallback>): Promise<ServerResponse<InstrumentCallback>>;
28
28
  UnwrapTransactionCallbackAsync(serverSignedTransactionCallback: ServerSignedCallback<TransactionCallback>): Promise<ServerResponse<TransactionCallback>>;
29
- SignInstrumentCallback(serverResponse: ServerResponse<InstrumentCallback>): Promise<ServerResponse<ClientSignedResponse>>;
30
- SignTransactionCallback(serverResponse: ServerResponse<TransactionCallback>): Promise<ServerResponse<ClientSignedResponse>>;
29
+ SignInstrumentCallback(serverResponse: ServerResponse<InstrumentCallback>): Promise<ClientSignedResponse>;
30
+ SignTransactionCallback(serverResponse: ServerResponse<TransactionCallback>): Promise<ClientSignedResponse>;
31
31
  }
@@ -314,20 +314,14 @@ var PaymentGatewayMock = /** @class */ (function () {
314
314
  PaymentGatewayMock.prototype.SignInstrumentCallback = function (serverResponse) {
315
315
  return __awaiter(this, void 0, void 0, function () {
316
316
  return __generator(this, function (_a) {
317
- return [2 /*return*/, {
318
- resultCode: IndexSDK_1.ResultCodes.Ok,
319
- response: mocks_1.mocks.clientSignedResponseMock,
320
- }];
317
+ return [2 /*return*/, mocks_1.mocks.clientSignedResponseMock];
321
318
  });
322
319
  });
323
320
  };
324
321
  PaymentGatewayMock.prototype.SignTransactionCallback = function (serverResponse) {
325
322
  return __awaiter(this, void 0, void 0, function () {
326
323
  return __generator(this, function (_a) {
327
- return [2 /*return*/, {
328
- resultCode: IndexSDK_1.ResultCodes.Ok,
329
- response: mocks_1.mocks.clientSignedResponseMock,
330
- }];
324
+ return [2 /*return*/, mocks_1.mocks.clientSignedResponseMock];
331
325
  });
332
326
  });
333
327
  };
@@ -1,4 +1,5 @@
1
1
  export declare enum PlexoErrorEnum {
2
+ CommerceAlreadyExists = 25,
2
3
  ExceptionHandlingTransaction = 1200,
3
4
  PlexoAuthorizationError = 1201,
4
5
  InstrumentNotFound = 1202,
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.PlexoErrorEnum = void 0;
4
4
  var PlexoErrorEnum;
5
5
  (function (PlexoErrorEnum) {
6
+ PlexoErrorEnum[PlexoErrorEnum["CommerceAlreadyExists"] = 25] = "CommerceAlreadyExists";
6
7
  PlexoErrorEnum[PlexoErrorEnum["ExceptionHandlingTransaction"] = 1200] = "ExceptionHandlingTransaction";
7
8
  PlexoErrorEnum[PlexoErrorEnum["PlexoAuthorizationError"] = 1201] = "PlexoAuthorizationError";
8
9
  PlexoErrorEnum[PlexoErrorEnum["InstrumentNotFound"] = 1202] = "InstrumentNotFound";
@@ -1,10 +1,6 @@
1
1
  import { ClientSignedResponse, GenericSignedObject, GenericStateObject, InstrumentCallback, ServerResponse, TransactionCallback } from '../..';
2
- import { Certificate } from '../../types/signatureHelper.type';
3
- export declare const canonizeJson: <T>(object: T) => T;
4
2
  export declare const SignatureHelper: {
5
- getCertificate: () => Promise<Certificate>;
6
- getSignatureFromPlexo: <T extends object>(objectToSign: GenericStateObject<T>) => Promise<GenericSignedObject<T>>;
7
- getSignatureFromCallback: (response: ServerResponse<InstrumentCallback | TransactionCallback>) => Promise<ServerResponse<ClientSignedResponse>>;
8
- getPlexoSignature: <T_1 extends object>(fingerprint: string, response: GenericSignedObject<T_1>) => Promise<ServerResponse<T_1>>;
9
- toCamelKeys: <T_2 extends object>(object: T_2) => T_2;
3
+ signRequest: <T extends object>(objectToSign: GenericStateObject<T>) => Promise<GenericSignedObject<T>>;
4
+ unwrapCallback: <T_1 extends object>(fingerprint: string, response: GenericSignedObject<T_1>) => Promise<ServerResponse<T_1>>;
5
+ signCallback: (response: ServerResponse<InstrumentCallback | TransactionCallback>) => Promise<ClientSignedResponse>;
10
6
  };