globalpayments-api 3.7.0 → 3.8.0

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 (220) hide show
  1. package/CHANGELOG.md +9 -1
  2. package/lib/src/Builders/BaseBuilder/Validations.js +1 -1
  3. package/lib/src/Builders/BaseBuilder/Validations.js.map +1 -1
  4. package/lib/src/Builders/ManagementBuilder.d.ts +17 -1
  5. package/lib/src/Builders/ManagementBuilder.js +22 -0
  6. package/lib/src/Builders/ManagementBuilder.js.map +1 -1
  7. package/lib/src/Builders/RequestBuilder/GpApi/GpApiManagementRequestBuilder.js +19 -0
  8. package/lib/src/Builders/RequestBuilder/GpApi/GpApiManagementRequestBuilder.js.map +1 -1
  9. package/lib/src/Builders/RequestBuilder/GpApi/GpApiReportRequestBuilder.d.ts +2 -0
  10. package/lib/src/Builders/RequestBuilder/GpApi/GpApiReportRequestBuilder.js +86 -0
  11. package/lib/src/Builders/RequestBuilder/GpApi/GpApiReportRequestBuilder.js.map +1 -1
  12. package/lib/src/Builders/TransactionReportBuilder.d.ts +5 -2
  13. package/lib/src/Builders/TransactionReportBuilder.js +19 -0
  14. package/lib/src/Builders/TransactionReportBuilder.js.map +1 -1
  15. package/lib/src/Entities/DisputeDocument.d.ts +5 -0
  16. package/lib/src/Entities/DisputeDocument.js +10 -0
  17. package/lib/src/Entities/DisputeDocument.js.map +1 -0
  18. package/lib/src/Entities/Document.d.ts +10 -0
  19. package/lib/src/Entities/Document.js +13 -0
  20. package/lib/src/Entities/Document.js.map +1 -0
  21. package/lib/src/Entities/Enums/DisputeSortProperty.d.ts +12 -0
  22. package/lib/src/Entities/Enums/DisputeSortProperty.js +17 -0
  23. package/lib/src/Entities/Enums/DisputeSortProperty.js.map +1 -0
  24. package/lib/src/Entities/Enums/DisputeStage.d.ts +11 -0
  25. package/lib/src/Entities/Enums/DisputeStage.js +16 -0
  26. package/lib/src/Entities/Enums/DisputeStage.js.map +1 -0
  27. package/lib/src/Entities/Enums/DisputeStatus.d.ts +7 -0
  28. package/lib/src/Entities/Enums/DisputeStatus.js +12 -0
  29. package/lib/src/Entities/Enums/DisputeStatus.js.map +1 -0
  30. package/lib/src/Entities/Enums/DocumentCategory.d.ts +5 -0
  31. package/lib/src/Entities/Enums/DocumentCategory.js +10 -0
  32. package/lib/src/Entities/Enums/DocumentCategory.js.map +1 -0
  33. package/lib/src/Entities/Enums/FileType.d.ts +11 -0
  34. package/lib/src/Entities/Enums/FileType.js +16 -0
  35. package/lib/src/Entities/Enums/FileType.js.map +1 -0
  36. package/lib/src/Entities/Enums.d.ts +7 -0
  37. package/lib/src/Entities/Enums.js +7 -0
  38. package/lib/src/Entities/Enums.js.map +1 -1
  39. package/lib/src/Entities/HostedPaymentData.d.ts +3 -0
  40. package/lib/src/Entities/HostedPaymentData.js +3 -0
  41. package/lib/src/Entities/HostedPaymentData.js.map +1 -1
  42. package/lib/src/Entities/Reporting/DisputeSummary.d.ts +53 -0
  43. package/lib/src/Entities/Reporting/DisputeSummary.js +64 -0
  44. package/lib/src/Entities/Reporting/DisputeSummary.js.map +1 -0
  45. package/lib/src/Entities/Reporting/SearchCriteriaBuilder.d.ts +4 -2
  46. package/lib/src/Entities/Reporting/SearchCriteriaBuilder.js +2 -0
  47. package/lib/src/Entities/Reporting/SearchCriteriaBuilder.js.map +1 -1
  48. package/lib/src/Entities/Reporting/index.d.ts +1 -0
  49. package/lib/src/Entities/Reporting/index.js +1 -0
  50. package/lib/src/Entities/Reporting/index.js.map +1 -1
  51. package/lib/src/Entities/index.d.ts +7 -0
  52. package/lib/src/Entities/index.js +7 -0
  53. package/lib/src/Entities/index.js.map +1 -1
  54. package/lib/src/Gateways/GpApiConnector.js +3 -0
  55. package/lib/src/Gateways/GpApiConnector.js.map +1 -1
  56. package/lib/src/Gateways/GpEcomConnector.js +9 -0
  57. package/lib/src/Gateways/GpEcomConnector.js.map +1 -1
  58. package/lib/src/Mapping/GpApiMapping.d.ts +2 -1
  59. package/lib/src/Mapping/GpApiMapping.js +75 -2
  60. package/lib/src/Mapping/GpApiMapping.js.map +1 -1
  61. package/lib/src/Services/ReportingService.d.ts +6 -1
  62. package/lib/src/Services/ReportingService.js +15 -0
  63. package/lib/src/Services/ReportingService.js.map +1 -1
  64. package/lib/test/Integration/Gateways/GpApiConnector/3DS2.test.d.ts +1 -0
  65. package/lib/test/Integration/Gateways/GpApiConnector/3DS2.test.js +1026 -0
  66. package/lib/test/Integration/Gateways/GpApiConnector/3DS2.test.js.map +1 -0
  67. package/lib/test/Integration/Gateways/GpApiConnector/3DSecure.test.d.ts +1 -0
  68. package/lib/test/Integration/Gateways/GpApiConnector/3DSecure.test.js +643 -0
  69. package/lib/test/Integration/Gateways/GpApiConnector/3DSecure.test.js.map +1 -0
  70. package/lib/test/Integration/Gateways/GpApiConnector/AccessToken.test.d.ts +1 -0
  71. package/lib/test/Integration/Gateways/GpApiConnector/AccessToken.test.js +130 -0
  72. package/lib/test/Integration/Gateways/GpApiConnector/AccessToken.test.js.map +1 -0
  73. package/lib/test/Integration/Gateways/GpApiConnector/CreditCardNotPresent.test.d.ts +1 -0
  74. package/lib/test/Integration/Gateways/GpApiConnector/CreditCardNotPresent.test.js +1070 -0
  75. package/lib/test/Integration/Gateways/GpApiConnector/CreditCardNotPresent.test.js.map +1 -0
  76. package/lib/test/Integration/Gateways/GpApiConnector/DebitCard.test.d.ts +1 -0
  77. package/lib/test/Integration/Gateways/GpApiConnector/DebitCard.test.js +137 -0
  78. package/lib/test/Integration/Gateways/GpApiConnector/DebitCard.test.js.map +1 -0
  79. package/lib/test/Integration/Gateways/GpApiConnector/GpApiCertification.test.d.ts +1 -0
  80. package/lib/test/Integration/Gateways/GpApiConnector/GpApiCertification.test.js +642 -0
  81. package/lib/test/Integration/Gateways/GpApiConnector/GpApiCertification.test.js.map +1 -0
  82. package/lib/test/Integration/Gateways/GpApiConnector/GpApiTokenManagement.test.d.ts +1 -0
  83. package/lib/test/Integration/Gateways/GpApiConnector/GpApiTokenManagement.test.js +151 -0
  84. package/lib/test/Integration/Gateways/GpApiConnector/GpApiTokenManagement.test.js.map +1 -0
  85. package/lib/test/Integration/Gateways/GpApiConnector/ReportingDeposits.test.d.ts +1 -0
  86. package/lib/test/Integration/Gateways/GpApiConnector/ReportingDeposits.test.js +226 -0
  87. package/lib/test/Integration/Gateways/GpApiConnector/ReportingDeposits.test.js.map +1 -0
  88. package/lib/test/Integration/Gateways/GpApiConnector/ReportingDisputes.test.d.ts +1 -0
  89. package/lib/test/Integration/Gateways/GpApiConnector/ReportingDisputes.test.js +571 -0
  90. package/lib/test/Integration/Gateways/GpApiConnector/ReportingDisputes.test.js.map +1 -0
  91. package/lib/test/Integration/Gateways/GpApiConnector/ReportingSettlementTransactions.test.d.ts +1 -0
  92. package/lib/test/Integration/Gateways/GpApiConnector/ReportingSettlementTransactions.test.js +430 -0
  93. package/lib/test/Integration/Gateways/GpApiConnector/ReportingSettlementTransactions.test.js.map +1 -0
  94. package/lib/test/Integration/Gateways/GpApiConnector/ReportingStoredPaymentMethods.test.d.ts +1 -0
  95. package/lib/test/Integration/Gateways/GpApiConnector/ReportingStoredPaymentMethods.test.js +216 -0
  96. package/lib/test/Integration/Gateways/GpApiConnector/ReportingStoredPaymentMethods.test.js.map +1 -0
  97. package/lib/test/Integration/Gateways/GpApiConnector/ReportingTransactions.test.d.ts +1 -0
  98. package/lib/test/Integration/Gateways/GpApiConnector/ReportingTransactions.test.js +340 -0
  99. package/lib/test/Integration/Gateways/GpApiConnector/ReportingTransactions.test.js.map +1 -0
  100. package/lib/test/Integration/Gateways/GpEcomConnector/Certification/Auth.test.d.ts +1 -0
  101. package/lib/test/Integration/Gateways/GpEcomConnector/Certification/Auth.test.js +2426 -0
  102. package/lib/test/Integration/Gateways/GpEcomConnector/Certification/Auth.test.js.map +1 -0
  103. package/lib/test/Integration/Gateways/GpEcomConnector/Certification/Avs.test.d.ts +1 -0
  104. package/lib/test/Integration/Gateways/GpEcomConnector/Certification/Avs.test.js +562 -0
  105. package/lib/test/Integration/Gateways/GpEcomConnector/Certification/Avs.test.js.map +1 -0
  106. package/lib/test/Integration/Gateways/GpEcomConnector/Certification/Credit.test.d.ts +1 -0
  107. package/lib/test/Integration/Gateways/GpEcomConnector/Certification/Credit.test.js +1292 -0
  108. package/lib/test/Integration/Gateways/GpEcomConnector/Certification/Credit.test.js.map +1 -0
  109. package/lib/test/Integration/Gateways/GpEcomConnector/Certification/Hold.test.d.ts +1 -0
  110. package/lib/test/Integration/Gateways/GpEcomConnector/Certification/Hold.test.js +880 -0
  111. package/lib/test/Integration/Gateways/GpEcomConnector/Certification/Hold.test.js.map +1 -0
  112. package/lib/test/Integration/Gateways/GpEcomConnector/Credit.test.d.ts +1 -0
  113. package/lib/test/Integration/Gateways/GpEcomConnector/Credit.test.js +207 -0
  114. package/lib/test/Integration/Gateways/GpEcomConnector/Credit.test.js.map +1 -0
  115. package/lib/test/Integration/Gateways/GpEcomConnector/Hpp.test.d.ts +1 -0
  116. package/lib/test/Integration/Gateways/GpEcomConnector/Hpp.test.js +137 -0
  117. package/lib/test/Integration/Gateways/GpEcomConnector/Hpp.test.js.map +1 -0
  118. package/lib/test/Integration/Gateways/GpEcomConnector/Recurring.test.d.ts +1 -0
  119. package/lib/test/Integration/Gateways/GpEcomConnector/Recurring.test.js +124 -0
  120. package/lib/test/Integration/Gateways/GpEcomConnector/Recurring.test.js.map +1 -0
  121. package/lib/test/Integration/Gateways/PorticoConnector/Ach.test.d.ts +1 -0
  122. package/lib/test/Integration/Gateways/PorticoConnector/Ach.test.js +54 -0
  123. package/lib/test/Integration/Gateways/PorticoConnector/Ach.test.js.map +1 -0
  124. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/Check.test.d.ts +1 -0
  125. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/Check.test.js +357 -0
  126. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/Check.test.js.map +1 -0
  127. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/Ecommerce.test.d.ts +1 -0
  128. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/Ecommerce.test.js +1667 -0
  129. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/Ecommerce.test.js.map +1 -0
  130. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/EcommerceCheck.test.d.ts +1 -0
  131. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/EcommerceCheck.test.js +80 -0
  132. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/EcommerceCheck.test.js.map +1 -0
  133. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/Moto.test.d.ts +1 -0
  134. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/Moto.test.js +1487 -0
  135. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/Moto.test.js.map +1 -0
  136. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/MotoCheck.test.d.ts +1 -0
  137. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/MotoCheck.test.js +80 -0
  138. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/MotoCheck.test.js.map +1 -0
  139. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/Recurring.test.d.ts +1 -0
  140. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/Recurring.test.js +393 -0
  141. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/Recurring.test.js.map +1 -0
  142. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/Retail.test.d.ts +1 -0
  143. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/Retail.test.js +2102 -0
  144. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/Retail.test.js.map +1 -0
  145. package/lib/test/Integration/Gateways/PorticoConnector/Credit.test.d.ts +1 -0
  146. package/lib/test/Integration/Gateways/PorticoConnector/Credit.test.js +367 -0
  147. package/lib/test/Integration/Gateways/PorticoConnector/Credit.test.js.map +1 -0
  148. package/lib/test/Integration/Gateways/PorticoConnector/Debit.test.d.ts +1 -0
  149. package/lib/test/Integration/Gateways/PorticoConnector/Debit.test.js +83 -0
  150. package/lib/test/Integration/Gateways/PorticoConnector/Debit.test.js.map +1 -0
  151. package/lib/test/Integration/Gateways/PorticoConnector/Ebt.test.d.ts +1 -0
  152. package/lib/test/Integration/Gateways/PorticoConnector/Ebt.test.js +63 -0
  153. package/lib/test/Integration/Gateways/PorticoConnector/Ebt.test.js.map +1 -0
  154. package/lib/test/Integration/Gateways/PorticoConnector/Ecommerce.test.d.ts +1 -0
  155. package/lib/test/Integration/Gateways/PorticoConnector/Ecommerce.test.js +136 -0
  156. package/lib/test/Integration/Gateways/PorticoConnector/Ecommerce.test.js.map +1 -0
  157. package/lib/test/Integration/Gateways/PorticoConnector/Gift.test.d.ts +1 -0
  158. package/lib/test/Integration/Gateways/PorticoConnector/Gift.test.js +121 -0
  159. package/lib/test/Integration/Gateways/PorticoConnector/Gift.test.js.map +1 -0
  160. package/lib/test/Integration/Gateways/PorticoConnector/PorticoManagementToken.test.d.ts +1 -0
  161. package/lib/test/Integration/Gateways/PorticoConnector/PorticoManagementToken.test.js +40 -0
  162. package/lib/test/Integration/Gateways/PorticoConnector/PorticoManagementToken.test.js.map +1 -0
  163. package/lib/test/Integration/Gateways/PorticoConnector/Recurring.test.d.ts +1 -0
  164. package/lib/test/Integration/Gateways/PorticoConnector/Recurring.test.js +87 -0
  165. package/lib/test/Integration/Gateways/PorticoConnector/Recurring.test.js.map +1 -0
  166. package/lib/test/Integration/Gateways/PorticoConnector/Reporting.test.d.ts +1 -0
  167. package/lib/test/Integration/Gateways/PorticoConnector/Reporting.test.js +44 -0
  168. package/lib/test/Integration/Gateways/PorticoConnector/Reporting.test.js.map +1 -0
  169. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/GetInformationCertification.test.d.ts +1 -0
  170. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/GetInformationCertification.test.js +38 -0
  171. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/GetInformationCertification.test.js.map +1 -0
  172. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/ProPayAccountCertification.test.d.ts +1 -0
  173. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/ProPayAccountCertification.test.js +206 -0
  174. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/ProPayAccountCertification.test.js.map +1 -0
  175. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/ProPayFundCertification.test.d.ts +1 -0
  176. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/ProPayFundCertification.test.js +52 -0
  177. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/ProPayFundCertification.test.js.map +1 -0
  178. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/ProPayInNetworkTransactionCertification.test.d.ts +1 -0
  179. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/ProPayInNetworkTransactionCertification.test.js +72 -0
  180. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/ProPayInNetworkTransactionCertification.test.js.map +1 -0
  181. package/lib/test/Integration/Gateways/ProPayConnector/GetInformation.test.d.ts +1 -0
  182. package/lib/test/Integration/Gateways/ProPayConnector/GetInformation.test.js +37 -0
  183. package/lib/test/Integration/Gateways/ProPayConnector/GetInformation.test.js.map +1 -0
  184. package/lib/test/Integration/Gateways/ProPayConnector/ProPayAccount.test.d.ts +1 -0
  185. package/lib/test/Integration/Gateways/ProPayConnector/ProPayAccount.test.js +310 -0
  186. package/lib/test/Integration/Gateways/ProPayConnector/ProPayAccount.test.js.map +1 -0
  187. package/lib/test/Integration/Gateways/ProPayConnector/ProPayFunds.test.d.ts +1 -0
  188. package/lib/test/Integration/Gateways/ProPayConnector/ProPayFunds.test.js +53 -0
  189. package/lib/test/Integration/Gateways/ProPayConnector/ProPayFunds.test.js.map +1 -0
  190. package/lib/test/Integration/Gateways/ProPayConnector/ProPayInNetworkTransaction.test.d.ts +1 -0
  191. package/lib/test/Integration/Gateways/ProPayConnector/ProPayInNetworkTransaction.test.js +72 -0
  192. package/lib/test/Integration/Gateways/ProPayConnector/ProPayInNetworkTransaction.test.js.map +1 -0
  193. package/lib/test/Integration/Gateways/Terminals/UPA/UpaMic.test.d.ts +1 -0
  194. package/lib/test/Integration/Gateways/Terminals/UPA/UpaMic.test.js +165 -0
  195. package/lib/test/Integration/Gateways/Terminals/UPA/UpaMic.test.js.map +1 -0
  196. package/lib/test/Integration/Services/CheckService.test.d.ts +1 -0
  197. package/lib/test/Integration/Services/CheckService.test.js +38 -0
  198. package/lib/test/Integration/Services/CheckService.test.js.map +1 -0
  199. package/lib/test/Integration/Services/CreditService.test.d.ts +1 -0
  200. package/lib/test/Integration/Services/CreditService.test.js +158 -0
  201. package/lib/test/Integration/Services/CreditService.test.js.map +1 -0
  202. package/lib/test/Integration/Services/DebitService.test.d.ts +1 -0
  203. package/lib/test/Integration/Services/DebitService.test.js +77 -0
  204. package/lib/test/Integration/Services/DebitService.test.js.map +1 -0
  205. package/lib/test/Integration/Services/EBTService.test.d.ts +1 -0
  206. package/lib/test/Integration/Services/EBTService.test.js +54 -0
  207. package/lib/test/Integration/Services/EBTService.test.js.map +1 -0
  208. package/lib/test/Unit/Builders/AuthorizationBuilder/Validation.test.d.ts +1 -0
  209. package/lib/test/Unit/Builders/AuthorizationBuilder/Validation.test.js +122 -0
  210. package/lib/test/Unit/Builders/AuthorizationBuilder/Validation.test.js.map +1 -0
  211. package/lib/test/Unit/Builders/ReportBuilder/Validation.test.d.ts +1 -0
  212. package/lib/test/Unit/Builders/ReportBuilder/Validation.test.js +66 -0
  213. package/lib/test/Unit/Builders/ReportBuilder/Validation.test.js.map +1 -0
  214. package/lib/test/Unit/Gateways/GpEcomConnector/Credit.test.d.ts +1 -0
  215. package/lib/test/Unit/Gateways/GpEcomConnector/Credit.test.js +32 -0
  216. package/lib/test/Unit/Gateways/GpEcomConnector/Credit.test.js.map +1 -0
  217. package/lib/test/Unit/Gateways/PorticoConnector/InputValidation.test.d.ts +1 -0
  218. package/lib/test/Unit/Gateways/PorticoConnector/InputValidation.test.js +128 -0
  219. package/lib/test/Unit/Gateways/PorticoConnector/InputValidation.test.js.map +1 -0
  220. package/package.json +7 -17
