globalpayments-api 3.10.1 → 3.10.2

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 (112) hide show
  1. package/CHANGELOG.md +184 -177
  2. package/LICENSE.md +257 -257
  3. package/README.md +141 -141
  4. package/appsec.properties +8 -0
  5. package/lib/src/Gateways/PorticoConnector.js +24 -0
  6. package/lib/src/Gateways/PorticoConnector.js.map +1 -1
  7. package/lib/src/Gateways/RealexConnector.d.ts +30 -0
  8. package/lib/src/Gateways/RealexConnector.js +523 -0
  9. package/lib/src/PaymentMethods/Credit.d.ts +2 -1
  10. package/lib/src/PaymentMethods/Credit.js +1 -0
  11. package/lib/src/PaymentMethods/Credit.js.map +1 -1
  12. package/lib/src/ServicesConfig.d.ts +27 -0
  13. package/lib/src/ServicesConfig.js +50 -0
  14. package/lib/test/Integration/Gateways/GpApiConnector/3DS2.test.js +15 -15
  15. package/lib/test/Integration/Gateways/GpApiConnector/3DSecure.test.js +5 -5
  16. package/lib/test/Integration/Gateways/GpEcomConnector/Credit.test.js +4 -4
  17. package/lib/test/Integration/Gateways/PorticoConnector/AchTest.d.ts +1 -0
  18. package/lib/test/Integration/Gateways/PorticoConnector/AchTest.js +112 -0
  19. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/CheckTest.d.ts +1 -0
  20. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/CheckTest.js +483 -0
  21. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/EcommerceCheckTest.d.ts +1 -0
  22. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/EcommerceCheckTest.js +83 -0
  23. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/EcommerceTest.d.ts +1 -0
  24. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/EcommerceTest.js +1720 -0
  25. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/MotoCheckTest.d.ts +1 -0
  26. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/MotoCheckTest.js +83 -0
  27. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/MotoTest.d.ts +1 -0
  28. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/MotoTest.js +1757 -0
  29. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/RecurringTest.d.ts +1 -0
  30. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/RecurringTest.js +682 -0
  31. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/RetailTest.d.ts +1 -0
  32. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/RetailTest.js +2218 -0
  33. package/lib/test/Integration/Gateways/PorticoConnector/Credit.test.js +32 -0
  34. package/lib/test/Integration/Gateways/PorticoConnector/Credit.test.js.map +1 -1
  35. package/lib/test/Integration/Gateways/PorticoConnector/CreditTest.d.ts +1 -0
  36. package/lib/test/Integration/Gateways/PorticoConnector/CreditTest.js +707 -0
  37. package/lib/test/Integration/Gateways/PorticoConnector/DebitTest.d.ts +1 -0
  38. package/lib/test/Integration/Gateways/PorticoConnector/DebitTest.js +151 -0
  39. package/lib/test/Integration/Gateways/PorticoConnector/EbtTest.d.ts +1 -0
  40. package/lib/test/Integration/Gateways/PorticoConnector/EbtTest.js +171 -0
  41. package/lib/test/Integration/Gateways/PorticoConnector/Ecommerce.test.js +8 -8
  42. package/lib/test/Integration/Gateways/PorticoConnector/EcommerceTest.d.ts +1 -0
  43. package/lib/test/Integration/Gateways/PorticoConnector/EcommerceTest.js +192 -0
  44. package/lib/test/Integration/Gateways/PorticoConnector/GiftTest.d.ts +1 -0
  45. package/lib/test/Integration/Gateways/PorticoConnector/GiftTest.js +377 -0
  46. package/lib/test/Integration/Gateways/PorticoConnector/RecurringTest.d.ts +1 -0
  47. package/lib/test/Integration/Gateways/PorticoConnector/RecurringTest.js +196 -0
  48. package/lib/test/Integration/Gateways/PorticoConnector/ReportingTest.d.ts +1 -0
  49. package/lib/test/Integration/Gateways/PorticoConnector/ReportingTest.js +53 -0
  50. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/GetInformationCertificationTests.d.ts +1 -0
  51. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/GetInformationCertificationTests.js +100 -0
  52. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/ProPayAccountCertificationTests.d.ts +1 -0
  53. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/ProPayAccountCertificationTests.js +352 -0
  54. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/ProPayFundCertificationTests.d.ts +1 -0
  55. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/ProPayFundCertificationTests.js +123 -0
  56. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/ProPayInNetworkTransactionCertificationTests.d.ts +1 -0
  57. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/ProPayInNetworkTransactionCertificationTests.js +142 -0
  58. package/lib/test/Integration/Gateways/ProPayConnector/GetInformationTests.d.ts +1 -0
  59. package/lib/test/Integration/Gateways/ProPayConnector/GetInformationTests.js +100 -0
  60. package/lib/test/Integration/Gateways/ProPayConnector/ProPayAccountTests.d.ts +1 -0
  61. package/lib/test/Integration/Gateways/ProPayConnector/ProPayAccountTests.js +535 -0
  62. package/lib/test/Integration/Gateways/ProPayConnector/ProPayFundsTests.d.ts +1 -0
  63. package/lib/test/Integration/Gateways/ProPayConnector/ProPayFundsTests.js +124 -0
  64. package/lib/test/Integration/Gateways/ProPayConnector/ProPayInNetworkTransactionTests.d.ts +1 -0
  65. package/lib/test/Integration/Gateways/ProPayConnector/ProPayInNetworkTransactionTests.js +144 -0
  66. package/lib/test/Integration/Gateways/RealexConnector/Certification/AuthTest.d.ts +1 -0
  67. package/lib/test/Integration/Gateways/RealexConnector/Certification/AuthTest.js +4373 -0
  68. package/lib/test/Integration/Gateways/RealexConnector/Certification/AvsTest.d.ts +1 -0
  69. package/lib/test/Integration/Gateways/RealexConnector/Certification/AvsTest.js +758 -0
  70. package/lib/test/Integration/Gateways/RealexConnector/Certification/CreditTest.d.ts +1 -0
  71. package/lib/test/Integration/Gateways/RealexConnector/Certification/CreditTest.js +2399 -0
  72. package/lib/test/Integration/Gateways/RealexConnector/Certification/HoldTest.d.ts +1 -0
  73. package/lib/test/Integration/Gateways/RealexConnector/Certification/HoldTest.js +1656 -0
  74. package/lib/test/Integration/Gateways/RealexConnector/Certification/ManualTest.d.ts +1 -0
  75. package/lib/test/Integration/Gateways/RealexConnector/Certification/ManualTest.js +5650 -0
  76. package/lib/test/Integration/Gateways/RealexConnector/Certification/OtbTest.d.ts +1 -0
  77. package/lib/test/Integration/Gateways/RealexConnector/Certification/OtbTest.js +1985 -0
  78. package/lib/test/Integration/Gateways/RealexConnector/Certification/RebateTest.d.ts +1 -0
  79. package/lib/test/Integration/Gateways/RealexConnector/Certification/RebateTest.js +2369 -0
  80. package/lib/test/Integration/Gateways/RealexConnector/Certification/ReleaseTest.d.ts +1 -0
  81. package/lib/test/Integration/Gateways/RealexConnector/Certification/ReleaseTest.js +1703 -0
  82. package/lib/test/Integration/Gateways/RealexConnector/Certification/SettleTest.d.ts +1 -0
  83. package/lib/test/Integration/Gateways/RealexConnector/Certification/SettleTest.js +2053 -0
  84. package/lib/test/Integration/Gateways/RealexConnector/Certification/ValidationTest.d.ts +1 -0
  85. package/lib/test/Integration/Gateways/RealexConnector/Certification/ValidationTest.js +2469 -0
  86. package/lib/test/Integration/Gateways/RealexConnector/Certification/VerifyEnrolledTest.d.ts +1 -0
  87. package/lib/test/Integration/Gateways/RealexConnector/Certification/VerifyEnrolledTest.js +3116 -0
  88. package/lib/test/Integration/Gateways/RealexConnector/Certification/VoidTest.d.ts +1 -0
  89. package/lib/test/Integration/Gateways/RealexConnector/Certification/VoidTest.js +2031 -0
  90. package/lib/test/Integration/Gateways/RealexConnector/CreditTest.d.ts +1 -0
  91. package/lib/test/Integration/Gateways/RealexConnector/CreditTest.js +322 -0
  92. package/lib/test/Integration/Gateways/RealexConnector/HppTest.d.ts +1 -0
  93. package/lib/test/Integration/Gateways/RealexConnector/HppTest.js +98 -0
  94. package/lib/test/Integration/Gateways/RealexConnector/RecurringTest.d.ts +1 -0
  95. package/lib/test/Integration/Gateways/RealexConnector/RecurringTest.js +263 -0
  96. package/lib/test/Integration/Services/CheckServiceTest.d.ts +1 -0
  97. package/lib/test/Integration/Services/CheckServiceTest.js +98 -0
  98. package/lib/test/Integration/Services/CreditServiceTest.d.ts +1 -0
  99. package/lib/test/Integration/Services/CreditServiceTest.js +313 -0
  100. package/lib/test/Integration/Services/DebitServiceTest.d.ts +1 -0
  101. package/lib/test/Integration/Services/DebitServiceTest.js +154 -0
  102. package/lib/test/Integration/Services/EBTServiceTest.d.ts +1 -0
  103. package/lib/test/Integration/Services/EBTServiceTest.js +135 -0
  104. package/lib/test/Unit/Builders/AuthorizationBuilder/ValidationTest.d.ts +1 -0
  105. package/lib/test/Unit/Builders/AuthorizationBuilder/ValidationTest.js +161 -0
  106. package/lib/test/Unit/Builders/ReportBuilder/ValidationTest.d.ts +1 -0
  107. package/lib/test/Unit/Builders/ReportBuilder/ValidationTest.js +139 -0
  108. package/lib/test/Unit/Gateways/PorticoConnector/InputValidationTest.d.ts +1 -0
  109. package/lib/test/Unit/Gateways/PorticoConnector/InputValidationTest.js +202 -0
  110. package/lib/test/Unit/Gateways/RealexConnector/CreditTest.d.ts +1 -0
  111. package/lib/test/Unit/Gateways/RealexConnector/CreditTest.js +29 -0
  112. package/package.json +62 -62
