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
package/README.md CHANGED
@@ -1,141 +1,141 @@
1
- <a href="https://github.com/globalpayments" target="_blank">
2
- <img src="https://globalpayments.github.io/images/globapaymentsLogo.png" alt="Global Payments logo" title="Global Payments" align="right" width="225" />
3
- </a>
4
-
5
- # Heartland & Global Payments Node.js SDK
6
-
7
- This SDK makes it easy to integrate your Node.js application with our Card Not Present and Card Present APIs.
8
-
9
- ## Solutions
10
-
11
- ### General / Omnichannel
12
-
13
- * API Payment Processing
14
- * Apple Pay & Google Pay
15
- * Secure Card Storage & Customer Management
16
- * Subscriptions / Recurring Billing Solutions
17
- * Credit, Debit, Gift & Loyalty, and eCheck/ACH
18
-
19
- ### Card Not Present (Ecommerce & MOTO) Specific
20
-
21
- * Minimize PCI compliance requirements with Hosted Payment Solutions
22
- * 140+ Authorization Currencies & 16 Settlement Currencies
23
- * 150+ Local Payment Methods Worldwide
24
- * Account Updater
25
- * Inbuilt Fraud Prevention Rules
26
- * 3D Secure, AVS and CVV Checks
27
- * 260+ Global Enterprise Fraud Rules
28
-
29
- ### Card Present (Terminal & POS) Specific
30
-
31
- * Secure End-To-End Encryption
32
-
33
- ## Requirements
34
-
35
- * Node.js
36
-
37
- ## Installation
38
-
39
- Installing the SDK into your solution is usually be done by either using NPM or Yarn.
40
-
41
- To install via [NPM](https://docs.npmjs.com/getting-started/installing-npm-packages-locally):
42
-
43
- ```
44
- npm install --save globalpayments-api
45
- ```
46
-
47
- To install via [Yarn](https://yarnpkg.com/lang/en/docs/installing-dependencies/):
48
-
49
- ```
50
- yarn add globalpayments-api
51
- ```
52
-
53
- ## Documentation and Examples
54
-
55
- You can find the latest SDK documentation along with code examples and test cards on the [Global Payments](https://developer.realexpayments.com) and [Heartland](https://developer.heartlandpaymentsystems.com/documentation) Developer Hubs.
56
-
57
- In addition you can find working examples in the our example code repository.
58
-
59
- _Quick Tip_: The included [test suite](https://github.com/globalpayments/node-sdk/tree/master/test) can be a great source of code samples for using the SDK!
60
-
61
- #### Process a Payment Example
62
-
63
- ```javascript
64
- const card = new CreditCardData();
65
- card.number = "4111111111111111";
66
- card.expMonth = "12";
67
- card.expYear = "2025";
68
- card.cvn = "123";
69
-
70
- card
71
- .charge(129.99)
72
- .withCurrency("EUR")
73
- .execute()
74
- .then((response) => {
75
- const result = response.responseCode;
76
- const message = response.responseMessage;
77
- })
78
- .catch((e) => {
79
- // handle errors
80
- });
81
- ```
82
-
83
- #### Test Card Data
84
-
85
- | Name | Number | Exp Month | Exp Year | CVN |
86
- | ----------- | ---------------- | --------- | -------- | ---- |
87
- | Visa | 4263970000005262 | 12 | 2025 | 123 |
88
- | MasterCard | 2223000010005780 | 12 | 2019 | 900 |
89
- | MasterCard | 5425230000004415 | 12 | 2025 | 123 |
90
- | Discover | 6011000000000087 | 12 | 2025 | 123 |
91
- | Amex | 374101000000608 | 12 | 2025 | 1234 |
92
- | JCB | 3566000000000000 | 12 | 2025 | 123 |
93
- | Diners Club | 36256000000725 | 12 | 2025 | 123 |
94
-
95
- #### Testing Exceptions
96
-
97
- During your integration you will want to test for specific issuer responses such as 'Card Declined'. Because our sandbox environments do not actually reach out to issuing banks for authorizations, there are specific transaction amounts and/or card numbers that will trigger gateway and issuing bank responses. Please contact your support representative for a complete listing of values used to simulate transaction AVS/CVV results, declines, errors, and other responses that can be caught in your code. Example error handling code:
98
-
99
- ```javascript
100
- card
101
- .charge(-5)
102
- .withCurrency("USD")
103
- .withAddress(address)
104
- .execute()
105
- .catch((e) => {
106
- switch (e.name) {
107
- case BuilderError.constructor.name:
108
- // handle builder errors
109
- break;
110
- case ConfigurationError.constructor.name:
111
- // handle errors related to your services configuration
112
- break;
113
- case GatewayError.constructor.name:
114
- // handle gateway errors/exceptions
115
- break;
116
- case UnsupportedTransactionError.constructor.name:
117
- // handle errors when the configured gateway doesn't support
118
- // desired transaction
119
- break;
120
- case ApiError.constructor.name:
121
- default:
122
- // handle all other errors
123
- break;
124
- }
125
- });
126
- ```
127
-
128
- ## Contributing
129
-
130
- All our code is open sourced and we encourage fellow developers to contribute and help improve it!
131
-
132
- 1. Fork it
133
- 2. Create your feature branch (`git checkout -b my-new-feature`)
134
- 3. Ensure SDK tests are passing
135
- 4. Commit your changes (`git commit -am 'Add some feature'`)
136
- 5. Push to the branch (`git push origin my-new-feature`)
137
- 6. Create new Pull Request
138
-
139
- ## License
140
-
141
- This project is licensed under the GNU General Public License v2.0. Please see [LICENSE.md](LICENSE.md) located at the project's root for more details.
1
+ <a href="https://github.com/globalpayments" target="_blank">
2
+ <img src="https://globalpayments.github.io/images/globapaymentsLogo.png" alt="Global Payments logo" title="Global Payments" align="right" width="225" />
3
+ </a>
4
+
5
+ # Heartland & Global Payments Node.js SDK
6
+
7
+ This SDK makes it easy to integrate your Node.js application with our Card Not Present and Card Present APIs.
8
+
9
+ ## Solutions
10
+
11
+ ### General / Omnichannel
12
+
13
+ * API Payment Processing
14
+ * Apple Pay & Google Pay
15
+ * Secure Card Storage & Customer Management
16
+ * Subscriptions / Recurring Billing Solutions
17
+ * Credit, Debit, Gift & Loyalty, and eCheck/ACH
18
+
19
+ ### Card Not Present (Ecommerce & MOTO) Specific
20
+
21
+ * Minimize PCI compliance requirements with Hosted Payment Solutions
22
+ * 140+ Authorization Currencies & 16 Settlement Currencies
23
+ * 150+ Local Payment Methods Worldwide
24
+ * Account Updater
25
+ * Inbuilt Fraud Prevention Rules
26
+ * 3D Secure, AVS and CVV Checks
27
+ * 260+ Global Enterprise Fraud Rules
28
+
29
+ ### Card Present (Terminal & POS) Specific
30
+
31
+ * Secure End-To-End Encryption
32
+
33
+ ## Requirements
34
+
35
+ * Node.js
36
+
37
+ ## Installation
38
+
39
+ Installing the SDK into your solution is usually be done by either using NPM or Yarn.
40
+
41
+ To install via [NPM](https://docs.npmjs.com/getting-started/installing-npm-packages-locally):
42
+
43
+ ```
44
+ npm install --save globalpayments-api
45
+ ```
46
+
47
+ To install via [Yarn](https://yarnpkg.com/lang/en/docs/installing-dependencies/):
48
+
49
+ ```
50
+ yarn add globalpayments-api
51
+ ```
52
+
53
+ ## Documentation and Examples
54
+
55
+ You can find the latest SDK documentation along with code examples and test cards on the [Global Payments](https://developer.realexpayments.com) and [Heartland](https://developer.heartlandpaymentsystems.com/documentation) Developer Hubs.
56
+
57
+ In addition you can find working examples in the our example code repository.
58
+
59
+ _Quick Tip_: The included [test suite](https://github.com/globalpayments/node-sdk/tree/master/test) can be a great source of code samples for using the SDK!
60
+
61
+ #### Process a Payment Example
62
+
63
+ ```javascript
64
+ const card = new CreditCardData();
65
+ card.number = "4111111111111111";
66
+ card.expMonth = "12";
67
+ card.expYear = "2025";
68
+ card.cvn = "123";
69
+
70
+ card
71
+ .charge(129.99)
72
+ .withCurrency("EUR")
73
+ .execute()
74
+ .then((response) => {
75
+ const result = response.responseCode;
76
+ const message = response.responseMessage;
77
+ })
78
+ .catch((e) => {
79
+ // handle errors
80
+ });
81
+ ```
82
+
83
+ #### Test Card Data
84
+
85
+ | Name | Number | Exp Month | Exp Year | CVN |
86
+ | ----------- | ---------------- | --------- | -------- | ---- |
87
+ | Visa | 4263970000005262 | 12 | 2025 | 123 |
88
+ | MasterCard | 2223000010005780 | 12 | 2019 | 900 |
89
+ | MasterCard | 5425230000004415 | 12 | 2025 | 123 |
90
+ | Discover | 6011000000000087 | 12 | 2025 | 123 |
91
+ | Amex | 374101000000608 | 12 | 2025 | 1234 |
92
+ | JCB | 3566000000000000 | 12 | 2025 | 123 |
93
+ | Diners Club | 36256000000725 | 12 | 2025 | 123 |
94
+
95
+ #### Testing Exceptions
96
+
97
+ During your integration you will want to test for specific issuer responses such as 'Card Declined'. Because our sandbox environments do not actually reach out to issuing banks for authorizations, there are specific transaction amounts and/or card numbers that will trigger gateway and issuing bank responses. Please contact your support representative for a complete listing of values used to simulate transaction AVS/CVV results, declines, errors, and other responses that can be caught in your code. Example error handling code:
98
+
99
+ ```javascript
100
+ card
101
+ .charge(-5)
102
+ .withCurrency("USD")
103
+ .withAddress(address)
104
+ .execute()
105
+ .catch((e) => {
106
+ switch (e.name) {
107
+ case BuilderError.constructor.name:
108
+ // handle builder errors
109
+ break;
110
+ case ConfigurationError.constructor.name:
111
+ // handle errors related to your services configuration
112
+ break;
113
+ case GatewayError.constructor.name:
114
+ // handle gateway errors/exceptions
115
+ break;
116
+ case UnsupportedTransactionError.constructor.name:
117
+ // handle errors when the configured gateway doesn't support
118
+ // desired transaction
119
+ break;
120
+ case ApiError.constructor.name:
121
+ default:
122
+ // handle all other errors
123
+ break;
124
+ }
125
+ });
126
+ ```
127
+
128
+ ## Contributing
129
+
130
+ All our code is open sourced and we encourage fellow developers to contribute and help improve it!
131
+
132
+ 1. Fork it
133
+ 2. Create your feature branch (`git checkout -b my-new-feature`)
134
+ 3. Ensure SDK tests are passing
135
+ 4. Commit your changes (`git commit -am 'Add some feature'`)
136
+ 5. Push to the branch (`git push origin my-new-feature`)
137
+ 6. Create new Pull Request
138
+
139
+ ## License
140
+
141
+ This project is licensed under the GNU General Public License v2.0. Please see [LICENSE.md](LICENSE.md) located at the project's root for more details.
@@ -0,0 +1,8 @@
1
+ application_id = GP13428
2
+ dev_team_lead = russell.everett@e-hps.com
3
+ security_champion = russell.everett@e-hps.com
4
+ observers = developers@globalpay.com
5
+ prod_branch = master
6
+ dev_branch = NextRelease
7
+ prod_urls = https://github.com/globalpayments/node-sdk
8
+ dev_urls = https://github.globalpay.com/Developer-Experience/node-sdk
@@ -131,6 +131,25 @@ class PorticoConnector extends XmlGateway_1.XmlGateway {
131
131
  block1.append(cardData);
132
132
  if (card instanceof __1.CreditCardData) {
133
133
  const creditCardData = card;
134
+ const secureEcom = creditCardData.threeDSecure;
135
+ if (secureEcom) {
136
+ // 3d Secure Element
137
+ if (secureEcom.eci &&
138
+ !this.isAppleOrGooglePay(secureEcom.paymentDataSource)) {
139
+ const secure3D = (0, elementtree_1.SubElement)(block1, "Secure3D");
140
+ (0, elementtree_1.SubElement)(secure3D, "Version").text = threeDSecureNumericVersion(secureEcom.version);
141
+ (0, elementtree_1.SubElement)(secure3D, "AuthenticationValue").append((0, elementtree_1.CData)(secureEcom.cavv));
142
+ (0, elementtree_1.SubElement)(secure3D, "ECI").append((0, elementtree_1.CData)(secureEcom.eci.toFixed(0)));
143
+ (0, elementtree_1.SubElement)(secure3D, "DirectoryServerTxnId").append((0, elementtree_1.CData)(secureEcom.xid));
144
+ }
145
+ // WalletData Element
146
+ if (this.isAppleOrGooglePay(secureEcom.paymentDataSource)) {
147
+ const walletData = (0, elementtree_1.SubElement)(block1, "WalletData");
148
+ (0, elementtree_1.SubElement)(walletData, "PaymentSource").append((0, elementtree_1.CData)(secureEcom.paymentDataSource));
149
+ (0, elementtree_1.SubElement)(walletData, "Cryptogram").append((0, elementtree_1.CData)(secureEcom.cavv));
150
+ (0, elementtree_1.SubElement)(walletData, "ECI").append((0, elementtree_1.CData)(secureEcom.eci.toFixed()));
151
+ }
152
+ }
134
153
  // WalletData Element
135
154
  if ((creditCardData.mobileType == __1.MobilePaymentMethodType.APPLEPAY ||
136
155
  creditCardData.mobileType == __1.MobilePaymentMethodType.GOOGLEPAY) &&
@@ -1112,6 +1131,11 @@ class PorticoConnector extends XmlGateway_1.XmlGateway {
1112
1131
  }
1113
1132
  }
1114
1133
  exports.PorticoConnector = PorticoConnector;
1134
+ const threeDSecureNumericVersion = (version) => {
1135
+ if (version === __1.Secure3dVersion.TWO)
1136
+ return "2";
1137
+ return "1";
1138
+ };
1115
1139
  // prettier-ignore
1116
1140
  function buildLineItems(data, isVisa, items) {
1117
1141
  if (!items || items.length === 0) {
@@ -1 +1 @@
1
- {"version":3,"file":"PorticoConnector.js","sourceRoot":"","sources":["../../../src/Gateways/PorticoConnector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PorticoConnector.js","sourceRoot":"","sources":["../../../src/Gateways/PorticoConnector.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,30 @@
1
+ import { Element } from "@azz/elementtree";
2
+ import { AuthorizationBuilder, Customer, HostedPaymentConfig, IRecurringEntity, IRecurringService, ManagementBuilder, RecurringBuilder, ReportBuilder, Transaction, TransactionType } from "../";
3
+ import { XmlGateway } from "./XmlGateway";
4
+ export declare class RealexConnector extends XmlGateway implements IRecurringService {
5
+ merchantId: string;
6
+ accountId: string;
7
+ sharedSecret: string;
8
+ channel: string;
9
+ rebatePassword: string;
10
+ refundPassword: string;
11
+ supportsHostedPayments: boolean;
12
+ supportsRetrieval: boolean;
13
+ supportsUpdatePaymentDetails: boolean;
14
+ hostedPaymentConfig: HostedPaymentConfig;
15
+ processAuthorization(builder: AuthorizationBuilder): Promise<Transaction>;
16
+ serializeRequest(builder: AuthorizationBuilder): string;
17
+ manageTransaction(builder: ManagementBuilder): Promise<Transaction>;
18
+ processReport<T>(_builder: ReportBuilder<T>): Promise<T>;
19
+ processRecurring<T extends IRecurringEntity>(builder: RecurringBuilder<T>): Promise<T>;
20
+ protected buildEnvelope(transaction: Element): string;
21
+ protected buildCustomer(customer: Customer): Element;
22
+ protected mapResponse(rawResponse: string): Transaction;
23
+ protected mapRecurringResponse<T extends IRecurringEntity>(rawResponse: string, builder: RecurringBuilder<T>): T;
24
+ protected checkResponse(root: Element, acceptedCodes?: string[]): void;
25
+ protected generateHash(timestamp: string, orderId: string, amount: string, currency: string, paymentData: string, verify?: boolean): string;
26
+ protected mapAuthRequestType(builder: AuthorizationBuilder): string;
27
+ protected mapManageRequestType(type: TransactionType): string;
28
+ protected mapRecurringRequestType<T extends IRecurringEntity>(builder: RecurringBuilder<T>): "payer-new" | "card-new" | "payer-edit" | "card-update-card" | "card-cancel-card";
29
+ protected numberFormat(amount: number | string): string;
30
+ }