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 @@
1
+ {"version":3,"file":"Moto.test.js","sourceRoot":"","sources":["../../../../../../test/Integration/Gateways/PorticoConnector/Certifications/Moto.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,80 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const src_1 = require("../../../../../src");
4
+ const Data_1 = require("../../../../Data");
5
+ const config = new src_1.PorticoConfig();
6
+ config.secretApiKey = "skapi_cert_MTyMAQBiHVEAewvIzXVFcmUd2UcyBge_eCpaASUp0A";
7
+ const address = new src_1.Address();
8
+ address.streetAddress1 = "123 Main St.";
9
+ address.city = "Downtown";
10
+ address.province = "NJ";
11
+ address.postalCode = "12345";
12
+ beforeAll(() => {
13
+ src_1.ServicesContainer.configureService(config);
14
+ });
15
+ /// ACH Debit - Consumer
16
+ test("001 - web personal checking", () => {
17
+ const check = Data_1.TestChecks.certification(src_1.SecCode.WEB, src_1.CheckType.Personal, src_1.AccountType.Checking);
18
+ return new Promise((resolve, reject) => {
19
+ check
20
+ .charge(23.0)
21
+ .withCurrency("USD")
22
+ .withAddress(address)
23
+ .execute()
24
+ .then((response) => {
25
+ expect(response).toBeTruthy();
26
+ expect(response.responseCode).toBe("00");
27
+ resolve();
28
+ })
29
+ .catch(reject);
30
+ });
31
+ });
32
+ test("002 - web business checking", () => {
33
+ const check = Data_1.TestChecks.certification(src_1.SecCode.WEB, src_1.CheckType.Business, src_1.AccountType.Checking);
34
+ return new Promise((resolve, reject) => {
35
+ check
36
+ .charge(24.0)
37
+ .withCurrency("USD")
38
+ .withAddress(address)
39
+ .execute()
40
+ .then((response) => {
41
+ expect(response).toBeTruthy();
42
+ expect(response.responseCode).toBe("00");
43
+ resolve();
44
+ })
45
+ .catch(reject);
46
+ });
47
+ });
48
+ test("003 - web personal savings", () => {
49
+ const check = Data_1.TestChecks.certification(src_1.SecCode.WEB, src_1.CheckType.Personal, src_1.AccountType.Savings);
50
+ return new Promise((resolve, reject) => {
51
+ check
52
+ .charge(25.0)
53
+ .withCurrency("USD")
54
+ .withAddress(address)
55
+ .execute()
56
+ .then((response) => {
57
+ expect(response).toBeTruthy();
58
+ expect(response.responseCode).toBe("00");
59
+ resolve();
60
+ })
61
+ .catch(reject);
62
+ });
63
+ });
64
+ test("004 - web business savings", () => {
65
+ const check = Data_1.TestChecks.certification(src_1.SecCode.WEB, src_1.CheckType.Business, src_1.AccountType.Savings);
66
+ return new Promise((resolve, reject) => {
67
+ check
68
+ .charge(5.0)
69
+ .withCurrency("USD")
70
+ .withAddress(address)
71
+ .execute()
72
+ .then((response) => {
73
+ expect(response).toBeTruthy();
74
+ expect(response.responseCode).toBe("00");
75
+ resolve();
76
+ })
77
+ .catch(reject);
78
+ });
79
+ });
80
+ //# sourceMappingURL=MotoCheck.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MotoCheck.test.js","sourceRoot":"","sources":["../../../../../../test/Integration/Gateways/PorticoConnector/Certifications/MotoCheck.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,393 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const src_1 = require("../../../../../src");
4
+ const config = new src_1.PorticoConfig();
5
+ config.secretApiKey = "skapi_cert_MbPdAQBL1l4A2ThZoTBKXEdEG1rIi7KAa6Yskl9Nzg";
6
+ const BATCH_NOT_OPEN = "Transaction was rejected because it requires a batch to be open.";
7
+ const BATCH_EMPTY = "Batch close was rejected because no transactions are associated with the currently open batch";
8
+ let customerPerson;
9
+ let customerBusiness;
10
+ let paymentMethodVisa;
11
+ let paymentMethodMasterCard;
12
+ let paymentMethodCheckPpd;
13
+ let paymentMethodCheckCcd;
14
+ let scheduleVisa;
15
+ let scheduleMasterCard;
16
+ let scheduleCheckPpd;
17
+ let scheduleCheckCcd;
18
+ const todayDate = src_1.GenerationUtils.generateTimestamp();
19
+ const getIdentifier = (id) => `${todayDate}-${id}-${src_1.StringUtils.uuid()}`.substr(0, 50);
20
+ beforeAll(() => {
21
+ src_1.ServicesContainer.configureService(config);
22
+ });
23
+ beforeAll(() => {
24
+ return new Promise((resolve, reject) => {
25
+ src_1.BatchService.closeBatch()
26
+ .then((response) => {
27
+ expect(response).toBeTruthy();
28
+ resolve();
29
+ })
30
+ .catch((e) => {
31
+ if (e.message.indexOf(BATCH_NOT_OPEN) !== -1 ||
32
+ e.message.indexOf(BATCH_EMPTY) !== -1) {
33
+ resolve();
34
+ return;
35
+ }
36
+ reject(e);
37
+ });
38
+ });
39
+ });
40
+ beforeAll(async () => {
41
+ try {
42
+ const results = await src_1.Schedule.findAll();
43
+ for (const result in results) {
44
+ if (results.hasOwnProperty(result)) {
45
+ const schedule = results[result];
46
+ await schedule.delete("default");
47
+ }
48
+ }
49
+ }
50
+ catch (_e) {
51
+ //
52
+ }
53
+ try {
54
+ const results = await src_1.RecurringPaymentMethod.findAll();
55
+ for (const result in results) {
56
+ if (results.hasOwnProperty(result)) {
57
+ const paymentMethod = results[result];
58
+ await paymentMethod.delete("default");
59
+ }
60
+ }
61
+ }
62
+ catch (_e) {
63
+ //
64
+ }
65
+ try {
66
+ const results = await src_1.Customer.findAll();
67
+ for (const result in results) {
68
+ if (results.hasOwnProperty(result)) {
69
+ const customer = results[result];
70
+ await customer.delete("default");
71
+ }
72
+ }
73
+ }
74
+ catch (_e) {
75
+ //
76
+ }
77
+ });
78
+ describe("Recurring Test Suite", () => {
79
+ // customer setup
80
+ test("001 - add customer person", async () => {
81
+ let customer = new src_1.Customer();
82
+ customer.id = getIdentifier("Person");
83
+ customer.firstName = "John";
84
+ customer.lastName = "Doe";
85
+ customer.status = "Active";
86
+ customer.email = "john.doe@email.com";
87
+ customer.address = new src_1.Address();
88
+ customer.address.streetAddress1 = "123 Main St.";
89
+ customer.address.city = "Dallas";
90
+ customer.address.state = "TX";
91
+ customer.address.postalCode = "98765";
92
+ customer.address.country = "USA";
93
+ customer.workPhone = "5551112222";
94
+ customer = await customer.create();
95
+ expect(customer).toBeTruthy();
96
+ expect(customer.key).toBeTruthy();
97
+ customerPerson = customer;
98
+ });
99
+ test("002 - add customer person", async () => {
100
+ let customer = new src_1.Customer();
101
+ customer.id = getIdentifier("Business");
102
+ customer.company = "AcmeCo";
103
+ customer.status = "Active";
104
+ customer.email = "acme@email.com";
105
+ customer.address = new src_1.Address();
106
+ customer.address.streetAddress1 = "987 Elm St.";
107
+ customer.address.city = "Princeton";
108
+ customer.address.state = "NJ";
109
+ customer.address.postalCode = "12345";
110
+ customer.address.country = "USA";
111
+ customer.workPhone = "5551112222";
112
+ customer = await customer.create();
113
+ expect(customer).toBeTruthy();
114
+ expect(customer.key).toBeTruthy();
115
+ customerBusiness = customer;
116
+ });
117
+ // payment method setup
118
+ test("003 - add payment credit visa", async () => {
119
+ if (!customerPerson) {
120
+ return;
121
+ }
122
+ const card = new src_1.CreditCardData();
123
+ card.number = "4012002000060016";
124
+ card.expMonth = "12";
125
+ card.expYear = "2025";
126
+ const paymentMethod = await customerPerson
127
+ .addPaymentMethod(getIdentifier("CreditV"), card)
128
+ .create();
129
+ expect(paymentMethod).toBeTruthy();
130
+ expect(paymentMethod.key).toBeTruthy();
131
+ paymentMethodVisa = paymentMethod;
132
+ });
133
+ test("004 - add payment credit visa", async () => {
134
+ if (!customerPerson) {
135
+ return;
136
+ }
137
+ const card = new src_1.CreditCardData();
138
+ card.number = "5473500000000014";
139
+ card.expMonth = "12";
140
+ card.expYear = "2025";
141
+ const paymentMethod = await customerPerson
142
+ .addPaymentMethod(getIdentifier("CreditMC"), card)
143
+ .create();
144
+ expect(paymentMethod).toBeTruthy();
145
+ expect(paymentMethod.key).toBeTruthy();
146
+ paymentMethodMasterCard = paymentMethod;
147
+ });
148
+ test("005 - add payment check ppd", async () => {
149
+ if (!customerPerson) {
150
+ return;
151
+ }
152
+ const check = new src_1.ECheck();
153
+ check.accountType = src_1.AccountType.Checking;
154
+ check.checkType = src_1.CheckType.Personal;
155
+ check.secCode = src_1.SecCode.PPD;
156
+ check.routingNumber = "490000018";
157
+ check.driversLicenseNumber = "7418529630";
158
+ check.driversLicenseState = "TX";
159
+ check.accountNumber = "24413815";
160
+ check.birthYear = "1989";
161
+ const paymentMethod = await customerPerson
162
+ .addPaymentMethod(getIdentifier("CheckPPD"), check)
163
+ .create();
164
+ expect(paymentMethod).toBeTruthy();
165
+ expect(paymentMethod.key).toBeTruthy();
166
+ paymentMethodCheckPpd = paymentMethod;
167
+ });
168
+ test("006 - add payment check ccd", async () => {
169
+ if (!customerBusiness) {
170
+ return;
171
+ }
172
+ const check = new src_1.ECheck();
173
+ check.accountType = src_1.AccountType.Checking;
174
+ check.checkType = src_1.CheckType.Business;
175
+ check.secCode = src_1.SecCode.CCD;
176
+ check.routingNumber = "490000018";
177
+ check.driversLicenseNumber = "7418529630";
178
+ check.driversLicenseState = "TX";
179
+ check.accountNumber = "24413815";
180
+ check.birthYear = "1989";
181
+ const paymentMethod = await customerBusiness
182
+ .addPaymentMethod(getIdentifier("CheckCCD"), check)
183
+ .create();
184
+ expect(paymentMethod).toBeTruthy();
185
+ expect(paymentMethod.key).toBeTruthy();
186
+ paymentMethodCheckCcd = paymentMethod;
187
+ });
188
+ // managed schedule
189
+ test("008 - add schedule credit visa", async () => {
190
+ if (!paymentMethodVisa) {
191
+ return;
192
+ }
193
+ const schedule = await paymentMethodVisa
194
+ .addSchedule(getIdentifier("CreditV"))
195
+ .withStartDate(new Date(2027, 1, 1))
196
+ .withAmount(30.01)
197
+ .withFrequency(src_1.ScheduleFrequency.Weekly)
198
+ .withReprocessingCount(1)
199
+ .withStatus("Active")
200
+ .withEmailReceipt(src_1.EmailReceipt.Never)
201
+ .create();
202
+ expect(schedule).toBeTruthy();
203
+ expect(schedule.key).toBeTruthy();
204
+ scheduleVisa = schedule;
205
+ });
206
+ test("009 - add schedule credit mastercard", async () => {
207
+ if (!paymentMethodMasterCard) {
208
+ return;
209
+ }
210
+ const schedule = await paymentMethodMasterCard
211
+ .addSchedule(getIdentifier("CreditMC"))
212
+ .withStartDate(new Date(2027, 1, 1))
213
+ .withEndDate(new Date(2027, 3, 1))
214
+ .withAmount(30.02)
215
+ .withFrequency(src_1.ScheduleFrequency.Weekly)
216
+ .withReprocessingCount(2)
217
+ .withStatus("Active")
218
+ .withEmailReceipt(src_1.EmailReceipt.Never)
219
+ .create();
220
+ expect(schedule).toBeTruthy();
221
+ expect(schedule.key).toBeTruthy();
222
+ scheduleMasterCard = schedule;
223
+ });
224
+ test("010 - add schedule check ppd", async () => {
225
+ if (!paymentMethodCheckPpd) {
226
+ return;
227
+ }
228
+ const schedule = await paymentMethodCheckPpd
229
+ .addSchedule(getIdentifier("CheckPPD"))
230
+ .withStartDate(new Date(2027, 1, 1))
231
+ .withAmount(30.03)
232
+ .withFrequency(src_1.ScheduleFrequency.Monthly)
233
+ .withReprocessingCount(1)
234
+ .withNumberOfPayments(2)
235
+ .withStatus("Active")
236
+ .withEmailReceipt(src_1.EmailReceipt.Never)
237
+ .create();
238
+ expect(schedule).toBeTruthy();
239
+ expect(schedule.key).toBeTruthy();
240
+ scheduleCheckPpd = schedule;
241
+ });
242
+ test("011 - add schedule check ccd", async () => {
243
+ if (!paymentMethodCheckCcd) {
244
+ return;
245
+ }
246
+ const schedule = await paymentMethodCheckCcd
247
+ .addSchedule(getIdentifier("CheckCCD"))
248
+ .withStartDate(new Date(2027, 1, 1))
249
+ .withAmount(30.04)
250
+ .withFrequency(src_1.ScheduleFrequency.BiWeekly)
251
+ .withReprocessingCount(1)
252
+ .withStatus("Active")
253
+ .withEmailReceipt(src_1.EmailReceipt.Never)
254
+ .create();
255
+ expect(schedule).toBeTruthy();
256
+ expect(schedule.key).toBeTruthy();
257
+ scheduleCheckCcd = schedule;
258
+ });
259
+ // recurring billing
260
+ test("014 - recurring billing visa", async () => {
261
+ if (!paymentMethodVisa || !scheduleVisa) {
262
+ return;
263
+ }
264
+ const response = await paymentMethodVisa
265
+ .charge(20.01)
266
+ .withCurrency("USD")
267
+ .withScheduleId(scheduleVisa.key)
268
+ .withOneTimePayment(false)
269
+ .execute();
270
+ expect(response).toBeTruthy();
271
+ expect(response.responseCode).toBe("00");
272
+ });
273
+ test("015 - recurring billing mastercard", async () => {
274
+ if (!paymentMethodMasterCard || !scheduleMasterCard) {
275
+ return;
276
+ }
277
+ const response = await paymentMethodMasterCard
278
+ .charge(20.02)
279
+ .withCurrency("USD")
280
+ .withScheduleId(scheduleMasterCard.key)
281
+ .withOneTimePayment(false)
282
+ .execute();
283
+ expect(response).toBeTruthy();
284
+ expect(response.responseCode).toBe("00");
285
+ });
286
+ // TBD - odd behaviour with applicationb below
287
+ test.skip("016 - recurring billing check ppd", async () => {
288
+ if (!paymentMethodCheckPpd || !scheduleCheckPpd) {
289
+ return;
290
+ }
291
+ const response = await paymentMethodCheckPpd
292
+ .charge(20.03)
293
+ .withCurrency("USD")
294
+ .withScheduleId(scheduleVisa?.key)
295
+ .withOneTimePayment(false)
296
+ .execute();
297
+ expect(response).toBeTruthy();
298
+ expect(response.responseCode).toBe("00");
299
+ });
300
+ test.skip("017 - recurring billing check ccd", async () => {
301
+ if (!paymentMethodCheckCcd || !scheduleCheckCcd) {
302
+ return;
303
+ }
304
+ const response = await paymentMethodCheckCcd
305
+ .charge(20.04)
306
+ .withCurrency("USD")
307
+ .withScheduleId(scheduleVisa?.key)
308
+ .withOneTimePayment(false)
309
+ .execute();
310
+ expect(response).toBeTruthy();
311
+ expect(response.responseCode).toBe("00");
312
+ });
313
+ // recurring billing - one time
314
+ test("018 - recurring billing one time visa", async () => {
315
+ if (!paymentMethodVisa) {
316
+ return;
317
+ }
318
+ const response = await paymentMethodVisa.charge(20.06).execute();
319
+ expect(response).toBeTruthy();
320
+ expect(response.responseCode).toBe("00");
321
+ });
322
+ test("019 - recurring billing one time mastercard", async () => {
323
+ if (!paymentMethodMasterCard) {
324
+ return;
325
+ }
326
+ const response = await paymentMethodMasterCard
327
+ .charge(20.07)
328
+ .withCurrency("USD")
329
+ .execute();
330
+ expect(response).toBeTruthy();
331
+ expect(response.responseCode).toBe("00");
332
+ });
333
+ test.skip("020 - recurring billing one time check ppd", async () => {
334
+ if (!paymentMethodCheckPpd) {
335
+ return;
336
+ }
337
+ const response = await paymentMethodCheckPpd
338
+ .charge(20.08)
339
+ .withCurrency("USD")
340
+ .execute();
341
+ expect(response).toBeTruthy();
342
+ expect(response.responseCode).toBe("00");
343
+ });
344
+ test.skip("021 - recurring billing one time check ccd", async () => {
345
+ if (!paymentMethodCheckCcd) {
346
+ return;
347
+ }
348
+ const response = await paymentMethodCheckCcd
349
+ .charge(20.09)
350
+ .withCurrency("USD")
351
+ .execute();
352
+ expect(response).toBeTruthy();
353
+ expect(response.responseCode).toBe("00");
354
+ });
355
+ // recurring billing - one time - declines
356
+ test("022 - recurring billing one time visa decline", async () => {
357
+ if (!paymentMethodVisa) {
358
+ return;
359
+ }
360
+ const response = await paymentMethodVisa.charge(10.08).execute();
361
+ expect(response).toBeTruthy();
362
+ expect(response.responseCode).toBe("51");
363
+ });
364
+ test.skip("023 - recurring billing one time check ppd decline", async () => {
365
+ if (!paymentMethodCheckPpd) {
366
+ return;
367
+ }
368
+ const response = await paymentMethodCheckPpd
369
+ .charge(25.02)
370
+ .withCurrency("USD")
371
+ .execute();
372
+ expect(response).toBeTruthy();
373
+ expect(response.responseCode).toBe("00");
374
+ });
375
+ });
376
+ afterAll(() => {
377
+ return new Promise((resolve, reject) => {
378
+ src_1.BatchService.closeBatch()
379
+ .then((response) => {
380
+ expect(response).toBeTruthy();
381
+ resolve();
382
+ })
383
+ .catch((e) => {
384
+ if (e.message.indexOf(BATCH_NOT_OPEN) !== -1 ||
385
+ e.message.indexOf(BATCH_EMPTY) !== -1) {
386
+ resolve();
387
+ return;
388
+ }
389
+ reject(e);
390
+ });
391
+ });
392
+ });
393
+ //# sourceMappingURL=Recurring.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Recurring.test.js","sourceRoot":"","sources":["../../../../../../test/Integration/Gateways/PorticoConnector/Certifications/Recurring.test.ts"],"names":[],"mappings":"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"}