@@ -0,0 +1,151 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const src_1 = require("../../../../src");
4
+ const Data_1 = require("../../../Data");
5
+ const date = new Date();
6
+ const currency = "USD";
7
+ const card = new src_1.CreditCardData();
8
+ card.number = "4263970000005262";
9
+ card.expMonth = (date.getMonth() + 1).toString().padStart(2, "0");
10
+ card.expYear = (date.getFullYear() + 1).toString();
11
+ card.cvn = "131";
12
+ card.cardHolderName = "James Mason";
13
+ beforeEach(() => {
14
+ src_1.ServicesContainer.configureService(Data_1.BaseGpApiTestConfig.gpApiSetupConfig(src_1.Channel.CardNotPresent));
15
+ });
16
+ test("verify tokenized payment method", async () => {
17
+ const response = await card.tokenize().execute();
18
+ expect(response).toBeTruthy();
19
+ expect("SUCCESS").toBe(response.responseCode);
20
+ const tokenizedCard = new src_1.CreditCardData();
21
+ tokenizedCard.token = response.token;
22
+ const verifyResponse = await tokenizedCard
23
+ .verify()
24
+ .withCurrency(currency)
25
+ .execute();
26
+ expect(verifyResponse).toBeTruthy();
27
+ expect("SUCCESS").toBe(verifyResponse.responseCode);
28
+ expect("VERIFIED").toBe(verifyResponse.responseMessage);
29
+ });
30
+ test("verify tokenized payment method with idempotency key", async () => {
31
+ const idempotencyKey = src_1.GenerationUtils.getGuuid();
32
+ const response = await card.tokenize().execute();
33
+ expect(response).toBeTruthy();
34
+ expect("SUCCESS").toBe(response.responseCode);
35
+ const tokenizedCard = new src_1.CreditCardData();
36
+ tokenizedCard.token = response.token;
37
+ const verifyResponse = await tokenizedCard
38
+ .verify()
39
+ .withCurrency(currency)
40
+ .withIdempotencyKey(idempotencyKey)
41
+ .execute();
42
+ expect(verifyResponse).toBeTruthy();
43
+ expect("SUCCESS").toBe(verifyResponse.responseCode);
44
+ expect("VERIFIED").toBe(verifyResponse.responseMessage);
45
+ try {
46
+ await tokenizedCard
47
+ .verify()
48
+ .withCurrency(currency)
49
+ .withIdempotencyKey(idempotencyKey)
50
+ .execute();
51
+ }
52
+ catch (error) {
53
+ expect(error).toBeTruthy();
54
+ expect(error?.responseCode).toBe("40039");
55
+ expect(error?.message).toBe("Status Code: DUPLICATE_ACTION - Idempotency Key seen before: id=".concat(verifyResponse.transactionId));
56
+ expect(error).toBeInstanceOf(src_1.GatewayError);
57
+ }
58
+ });
59
+ test("update tokenized payment method then verify", async () => {
60
+ const response = await card.tokenize().execute();
61
+ expect(response).toBeTruthy();
62
+ expect("SUCCESS").toBe(response.responseCode);
63
+ const tokenizedCard = new src_1.CreditCardData();
64
+ tokenizedCard.token = response.token;
65
+ tokenizedCard.expMonth = "12";
66
+ tokenizedCard.expYear = "2030";
67
+ expect(await tokenizedCard.updateTokenExpiry()).toBe(true);
68
+ const verifyResponse = await tokenizedCard
69
+ .verify()
70
+ .withCurrency(currency)
71
+ .execute();
72
+ expect(verifyResponse).toBeTruthy();
73
+ expect("SUCCESS").toBe(verifyResponse.responseCode);
74
+ expect("VERIFIED").toBe(verifyResponse.responseMessage);
75
+ });
76
+ test("verify tokenized payment method with malformed id", async () => {
77
+ const tokenizedCard = new src_1.CreditCardData();
78
+ tokenizedCard.token = "This_is_not_a_payment_id";
79
+ try {
80
+ await tokenizedCard.verify().withCurrency(currency).execute();
81
+ }
82
+ catch (error) {
83
+ expect(error).toBeTruthy();
84
+ expect(error?.message).toBe("Status Code: INVALID_REQUEST_DATA - payment_method.id: This_is_not_a_payment_id contains unexpected data");
85
+ expect(error?.responseCode).toBe("40213");
86
+ expect(error).toBeInstanceOf(src_1.GatewayError);
87
+ }
88
+ });
89
+ test("tokenize payment method with missing card number", async () => {
90
+ const card = new src_1.CreditCardData();
91
+ card.expMonth = (date.getMonth() + 1).toString().padStart(2, "0");
92
+ card.expYear = (date.getFullYear() + 1).toString();
93
+ try {
94
+ await card.tokenize().execute();
95
+ }
96
+ catch (error) {
97
+ expect(error).toBeTruthy();
98
+ expect(error?.message).toBe("Status Code: MANDATORY_DATA_MISSING - Request expects the following fields : number");
99
+ expect(error?.responseCode).toBe("40005");
100
+ expect(error).toBeInstanceOf(src_1.GatewayError);
101
+ }
102
+ });
103
+ test("verify tokenized payment method with random id", async () => {
104
+ const tokenizedCard = new src_1.CreditCardData();
105
+ tokenizedCard.token = "PMT_".concat(src_1.GenerationUtils.getGuuid());
106
+ try {
107
+ await tokenizedCard.verify().withCurrency(currency).execute();
108
+ }
109
+ catch (error) {
110
+ expect(error).toBeTruthy();
111
+ expect(error?.message).toBe("Status Code: RESOURCE_NOT_FOUND - payment_method "
112
+ .concat(tokenizedCard.token)
113
+ .concat(" not found at this location."));
114
+ expect(error?.responseCode).toBe("40116");
115
+ expect(error).toBeInstanceOf(src_1.GatewayError);
116
+ }
117
+ });
118
+ test("update tokenized payment method with malformed id", async () => {
119
+ const tokenizedCard = new src_1.CreditCardData();
120
+ tokenizedCard.token = "This_is_not_a_payment_id";
121
+ tokenizedCard.expYear = (date.getFullYear() + 1).toString();
122
+ tokenizedCard.expMonth = (date.getMonth() + 1).toString().padStart(2, "0");
123
+ try {
124
+ await tokenizedCard.updateTokenExpiry();
125
+ }
126
+ catch (error) {
127
+ expect(error).toBeTruthy();
128
+ expect(error?.message).toBe("Status Code: INVALID_REQUEST_DATA - payment_method.id: This_is_not_a_payment_id contains unexpected data");
129
+ expect(error?.responseCode).toBe("40213");
130
+ expect(error).toBeInstanceOf(src_1.GatewayError);
131
+ }
132
+ });
133
+ test("update tokenized payment method with random id", async () => {
134
+ const tokenizedCard = new src_1.CreditCardData();
135
+ tokenizedCard.token = "PMT_".concat(src_1.GenerationUtils.getGuuid());
136
+ tokenizedCard.expYear = (date.getFullYear() + 1).toString();
137
+ tokenizedCard.expMonth = (date.getMonth() + 1).toString().padStart(2, "0");
138
+ try {
139
+ await tokenizedCard.updateTokenExpiry();
140
+ }
141
+ catch (error) {
142
+ expect(error).toBeTruthy();
143
+ expect(error?.message).toBe("Status Code: RESOURCE_NOT_FOUND - payment_method "
144
+ .concat(tokenizedCard.token)
145
+ .concat(" not found at this location."));
146
+ expect(error?.responseCode).toBe("40116");
147
+ expect(error).toBeInstanceOf(src_1.GatewayError);
148
+ }
149
+ });
150
+ afterAll(() => Data_1.BaseGpApiTestConfig.resetGpApiConfig());
151
+ //# sourceMappingURL=GpApiTokenManagement.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GpApiTokenManagement.test.js","sourceRoot":"","sources":["../../../../../test/Integration/Gateways/GpApiConnector/GpApiTokenManagement.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,226 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const src_1 = require("../../../../src");
4
+ const BaseGpApiTestConfig_1 = require("../../../Data/BaseGpApiTestConfig");
5
+ const startDate = new Date(), endDate = new Date();
6
+ startDate.setFullYear(startDate.getFullYear() - 1);
7
+ startDate.setHours(0);
8
+ startDate.setMinutes(0);
9
+ startDate.setSeconds(0);
10
+ endDate.setDate(endDate.getDate() - 1);
11
+ endDate.setHours(0);
12
+ endDate.setMinutes(0);
13
+ endDate.setSeconds(0);
14
+ let depositSummary = new src_1.DepositSummary();
15
+ beforeAll(async () => {
16
+ src_1.ServicesContainer.configureService(BaseGpApiTestConfig_1.BaseGpApiTestConfig.gpApiSetupConfig(src_1.Channel.CardNotPresent));
17
+ const response = await src_1.ReportingService.findDepositsPaged(1, 1)
18
+ .orderBy(src_1.DepositSortProperty.TimeCreated, src_1.SortDirection.Asc)
19
+ .where(src_1.SearchCriteria.StartDate, startDate)
20
+ .andWith(src_1.SearchCriteria.EndDate, endDate)
21
+ .execute();
22
+ if (response.result.length === 1) {
23
+ depositSummary = response.result.pop();
24
+ }
25
+ });
26
+ afterAll(() => BaseGpApiTestConfig_1.BaseGpApiTestConfig.resetGpApiConfig());
27
+ test("report deposit detail", async () => {
28
+ const depositId = depositSummary.depositId || "DEP_2342423443";
29
+ try {
30
+ const response = await src_1.ReportingService.depositDetail(depositId).execute();
31
+ expect(response).toBeTruthy();
32
+ expect(response instanceof src_1.DepositSummary).toBe(true);
33
+ expect(depositId).toBe(response.depositId);
34
+ }
35
+ catch (e) {
36
+ console.log(e);
37
+ expect(e.message.includes("Deposit detail failed with")).toBe(true);
38
+ }
39
+ });
40
+ test("report deposit detail - wrong id", async () => {
41
+ const depositId = "DEP_0000000001";
42
+ try {
43
+ await src_1.ReportingService.depositDetail(depositId).execute();
44
+ }
45
+ catch (error) {
46
+ expect(error).toBeTruthy();
47
+ expect(error?.responseCode).toBe("40118");
48
+ expect(error?.message.includes(`Status Code: RESOURCE_NOT_FOUND - Deposits ${depositId} not found at this /ucp/settlement/deposits/${depositId}`)).toBe(true);
49
+ expect(error).toBeInstanceOf(src_1.GatewayError);
50
+ }
51
+ });
52
+ test("report find deposits by startDate and order by time created", async () => {
53
+ const response = await src_1.ReportingService.findDepositsPaged(1, 10)
54
+ .orderBy(src_1.DepositSortProperty.TimeCreated, src_1.SortDirection.Desc)
55
+ .where(src_1.SearchCriteria.StartDate, startDate)
56
+ .execute();
57
+ expect(response).toBeTruthy();
58
+ expect(response.result.length !== 0).toBe(true);
59
+ const randomDeposit = response.result[Math.round(Math.random() * (response.result.length - 1))];
60
+ expect(randomDeposit).toBeTruthy();
61
+ expect(randomDeposit instanceof src_1.DepositSummary).toBe(true);
62
+ expect(startDate.getTime() <= new Date(randomDeposit.depositDate).getTime()).toBe(true);
63
+ });
64
+ test("report find deposits order by deposit id", async () => {
65
+ const response = await src_1.ReportingService.findDepositsPaged(1, 10)
66
+ .orderBy(src_1.DepositSortProperty.DepositId, src_1.SortDirection.Desc)
67
+ .where(src_1.SearchCriteria.StartDate, startDate)
68
+ .execute();
69
+ expect(response).toBeTruthy();
70
+ expect(response.result.length !== 0).toBe(true);
71
+ const randomDeposit = response.result[Math.round(Math.random() * (response.result.length - 1))];
72
+ expect(randomDeposit).toBeTruthy();
73
+ expect(randomDeposit instanceof src_1.DepositSummary).toBe(true);
74
+ });
75
+ test("report find deposits order by status", async () => {
76
+ const response = await src_1.ReportingService.findDepositsPaged(1, 10)
77
+ .orderBy(src_1.DepositSortProperty.Status, src_1.SortDirection.Desc)
78
+ .where(src_1.SearchCriteria.StartDate, startDate)
79
+ .execute();
80
+ expect(response).toBeTruthy();
81
+ expect(response.result.length !== 0).toBe(true);
82
+ const randomDeposit = response.result[Math.round(Math.random() * (response.result.length - 1))];
83
+ expect(randomDeposit).toBeTruthy();
84
+ expect(randomDeposit instanceof src_1.DepositSummary).toBe(true);
85
+ });
86
+ test("report find deposits order by type", async () => {
87
+ const response = await src_1.ReportingService.findDepositsPaged(1, 10)
88
+ .orderBy(src_1.DepositSortProperty.Type, src_1.SortDirection.Desc)
89
+ .where(src_1.SearchCriteria.StartDate, startDate)
90
+ .execute();
91
+ expect(response).toBeTruthy();
92
+ expect(response.result.length !== 0).toBe(true);
93
+ const randomDeposit = response.result[Math.round(Math.random() * (response.result.length - 1))];
94
+ expect(randomDeposit).toBeTruthy();
95
+ expect(randomDeposit instanceof src_1.DepositSummary).toBe(true);
96
+ });
97
+ test("report find deposits with end date", async () => {
98
+ const response = await src_1.ReportingService.findDepositsPaged(1, 10)
99
+ .orderBy(src_1.DepositSortProperty.TimeCreated, src_1.SortDirection.Desc)
100
+ .where(src_1.SearchCriteria.StartDate, startDate)
101
+ .andWith(src_1.SearchCriteria.EndDate, endDate)
102
+ .execute();
103
+ expect(response).toBeTruthy();
104
+ expect(response.result.length !== 0).toBe(true);
105
+ const randomDeposit = response.result[Math.round(Math.random() * (response.result.length - 1))];
106
+ expect(randomDeposit).toBeTruthy();
107
+ expect(randomDeposit instanceof src_1.DepositSummary).toBe(true);
108
+ });
109
+ test("report find deposits by not found amount", async () => {
110
+ const response = await src_1.ReportingService.findDepositsPaged(1, 10)
111
+ .orderBy(src_1.DepositSortProperty.TimeCreated, src_1.SortDirection.Desc)
112
+ .where(src_1.SearchCriteria.StartDate, startDate)
113
+ .andWith(src_1.DataServiceCriteria.Amount, 1)
114
+ .execute();
115
+ expect(response).toBeTruthy();
116
+ expect(response.result.length === 0).toBe(true);
117
+ });
118
+ test("report find deposits by amount", async () => {
119
+ const amount = depositSummary?.amount || 100;
120
+ const response = await src_1.ReportingService.findDepositsPaged(1, 10)
121
+ .orderBy(src_1.DepositSortProperty.TimeCreated, src_1.SortDirection.Desc)
122
+ .where(src_1.SearchCriteria.StartDate, startDate)
123
+ .andWith(src_1.DataServiceCriteria.Amount, amount)
124
+ .execute();
125
+ expect(response).toBeTruthy();
126
+ expect(response.result.length !== 0).toBe(true);
127
+ const randomDeposit = response.result[Math.round(Math.random() * (response.result.length - 1))];
128
+ expect(randomDeposit).toBeTruthy();
129
+ expect(randomDeposit instanceof src_1.DepositSummary).toBe(true);
130
+ expect(response.result
131
+ .map((deposit) => deposit.amount)
132
+ .filter((depositAmount) => Number(depositAmount) != amount)
133
+ .length === 0).toBe(true);
134
+ });
135
+ test("report find deposits filter by deposit status", async () => {
136
+ const response = await src_1.ReportingService.findDepositsPaged(1, 10)
137
+ .orderBy(src_1.DepositSortProperty.TimeCreated, src_1.SortDirection.Desc)
138
+ .where(src_1.SearchCriteria.DepositStatus, "SPLIT_FUNDING")
139
+ .execute();
140
+ expect(response).toBeTruthy();
141
+ expect(response.result.length !== 0).toBe(true);
142
+ const randomDeposit = response.result[Math.round(Math.random() * (response.result.length - 1))];
143
+ expect(randomDeposit).toBeTruthy();
144
+ expect(randomDeposit instanceof src_1.DepositSummary).toBe(true);
145
+ expect(startDate.getTime() <= new Date(randomDeposit.depositDate).getTime()).toBe(true);
146
+ expect(randomDeposit.status).toBe("SPLIT FUNDING");
147
+ });
148
+ test("report find deposits filter by masked account number last4", async () => {
149
+ const response = await src_1.ReportingService.findDepositsPaged(1, 10)
150
+ .orderBy(src_1.DepositSortProperty.TimeCreated, src_1.SortDirection.Desc)
151
+ .where(src_1.SearchCriteria.AccountNumberLastFour, "9999")
152
+ .execute();
153
+ expect(response).toBeTruthy();
154
+ expect(response.result.length !== 0).toBe(true);
155
+ const randomDeposit = response.result[Math.round(Math.random() * (response.result.length - 1))];
156
+ expect(randomDeposit).toBeTruthy();
157
+ expect(randomDeposit instanceof src_1.DepositSummary).toBe(true);
158
+ expect(startDate.getTime() <= new Date(randomDeposit.depositDate).getTime()).toBe(true);
159
+ });
160
+ test("report find deposits filter by system hierarchy", async () => {
161
+ const response = await src_1.ReportingService.findDepositsPaged(1, 10)
162
+ .orderBy(src_1.DepositSortProperty.TimeCreated, src_1.SortDirection.Desc)
163
+ .where(src_1.DataServiceCriteria.SystemHierarchy, "055-70-024-011-019")
164
+ .execute();
165
+ expect(response).toBeTruthy();
166
+ expect(response.result.length !== 0).toBe(true);
167
+ const randomDeposit = response.result[Math.round(Math.random() * (response.result.length - 1))];
168
+ expect(randomDeposit).toBeTruthy();
169
+ expect(randomDeposit instanceof src_1.DepositSummary).toBe(true);
170
+ expect(startDate.getTime() <= new Date(randomDeposit.depositDate).getTime()).toBe(true);
171
+ });
172
+ test("report find deposits filter by wrong system hierarchy", async () => {
173
+ const response = await src_1.ReportingService.findDepositsPaged(1, 10)
174
+ .orderBy(src_1.DepositSortProperty.TimeCreated, src_1.SortDirection.Desc)
175
+ .where(src_1.DataServiceCriteria.SystemHierarchy, "042-70-013-011-018")
176
+ .execute();
177
+ expect(response).toBeTruthy();
178
+ expect(response.result.length == 0).toBe(true);
179
+ });
180
+ test("report find deposits filter by random uuid system hierarchy", async () => {
181
+ try {
182
+ await src_1.ReportingService.findDepositsPaged(1, 10)
183
+ .orderBy(src_1.DepositSortProperty.TimeCreated, src_1.SortDirection.Desc)
184
+ .where(src_1.DataServiceCriteria.SystemHierarchy, src_1.GenerationUtils.getGuuid())
185
+ .execute();
186
+ }
187
+ catch (error) {
188
+ expect(error).toBeTruthy();
189
+ expect(error?.message).toBe(`Status Code: INVALID_REQUEST_DATA - Invalid Value provided in the input field - system.hierarchy`);
190
+ expect(error?.responseCode).toBe("40105");
191
+ expect(error).toBeInstanceOf(src_1.GatewayError);
192
+ }
193
+ });
194
+ test("report find deposits filter by merchant id", async () => {
195
+ const response = await src_1.ReportingService.findDepositsPaged(1, 10)
196
+ .orderBy(src_1.DepositSortProperty.TimeCreated, src_1.SortDirection.Desc)
197
+ .where(src_1.DataServiceCriteria.MerchantId, "101023947262")
198
+ .execute();
199
+ expect(response).toBeTruthy();
200
+ expect(response.result.length !== 0).toBe(true);
201
+ const randomDeposit = response.result[Math.round(Math.random() * (response.result.length - 1))];
202
+ expect(randomDeposit).toBeTruthy();
203
+ expect(randomDeposit instanceof src_1.DepositSummary).toBe(true);
204
+ expect(startDate.getTime() <= new Date(randomDeposit.depositDate).getTime()).toBe(true);
205
+ });
206
+ test("report find deposits filter by wrong merchant id", async () => {
207
+ const response = await src_1.ReportingService.findDepositsPaged(1, 10)
208
+ .orderBy(src_1.DepositSortProperty.TimeCreated, src_1.SortDirection.Desc)
209
+ .where(src_1.DataServiceCriteria.MerchantId, "000023985843")
210
+ .execute();
211
+ expect(response).toBeTruthy();
212
+ expect(response.result.length == 0).toBe(true);
213
+ });
214
+ test("report find deposits filter by deposit id", async () => {
215
+ const response = await src_1.ReportingService.findDepositsPaged(1, 10)
216
+ .orderBy(src_1.DepositSortProperty.TimeCreated, src_1.SortDirection.Desc)
217
+ .withDepositId("DEP_2342423440")
218
+ .execute();
219
+ expect(response).toBeTruthy();
220
+ expect(response.result.length !== 0).toBe(true);
221
+ const randomDeposit = response.result[Math.round(Math.random() * (response.result.length - 1))];
222
+ expect(randomDeposit).toBeTruthy();
223
+ expect(randomDeposit instanceof src_1.DepositSummary).toBe(true);
224
+ expect(startDate.getTime() <= new Date(randomDeposit.depositDate).getTime()).toBe(true);
225
+ });
226
+ //# sourceMappingURL=ReportingDeposits.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ReportingDeposits.test.js","sourceRoot":"","sources":["../../../../../test/Integration/Gateways/GpApiConnector/ReportingDeposits.test.ts"],"names":[],"mappings":"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"}