@@ -867,11 +867,11 @@ test("challenge required v2 - initiate with mobile sdk", async () => {
867
867
  mobileData.applicationReference = "f283b3ec-27da-42a1-acea-f3f70e75bbdc";
868
868
  mobileData.sdkInterface = src_1.SdkInterface.Both;
869
869
  mobileData.sdkUiTypes = [src_1.SdkUiType.Oob];
870
- mobileData.ephemeralPublicKey = `{
871
- "kty": "EC",
872
- "crv": "P-256",
873
- "x": "WWcpTjbOqiu_1aODllw5rYTq5oLXE_T0huCPjMIRbkI",
874
- "y": "Wz_7anIeadV8SJZUfr4drwjzuWoUbOsHp5GdRZBAAiw"
870
+ mobileData.ephemeralPublicKey = `{
871
+ "kty": "EC",
872
+ "crv": "P-256",
873
+ "x": "WWcpTjbOqiu_1aODllw5rYTq5oLXE_T0huCPjMIRbkI",
874
+ "y": "Wz_7anIeadV8SJZUfr4drwjzuWoUbOsHp5GdRZBAAiw"
875
875
  }`;
876
876
  mobileData.maximumTimeout = 50;
877
877
  mobileData.referenceNumber = "3DS_LOA_SDK_PPFU_020100_00007";
@@ -909,11 +909,11 @@ test("challenge required v2 - initiate with mobile data and browser data", async
909
909
  mobileData.applicationReference = "f283b3ec-27da-42a1-acea-f3f70e75bbdc";
910
910
  mobileData.sdkInterface = src_1.SdkInterface.Browser;
911
911
  mobileData.sdkUiTypes = [src_1.SdkUiType.HtmlOther];
912
- mobileData.ephemeralPublicKey = `{
913
- "kty": "EC",
914
- "crv": "P-256",
915
- "x": "WWcpTjbOqiu_1aODllw5rYTq5oLXE_T0huCPjMIRbkI",
916
- "y": "Wz_7anIeadV8SJZUfr4drwjzuWoUbOsHp5GdRZBAAiw"
912
+ mobileData.ephemeralPublicKey = `{
913
+ "kty": "EC",
914
+ "crv": "P-256",
915
+ "x": "WWcpTjbOqiu_1aODllw5rYTq5oLXE_T0huCPjMIRbkI",
916
+ "y": "Wz_7anIeadV8SJZUfr4drwjzuWoUbOsHp5GdRZBAAiw"
917
917
  }`;
918
918
  mobileData.maximumTimeout = 50;
919
919
  mobileData.referenceNumber = "3DS_LOA_SDK_PPFU_020100_00007";
@@ -946,11 +946,11 @@ test("challenge required v2 - initiate with mobile data and source browser", asy
946
946
  mobileData.applicationReference = "f283b3ec-27da-42a1-acea-f3f70e75bbdc";
947
947
  mobileData.sdkInterface = src_1.SdkInterface.Browser;
948
948
  mobileData.sdkUiTypes = [src_1.SdkUiType.HtmlOther];
949
- mobileData.ephemeralPublicKey = `{
950
- "kty": "EC",
951
- "crv": "P-256",
952
- "x": "WWcpTjbOqiu_1aODllw5rYTq5oLXE_T0huCPjMIRbkI",
953
- "y": "Wz_7anIeadV8SJZUfr4drwjzuWoUbOsHp5GdRZBAAiw"
949
+ mobileData.ephemeralPublicKey = `{
950
+ "kty": "EC",
951
+ "crv": "P-256",
952
+ "x": "WWcpTjbOqiu_1aODllw5rYTq5oLXE_T0huCPjMIRbkI",
953
+ "y": "Wz_7anIeadV8SJZUfr4drwjzuWoUbOsHp5GdRZBAAiw"
954
954
  }`;
955
955
  mobileData.maximumTimeout = 50;
956
956
  mobileData.referenceNumber = "3DS_LOA_SDK_PPFU_020100_00007";
@@ -527,11 +527,11 @@ test("frictionless full cycle - v2 - with mobile SDK", async () => {
527
527
  mobileData.applicationReference = "f283b3ec-27da-42a1-acea-f3f70e75bbdc";
528
528
  mobileData.sdkInterface = src_1.SdkInterface.Browser;
529
529
  mobileData.sdkUiTypes = [src_1.SdkUiType.HtmlOther];
530
- mobileData.ephemeralPublicKey = `{
531
- "kty": "EC",
532
- "crv": "P-256",
533
- "x": "WWcpTjbOqiu_1aODllw5rYTq5oLXE_T0huCPjMIRbkI",
534
- "y": "Wz_7anIeadV8SJZUfr4drwjzuWoUbOsHp5GdRZBAAiw"
530
+ mobileData.ephemeralPublicKey = `{
531
+ "kty": "EC",
532
+ "crv": "P-256",
533
+ "x": "WWcpTjbOqiu_1aODllw5rYTq5oLXE_T0huCPjMIRbkI",
534
+ "y": "Wz_7anIeadV8SJZUfr4drwjzuWoUbOsHp5GdRZBAAiw"
535
535
  }`;
536
536
  mobileData.maximumTimeout = 50;
537
537
  mobileData.referenceNumber = "3DS_LOA_SDK_PPFU_020100_00007";
@@ -117,10 +117,10 @@ test.skip("credit auth mobile - apple pay", async () => {
117
117
  test.skip("credit auth mobile - google pay", async () => {
118
118
  const encryptedCard = new src_1.CreditCardData();
119
119
  // tslint:disable-next-line:max-line-length
120
- encryptedCard.token = `{
121
- "signature": "MEQCIAv8iIZmQK95xMrruLLLvJ2/uGuq54SSq190WS62M4a4AiAQhRwPHt3HXaOtCUYphfZLhIRznbF3TWxXLfPCGoutTQ==",
122
- "protocolVersion": "ECv1",
123
- "signedMessage": "{"encryptedMessage":"h1Zfi0b6wQoD3b1qOvfa6EjGa0Bv/Mtxmn/2rRmq/mjLPVuM3Ymu7Uk1IEoPQ/Hk3bafHMCoBrGMQ4YUzLRNMk+YideS4thnE898ZLmnlcPVxWzv+gDodx7spInIK3dTYhMDhdo/28dIqmovl6hPzjPWjAaOfKUs7FvCPjR+HQG7cZb6V41BOzuCCt9wSQGTY5AkIWcTxGVTbA4brd/88A+EZowF10PNl24dygX/ydTAhkBBlVzp33/Poj/Axo7GFtH+kFBgEkBd68LFDHnDd7+GK7HhLq2gv4zVVTUHBSXa3MZFKOWmrgtz3gSXYi3yi6mSGVQwULSp8n4cD3qKW9z38VfqPAR0ZrUsZHvExI/n24iXYs3k5LUspeGbldXAkGL10OJw3meKoHjw20d04fGnTl6DNv2b6/WMA3lUoV9SotEhU20bHKgwpy7VQP20AgKb","ephemeralPublicKey":"BKaqNecPUorCBVLMcKncrBg/eFnt44HsLjHoyzOKnl12DP5KR4SPBNdNDSOjn3Bt/RSN9Nb2e9AOed5Zj0JmGCI\\u003d","tag":"wAiHd29oNTj6BM6XYCx8Cop0ek7yJNZDxsW2d9bdJPA\\u003d"}"
120
+ encryptedCard.token = `{
121
+ "signature": "MEQCIAv8iIZmQK95xMrruLLLvJ2/uGuq54SSq190WS62M4a4AiAQhRwPHt3HXaOtCUYphfZLhIRznbF3TWxXLfPCGoutTQ==",
122
+ "protocolVersion": "ECv1",
123
+ "signedMessage": "{"encryptedMessage":"h1Zfi0b6wQoD3b1qOvfa6EjGa0Bv/Mtxmn/2rRmq/mjLPVuM3Ymu7Uk1IEoPQ/Hk3bafHMCoBrGMQ4YUzLRNMk+YideS4thnE898ZLmnlcPVxWzv+gDodx7spInIK3dTYhMDhdo/28dIqmovl6hPzjPWjAaOfKUs7FvCPjR+HQG7cZb6V41BOzuCCt9wSQGTY5AkIWcTxGVTbA4brd/88A+EZowF10PNl24dygX/ydTAhkBBlVzp33/Poj/Axo7GFtH+kFBgEkBd68LFDHnDd7+GK7HhLq2gv4zVVTUHBSXa3MZFKOWmrgtz3gSXYi3yi6mSGVQwULSp8n4cD3qKW9z38VfqPAR0ZrUsZHvExI/n24iXYs3k5LUspeGbldXAkGL10OJw3meKoHjw20d04fGnTl6DNv2b6/WMA3lUoV9SotEhU20bHKgwpy7VQP20AgKb","ephemeralPublicKey":"BKaqNecPUorCBVLMcKncrBg/eFnt44HsLjHoyzOKnl12DP5KR4SPBNdNDSOjn3Bt/RSN9Nb2e9AOed5Zj0JmGCI\\u003d","tag":"wAiHd29oNTj6BM6XYCx8Cop0ek7yJNZDxsW2d9bdJPA\\u003d"}"
124
124
  }`;
125
125
  encryptedCard.mobileType = "pay-with-google";
126
126
  const missingAmountError = expect(() => encryptedCard
@@ -0,0 +1,112 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (_) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ var ava_1 = require("ava");
40
+ var src_1 = require("../../../../src/");
41
+ var config = new src_1.ServicesConfig();
42
+ config.secretApiKey = "skapi_cert_MTyMAQBiHVEAewvIzXVFcmUd2UcyBge_eCpaASUp0A";
43
+ config.serviceUrl = "https://cert.api2-c.heartlandportico.com";
44
+ var runSerially = false;
45
+ var test = runSerially ? ava_1.default.serial : ava_1.default;
46
+ var address = new src_1.Address();
47
+ address.streetAddress1 = "123 Main St.";
48
+ address.city = "Downtown";
49
+ address.province = "NJ";
50
+ address.postalCode = "12345";
51
+ var check = new src_1.ECheck();
52
+ check.accountNumber = "24413815";
53
+ check.routingNumber = "490000018";
54
+ check.checkType = src_1.CheckType.Personal;
55
+ check.secCode = src_1.SecCode.PPD;
56
+ check.accountType = src_1.AccountType.Checking;
57
+ check.entryMode = src_1.EntryMethod.Manual;
58
+ check.checkHolderName = "John Doe";
59
+ check.driversLicenseNumber = "09876543210";
60
+ check.driversLicenseState = "TX";
61
+ check.phoneNumber = "8003214567";
62
+ check.birthYear = "1997";
63
+ check.ssnLast4 = "4321";
64
+ ava_1.default.before(function (_t) {
65
+ src_1.ServicesContainer.configure(config);
66
+ });
67
+ test("check sale", function (t) { return __awaiter(void 0, void 0, void 0, function () {
68
+ var response;
69
+ return __generator(this, function (_a) {
70
+ switch (_a.label) {
71
+ case 0:
72
+ t.plan(2);
73
+ return [4 /*yield*/, check
74
+ .charge(11)
75
+ .withCurrency("USD")
76
+ .withAddress(address)
77
+ .execute()];
78
+ case 1:
79
+ response = _a.sent();
80
+ t.truthy(response);
81
+ t.is(response.responseCode, "00", response.responseMessage);
82
+ return [2 /*return*/];
83
+ }
84
+ });
85
+ }); });
86
+ test("check void from transaction id", function (t) { return __awaiter(void 0, void 0, void 0, function () {
87
+ var response, voidResponse;
88
+ return __generator(this, function (_a) {
89
+ switch (_a.label) {
90
+ case 0:
91
+ t.plan(4);
92
+ return [4 /*yield*/, check
93
+ .charge(10)
94
+ .withCurrency("USD")
95
+ .withAddress(address)
96
+ .withAllowDuplicates(true)
97
+ .execute()];
98
+ case 1:
99
+ response = _a.sent();
100
+ t.truthy(response);
101
+ t.is(response.responseCode, "00", response.responseMessage);
102
+ return [4 /*yield*/, src_1.Transaction.fromId(response.transactionId, src_1.PaymentMethodType.ACH)
103
+ .void()
104
+ .execute()];
105
+ case 2:
106
+ voidResponse = _a.sent();
107
+ t.truthy(voidResponse);
108
+ t.is(voidResponse.responseCode, "00");
109
+ return [2 /*return*/];
110
+ }
111
+ });
112
+ }); });
@@ -0,0 +1,483 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var ava_1 = require("ava");
4
+ var src_1 = require("../../../../../src/");
5
+ var Data_1 = require("../../../../Data/");
6
+ var config = new src_1.ServicesConfig();
7
+ config.secretApiKey = "skapi_cert_MTyMAQBiHVEAewvIzXVFcmUd2UcyBge_eCpaASUp0A";
8
+ config.serviceUrl = "https://cert.api2-c.heartlandportico.com";
9
+ var runSerially = false;
10
+ var test = runSerially ? ava_1.default.serial : ava_1.default;
11
+ var address = new src_1.Address();
12
+ address.streetAddress1 = "123 Main St.";
13
+ address.city = "Downtown";
14
+ address.province = "NJ";
15
+ address.postalCode = "12345";
16
+ ava_1.default.before(function (_t) {
17
+ src_1.ServicesContainer.configure(config);
18
+ });
19
+ /// ACH Debit - Consumer
20
+ test("001 - consumer personal checking", function (t) {
21
+ t.plan(4);
22
+ var check = Data_1.TestChecks.certification(src_1.SecCode.PPD, src_1.CheckType.Personal, src_1.AccountType.Checking);
23
+ return new Promise(function (resolve, reject) {
24
+ check
25
+ .charge(11.0)
26
+ .withCurrency("USD")
27
+ .withAddress(address)
28
+ .withAllowDuplicates(true)
29
+ .execute()
30
+ .then(function (response) {
31
+ t.truthy(response);
32
+ t.is(response.responseCode, "00");
33
+ return response;
34
+ })
35
+ .then(function (response) {
36
+ // test case 25
37
+ response
38
+ .void()
39
+ .execute()
40
+ .then(function (voidResponse) {
41
+ t.truthy(voidResponse);
42
+ t.is(voidResponse.responseCode, "00");
43
+ resolve();
44
+ })
45
+ .catch(reject);
46
+ })
47
+ .catch(reject);
48
+ });
49
+ });
50
+ test("002 - consumer business checking", function (t) {
51
+ t.plan(2);
52
+ var check = Data_1.TestChecks.certification(src_1.SecCode.PPD, src_1.CheckType.Business, src_1.AccountType.Checking);
53
+ return new Promise(function (resolve, reject) {
54
+ check
55
+ .charge(12.0)
56
+ .withCurrency("USD")
57
+ .withAddress(address)
58
+ .withAllowDuplicates(true)
59
+ .execute()
60
+ .then(function (response) {
61
+ t.truthy(response);
62
+ t.is(response.responseCode, "00");
63
+ resolve();
64
+ })
65
+ .catch(reject);
66
+ });
67
+ });
68
+ test("003 - consumer personal savings", function (t) {
69
+ t.plan(2);
70
+ var check = Data_1.TestChecks.certification(src_1.SecCode.PPD, src_1.CheckType.Personal, src_1.AccountType.Savings);
71
+ return new Promise(function (resolve, reject) {
72
+ check
73
+ .charge(13.0)
74
+ .withCurrency("USD")
75
+ .withAddress(address)
76
+ .withAllowDuplicates(true)
77
+ .execute()
78
+ .then(function (response) {
79
+ t.truthy(response);
80
+ t.is(response.responseCode, "00");
81
+ resolve();
82
+ })
83
+ .catch(reject);
84
+ });
85
+ });
86
+ test("004 - consumer business savings", function (t) {
87
+ t.plan(2);
88
+ var check = Data_1.TestChecks.certification(src_1.SecCode.PPD, src_1.CheckType.Business, src_1.AccountType.Savings);
89
+ return new Promise(function (resolve, reject) {
90
+ check
91
+ .charge(14.0)
92
+ .withCurrency("USD")
93
+ .withAddress(address)
94
+ .withAllowDuplicates(true)
95
+ .execute()
96
+ .then(function (response) {
97
+ t.truthy(response);
98
+ t.is(response.responseCode, "00");
99
+ resolve();
100
+ })
101
+ .catch(reject);
102
+ });
103
+ });
104
+ test("005 - corporate personal checking", function (t) {
105
+ t.plan(4);
106
+ var check = Data_1.TestChecks.certification(src_1.SecCode.CCD, src_1.CheckType.Personal, src_1.AccountType.Checking, "Heartland Pays");
107
+ return new Promise(function (resolve, reject) {
108
+ check
109
+ .charge(15.0)
110
+ .withCurrency("USD")
111
+ .withAddress(address)
112
+ .withAllowDuplicates(true)
113
+ .execute()
114
+ .then(function (response) {
115
+ t.truthy(response);
116
+ t.is(response.responseCode, "00");
117
+ return response;
118
+ })
119
+ .then(function (response) {
120
+ // test case 26
121
+ response
122
+ .void()
123
+ .execute()
124
+ .then(function (voidResponse) {
125
+ t.truthy(voidResponse);
126
+ t.is(voidResponse.responseCode, "00");
127
+ resolve();
128
+ })
129
+ .catch(reject);
130
+ })
131
+ .catch(reject);
132
+ });
133
+ });
134
+ test("006 - corporate business checking", function (t) {
135
+ t.plan(2);
136
+ var check = Data_1.TestChecks.certification(src_1.SecCode.CCD, src_1.CheckType.Business, src_1.AccountType.Checking, "Heartland Pays");
137
+ return new Promise(function (resolve, reject) {
138
+ check
139
+ .charge(16.0)
140
+ .withCurrency("USD")
141
+ .withAddress(address)
142
+ .withAllowDuplicates(true)
143
+ .execute()
144
+ .then(function (response) {
145
+ t.truthy(response);
146
+ t.is(response.responseCode, "00");
147
+ resolve();
148
+ })
149
+ .catch(reject);
150
+ });
151
+ });
152
+ test("007 - corporate personal savings", function (t) {
153
+ t.plan(2);
154
+ var check = Data_1.TestChecks.certification(src_1.SecCode.CCD, src_1.CheckType.Personal, src_1.AccountType.Savings, "Heartland Pays");
155
+ return new Promise(function (resolve, reject) {
156
+ check
157
+ .charge(17.0)
158
+ .withCurrency("USD")
159
+ .withAddress(address)
160
+ .withAllowDuplicates(true)
161
+ .execute()
162
+ .then(function (response) {
163
+ t.truthy(response);
164
+ t.is(response.responseCode, "00");
165
+ resolve();
166
+ })
167
+ .catch(reject);
168
+ });
169
+ });
170
+ test("008 - corporate business savings", function (t) {
171
+ t.plan(2);
172
+ var check = Data_1.TestChecks.certification(src_1.SecCode.CCD, src_1.CheckType.Business, src_1.AccountType.Savings, "Heartland Pays");
173
+ return new Promise(function (resolve, reject) {
174
+ check
175
+ .charge(18.0)
176
+ .withCurrency("USD")
177
+ .withAddress(address)
178
+ .withAllowDuplicates(true)
179
+ .execute()
180
+ .then(function (response) {
181
+ t.truthy(response);
182
+ t.is(response.responseCode, "00");
183
+ resolve();
184
+ })
185
+ .catch(reject);
186
+ });
187
+ });
188
+ test("009 - egold personal checking", function (t) {
189
+ t.plan(2);
190
+ var check = Data_1.TestChecks.certification(src_1.SecCode.POP, src_1.CheckType.Personal, src_1.AccountType.Checking);
191
+ return new Promise(function (resolve, reject) {
192
+ check
193
+ .charge(11.0)
194
+ .withCurrency("USD")
195
+ .withAddress(address)
196
+ .withAllowDuplicates(true)
197
+ .execute()
198
+ .then(function (response) {
199
+ t.truthy(response);
200
+ t.is(response.responseCode, "00");
201
+ resolve();
202
+ })
203
+ .catch(reject);
204
+ });
205
+ });
206
+ test("010 - egold business checking", function (t) {
207
+ t.plan(2);
208
+ var check = Data_1.TestChecks.certification(src_1.SecCode.POP, src_1.CheckType.Business, src_1.AccountType.Checking);
209
+ return new Promise(function (resolve, reject) {
210
+ check
211
+ .charge(12.0)
212
+ .withCurrency("USD")
213
+ .withAddress(address)
214
+ .withAllowDuplicates(true)
215
+ .execute()
216
+ .then(function (response) {
217
+ t.truthy(response);
218
+ t.is(response.responseCode, "00");
219
+ resolve();
220
+ })
221
+ .catch(reject);
222
+ });
223
+ });
224
+ test("011 - egold personal savings", function (t) {
225
+ t.plan(2);
226
+ var check = Data_1.TestChecks.certification(src_1.SecCode.POP, src_1.CheckType.Personal, src_1.AccountType.Savings);
227
+ return new Promise(function (resolve, reject) {
228
+ check
229
+ .charge(13.0)
230
+ .withCurrency("USD")
231
+ .withAddress(address)
232
+ .withAllowDuplicates(true)
233
+ .execute()
234
+ .then(function (response) {
235
+ t.truthy(response);
236
+ t.is(response.responseCode, "00");
237
+ resolve();
238
+ })
239
+ .catch(reject);
240
+ });
241
+ });
242
+ test("012 - egold business savings", function (t) {
243
+ t.plan(2);
244
+ var check = Data_1.TestChecks.certification(src_1.SecCode.POP, src_1.CheckType.Business, src_1.AccountType.Savings);
245
+ return new Promise(function (resolve, reject) {
246
+ check
247
+ .charge(14.0)
248
+ .withCurrency("USD")
249
+ .withAddress(address)
250
+ .withAllowDuplicates(true)
251
+ .execute()
252
+ .then(function (response) {
253
+ t.truthy(response);
254
+ t.is(response.responseCode, "00");
255
+ resolve();
256
+ })
257
+ .catch(reject);
258
+ });
259
+ });
260
+ test("013 - esilver personal checking", function (t) {
261
+ t.plan(2);
262
+ var check = Data_1.TestChecks.certification(src_1.SecCode.POP, src_1.CheckType.Personal, src_1.AccountType.Checking);
263
+ return new Promise(function (resolve, reject) {
264
+ check
265
+ .charge(15.0)
266
+ .withCurrency("USD")
267
+ .withAddress(address)
268
+ .withAllowDuplicates(true)
269
+ .execute()
270
+ .then(function (response) {
271
+ t.truthy(response);
272
+ t.is(response.responseCode, "00");
273
+ resolve();
274
+ })
275
+ .catch(reject);
276
+ });
277
+ });
278
+ test("014 - esilver business checking", function (t) {
279
+ t.plan(2);
280
+ var check = Data_1.TestChecks.certification(src_1.SecCode.POP, src_1.CheckType.Business, src_1.AccountType.Checking);
281
+ return new Promise(function (resolve, reject) {
282
+ check
283
+ .charge(16.0)
284
+ .withCurrency("USD")
285
+ .withAddress(address)
286
+ .withAllowDuplicates(true)
287
+ .execute()
288
+ .then(function (response) {
289
+ t.truthy(response);
290
+ t.is(response.responseCode, "00");
291
+ resolve();
292
+ })
293
+ .catch(reject);
294
+ });
295
+ });
296
+ test("015 - esilver personal savings", function (t) {
297
+ t.plan(2);
298
+ var check = Data_1.TestChecks.certification(src_1.SecCode.POP, src_1.CheckType.Personal, src_1.AccountType.Savings);
299
+ return new Promise(function (resolve, reject) {
300
+ check
301
+ .charge(17.0)
302
+ .withCurrency("USD")
303
+ .withAddress(address)
304
+ .withAllowDuplicates(true)
305
+ .execute()
306
+ .then(function (response) {
307
+ t.truthy(response);
308
+ t.is(response.responseCode, "00");
309
+ resolve();
310
+ })
311
+ .catch(reject);
312
+ });
313
+ });
314
+ test("016 - esilver business savings", function (t) {
315
+ t.plan(2);
316
+ var check = Data_1.TestChecks.certification(src_1.SecCode.POP, src_1.CheckType.Business, src_1.AccountType.Savings);
317
+ return new Promise(function (resolve, reject) {
318
+ check
319
+ .charge(18.0)
320
+ .withCurrency("USD")
321
+ .withAddress(address)
322
+ .withAllowDuplicates(true)
323
+ .execute()
324
+ .then(function (response) {
325
+ t.truthy(response);
326
+ t.is(response.responseCode, "00");
327
+ resolve();
328
+ })
329
+ .catch(reject);
330
+ });
331
+ });
332
+ test("017 - ebronze personal checking", function (t) {
333
+ t.plan(2);
334
+ var check = Data_1.TestChecks.certification(src_1.SecCode.EBronze, src_1.CheckType.Personal, src_1.AccountType.Checking);
335
+ return new Promise(function (resolve, reject) {
336
+ check
337
+ .charge(19.0)
338
+ .withCurrency("USD")
339
+ .withAddress(address)
340
+ .withAllowDuplicates(true)
341
+ .execute()
342
+ .then(function (response) {
343
+ t.truthy(response);
344
+ t.is(response.responseCode, "00");
345
+ reject();
346
+ })
347
+ .catch(function (error) {
348
+ t.plan(1);
349
+ t.true(-1 !== error.message.indexOf("Processor Configuration error"));
350
+ resolve();
351
+ });
352
+ });
353
+ });
354
+ test("018 - ebronze business checking", function (t) {
355
+ t.plan(2);
356
+ var check = Data_1.TestChecks.certification(src_1.SecCode.EBronze, src_1.CheckType.Business, src_1.AccountType.Checking);
357
+ return new Promise(function (resolve, reject) {
358
+ check
359
+ .charge(20.0)
360
+ .withCurrency("USD")
361
+ .withAddress(address)
362
+ .withAllowDuplicates(true)
363
+ .execute()
364
+ .then(function (response) {
365
+ t.truthy(response);
366
+ t.is(response.responseCode, "00");
367
+ reject();
368
+ })
369
+ .catch(function (error) {
370
+ t.plan(1);
371
+ t.true(-1 !== error.message.indexOf("Processor Configuration error"));
372
+ resolve();
373
+ });
374
+ });
375
+ });
376
+ test("019 - ebronze personal savings", function (t) {
377
+ t.plan(2);
378
+ var check = Data_1.TestChecks.certification(src_1.SecCode.EBronze, src_1.CheckType.Personal, src_1.AccountType.Savings);
379
+ return new Promise(function (resolve, reject) {
380
+ check
381
+ .charge(21.0)
382
+ .withCurrency("USD")
383
+ .withAddress(address)
384
+ .withAllowDuplicates(true)
385
+ .execute()
386
+ .then(function (response) {
387
+ t.truthy(response);
388
+ t.is(response.responseCode, "00");
389
+ reject();
390
+ })
391
+ .catch(function (error) {
392
+ t.plan(1);
393
+ t.true(-1 !== error.message.indexOf("Processor Configuration error"));
394
+ resolve();
395
+ });
396
+ });
397
+ });
398
+ test("020 - ebronze business savings", function (t) {
399
+ t.plan(2);
400
+ var check = Data_1.TestChecks.certification(src_1.SecCode.EBronze, src_1.CheckType.Business, src_1.AccountType.Savings);
401
+ return new Promise(function (resolve, reject) {
402
+ check
403
+ .charge(22.0)
404
+ .withCurrency("USD")
405
+ .withAddress(address)
406
+ .withAllowDuplicates(true)
407
+ .execute()
408
+ .then(function (response) {
409
+ t.truthy(response);
410
+ t.is(response.responseCode, "00");
411
+ reject();
412
+ })
413
+ .catch(function (error) {
414
+ t.plan(1);
415
+ t.true(-1 !== error.message.indexOf("Processor Configuration error"));
416
+ resolve();
417
+ });
418
+ });
419
+ });
420
+ test("021 - web personal checking", function (t) {
421
+ var check = Data_1.TestChecks.certification(src_1.SecCode.WEB, src_1.CheckType.Personal, src_1.AccountType.Checking);
422
+ return new Promise(function (resolve, reject) {
423
+ check
424
+ .charge(23.0)
425
+ .withCurrency("USD")
426
+ .withAddress(address)
427
+ .execute()
428
+ .then(function (response) {
429
+ t.truthy(response);
430
+ t.is(response.responseCode, "00");
431
+ resolve();
432
+ })
433
+ .catch(reject);
434
+ });
435
+ });
436
+ test("022 - web business checking", function (t) {
437
+ var check = Data_1.TestChecks.certification(src_1.SecCode.WEB, src_1.CheckType.Business, src_1.AccountType.Checking);
438
+ return new Promise(function (resolve, reject) {
439
+ check
440
+ .charge(24.0)
441
+ .withCurrency("USD")
442
+ .withAddress(address)
443
+ .execute()
444
+ .then(function (response) {
445
+ t.truthy(response);
446
+ t.is(response.responseCode, "00");
447
+ resolve();
448
+ })
449
+ .catch(reject);
450
+ });
451
+ });
452
+ test("023 - web personal savings", function (t) {
453
+ var check = Data_1.TestChecks.certification(src_1.SecCode.WEB, src_1.CheckType.Personal, src_1.AccountType.Savings);
454
+ return new Promise(function (resolve, reject) {
455
+ check
456
+ .charge(25.0)
457
+ .withCurrency("USD")
458
+ .withAddress(address)
459
+ .execute()
460
+ .then(function (response) {
461
+ t.truthy(response);
462
+ t.is(response.responseCode, "00");
463
+ resolve();
464
+ })
465
+ .catch(reject);
466
+ });
467
+ });
468
+ test("024 - web business savings", function (t) {
469
+ var check = Data_1.TestChecks.certification(src_1.SecCode.WEB, src_1.CheckType.Business, src_1.AccountType.Savings);
470
+ return new Promise(function (resolve, reject) {
471
+ check
472
+ .charge(5.0)
473
+ .withCurrency("USD")
474
+ .withAddress(address)
475
+ .execute()
476
+ .then(function (response) {
477
+ t.truthy(response);
478
+ t.is(response.responseCode, "00");
479
+ resolve();
480
+ })
481
+ .catch(reject);
482
+ });
483
+ });