globalpayments-api 3.0.0 → 3.1.1

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 (596) hide show
  1. package/.eslintignore +9 -0
  2. package/.eslintrc.cjs +39 -0
  3. package/.prettierrc +14 -4
  4. package/CHANGELOG.md +44 -32
  5. package/lib/src/Builders/AuthorizationBuilder.d.ts +325 -325
  6. package/lib/src/Builders/AuthorizationBuilder.js +616 -600
  7. package/lib/src/Builders/AuthorizationBuilder.js.map +1 -1
  8. package/lib/src/Builders/BaseBuilder/ValidationClause.d.ts +14 -14
  9. package/lib/src/Builders/BaseBuilder/ValidationClause.js +61 -61
  10. package/lib/src/Builders/BaseBuilder/ValidationClause.js.map +1 -1
  11. package/lib/src/Builders/BaseBuilder/ValidationTarget.d.ts +16 -16
  12. package/lib/src/Builders/BaseBuilder/ValidationTarget.js +35 -28
  13. package/lib/src/Builders/BaseBuilder/ValidationTarget.js.map +1 -1
  14. package/lib/src/Builders/BaseBuilder/Validations.d.ts +11 -11
  15. package/lib/src/Builders/BaseBuilder/Validations.js +54 -56
  16. package/lib/src/Builders/BaseBuilder/Validations.js.map +1 -1
  17. package/lib/src/Builders/BaseBuilder.d.ts +11 -11
  18. package/lib/src/Builders/BaseBuilder.js +16 -16
  19. package/lib/src/Builders/BaseBuilder.js.map +1 -1
  20. package/lib/src/Builders/ManagementBuilder.d.ts +104 -103
  21. package/lib/src/Builders/ManagementBuilder.js +207 -227
  22. package/lib/src/Builders/ManagementBuilder.js.map +1 -1
  23. package/lib/src/Builders/PayFacBuilder.d.ts +98 -96
  24. package/lib/src/Builders/PayFacBuilder.js +233 -184
  25. package/lib/src/Builders/PayFacBuilder.js.map +1 -1
  26. package/lib/src/Builders/RecurringBuilder.d.ts +13 -13
  27. package/lib/src/Builders/RecurringBuilder.js +33 -47
  28. package/lib/src/Builders/RecurringBuilder.js.map +1 -1
  29. package/lib/src/Builders/ReportBuilder.d.ts +8 -8
  30. package/lib/src/Builders/ReportBuilder.js +20 -36
  31. package/lib/src/Builders/ReportBuilder.js.map +1 -1
  32. package/lib/src/Builders/RequestBuilder/GpApi/AccessTokenRequest.d.ts +11 -0
  33. package/lib/src/Builders/RequestBuilder/GpApi/AccessTokenRequest.js +23 -0
  34. package/lib/src/Builders/RequestBuilder/GpApi/AccessTokenRequest.js.map +1 -0
  35. package/lib/src/Builders/RequestBuilder/GpApi/GpApiAuthorizationRequestBuilder.d.ts +17 -0
  36. package/lib/src/Builders/RequestBuilder/GpApi/GpApiAuthorizationRequestBuilder.js +36 -0
  37. package/lib/src/Builders/RequestBuilder/GpApi/GpApiAuthorizationRequestBuilder.js.map +1 -0
  38. package/lib/src/Builders/RequestBuilder/GpApi/GpApiSessionInfo.d.ts +6 -0
  39. package/lib/src/Builders/RequestBuilder/GpApi/GpApiSessionInfo.js +49 -0
  40. package/lib/src/Builders/RequestBuilder/GpApi/GpApiSessionInfo.js.map +1 -0
  41. package/lib/src/Builders/RequestBuilder/GpApi/index.d.ts +3 -0
  42. package/lib/src/Builders/RequestBuilder/GpApi/index.js +20 -0
  43. package/lib/src/Builders/RequestBuilder/GpApi/index.js.map +1 -0
  44. package/lib/src/Builders/RequestBuilder/GpEcom/GpEcomAuthorizationRequestBuilder.d.ts +17 -22
  45. package/lib/src/Builders/RequestBuilder/GpEcom/GpEcomAuthorizationRequestBuilder.js +108 -159
  46. package/lib/src/Builders/RequestBuilder/GpEcom/GpEcomAuthorizationRequestBuilder.js.map +1 -1
  47. package/lib/src/Builders/RequestBuilder/GpEcom/GpEcomManagementRequestBuilder.d.ts +11 -0
  48. package/lib/src/Builders/RequestBuilder/GpEcom/GpEcomManagementRequestBuilder.js +83 -0
  49. package/lib/src/Builders/RequestBuilder/GpEcom/GpEcomManagementRequestBuilder.js.map +1 -0
  50. package/lib/src/Builders/RequestBuilder/GpEcom/GpEcomRequestBuilder.d.ts +9 -6
  51. package/lib/src/Builders/RequestBuilder/GpEcom/GpEcomRequestBuilder.js +65 -23
  52. package/lib/src/Builders/RequestBuilder/GpEcom/GpEcomRequestBuilder.js.map +1 -1
  53. package/lib/src/Builders/RequestBuilder/GpEcom/index.d.ts +3 -2
  54. package/lib/src/Builders/RequestBuilder/GpEcom/index.js +19 -14
  55. package/lib/src/Builders/RequestBuilder/GpEcom/index.js.map +1 -1
  56. package/lib/src/Builders/RequestBuilder/RequestBuilderFactory.d.ts +7 -6
  57. package/lib/src/Builders/RequestBuilder/RequestBuilderFactory.js +30 -29
  58. package/lib/src/Builders/RequestBuilder/RequestBuilderFactory.js.map +1 -1
  59. package/lib/src/Builders/RequestBuilder/index.d.ts +3 -2
  60. package/lib/src/Builders/RequestBuilder/index.js +19 -14
  61. package/lib/src/Builders/RequestBuilder/index.js.map +1 -1
  62. package/lib/src/Builders/TransactionBuilder.d.ts +12 -10
  63. package/lib/src/Builders/TransactionBuilder.js +42 -46
  64. package/lib/src/Builders/TransactionBuilder.js.map +1 -1
  65. package/lib/src/Builders/TransactionReportBuilder.d.ts +15 -15
  66. package/lib/src/Builders/TransactionReportBuilder.js +64 -79
  67. package/lib/src/Builders/TransactionReportBuilder.js.map +1 -1
  68. package/lib/src/Builders/index.d.ts +8 -8
  69. package/lib/src/Builders/index.js +24 -20
  70. package/lib/src/Builders/index.js.map +1 -1
  71. package/lib/src/ConfiguredServices.d.ts +18 -22
  72. package/lib/src/ConfiguredServices.js +23 -56
  73. package/lib/src/ConfiguredServices.js.map +1 -1
  74. package/lib/src/Entities/Address.d.ts +13 -13
  75. package/lib/src/Entities/Address.js +20 -19
  76. package/lib/src/Entities/Address.js.map +1 -1
  77. package/lib/src/Entities/BatchSummary.d.ts +6 -6
  78. package/lib/src/Entities/BatchSummary.js +10 -9
  79. package/lib/src/Entities/BatchSummary.js.map +1 -1
  80. package/lib/src/Entities/Customer.d.ts +64 -64
  81. package/lib/src/Entities/Customer.js +79 -47
  82. package/lib/src/Entities/Customer.js.map +1 -1
  83. package/lib/src/Entities/CustomerDocument.d.ts +8 -0
  84. package/lib/src/Entities/CustomerDocument.js +16 -0
  85. package/lib/src/Entities/CustomerDocument.js.map +1 -0
  86. package/lib/src/Entities/DocumentUploadData.d.ts +13 -13
  87. package/lib/src/Entities/DocumentUploadData.js +80 -48
  88. package/lib/src/Entities/DocumentUploadData.js.map +1 -1
  89. package/lib/src/Entities/EcommerceInfo.d.ts +12 -12
  90. package/lib/src/Entities/EcommerceInfo.js +21 -14
  91. package/lib/src/Entities/EcommerceInfo.js.map +1 -1
  92. package/lib/src/Entities/EncryptionData.d.ts +6 -6
  93. package/lib/src/Entities/EncryptionData.js +10 -9
  94. package/lib/src/Entities/EncryptionData.js.map +1 -1
  95. package/lib/src/Entities/Enums.d.ts +428 -373
  96. package/lib/src/Entities/Enums.js +564 -497
  97. package/lib/src/Entities/Enums.js.map +1 -1
  98. package/lib/src/Entities/Errors.d.ts +23 -23
  99. package/lib/src/Entities/Errors.js +71 -106
  100. package/lib/src/Entities/Errors.js.map +1 -1
  101. package/lib/src/Entities/GpApi/AccessTokenInfo.d.ts +16 -0
  102. package/lib/src/Entities/GpApi/AccessTokenInfo.js +21 -0
  103. package/lib/src/Entities/GpApi/AccessTokenInfo.js.map +1 -0
  104. package/lib/src/Entities/GpApi/GpApiAccount.d.ts +5 -0
  105. package/lib/src/Entities/GpApi/GpApiAccount.js +13 -0
  106. package/lib/src/Entities/GpApi/GpApiAccount.js.map +1 -0
  107. package/lib/src/Entities/GpApi/GpApiRequest.d.ts +21 -0
  108. package/lib/src/Entities/GpApi/GpApiRequest.js +26 -0
  109. package/lib/src/Entities/GpApi/GpApiRequest.js.map +1 -0
  110. package/lib/src/Entities/GpApi/GpApiTokenResponse.d.ts +52 -0
  111. package/lib/src/Entities/GpApi/GpApiTokenResponse.js +115 -0
  112. package/lib/src/Entities/GpApi/GpApiTokenResponse.js.map +1 -0
  113. package/lib/src/Entities/GpApi/index.d.ts +4 -0
  114. package/lib/src/Entities/GpApi/index.js +21 -0
  115. package/lib/src/Entities/GpApi/index.js.map +1 -0
  116. package/lib/src/Entities/HostedPaymentData.d.ts +10 -10
  117. package/lib/src/Entities/HostedPaymentData.js +16 -10
  118. package/lib/src/Entities/HostedPaymentData.js.map +1 -1
  119. package/lib/src/Entities/IRequestBuilder.d.ts +6 -7
  120. package/lib/src/Entities/IRequestBuilder.js +2 -2
  121. package/lib/src/Entities/ProFac/AccountBalanceResponseData.d.ts +7 -7
  122. package/lib/src/Entities/ProFac/AccountBalanceResponseData.js +11 -9
  123. package/lib/src/Entities/ProFac/AccountBalanceResponseData.js.map +1 -1
  124. package/lib/src/Entities/ProFac/AccountPermissions.d.ts +15 -15
  125. package/lib/src/Entities/ProFac/AccountPermissions.js +18 -9
  126. package/lib/src/Entities/ProFac/AccountPermissions.js.map +1 -1
  127. package/lib/src/Entities/ProFac/BankAccountData.d.ts +10 -10
  128. package/lib/src/Entities/ProFac/BankAccountData.js +41 -9
  129. package/lib/src/Entities/ProFac/BankAccountData.js.map +1 -1
  130. package/lib/src/Entities/ProFac/BankAccountOwnershipData.d.ts +8 -8
  131. package/lib/src/Entities/ProFac/BankAccountOwnershipData.js +14 -11
  132. package/lib/src/Entities/ProFac/BankAccountOwnershipData.js.map +1 -1
  133. package/lib/src/Entities/ProFac/BeneficialOwnerData.d.ts +6 -6
  134. package/lib/src/Entities/ProFac/BeneficialOwnerData.js +11 -10
  135. package/lib/src/Entities/ProFac/BeneficialOwnerData.js.map +1 -1
  136. package/lib/src/Entities/ProFac/BeneficialOwnerDataResult.d.ts +5 -5
  137. package/lib/src/Entities/ProFac/BeneficialOwnerDataResult.js +9 -9
  138. package/lib/src/Entities/ProFac/BeneficialOwnerDataResult.js.map +1 -1
  139. package/lib/src/Entities/ProFac/BusinessData.d.ts +15 -14
  140. package/lib/src/Entities/ProFac/BusinessData.js +49 -11
  141. package/lib/src/Entities/ProFac/BusinessData.js.map +1 -1
  142. package/lib/src/Entities/ProFac/DeviceAttributeInfo.d.ts +4 -4
  143. package/lib/src/Entities/ProFac/DeviceAttributeInfo.js +16 -9
  144. package/lib/src/Entities/ProFac/DeviceAttributeInfo.js.map +1 -1
  145. package/lib/src/Entities/ProFac/DeviceData.d.ts +5 -5
  146. package/lib/src/Entities/ProFac/DeviceData.js +10 -10
  147. package/lib/src/Entities/ProFac/DeviceData.js.map +1 -1
  148. package/lib/src/Entities/ProFac/DeviceInfo.d.ts +6 -6
  149. package/lib/src/Entities/ProFac/DeviceInfo.js +18 -9
  150. package/lib/src/Entities/ProFac/DeviceInfo.js.map +1 -1
  151. package/lib/src/Entities/ProFac/FlashFundsPaymentCardData.d.ts +7 -7
  152. package/lib/src/Entities/ProFac/FlashFundsPaymentCardData.js +14 -13
  153. package/lib/src/Entities/ProFac/FlashFundsPaymentCardData.js.map +1 -1
  154. package/lib/src/Entities/ProFac/GrossBillingInformation.d.ts +8 -8
  155. package/lib/src/Entities/ProFac/GrossBillingInformation.js +9 -9
  156. package/lib/src/Entities/ProFac/GrossBillingInformation.js.map +1 -1
  157. package/lib/src/Entities/ProFac/OrderDevice.d.ts +18 -18
  158. package/lib/src/Entities/ProFac/OrderDevice.js +22 -9
  159. package/lib/src/Entities/ProFac/OrderDevice.js.map +1 -1
  160. package/lib/src/Entities/ProFac/OwnersData.d.ts +12 -12
  161. package/lib/src/Entities/ProFac/OwnersData.js +42 -11
  162. package/lib/src/Entities/ProFac/OwnersData.js.map +1 -1
  163. package/lib/src/Entities/ProFac/PayFacResponseData.d.ts +55 -55
  164. package/lib/src/Entities/ProFac/PayFacResponseData.js +61 -9
  165. package/lib/src/Entities/ProFac/PayFacResponseData.js.map +1 -1
  166. package/lib/src/Entities/ProFac/RenewAccountData.d.ts +10 -10
  167. package/lib/src/Entities/ProFac/RenewAccountData.js +37 -11
  168. package/lib/src/Entities/ProFac/RenewAccountData.js.map +1 -1
  169. package/lib/src/Entities/ProFac/SignificantOwnerData.d.ts +8 -8
  170. package/lib/src/Entities/ProFac/SignificantOwnerData.js +26 -11
  171. package/lib/src/Entities/ProFac/SignificantOwnerData.js.map +1 -1
  172. package/lib/src/Entities/ProFac/ThreatRiskData.d.ts +5 -5
  173. package/lib/src/Entities/ProFac/ThreatRiskData.js +18 -9
  174. package/lib/src/Entities/ProFac/ThreatRiskData.js.map +1 -1
  175. package/lib/src/Entities/ProFac/UserPersonalData.d.ts +26 -26
  176. package/lib/src/Entities/ProFac/UserPersonalData.js +81 -14
  177. package/lib/src/Entities/ProFac/UserPersonalData.js.map +1 -1
  178. package/lib/src/Entities/RecurringEntity.d.ts +14 -14
  179. package/lib/src/Entities/RecurringEntity.js +91 -86
  180. package/lib/src/Entities/RecurringEntity.js.map +1 -1
  181. package/lib/src/Entities/Request.d.ts +10 -9
  182. package/lib/src/Entities/Request.js +17 -14
  183. package/lib/src/Entities/Request.js.map +1 -1
  184. package/lib/src/Entities/SSORequestData.d.ts +5 -5
  185. package/lib/src/Entities/SSORequestData.js +18 -9
  186. package/lib/src/Entities/SSORequestData.js.map +1 -1
  187. package/lib/src/Entities/Schedule.d.ts +47 -47
  188. package/lib/src/Entities/Schedule.js +324 -253
  189. package/lib/src/Entities/Schedule.js.map +1 -1
  190. package/lib/src/Entities/ServiceEndpoints.d.ts +12 -4
  191. package/lib/src/Entities/ServiceEndpoints.js +16 -8
  192. package/lib/src/Entities/ServiceEndpoints.js.map +1 -1
  193. package/lib/src/Entities/Transaction.d.ts +78 -78
  194. package/lib/src/Entities/Transaction.js +126 -108
  195. package/lib/src/Entities/Transaction.js.map +1 -1
  196. package/lib/src/Entities/TransactionSummary.d.ts +61 -61
  197. package/lib/src/Entities/TransactionSummary.js +65 -9
  198. package/lib/src/Entities/TransactionSummary.js.map +1 -1
  199. package/lib/src/Entities/index.d.ts +17 -15
  200. package/lib/src/Entities/index.js +33 -27
  201. package/lib/src/Entities/index.js.map +1 -1
  202. package/lib/src/Gateways/Gateway.d.ts +12 -10
  203. package/lib/src/Gateways/Gateway.js +69 -42
  204. package/lib/src/Gateways/Gateway.js.map +1 -1
  205. package/lib/src/Gateways/GatewayResponse.d.ts +8 -0
  206. package/lib/src/Gateways/GatewayResponse.js +15 -0
  207. package/lib/src/Gateways/GatewayResponse.js.map +1 -0
  208. package/lib/src/Gateways/GpApiConnector.d.ts +41 -0
  209. package/lib/src/Gateways/GpApiConnector.js +218 -0
  210. package/lib/src/Gateways/GpApiConnector.js.map +1 -0
  211. package/lib/src/Gateways/GpEcomConnector.d.ts +36 -36
  212. package/lib/src/Gateways/GpEcomConnector.js +464 -556
  213. package/lib/src/Gateways/GpEcomConnector.js.map +1 -1
  214. package/lib/src/Gateways/IPayFacProvider.d.ts +5 -5
  215. package/lib/src/Gateways/IPayFacProvider.js +2 -2
  216. package/lib/src/Gateways/IPaymentGateway.d.ts +8 -8
  217. package/lib/src/Gateways/IPaymentGateway.js +2 -2
  218. package/lib/src/Gateways/IRecurringService.d.ts +6 -6
  219. package/lib/src/Gateways/IRecurringService.js +2 -2
  220. package/lib/src/Gateways/PayPlanConnector.d.ts +42 -42
  221. package/lib/src/Gateways/PayPlanConnector.js +531 -552
  222. package/lib/src/Gateways/PayPlanConnector.js.map +1 -1
  223. package/lib/src/Gateways/PorticoConnector.d.ts +48 -44
  224. package/lib/src/Gateways/PorticoConnector.js +1012 -1017
  225. package/lib/src/Gateways/PorticoConnector.js.map +1 -1
  226. package/lib/src/Gateways/ProPayConnector.d.ts +45 -41
  227. package/lib/src/Gateways/ProPayConnector.js +801 -694
  228. package/lib/src/Gateways/ProPayConnector.js.map +1 -1
  229. package/lib/src/Gateways/RestGateway.d.ts +8 -6
  230. package/lib/src/Gateways/RestGateway.js +48 -31
  231. package/lib/src/Gateways/RestGateway.js.map +1 -1
  232. package/lib/src/Gateways/XmlGateway.d.ts +5 -6
  233. package/lib/src/Gateways/XmlGateway.js +13 -37
  234. package/lib/src/Gateways/XmlGateway.js.map +1 -1
  235. package/lib/src/Gateways/https-wrapper.d.ts +3 -3
  236. package/lib/src/Gateways/https-wrapper.js +76 -35
  237. package/lib/src/Gateways/https-wrapper.js.map +1 -1
  238. package/lib/src/Gateways/index.d.ts +9 -8
  239. package/lib/src/Gateways/index.js +25 -20
  240. package/lib/src/Gateways/index.js.map +1 -1
  241. package/lib/src/HostedPaymentConfig.d.ts +12 -12
  242. package/lib/src/HostedPaymentConfig.js +15 -9
  243. package/lib/src/HostedPaymentConfig.js.map +1 -1
  244. package/lib/src/Mapping/GpApiMapping.d.ts +5 -0
  245. package/lib/src/Mapping/GpApiMapping.js +14 -0
  246. package/lib/src/Mapping/GpApiMapping.js.map +1 -0
  247. package/lib/src/Mapping/GpEcomMapping.d.ts +9 -9
  248. package/lib/src/Mapping/GpEcomMapping.js +84 -73
  249. package/lib/src/Mapping/GpEcomMapping.js.map +1 -1
  250. package/lib/src/Mapping/index.d.ts +2 -1
  251. package/lib/src/Mapping/index.js +18 -13
  252. package/lib/src/Mapping/index.js.map +1 -1
  253. package/lib/src/PaymentMethods/Cash.d.ts +8 -8
  254. package/lib/src/PaymentMethods/Cash.js +15 -36
  255. package/lib/src/PaymentMethods/Cash.js.map +1 -1
  256. package/lib/src/PaymentMethods/Credit.d.ts +85 -85
  257. package/lib/src/PaymentMethods/Credit.js +104 -106
  258. package/lib/src/PaymentMethods/Credit.js.map +1 -1
  259. package/lib/src/PaymentMethods/CreditCardData.d.ts +20 -20
  260. package/lib/src/PaymentMethods/CreditCardData.js +46 -57
  261. package/lib/src/PaymentMethods/CreditCardData.js.map +1 -1
  262. package/lib/src/PaymentMethods/CreditTrackData.d.ts +7 -7
  263. package/lib/src/PaymentMethods/CreditTrackData.js +9 -27
  264. package/lib/src/PaymentMethods/CreditTrackData.js.map +1 -1
  265. package/lib/src/PaymentMethods/Debit.d.ts +40 -40
  266. package/lib/src/PaymentMethods/Debit.js +51 -70
  267. package/lib/src/PaymentMethods/Debit.js.map +1 -1
  268. package/lib/src/PaymentMethods/DebitTrackData.d.ts +7 -7
  269. package/lib/src/PaymentMethods/DebitTrackData.js +9 -27
  270. package/lib/src/PaymentMethods/DebitTrackData.js.map +1 -1
  271. package/lib/src/PaymentMethods/EBT.d.ts +48 -48
  272. package/lib/src/PaymentMethods/EBT.js +67 -88
  273. package/lib/src/PaymentMethods/EBT.js.map +1 -1
  274. package/lib/src/PaymentMethods/EBTCardData.d.ts +16 -16
  275. package/lib/src/PaymentMethods/EBTCardData.js +24 -32
  276. package/lib/src/PaymentMethods/EBTCardData.js.map +1 -1
  277. package/lib/src/PaymentMethods/EBTTrackData.d.ts +8 -8
  278. package/lib/src/PaymentMethods/EBTTrackData.js +10 -27
  279. package/lib/src/PaymentMethods/EBTTrackData.js.map +1 -1
  280. package/lib/src/PaymentMethods/ECheck.d.ts +32 -32
  281. package/lib/src/PaymentMethods/ECheck.js +37 -40
  282. package/lib/src/PaymentMethods/ECheck.js.map +1 -1
  283. package/lib/src/PaymentMethods/GiftCard.d.ts +131 -131
  284. package/lib/src/PaymentMethods/GiftCard.js +188 -205
  285. package/lib/src/PaymentMethods/GiftCard.js.map +1 -1
  286. package/lib/src/PaymentMethods/Interfaces.d.ts +55 -55
  287. package/lib/src/PaymentMethods/Interfaces.js +2 -2
  288. package/lib/src/PaymentMethods/PaymentMethod.d.ts +19 -19
  289. package/lib/src/PaymentMethods/PaymentMethod.js +56 -114
  290. package/lib/src/PaymentMethods/PaymentMethod.js.map +1 -1
  291. package/lib/src/PaymentMethods/RecurringPaymentMethod.d.ts +23 -23
  292. package/lib/src/PaymentMethods/RecurringPaymentMethod.js +65 -77
  293. package/lib/src/PaymentMethods/RecurringPaymentMethod.js.map +1 -1
  294. package/lib/src/PaymentMethods/TransactionReference.d.ts +10 -10
  295. package/lib/src/PaymentMethods/TransactionReference.js +16 -12
  296. package/lib/src/PaymentMethods/TransactionReference.js.map +1 -1
  297. package/lib/src/PaymentMethods/index.d.ts +15 -15
  298. package/lib/src/PaymentMethods/index.js +31 -27
  299. package/lib/src/PaymentMethods/index.js.map +1 -1
  300. package/lib/src/ServiceConfigs/AcceptorConfig.d.ts +29 -41
  301. package/lib/src/ServiceConfigs/AcceptorConfig.js +42 -29
  302. package/lib/src/ServiceConfigs/AcceptorConfig.js.map +1 -1
  303. package/lib/src/ServiceConfigs/Configuration.d.ts +15 -15
  304. package/lib/src/ServiceConfigs/Configuration.js +19 -15
  305. package/lib/src/ServiceConfigs/Configuration.js.map +1 -1
  306. package/lib/src/ServiceConfigs/Gateways/GatewayConfig.d.ts +14 -14
  307. package/lib/src/ServiceConfigs/Gateways/GatewayConfig.js +29 -45
  308. package/lib/src/ServiceConfigs/Gateways/GatewayConfig.js.map +1 -1
  309. package/lib/src/ServiceConfigs/Gateways/GpApiConfig.d.ts +21 -0
  310. package/lib/src/ServiceConfigs/Gateways/GpApiConfig.js +44 -0
  311. package/lib/src/ServiceConfigs/Gateways/GpApiConfig.js.map +1 -0
  312. package/lib/src/ServiceConfigs/Gateways/GpEcomConfig.d.ts +21 -27
  313. package/lib/src/ServiceConfigs/Gateways/GpEcomConfig.js +49 -60
  314. package/lib/src/ServiceConfigs/Gateways/GpEcomConfig.js.map +1 -1
  315. package/lib/src/ServiceConfigs/Gateways/PorticoConfig.d.ts +22 -0
  316. package/lib/src/ServiceConfigs/Gateways/PorticoConfig.js +116 -0
  317. package/lib/src/ServiceConfigs/Gateways/PorticoConfig.js.map +1 -0
  318. package/lib/src/ServiceConfigs/Gateways/index.d.ts +4 -2
  319. package/lib/src/ServiceConfigs/Gateways/index.js +20 -14
  320. package/lib/src/ServiceConfigs/Gateways/index.js.map +1 -1
  321. package/lib/src/ServiceConfigs/ServicesConfigs.d.ts +6 -0
  322. package/lib/src/ServiceConfigs/ServicesConfigs.js +14 -0
  323. package/lib/src/ServiceConfigs/ServicesConfigs.js.map +1 -0
  324. package/lib/src/ServiceConfigs/index.d.ts +4 -5
  325. package/lib/src/ServiceConfigs/index.js +20 -17
  326. package/lib/src/ServiceConfigs/index.js.map +1 -1
  327. package/lib/src/Services/BatchService.d.ts +4 -4
  328. package/lib/src/Services/BatchService.js +14 -17
  329. package/lib/src/Services/BatchService.js.map +1 -1
  330. package/lib/src/Services/CheckService.d.ts +7 -6
  331. package/lib/src/Services/CheckService.js +19 -20
  332. package/lib/src/Services/CheckService.js.map +1 -1
  333. package/lib/src/Services/CreditService.d.ts +13 -12
  334. package/lib/src/Services/CreditService.js +53 -54
  335. package/lib/src/Services/CreditService.js.map +1 -1
  336. package/lib/src/Services/DebitService.d.ts +8 -7
  337. package/lib/src/Services/DebitService.js +27 -28
  338. package/lib/src/Services/DebitService.js.map +1 -1
  339. package/lib/src/Services/EBTService.d.ts +9 -8
  340. package/lib/src/Services/EBTService.js +30 -32
  341. package/lib/src/Services/EBTService.js.map +1 -1
  342. package/lib/src/Services/GiftService.d.ts +17 -16
  343. package/lib/src/Services/GiftService.js +53 -54
  344. package/lib/src/Services/GiftService.js.map +1 -1
  345. package/lib/src/Services/GpApiServices.d.ts +4 -0
  346. package/lib/src/Services/GpApiServices.js +44 -0
  347. package/lib/src/Services/GpApiServices.js.map +1 -0
  348. package/lib/src/Services/HostedService.d.ts +10 -9
  349. package/lib/src/Services/HostedService.js +58 -59
  350. package/lib/src/Services/HostedService.js.map +1 -1
  351. package/lib/src/Services/PayFacService.d.ts +26 -26
  352. package/lib/src/Services/PayFacService.js +75 -77
  353. package/lib/src/Services/PayFacService.js.map +1 -1
  354. package/lib/src/Services/RecurringService.d.ts +8 -8
  355. package/lib/src/Services/RecurringService.js +23 -27
  356. package/lib/src/Services/RecurringService.js.map +1 -1
  357. package/lib/src/Services/ReportingService.d.ts +6 -6
  358. package/lib/src/Services/ReportingService.js +17 -19
  359. package/lib/src/Services/ReportingService.js.map +1 -1
  360. package/lib/src/Services/index.d.ts +10 -9
  361. package/lib/src/Services/index.js +26 -21
  362. package/lib/src/Services/index.js.map +1 -1
  363. package/lib/src/ServicesContainer.d.ts +17 -26
  364. package/lib/src/ServicesContainer.js +57 -139
  365. package/lib/src/ServicesContainer.js.map +1 -1
  366. package/lib/src/Utils/GenerationUtils.d.ts +5 -5
  367. package/lib/src/Utils/GenerationUtils.js +33 -36
  368. package/lib/src/Utils/GenerationUtils.js.map +1 -1
  369. package/lib/src/Utils/InputValidation.d.ts +12 -12
  370. package/lib/src/Utils/InputValidation.js +70 -72
  371. package/lib/src/Utils/InputValidation.js.map +1 -1
  372. package/lib/src/Utils/Sha1.d.ts +6 -6
  373. package/lib/src/Utils/Sha1.js +230 -225
  374. package/lib/src/Utils/Sha1.js.map +1 -1
  375. package/lib/src/Utils/StringUtils.d.ts +6 -6
  376. package/lib/src/Utils/StringUtils.js +50 -53
  377. package/lib/src/Utils/StringUtils.js.map +1 -1
  378. package/lib/src/Utils/index.d.ts +2 -2
  379. package/lib/src/Utils/index.js +18 -14
  380. package/lib/src/Utils/index.js.map +1 -1
  381. package/lib/src/index.d.ts +12 -12
  382. package/lib/src/index.js +32 -28
  383. package/lib/src/index.js.map +1 -1
  384. package/lib/test/Data/BaseGpApiTestConfig.d.ts +13 -0
  385. package/lib/test/Data/BaseGpApiTestConfig.js +42 -0
  386. package/lib/test/Data/BaseGpApiTestConfig.js.map +1 -0
  387. package/lib/test/Data/TestCards.d.ts +24 -24
  388. package/lib/test/Data/TestCards.js +219 -232
  389. package/lib/test/Data/TestCards.js.map +1 -1
  390. package/lib/test/Data/TestChecks.d.ts +4 -4
  391. package/lib/test/Data/TestChecks.js +26 -32
  392. package/lib/test/Data/TestChecks.js.map +1 -1
  393. package/lib/test/Data/index.d.ts +2 -2
  394. package/lib/test/Data/index.js +18 -14
  395. package/lib/test/Data/index.js.map +1 -1
  396. package/lib/test/Integration/Gateways/{ProPayConnector/Certifications/GetInformationCertificationTests.d.ts → GpApiConnector/AccessTokenTest.d.ts} +1 -1
  397. package/lib/test/Integration/Gateways/GpApiConnector/AccessTokenTest.js +102 -0
  398. package/lib/test/Integration/Gateways/GpApiConnector/AccessTokenTest.js.map +1 -0
  399. package/lib/test/Integration/Gateways/{RealexConnector → GpEcomConnector}/Certification/AuthTest.d.ts +1 -1
  400. package/lib/test/Integration/Gateways/GpEcomConnector/Certification/AuthTest.js +2446 -0
  401. package/lib/test/Integration/Gateways/GpEcomConnector/Certification/AuthTest.js.map +1 -0
  402. package/lib/test/Integration/Gateways/{RealexConnector → GpEcomConnector}/Certification/AvsTest.d.ts +1 -1
  403. package/lib/test/Integration/Gateways/GpEcomConnector/Certification/AvsTest.js +506 -0
  404. package/lib/test/Integration/Gateways/GpEcomConnector/Certification/AvsTest.js.map +1 -0
  405. package/lib/test/Integration/Gateways/{RealexConnector → GpEcomConnector}/Certification/CreditTest.d.ts +1 -1
  406. package/lib/test/Integration/Gateways/GpEcomConnector/Certification/CreditTest.js +1296 -0
  407. package/lib/test/Integration/Gateways/GpEcomConnector/Certification/CreditTest.js.map +1 -0
  408. package/lib/test/Integration/Gateways/{RealexConnector → GpEcomConnector}/Certification/HoldTest.d.ts +1 -1
  409. package/lib/test/Integration/Gateways/GpEcomConnector/Certification/HoldTest.js +847 -0
  410. package/lib/test/Integration/Gateways/GpEcomConnector/Certification/HoldTest.js.map +1 -0
  411. package/lib/test/Integration/Gateways/{RealexConnector → GpEcomConnector}/CreditTest.d.ts +1 -1
  412. package/lib/test/Integration/Gateways/GpEcomConnector/CreditTest.js +214 -0
  413. package/lib/test/Integration/Gateways/GpEcomConnector/CreditTest.js.map +1 -0
  414. package/lib/test/Integration/Gateways/{RealexConnector → GpEcomConnector}/HppTest.d.ts +1 -1
  415. package/lib/test/Integration/Gateways/GpEcomConnector/HppTest.js +98 -0
  416. package/lib/test/Integration/Gateways/GpEcomConnector/HppTest.js.map +1 -0
  417. package/lib/test/Integration/Gateways/{RealexConnector → GpEcomConnector}/RecurringTest.d.ts +1 -1
  418. package/lib/test/Integration/Gateways/GpEcomConnector/RecurringTest.js +132 -0
  419. package/lib/test/Integration/Gateways/GpEcomConnector/RecurringTest.js.map +1 -0
  420. package/lib/test/Integration/Gateways/PorticoConnector/AchTest.d.ts +1 -1
  421. package/lib/test/Integration/Gateways/PorticoConnector/AchTest.js +58 -112
  422. package/lib/test/Integration/Gateways/PorticoConnector/AchTest.js.map +1 -1
  423. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/CheckTest.d.ts +1 -1
  424. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/CheckTest.js +377 -483
  425. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/CheckTest.js.map +1 -1
  426. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/EcommerceCheckTest.d.ts +1 -1
  427. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/EcommerceCheckTest.js +85 -83
  428. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/EcommerceCheckTest.js.map +1 -1
  429. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/EcommerceTest.d.ts +1 -1
  430. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/EcommerceTest.js +1722 -1720
  431. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/EcommerceTest.js.map +1 -1
  432. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/MotoCheckTest.d.ts +1 -1
  433. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/MotoCheckTest.js +85 -83
  434. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/MotoCheckTest.js.map +1 -1
  435. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/MotoTest.d.ts +1 -1
  436. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/MotoTest.js +1759 -1757
  437. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/MotoTest.js.map +1 -1
  438. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/RecurringTest.d.ts +1 -1
  439. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/RecurringTest.js +419 -682
  440. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/RecurringTest.js.map +1 -1
  441. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/RetailTest.d.ts +1 -1
  442. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/RetailTest.js +2220 -2218
  443. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/RetailTest.js.map +1 -1
  444. package/lib/test/Integration/Gateways/PorticoConnector/CreditTest.d.ts +1 -1
  445. package/lib/test/Integration/Gateways/PorticoConnector/CreditTest.js +391 -707
  446. package/lib/test/Integration/Gateways/PorticoConnector/CreditTest.js.map +1 -1
  447. package/lib/test/Integration/Gateways/PorticoConnector/DebitTest.d.ts +1 -1
  448. package/lib/test/Integration/Gateways/PorticoConnector/DebitTest.js +81 -151
  449. package/lib/test/Integration/Gateways/PorticoConnector/DebitTest.js.map +1 -1
  450. package/lib/test/Integration/Gateways/PorticoConnector/EbtTest.d.ts +1 -1
  451. package/lib/test/Integration/Gateways/PorticoConnector/EbtTest.js +71 -171
  452. package/lib/test/Integration/Gateways/PorticoConnector/EbtTest.js.map +1 -1
  453. package/lib/test/Integration/Gateways/PorticoConnector/EcommerceTest.d.ts +1 -1
  454. package/lib/test/Integration/Gateways/PorticoConnector/EcommerceTest.js +110 -192
  455. package/lib/test/Integration/Gateways/PorticoConnector/EcommerceTest.js.map +1 -1
  456. package/lib/test/Integration/Gateways/PorticoConnector/GiftTest.d.ts +1 -1
  457. package/lib/test/Integration/Gateways/PorticoConnector/GiftTest.js +146 -377
  458. package/lib/test/Integration/Gateways/PorticoConnector/GiftTest.js.map +1 -1
  459. package/lib/test/Integration/Gateways/PorticoConnector/RecurringTest.d.ts +1 -1
  460. package/lib/test/Integration/Gateways/PorticoConnector/RecurringTest.js +100 -196
  461. package/lib/test/Integration/Gateways/PorticoConnector/RecurringTest.js.map +1 -1
  462. package/lib/test/Integration/Gateways/PorticoConnector/ReportingTest.d.ts +1 -1
  463. package/lib/test/Integration/Gateways/PorticoConnector/ReportingTest.js +49 -47
  464. package/lib/test/Integration/Gateways/PorticoConnector/ReportingTest.js.map +1 -1
  465. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/{ProPayAccountCertificationTests.d.ts → GetInformationCertificationTest.d.ts} +1 -1
  466. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/GetInformationCertificationTest.js +44 -0
  467. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/GetInformationCertificationTest.js.map +1 -0
  468. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/{ProPayFundCertificationTests.d.ts → ProPayAccountCertificationTest.d.ts} +1 -1
  469. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/ProPayAccountCertificationTest.js +221 -0
  470. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/ProPayAccountCertificationTest.js.map +1 -0
  471. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/{ProPayInNetworkTransactionCertificationTests.d.ts → ProPayFundCertificationTest.d.ts} +1 -1
  472. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/ProPayFundCertificationTest.js +60 -0
  473. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/ProPayFundCertificationTest.js.map +1 -0
  474. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/ProPayInNetworkTransactionCertificationTest.d.ts +1 -0
  475. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/ProPayInNetworkTransactionCertificationTest.js +80 -0
  476. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/ProPayInNetworkTransactionCertificationTest.js.map +1 -0
  477. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/TestData/TestAccountData.d.ts +39 -39
  478. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/TestData/TestAccountData.js +392 -371
  479. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/TestData/TestAccountData.js.map +1 -1
  480. package/lib/test/Integration/Gateways/ProPayConnector/GetInformationTest.d.ts +1 -0
  481. package/lib/test/Integration/Gateways/ProPayConnector/GetInformationTest.js +44 -0
  482. package/lib/test/Integration/Gateways/ProPayConnector/GetInformationTest.js.map +1 -0
  483. package/lib/test/Integration/Gateways/ProPayConnector/ProPayAccountTest.d.ts +1 -0
  484. package/lib/test/Integration/Gateways/ProPayConnector/ProPayAccountTest.js +330 -0
  485. package/lib/test/Integration/Gateways/ProPayConnector/ProPayAccountTest.js.map +1 -0
  486. package/lib/test/Integration/Gateways/ProPayConnector/ProPayFundsTest.d.ts +1 -0
  487. package/lib/test/Integration/Gateways/ProPayConnector/ProPayFundsTest.js +60 -0
  488. package/lib/test/Integration/Gateways/ProPayConnector/ProPayFundsTest.js.map +1 -0
  489. package/lib/test/Integration/Gateways/ProPayConnector/ProPayInNetworkTransactionTest.d.ts +1 -0
  490. package/lib/test/Integration/Gateways/ProPayConnector/ProPayInNetworkTransactionTest.js +80 -0
  491. package/lib/test/Integration/Gateways/ProPayConnector/ProPayInNetworkTransactionTest.js.map +1 -0
  492. package/lib/test/Integration/Gateways/ProPayConnector/TestData/TestAccountData.d.ts +34 -33
  493. package/lib/test/Integration/Gateways/ProPayConnector/TestData/TestAccountData.js +321 -268
  494. package/lib/test/Integration/Gateways/ProPayConnector/TestData/TestAccountData.js.map +1 -1
  495. package/lib/test/Integration/Gateways/ProPayConnector/TestData/TestFundsData.d.ts +4 -4
  496. package/lib/test/Integration/Gateways/ProPayConnector/TestData/TestFundsData.js +27 -30
  497. package/lib/test/Integration/Gateways/ProPayConnector/TestData/TestFundsData.js.map +1 -1
  498. package/lib/test/Integration/Services/CheckServiceTest.d.ts +1 -1
  499. package/lib/test/Integration/Services/CheckServiceTest.js +44 -98
  500. package/lib/test/Integration/Services/CheckServiceTest.js.map +1 -1
  501. package/lib/test/Integration/Services/CreditServiceTest.d.ts +1 -1
  502. package/lib/test/Integration/Services/CreditServiceTest.js +173 -313
  503. package/lib/test/Integration/Services/CreditServiceTest.js.map +1 -1
  504. package/lib/test/Integration/Services/DebitServiceTest.d.ts +1 -1
  505. package/lib/test/Integration/Services/DebitServiceTest.js +80 -154
  506. package/lib/test/Integration/Services/DebitServiceTest.js.map +1 -1
  507. package/lib/test/Integration/Services/EBTServiceTest.d.ts +1 -1
  508. package/lib/test/Integration/Services/EBTServiceTest.js +63 -135
  509. package/lib/test/Integration/Services/EBTServiceTest.js.map +1 -1
  510. package/lib/test/Unit/Builders/AuthorizationBuilder/ValidationTest.d.ts +1 -1
  511. package/lib/test/Unit/Builders/AuthorizationBuilder/ValidationTest.js +110 -161
  512. package/lib/test/Unit/Builders/AuthorizationBuilder/ValidationTest.js.map +1 -1
  513. package/lib/test/Unit/Builders/ReportBuilder/ValidationTest.d.ts +1 -1
  514. package/lib/test/Unit/Builders/ReportBuilder/ValidationTest.js +61 -139
  515. package/lib/test/Unit/Builders/ReportBuilder/ValidationTest.js.map +1 -1
  516. package/lib/test/Unit/Gateways/GpEcomConnector/CreditTest.d.ts +1 -1
  517. package/lib/test/Unit/Gateways/GpEcomConnector/CreditTest.js +33 -72
  518. package/lib/test/Unit/Gateways/GpEcomConnector/CreditTest.js.map +1 -1
  519. package/lib/test/Unit/Gateways/PorticoConnector/InputValidationTest.d.ts +1 -1
  520. package/lib/test/Unit/Gateways/PorticoConnector/InputValidationTest.js +124 -202
  521. package/lib/test/Unit/Gateways/PorticoConnector/InputValidationTest.js.map +1 -1
  522. package/package.json +65 -58
  523. package/tsconfig.eslint.json +15 -0
  524. package/lib/src/Gateways/RealexConnector.d.ts +0 -30
  525. package/lib/src/Gateways/RealexConnector.js +0 -524
  526. package/lib/src/Gateways/RealexConnector.js.map +0 -1
  527. package/lib/src/ServiceConfigs/ServicesConfig.d.ts +0 -27
  528. package/lib/src/ServiceConfigs/ServicesConfig.js +0 -51
  529. package/lib/src/ServiceConfigs/ServicesConfig.js.map +0 -1
  530. package/lib/src/ServiceConfigs/ServicesConfigsAdded.d.ts +0 -10
  531. package/lib/src/ServiceConfigs/ServicesConfigsAdded.js +0 -27
  532. package/lib/src/ServiceConfigs/ServicesConfigsAdded.js.map +0 -1
  533. package/lib/src/ServicesConfig.d.ts +0 -27
  534. package/lib/src/ServicesConfig.js +0 -51
  535. package/lib/src/ServicesConfig.js.map +0 -1
  536. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/GetInformationCertificationTests.js +0 -101
  537. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/GetInformationCertificationTests.js.map +0 -1
  538. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/ProPayAccountCertificationTests.js +0 -353
  539. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/ProPayAccountCertificationTests.js.map +0 -1
  540. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/ProPayFundCertificationTests.js +0 -124
  541. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/ProPayFundCertificationTests.js.map +0 -1
  542. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/ProPayInNetworkTransactionCertificationTests.js +0 -143
  543. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/ProPayInNetworkTransactionCertificationTests.js.map +0 -1
  544. package/lib/test/Integration/Gateways/ProPayConnector/GetInformationTests.d.ts +0 -1
  545. package/lib/test/Integration/Gateways/ProPayConnector/GetInformationTests.js +0 -101
  546. package/lib/test/Integration/Gateways/ProPayConnector/GetInformationTests.js.map +0 -1
  547. package/lib/test/Integration/Gateways/ProPayConnector/ProPayAccountTests.d.ts +0 -1
  548. package/lib/test/Integration/Gateways/ProPayConnector/ProPayAccountTests.js +0 -536
  549. package/lib/test/Integration/Gateways/ProPayConnector/ProPayAccountTests.js.map +0 -1
  550. package/lib/test/Integration/Gateways/ProPayConnector/ProPayFundsTests.d.ts +0 -1
  551. package/lib/test/Integration/Gateways/ProPayConnector/ProPayFundsTests.js +0 -125
  552. package/lib/test/Integration/Gateways/ProPayConnector/ProPayFundsTests.js.map +0 -1
  553. package/lib/test/Integration/Gateways/ProPayConnector/ProPayInNetworkTransactionTests.d.ts +0 -1
  554. package/lib/test/Integration/Gateways/ProPayConnector/ProPayInNetworkTransactionTests.js +0 -145
  555. package/lib/test/Integration/Gateways/ProPayConnector/ProPayInNetworkTransactionTests.js.map +0 -1
  556. package/lib/test/Integration/Gateways/RealexConnector/Certification/AuthTest.js +0 -4374
  557. package/lib/test/Integration/Gateways/RealexConnector/Certification/AuthTest.js.map +0 -1
  558. package/lib/test/Integration/Gateways/RealexConnector/Certification/AvsTest.js +0 -759
  559. package/lib/test/Integration/Gateways/RealexConnector/Certification/AvsTest.js.map +0 -1
  560. package/lib/test/Integration/Gateways/RealexConnector/Certification/CreditTest.js +0 -2400
  561. package/lib/test/Integration/Gateways/RealexConnector/Certification/CreditTest.js.map +0 -1
  562. package/lib/test/Integration/Gateways/RealexConnector/Certification/HoldTest.js +0 -1657
  563. package/lib/test/Integration/Gateways/RealexConnector/Certification/HoldTest.js.map +0 -1
  564. package/lib/test/Integration/Gateways/RealexConnector/Certification/ManualTest.d.ts +0 -1
  565. package/lib/test/Integration/Gateways/RealexConnector/Certification/ManualTest.js +0 -5651
  566. package/lib/test/Integration/Gateways/RealexConnector/Certification/ManualTest.js.map +0 -1
  567. package/lib/test/Integration/Gateways/RealexConnector/Certification/OtbTest.d.ts +0 -1
  568. package/lib/test/Integration/Gateways/RealexConnector/Certification/OtbTest.js +0 -1986
  569. package/lib/test/Integration/Gateways/RealexConnector/Certification/OtbTest.js.map +0 -1
  570. package/lib/test/Integration/Gateways/RealexConnector/Certification/RebateTest.d.ts +0 -1
  571. package/lib/test/Integration/Gateways/RealexConnector/Certification/RebateTest.js +0 -2370
  572. package/lib/test/Integration/Gateways/RealexConnector/Certification/RebateTest.js.map +0 -1
  573. package/lib/test/Integration/Gateways/RealexConnector/Certification/ReleaseTest.d.ts +0 -1
  574. package/lib/test/Integration/Gateways/RealexConnector/Certification/ReleaseTest.js +0 -1704
  575. package/lib/test/Integration/Gateways/RealexConnector/Certification/ReleaseTest.js.map +0 -1
  576. package/lib/test/Integration/Gateways/RealexConnector/Certification/SettleTest.d.ts +0 -1
  577. package/lib/test/Integration/Gateways/RealexConnector/Certification/SettleTest.js +0 -2054
  578. package/lib/test/Integration/Gateways/RealexConnector/Certification/SettleTest.js.map +0 -1
  579. package/lib/test/Integration/Gateways/RealexConnector/Certification/ValidationTest.d.ts +0 -1
  580. package/lib/test/Integration/Gateways/RealexConnector/Certification/ValidationTest.js +0 -2470
  581. package/lib/test/Integration/Gateways/RealexConnector/Certification/ValidationTest.js.map +0 -1
  582. package/lib/test/Integration/Gateways/RealexConnector/Certification/VerifyEnrolledTest.d.ts +0 -1
  583. package/lib/test/Integration/Gateways/RealexConnector/Certification/VerifyEnrolledTest.js +0 -3117
  584. package/lib/test/Integration/Gateways/RealexConnector/Certification/VerifyEnrolledTest.js.map +0 -1
  585. package/lib/test/Integration/Gateways/RealexConnector/Certification/VoidTest.d.ts +0 -1
  586. package/lib/test/Integration/Gateways/RealexConnector/Certification/VoidTest.js +0 -2032
  587. package/lib/test/Integration/Gateways/RealexConnector/Certification/VoidTest.js.map +0 -1
  588. package/lib/test/Integration/Gateways/RealexConnector/CreditTest.js +0 -323
  589. package/lib/test/Integration/Gateways/RealexConnector/CreditTest.js.map +0 -1
  590. package/lib/test/Integration/Gateways/RealexConnector/HppTest.js +0 -99
  591. package/lib/test/Integration/Gateways/RealexConnector/HppTest.js.map +0 -1
  592. package/lib/test/Integration/Gateways/RealexConnector/RecurringTest.js +0 -264
  593. package/lib/test/Integration/Gateways/RealexConnector/RecurringTest.js.map +0 -1
  594. package/lib/test/Unit/Gateways/RealexConnector/CreditTest.d.ts +0 -1
  595. package/lib/test/Unit/Gateways/RealexConnector/CreditTest.js +0 -71
  596. package/lib/test/Unit/Gateways/RealexConnector/CreditTest.js.map +0 -1
@@ -1,695 +1,802 @@
1
- "use strict";
2
- var __extends = (this && this.__extends) || (function () {
3
- var extendStatics = function (d, b) {
4
- extendStatics = Object.setPrototypeOf ||
5
- ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
- function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
- return extendStatics(d, b);
8
- };
9
- return function (d, b) {
10
- if (typeof b !== "function" && b !== null)
11
- throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
- extendStatics(d, b);
13
- function __() { this.constructor = d; }
14
- d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
- };
16
- })();
17
- Object.defineProperty(exports, "__esModule", { value: true });
18
- exports.ProPayConnector = void 0;
19
- var __1 = require("../");
20
- var Enums_1 = require("../Entities/Enums");
21
- var XmlGateway_1 = require("./XmlGateway");
22
- var elementtree_1 = require("@azz/elementtree");
23
- var BusinessData_1 = require("../Entities/ProFac/BusinessData");
24
- var UserPersonalData_1 = require("../Entities/ProFac/UserPersonalData");
25
- var AccountPermissions_1 = require("../Entities/ProFac/AccountPermissions");
26
- var GrossBillingInformation_1 = require("../Entities/ProFac/GrossBillingInformation");
27
- var Entities_1 = require("../Entities");
28
- var PayFacResponseData_1 = require("../Entities/ProFac/PayFacResponseData");
29
- var BankAccountData_1 = require("../Entities/ProFac/BankAccountData");
30
- var AccountBalanceResponseData_1 = require("../Entities/ProFac/AccountBalanceResponseData");
31
- var BeneficialOwnerDataResult_1 = require("../Entities/ProFac/BeneficialOwnerDataResult");
32
- var fs = require("fs");
33
- var ProPayConnector = /** @class */ (function (_super) {
34
- __extends(ProPayConnector, _super);
35
- function ProPayConnector() {
36
- return _super !== null && _super.apply(this, arguments) || this;
37
- }
38
- ProPayConnector.prototype.processPayFac = function (builder) {
39
- var _this = this;
40
- var transaction = elementtree_1.Element("XMLRequest");
41
- // Credentials
42
- elementtree_1.SubElement(transaction, "certStr").append(elementtree_1.CData(this.certStr.toString()));
43
- elementtree_1.SubElement(transaction, "termid").append(elementtree_1.CData(this.termID));
44
- elementtree_1.SubElement(transaction, "class").append(elementtree_1.CData("partner"));
45
- //Transaction
46
- var xmlTrans = elementtree_1.SubElement(transaction, "XMLTrans");
47
- elementtree_1.SubElement(xmlTrans, "transType").append(elementtree_1.CData(this.mapRequestType(builder)));
48
- this.HydrateAccountDetails(xmlTrans, builder);
49
- return this.doTransaction(new elementtree_1.ElementTree(transaction).write()).then(function (response) { return _this.mapResponse(builder, response); });
50
- };
51
- ProPayConnector.prototype.HydrateAccountDetails = function (xmlTrans, builder) {
52
- this.UpdateGatewaySettings(builder);
53
- // common fields
54
- this.hydrateCommonFields(xmlTrans, builder);
55
- if (builder.password != null) {
56
- elementtree_1.SubElement(xmlTrans, "password").append(elementtree_1.CData(builder.password));
57
- }
58
- if (builder.accountPermissions != null) {
59
- this.HydrateAccountPermissions(xmlTrans, builder.accountPermissions);
60
- }
61
- if (builder.userPersonalData != null) {
62
- this.HydrateUserPersonalData(xmlTrans, builder.userPersonalData);
63
- }
64
- if (builder.businessData != null) {
65
- this.HydrateBusinessData(xmlTrans, builder.businessData);
66
- }
67
- this.HydrateBankDetails(xmlTrans, builder);
68
- if (builder.mailingAddressInformation != null || builder.mailingAddressInformation != undefined) {
69
- this.HydrateMailAddress(xmlTrans, builder.mailingAddressInformation);
70
- }
71
- if (builder.threatRiskData != null) {
72
- this.HydrateThreatRiskData(xmlTrans, builder.threatRiskData);
73
- }
74
- if (builder.significantOwnerData != null) {
75
- this.HydrateSignificantOwnerData(xmlTrans, builder.significantOwnerData);
76
- }
77
- if (builder.timeZone && builder.timeZone.trim()) {
78
- elementtree_1.SubElement(xmlTrans, "TimeZone").append(elementtree_1.CData(builder.timeZone));
79
- }
80
- if (builder.deviceData != null) {
81
- this.HydrateDeviceData(xmlTrans, builder.deviceData);
82
- }
83
- if (builder.beneficialOwnerData != null || builder.beneficialOwnerData != undefined) {
84
- this.HydrateBeneficialOwnerData(xmlTrans, builder.beneficialOwnerData);
85
- }
86
- if (builder.grossBillingInformation != null) {
87
- this.HydrateGrossBillingData(xmlTrans, builder.grossBillingInformation);
88
- }
89
- if (builder.renewalAccountData != null) {
90
- this.HydrateAccountRenewDetails(xmlTrans, builder.renewalAccountData);
91
- }
92
- if (builder.FlashFundsPaymentCardData != null) {
93
- this.HydrateFlashFundsPaymentCardData(xmlTrans, builder.FlashFundsPaymentCardData);
94
- }
95
- if (builder.documentUploadData != null) {
96
- this.HydrateDocumentUploadData(xmlTrans, builder.TransactionType, builder.documentUploadData);
97
- }
98
- if (builder.sSORequestData != null) {
99
- this.HydrateSSORequestData(xmlTrans, builder.sSORequestData);
100
- }
101
- if (builder.orderDevice != null) {
102
- this.HydrateOrderDeviceData(xmlTrans, builder.orderDevice);
103
- }
104
- this.HydrateBankAccountOwnershipData(xmlTrans, builder);
105
- };
106
- ProPayConnector.prototype.hydrateCommonFields = function (xmlTrans, builder) {
107
- var elementMap = {
108
- 'accountNum': builder.accountNumber ? builder.accountNumber : '',
109
- 'amount': builder.amount ? builder.amount : '',
110
- 'recAccntNum': builder.receivingAccountNumber ? builder.receivingAccountNumber : '',
111
- 'allowPending': builder.allowPending == true ? 'Y' : '',
112
- 'ccAmount': builder.cCAmount ? builder.cCAmount : '',
113
- 'requireCCRefund': builder.requireCCRefund == true ? 'Y' : builder.requireCCRefund == false ? 'N' : '',
114
- 'transNum': builder.transNum ? builder.transNum : '',
115
- 'gatewayTransactionId': builder.gatewayTransactionId ? builder.gatewayTransactionId : '',
116
- 'globaltransId': builder.globaltransId ? builder.globaltransId : '',
117
- 'globalTransSource': builder.globalTransSource ? builder.globalTransSource : '',
118
- 'cardBrandTransactionId': builder.cardBrandTransactionId ? builder.cardBrandTransactionId : '',
119
- };
120
- this.createNewElements(xmlTrans, elementMap);
121
- };
122
- ProPayConnector.prototype.HydrateBankAccountOwnershipData = function (xmlTrans, builder) {
123
- var _a, _b;
124
- if (builder.primaryBankAccountOwner != null || builder.secondaryBankAccountOwner != null) {
125
- var ownersDataTag = elementtree_1.SubElement(xmlTrans, "BankAccountOwnerData");
126
- if (builder.primaryBankAccountOwner != null) {
127
- var primaryOwnerTag = elementtree_1.SubElement(ownersDataTag, "PrimaryBankAccountOwner");
128
- elementtree_1.SubElement(primaryOwnerTag, "FirstName").text = builder.primaryBankAccountOwner.firstName;
129
- elementtree_1.SubElement(primaryOwnerTag, "LastName").text = builder.primaryBankAccountOwner.lastName;
130
- elementtree_1.SubElement(primaryOwnerTag, "Address1").text = (_a = builder.primaryBankAccountOwner.ownerAddress) === null || _a === void 0 ? void 0 : _a.streetAddress1;
131
- elementtree_1.SubElement(primaryOwnerTag, "Address2").text = builder.primaryBankAccountOwner.ownerAddress.streetAddress2;
132
- elementtree_1.SubElement(primaryOwnerTag, "Address3").text = builder.primaryBankAccountOwner.ownerAddress.streetAddress3;
133
- elementtree_1.SubElement(primaryOwnerTag, "City").text = builder.primaryBankAccountOwner.ownerAddress.city;
134
- elementtree_1.SubElement(primaryOwnerTag, "StateProvince").text = builder.primaryBankAccountOwner.ownerAddress.state;
135
- elementtree_1.SubElement(primaryOwnerTag, "PostalCode").text = builder.primaryBankAccountOwner.ownerAddress.postalCode;
136
- elementtree_1.SubElement(primaryOwnerTag, "Country").text = builder.primaryBankAccountOwner.ownerAddress.country;
137
- elementtree_1.SubElement(primaryOwnerTag, "Phone").text = builder.primaryBankAccountOwner.phoneNumber;
138
- }
139
- if (builder.secondaryBankAccountOwner != null) {
140
- var secondaryOwnerTag = elementtree_1.SubElement(ownersDataTag, "SecondaryBankAccountOwner");
141
- elementtree_1.SubElement(secondaryOwnerTag, "FirstName").text = builder.secondaryBankAccountOwner.firstName;
142
- elementtree_1.SubElement(secondaryOwnerTag, "LastName").text = builder.secondaryBankAccountOwner.lastName;
143
- elementtree_1.SubElement(secondaryOwnerTag, "Address1").text = (_b = builder.secondaryBankAccountOwner.ownerAddress) === null || _b === void 0 ? void 0 : _b.streetAddress1;
144
- elementtree_1.SubElement(secondaryOwnerTag, "Address2").text = builder.secondaryBankAccountOwner.ownerAddress.streetAddress2;
145
- elementtree_1.SubElement(secondaryOwnerTag, "Address3").text = builder.secondaryBankAccountOwner.ownerAddress.streetAddress3;
146
- elementtree_1.SubElement(secondaryOwnerTag, "City").text = builder.secondaryBankAccountOwner.ownerAddress.city;
147
- elementtree_1.SubElement(secondaryOwnerTag, "StateProvince").text = builder.secondaryBankAccountOwner.ownerAddress.state;
148
- elementtree_1.SubElement(secondaryOwnerTag, "PostalCode").text = builder.secondaryBankAccountOwner.ownerAddress.postalCode;
149
- elementtree_1.SubElement(secondaryOwnerTag, "Country").text = builder.secondaryBankAccountOwner.ownerAddress.country;
150
- elementtree_1.SubElement(secondaryOwnerTag, "Phone").text = builder.secondaryBankAccountOwner.phoneNumber;
151
- }
152
- }
153
- };
154
- ProPayConnector.prototype.HydrateMailAddress = function (xmlTrans, mailingAddressInformation) {
155
- elementtree_1.SubElement(xmlTrans, "mailAddr").append(elementtree_1.CData(mailingAddressInformation === null || mailingAddressInformation === void 0 ? void 0 : mailingAddressInformation.streetAddress1));
156
- elementtree_1.SubElement(xmlTrans, "mailApt").append(elementtree_1.CData(mailingAddressInformation === null || mailingAddressInformation === void 0 ? void 0 : mailingAddressInformation.streetAddress2));
157
- elementtree_1.SubElement(xmlTrans, "mailAddr3").append(elementtree_1.CData(mailingAddressInformation === null || mailingAddressInformation === void 0 ? void 0 : mailingAddressInformation.streetAddress3));
158
- elementtree_1.SubElement(xmlTrans, "mailCity").append(elementtree_1.CData(mailingAddressInformation === null || mailingAddressInformation === void 0 ? void 0 : mailingAddressInformation.city));
159
- elementtree_1.SubElement(xmlTrans, "mailCountry").append(elementtree_1.CData(mailingAddressInformation === null || mailingAddressInformation === void 0 ? void 0 : mailingAddressInformation.country));
160
- elementtree_1.SubElement(xmlTrans, "mailState").append(elementtree_1.CData(mailingAddressInformation === null || mailingAddressInformation === void 0 ? void 0 : mailingAddressInformation.state));
161
- elementtree_1.SubElement(xmlTrans, "mailZip").append(elementtree_1.CData(mailingAddressInformation === null || mailingAddressInformation === void 0 ? void 0 : mailingAddressInformation.postalCode));
162
- };
163
- ProPayConnector.prototype.HydrateBankDetails = function (xmlTrans, builder) {
164
- if (builder.creditCardInformation != null) {
165
- elementtree_1.SubElement(xmlTrans, "NameOnCard").append(elementtree_1.CData(builder.creditCardInformation.cardHolderName));
166
- elementtree_1.SubElement(xmlTrans, "ccNum").append(elementtree_1.CData(builder.creditCardInformation.number));
167
- elementtree_1.SubElement(xmlTrans, "expDate").append(elementtree_1.CData(builder.creditCardInformation.getShortExpiry()));
168
- }
169
- if (builder.aCHInformation != null) {
170
- elementtree_1.SubElement(xmlTrans, "PaymentBankAccountNumber").append(elementtree_1.CData(builder.aCHInformation.accountNumber));
171
- elementtree_1.SubElement(xmlTrans, "PaymentBankRoutingNumber").append(elementtree_1.CData(builder.aCHInformation.routingNumber));
172
- elementtree_1.SubElement(xmlTrans, "PaymentBankAccountType").append(elementtree_1.CData(builder.aCHInformation.accountType));
173
- }
174
- if (builder.bankAccountData != null) {
175
- elementtree_1.SubElement(xmlTrans, "AccountCountryCode").append(elementtree_1.CData(builder.bankAccountData.accountCountryCode));
176
- elementtree_1.SubElement(xmlTrans, "accountName").append(elementtree_1.CData(builder.bankAccountData.accountName));
177
- elementtree_1.SubElement(xmlTrans, "AccountNumber").append(elementtree_1.CData(builder.bankAccountData.accountNumber));
178
- elementtree_1.SubElement(xmlTrans, "AccountOwnershipType").append(elementtree_1.CData(builder.bankAccountData.accountOwnershipType));
179
- elementtree_1.SubElement(xmlTrans, "AccountType").append(elementtree_1.CData(builder.bankAccountData.accountType));
180
- elementtree_1.SubElement(xmlTrans, "BankName").append(elementtree_1.CData(builder.bankAccountData.bankName));
181
- elementtree_1.SubElement(xmlTrans, "RoutingNumber").append(elementtree_1.CData(builder.bankAccountData.routingNumber));
182
- }
183
- if (builder.secondaryBankInformation != null) {
184
- elementtree_1.SubElement(xmlTrans, "SecondaryAccountCountryCode").append(elementtree_1.CData(builder.secondaryBankInformation.accountCountryCode));
185
- elementtree_1.SubElement(xmlTrans, "SecondaryAccountName").append(elementtree_1.CData(builder.secondaryBankInformation.accountName));
186
- elementtree_1.SubElement(xmlTrans, "SecondaryAccountNumber").append(elementtree_1.CData(builder.secondaryBankInformation.accountNumber));
187
- elementtree_1.SubElement(xmlTrans, "SecondaryAccountOwnershipType").append(elementtree_1.CData(builder.secondaryBankInformation.accountOwnershipType));
188
- elementtree_1.SubElement(xmlTrans, "SecondaryAccountType").append(elementtree_1.CData(builder.secondaryBankInformation.accountType));
189
- elementtree_1.SubElement(xmlTrans, "SecondaryBankName").append(elementtree_1.CData(builder.secondaryBankInformation.bankName));
190
- elementtree_1.SubElement(xmlTrans, "SecondaryRoutingNumber").append(elementtree_1.CData(builder.secondaryBankInformation.routingNumber));
191
- }
192
- };
193
- ProPayConnector.prototype.HydrateBusinessData = function (xmlTrans, businessData) {
194
- var _a;
195
- elementtree_1.SubElement(xmlTrans, "BusinessLegalName").append(elementtree_1.CData(businessData.businessLegalName));
196
- elementtree_1.SubElement(xmlTrans, "DoingBusinessAs").append(elementtree_1.CData(businessData.doingBusinessAs));
197
- elementtree_1.SubElement(xmlTrans, "EIN").append(elementtree_1.CData(businessData.employerIdentificationNumber));
198
- elementtree_1.SubElement(xmlTrans, "MCCCode").append(elementtree_1.CData(businessData.merchantCategoryCode));
199
- elementtree_1.SubElement(xmlTrans, "WebsiteURL").append(elementtree_1.CData(businessData.websiteURL));
200
- elementtree_1.SubElement(xmlTrans, "BusinessDesc").append(elementtree_1.CData(businessData.businessDescription));
201
- elementtree_1.SubElement(xmlTrans, "MonthlyBankCardVolume").append(elementtree_1.CData(businessData.monthlyBankCardVolume));
202
- elementtree_1.SubElement(xmlTrans, "AverageTicket").append(elementtree_1.CData(businessData.averageTicket));
203
- elementtree_1.SubElement(xmlTrans, "HighestTicket").append(elementtree_1.CData(businessData.highestTicket));
204
- elementtree_1.SubElement(xmlTrans, "BusinessAddress").append(elementtree_1.CData((_a = businessData.businessAddress) === null || _a === void 0 ? void 0 : _a.streetAddress1));
205
- elementtree_1.SubElement(xmlTrans, "BusinessAddress2").append(elementtree_1.CData(businessData.businessAddress.streetAddress2));
206
- elementtree_1.SubElement(xmlTrans, "BusinessCity").append(elementtree_1.CData(businessData.businessAddress.city));
207
- elementtree_1.SubElement(xmlTrans, "BusinessCountry").append(elementtree_1.CData(businessData.businessAddress.country));
208
- elementtree_1.SubElement(xmlTrans, "BusinessState").append(elementtree_1.CData(businessData.businessAddress.state));
209
- elementtree_1.SubElement(xmlTrans, "BusinessZip").append(elementtree_1.CData(businessData.businessAddress.postalCode));
210
- };
211
- ProPayConnector.prototype.HydrateUserPersonalData = function (xmlTrans, userPersonalData) {
212
- elementtree_1.SubElement(xmlTrans, "firstName").append(elementtree_1.CData(userPersonalData.firstName));
213
- elementtree_1.SubElement(xmlTrans, "mInitial").append(elementtree_1.CData(userPersonalData.middleInitial));
214
- elementtree_1.SubElement(xmlTrans, "lastName").append(elementtree_1.CData(userPersonalData.lastName));
215
- elementtree_1.SubElement(xmlTrans, "dob").append(elementtree_1.CData(userPersonalData.dateOfBirth));
216
- elementtree_1.SubElement(xmlTrans, "ssn").append(elementtree_1.CData(userPersonalData.sSN));
217
- if (userPersonalData.sourceEmail != null)
218
- elementtree_1.SubElement(xmlTrans, "sourceEmail").append(elementtree_1.CData(userPersonalData.sourceEmail));
219
- elementtree_1.SubElement(xmlTrans, "dayPhone").append(elementtree_1.CData(userPersonalData.dayPhone));
220
- elementtree_1.SubElement(xmlTrans, "evenPhone").append(elementtree_1.CData(userPersonalData.eveningPhone));
221
- elementtree_1.SubElement(xmlTrans, "NotificationEmail").append(elementtree_1.CData(userPersonalData.notificationEmail));
222
- elementtree_1.SubElement(xmlTrans, "currencyCode").append(elementtree_1.CData(userPersonalData.currencyCode));
223
- elementtree_1.SubElement(xmlTrans, "tier").append(elementtree_1.CData(userPersonalData.tier));
224
- if (userPersonalData.externalID != null)
225
- elementtree_1.SubElement(xmlTrans, "externalId").append(elementtree_1.CData(userPersonalData.externalID));
226
- if (userPersonalData.userAddress != null)
227
- elementtree_1.SubElement(xmlTrans, "addr").append(elementtree_1.CData(userPersonalData.userAddress.streetAddress1));
228
- if (userPersonalData.userAddress != null)
229
- elementtree_1.SubElement(xmlTrans, "aptNum").append(elementtree_1.CData(userPersonalData.userAddress.streetAddress2));
230
- if (userPersonalData.userAddress != null)
231
- elementtree_1.SubElement(xmlTrans, "addr3").append(elementtree_1.CData(userPersonalData.userAddress.streetAddress3));
232
- if (userPersonalData.userAddress != null)
233
- elementtree_1.SubElement(xmlTrans, "city").append(elementtree_1.CData(userPersonalData.userAddress.city));
234
- if (userPersonalData.userAddress != null)
235
- elementtree_1.SubElement(xmlTrans, "state").append(elementtree_1.CData(userPersonalData.userAddress.state));
236
- if (userPersonalData.userAddress != null)
237
- elementtree_1.SubElement(xmlTrans, "zip").append(elementtree_1.CData(userPersonalData.userAddress.postalCode));
238
- if (userPersonalData.userAddress != null)
239
- elementtree_1.SubElement(xmlTrans, "country").append(elementtree_1.CData(userPersonalData.userAddress.country));
240
- elementtree_1.SubElement(xmlTrans, "IpSignup").append(elementtree_1.CData(userPersonalData.ipSignup));
241
- elementtree_1.SubElement(xmlTrans, "USCitizen").append(elementtree_1.CData(userPersonalData.uSCitizen == true ? 'true' : userPersonalData.uSCitizen == false ? 'false' : ''));
242
- elementtree_1.SubElement(xmlTrans, "bOAttestation").append(elementtree_1.CData(userPersonalData.bOAttestation == true ? 'true' : userPersonalData.bOAttestation == false ? 'false' : ''));
243
- elementtree_1.SubElement(xmlTrans, "TermsAcceptanceIP").append(elementtree_1.CData(userPersonalData.termsAcceptanceIP));
244
- elementtree_1.SubElement(xmlTrans, "TermsAcceptanceTimeStamp").append(elementtree_1.CData(userPersonalData.termsAcceptanceTimeStamp));
245
- elementtree_1.SubElement(xmlTrans, "TermsVersion").append(elementtree_1.CData(userPersonalData.termsVersion == null ? '' : userPersonalData.termsVersion.toString()));
246
- };
247
- ProPayConnector.prototype.HydrateThreatRiskData = function (xmlTrans, threatRiskData) {
248
- elementtree_1.SubElement(xmlTrans, "MerchantSourceip").append(elementtree_1.CData(threatRiskData === null || threatRiskData === void 0 ? void 0 : threatRiskData.merchantSourceIP));
249
- elementtree_1.SubElement(xmlTrans, "ThreatMetrixPolicy").append(elementtree_1.CData(threatRiskData === null || threatRiskData === void 0 ? void 0 : threatRiskData.threatMetrixPolicy));
250
- elementtree_1.SubElement(xmlTrans, "ThreatMetrixSessionid").append(elementtree_1.CData(threatRiskData === null || threatRiskData === void 0 ? void 0 : threatRiskData.threatMetrixSessionID));
251
- };
252
- ProPayConnector.prototype.HydrateSignificantOwnerData = function (xmlTrans, significantOwnerData) {
253
- var _a;
254
- elementtree_1.SubElement(xmlTrans, "AuthorizedSignerFirstName").append(elementtree_1.CData(significantOwnerData === null || significantOwnerData === void 0 ? void 0 : significantOwnerData.authorizedSignerFirstName));
255
- elementtree_1.SubElement(xmlTrans, "AuthorizedSignerLastName").append(elementtree_1.CData(significantOwnerData === null || significantOwnerData === void 0 ? void 0 : significantOwnerData.authorizedSignerLastName));
256
- elementtree_1.SubElement(xmlTrans, "AuthorizedSignerTitle").append(elementtree_1.CData(significantOwnerData === null || significantOwnerData === void 0 ? void 0 : significantOwnerData.authorizedSignerTitle));
257
- elementtree_1.SubElement(xmlTrans, "SignificantOwnerFirstName").append(elementtree_1.CData(significantOwnerData === null || significantOwnerData === void 0 ? void 0 : significantOwnerData.significantOwner.firstName));
258
- elementtree_1.SubElement(xmlTrans, "SignificantOwnerLastName").append(elementtree_1.CData(significantOwnerData === null || significantOwnerData === void 0 ? void 0 : significantOwnerData.significantOwner.lastName));
259
- elementtree_1.SubElement(xmlTrans, "SignificantOwnerSSN").append(elementtree_1.CData(significantOwnerData === null || significantOwnerData === void 0 ? void 0 : significantOwnerData.significantOwner.sSN));
260
- elementtree_1.SubElement(xmlTrans, "SignificantOwnerDateOfBirth").append(elementtree_1.CData(significantOwnerData === null || significantOwnerData === void 0 ? void 0 : significantOwnerData.significantOwner.DateOfBirth));
261
- elementtree_1.SubElement(xmlTrans, "SignificantOwnerStreetAddress").append(elementtree_1.CData((_a = significantOwnerData === null || significantOwnerData === void 0 ? void 0 : significantOwnerData.significantOwner.ownerAddress) === null || _a === void 0 ? void 0 : _a.streetAddress1));
262
- elementtree_1.SubElement(xmlTrans, "SignificantOwnerCityName").append(elementtree_1.CData(significantOwnerData === null || significantOwnerData === void 0 ? void 0 : significantOwnerData.significantOwner.ownerAddress.city));
263
- elementtree_1.SubElement(xmlTrans, "SignificantOwnerRegionCode").append(elementtree_1.CData(significantOwnerData === null || significantOwnerData === void 0 ? void 0 : significantOwnerData.significantOwner.ownerAddress.state));
264
- elementtree_1.SubElement(xmlTrans, "SignificantOwnerPostalCode").append(elementtree_1.CData(significantOwnerData === null || significantOwnerData === void 0 ? void 0 : significantOwnerData.significantOwner.ownerAddress.postalCode));
265
- elementtree_1.SubElement(xmlTrans, "SignificantOwnerCountryCode").append(elementtree_1.CData(significantOwnerData === null || significantOwnerData === void 0 ? void 0 : significantOwnerData.significantOwner.ownerAddress.country));
266
- elementtree_1.SubElement(xmlTrans, "SignificantOwnerTitle").append(elementtree_1.CData(significantOwnerData === null || significantOwnerData === void 0 ? void 0 : significantOwnerData.significantOwner.title));
267
- elementtree_1.SubElement(xmlTrans, "SignificantOwnerPercentage").append(elementtree_1.CData(significantOwnerData === null || significantOwnerData === void 0 ? void 0 : significantOwnerData.significantOwner.percentage));
268
- };
269
- ProPayConnector.prototype.HydrateAccountPermissions = function (xmlTrans, accountPermissions) {
270
- if (accountPermissions.aCHIn != null)
271
- elementtree_1.SubElement(xmlTrans, "ACHIn").append(elementtree_1.CData(accountPermissions.aCHIn == true ? "Y" : "N"));
272
- if (accountPermissions.aCHOut != null)
273
- elementtree_1.SubElement(xmlTrans, "ACHOut").append(elementtree_1.CData(accountPermissions.aCHOut == true ? "Y" : "N"));
274
- if (accountPermissions.cCProcessing != null)
275
- elementtree_1.SubElement(xmlTrans, "CCProcessing").append(elementtree_1.CData(accountPermissions.cCProcessing == true ? "Y" : "N"));
276
- if (accountPermissions.proPayIn != null)
277
- elementtree_1.SubElement(xmlTrans, "ProPayIn").append(elementtree_1.CData(accountPermissions.proPayIn == true ? "Y" : "N"));
278
- if (accountPermissions.proPayOut != null)
279
- elementtree_1.SubElement(xmlTrans, "ProPayOut").append(elementtree_1.CData(accountPermissions.proPayOut == true ? "Y" : "N"));
280
- if (accountPermissions.creditCardMonthLimit != null)
281
- elementtree_1.SubElement(xmlTrans, "CreditCardMonthLimit").append(elementtree_1.CData(accountPermissions.creditCardMonthLimit));
282
- if (accountPermissions.creditCardTransactionLimit != null)
283
- elementtree_1.SubElement(xmlTrans, "CreditCardTransactionLimit").append(elementtree_1.CData(accountPermissions.creditCardTransactionLimit));
284
- if (accountPermissions.merchantOverallStatus != null)
285
- elementtree_1.SubElement(xmlTrans, "MerchantOverallStatus").append(elementtree_1.CData(String(accountPermissions.merchantOverallStatus)));
286
- if (accountPermissions.softLimitEnabled != null)
287
- elementtree_1.SubElement(xmlTrans, "SoftLimitEnabled", accountPermissions.softLimitEnabled == true ? "Y" : "N");
288
- if (accountPermissions.aCHPaymentSoftLimitEnabled != null)
289
- elementtree_1.SubElement(xmlTrans, "AchPaymentSoftLimitEnabled", accountPermissions.aCHPaymentSoftLimitEnabled == true ? "Y" : "N");
290
- if (accountPermissions.softLimitACHOffPercent != null)
291
- elementtree_1.SubElement(xmlTrans, "SoftLimitAchOffPercent", accountPermissions.softLimitACHOffPercent);
292
- if (accountPermissions.aCHPaymentACHOffPercent != null)
293
- elementtree_1.SubElement(xmlTrans, "AchPaymentAchOffPercent", accountPermissions.aCHPaymentACHOffPercent);
294
- };
295
- ProPayConnector.prototype.HydrateDeviceData = function (xmlTrans, deviceData) {
296
- var devices = elementtree_1.SubElement(xmlTrans, "Devices");
297
- if (deviceData.devices.length > 0) {
298
- deviceData.devices.forEach(function (deviceObj) {
299
- var device = elementtree_1.SubElement(devices, "Device");
300
- elementtree_1.SubElement(device, "Name").append(elementtree_1.CData(deviceObj.name));
301
- elementtree_1.SubElement(device, "Quantity").append(elementtree_1.CData(deviceObj.quantity == null ? "0" : String(deviceObj.quantity)));
302
- if (deviceObj.attributes != null) {
303
- if (deviceObj.attributes.length > 0) {
304
- var attributes = elementtree_1.SubElement(device, "Attributes");
305
- deviceObj.attributes.forEach(function (attributeInfo) {
306
- var item = elementtree_1.SubElement(attributes, "Item");
307
- item.set("Name", attributeInfo.name);
308
- item.set("Value", attributeInfo.value);
309
- });
310
- }
311
- }
312
- });
313
- }
314
- };
315
- ProPayConnector.prototype.HydrateBeneficialOwnerData = function (xmlTrans, beneficialOwnerData) {
316
- var ownerDetails = elementtree_1.SubElement(xmlTrans, "BeneficialOwnerData");
317
- elementtree_1.SubElement(ownerDetails, "OwnerCount").text = beneficialOwnerData === null || beneficialOwnerData === void 0 ? void 0 : beneficialOwnerData.ownersCount;
318
- if (Number(beneficialOwnerData === null || beneficialOwnerData === void 0 ? void 0 : beneficialOwnerData.ownersCount) > 0) {
319
- var ownersList = elementtree_1.SubElement(ownerDetails, "Owners");
320
- beneficialOwnerData.ownersList.forEach(function (ownerInfo) {
321
- var _a;
322
- var newOwner = elementtree_1.SubElement(ownersList, "Owner");
323
- elementtree_1.SubElement(newOwner, "FirstName").text = ownerInfo.firstName;
324
- elementtree_1.SubElement(newOwner, "LastName").text = ownerInfo.lastName;
325
- elementtree_1.SubElement(newOwner, "Email").text = ownerInfo.email;
326
- elementtree_1.SubElement(newOwner, "SSN").text = ownerInfo.sSN;
327
- elementtree_1.SubElement(newOwner, "DateOfBirth").text = ownerInfo.DateOfBirth;
328
- elementtree_1.SubElement(newOwner, "Address").text = (_a = ownerInfo.ownerAddress) === null || _a === void 0 ? void 0 : _a.streetAddress1;
329
- elementtree_1.SubElement(newOwner, "City").text = ownerInfo.ownerAddress.city;
330
- elementtree_1.SubElement(newOwner, "State").text = ownerInfo.ownerAddress.state;
331
- elementtree_1.SubElement(newOwner, "Zip").text = ownerInfo.ownerAddress.postalCode;
332
- elementtree_1.SubElement(newOwner, "Country").text = ownerInfo.ownerAddress.country;
333
- elementtree_1.SubElement(newOwner, "Title").text = ownerInfo.title;
334
- if (ownerInfo.percentage != null)
335
- elementtree_1.SubElement(newOwner, "Percentage").text = ownerInfo.percentage;
336
- });
337
- }
338
- };
339
- ProPayConnector.prototype.HydrateGrossBillingData = function (xmlTrans, grossBillingInformation) {
340
- var _a;
341
- elementtree_1.SubElement(xmlTrans, "GrossSettleAddress").append(elementtree_1.CData((_a = grossBillingInformation.grossSettleAddress) === null || _a === void 0 ? void 0 : _a.streetAddress1));
342
- elementtree_1.SubElement(xmlTrans, "GrossSettleCity").append(elementtree_1.CData(grossBillingInformation.grossSettleAddress.city));
343
- elementtree_1.SubElement(xmlTrans, "GrossSettleState").append(elementtree_1.CData(grossBillingInformation.grossSettleAddress.state));
344
- elementtree_1.SubElement(xmlTrans, "GrossSettleZipCode").append(elementtree_1.CData(grossBillingInformation.grossSettleAddress.postalCode));
345
- elementtree_1.SubElement(xmlTrans, "GrossSettleCountry").append(elementtree_1.CData(grossBillingInformation.grossSettleAddress.country));
346
- elementtree_1.SubElement(xmlTrans, "GrossSettleCreditCardNumber").append(elementtree_1.CData(grossBillingInformation.grossSettleCreditCardData.Number));
347
- elementtree_1.SubElement(xmlTrans, "GrossSettleNameOnCard").append(elementtree_1.CData(grossBillingInformation.grossSettleCreditCardData.CardHolderName));
348
- elementtree_1.SubElement(xmlTrans, "GrossSettleCreditCardExpDate").append(elementtree_1.CData(grossBillingInformation.grossSettleCreditCardData.getShortExpiry()));
349
- elementtree_1.SubElement(xmlTrans, "GrossSettleAccountCountryCode").append(elementtree_1.CData(grossBillingInformation.grossSettleBankData.accountCountryCode));
350
- elementtree_1.SubElement(xmlTrans, "GrossSettleAccountHolderName").append(elementtree_1.CData(grossBillingInformation.grossSettleBankData.accountHolderName));
351
- elementtree_1.SubElement(xmlTrans, "GrossSettleAccountNumber").append(elementtree_1.CData(grossBillingInformation.grossSettleBankData.accountNumber));
352
- elementtree_1.SubElement(xmlTrans, "GrossSettleAccountType").append(elementtree_1.CData(grossBillingInformation.grossSettleBankData.accountType));
353
- elementtree_1.SubElement(xmlTrans, "GrossSettleRoutingNumber").append(elementtree_1.CData(grossBillingInformation.grossSettleBankData.routingNumber));
354
- };
355
- ProPayConnector.prototype.HydrateAccountRenewDetails = function (xmlTrans, renewAccountData) {
356
- var elementMap = {
357
- 'tier': renewAccountData.tier,
358
- 'CVV2': renewAccountData.creditCard.cvn,
359
- 'ccNum': renewAccountData.creditCard.number,
360
- 'expDate': renewAccountData.creditCard.getShortExpiry(),
361
- 'zip': renewAccountData.zipCode,
362
- 'PaymentBankAccountNumber': renewAccountData.paymentBankAccountNumber,
363
- 'PaymentBankRoutingNumber': renewAccountData.paymentBankRoutingNumber,
364
- 'PaymentBankAccountType': renewAccountData.paymentBankAccountType
365
- };
366
- this.createNewElements(xmlTrans, elementMap);
367
- };
368
- ProPayConnector.prototype.HydrateFlashFundsPaymentCardData = function (xmlTrans, cardData) {
369
- var _a;
370
- elementtree_1.SubElement(xmlTrans, "ccNum").append(elementtree_1.CData(cardData.creditCard.number));
371
- elementtree_1.SubElement(xmlTrans, "expDate").append(elementtree_1.CData(cardData.creditCard.getShortExpiry()));
372
- elementtree_1.SubElement(xmlTrans, "CVV2").append(elementtree_1.CData(cardData.creditCard.cvn));
373
- elementtree_1.SubElement(xmlTrans, "cardholderName").append(elementtree_1.CData(cardData.creditCard.cardHolderName));
374
- elementtree_1.SubElement(xmlTrans, "addr").append(elementtree_1.CData((_a = cardData.cardholderAddress) === null || _a === void 0 ? void 0 : _a.streetAddress1));
375
- elementtree_1.SubElement(xmlTrans, "city").append(elementtree_1.CData(cardData.cardholderAddress.city));
376
- elementtree_1.SubElement(xmlTrans, "state").append(elementtree_1.CData(cardData.cardholderAddress.state));
377
- elementtree_1.SubElement(xmlTrans, "zip").append(elementtree_1.CData(cardData.cardholderAddress.postalCode));
378
- elementtree_1.SubElement(xmlTrans, "country").append(elementtree_1.CData(cardData.cardholderAddress.country));
379
- };
380
- ProPayConnector.prototype.HydrateDocumentUploadData = function (xmlTrans, transType, docUploadData) {
381
- var docNameTag = transType == Enums_1.TransactionType.UploadDocumentChargeback ? "DocumentName" : "documentName";
382
- var docTypeTag = transType == Enums_1.TransactionType.UploadDocumentChargeback ? "DocType" : "docType";
383
- elementtree_1.SubElement(xmlTrans, docNameTag).append(elementtree_1.CData(docUploadData.documentName));
384
- docUploadData.transactionReference ? elementtree_1.SubElement(xmlTrans, "TransactionReference").append(elementtree_1.CData(docUploadData.transactionReference)) : '';
385
- docUploadData.docCategory ? elementtree_1.SubElement(xmlTrans, "DocCategory").append(elementtree_1.CData(docUploadData.docCategory)) : '';
386
- elementtree_1.SubElement(xmlTrans, docTypeTag).append(elementtree_1.CData(docUploadData.docType));
387
- elementtree_1.SubElement(xmlTrans, "Document").append(elementtree_1.CData(docUploadData.document));
388
- };
389
- ProPayConnector.prototype.HydrateSSORequestData = function (xmlTrans, ssoRequestData) {
390
- elementtree_1.SubElement(xmlTrans, "ReferrerUrl").append(elementtree_1.CData(ssoRequestData.referrerURL));
391
- elementtree_1.SubElement(xmlTrans, "IpAddress").append(elementtree_1.CData(ssoRequestData.iPAddress));
392
- elementtree_1.SubElement(xmlTrans, "IpSubnetMask").append(elementtree_1.CData(ssoRequestData.iPSubnetMask));
393
- };
394
- ProPayConnector.prototype.HydrateOrderDeviceData = function (xmlTrans, orderDeviceData) {
395
- elementtree_1.SubElement(xmlTrans, "accntNum").append(elementtree_1.CData(orderDeviceData.accountNum.toString()));
396
- elementtree_1.SubElement(xmlTrans, "shipTo").append(elementtree_1.CData(orderDeviceData.shipTo));
397
- elementtree_1.SubElement(xmlTrans, "shipToContact").append(elementtree_1.CData(orderDeviceData.shipToContact));
398
- elementtree_1.SubElement(xmlTrans, "shipToAddress").append(elementtree_1.CData(orderDeviceData.shipToAddress));
399
- elementtree_1.SubElement(xmlTrans, "shipToAddress2").append(elementtree_1.CData(orderDeviceData.shipToAddress2));
400
- elementtree_1.SubElement(xmlTrans, "shipToCity").append(elementtree_1.CData(orderDeviceData.shipToCity));
401
- elementtree_1.SubElement(xmlTrans, "shipToState").append(elementtree_1.CData(orderDeviceData.shipToState));
402
- elementtree_1.SubElement(xmlTrans, "shipToZip").append(elementtree_1.CData(orderDeviceData.shipToZip));
403
- elementtree_1.SubElement(xmlTrans, "shipToPhone").append(elementtree_1.CData(orderDeviceData.shipToPhone));
404
- elementtree_1.SubElement(xmlTrans, "cardholderName").append(elementtree_1.CData(orderDeviceData.cardholderName));
405
- elementtree_1.SubElement(xmlTrans, "CcNum").append(elementtree_1.CData(orderDeviceData.ccNum));
406
- elementtree_1.SubElement(xmlTrans, "ExpDate").append(elementtree_1.CData(orderDeviceData.expDate));
407
- elementtree_1.SubElement(xmlTrans, "CVV2").append(elementtree_1.CData(orderDeviceData.cVV2));
408
- elementtree_1.SubElement(xmlTrans, "billingZip").append(elementtree_1.CData(orderDeviceData.billingZip));
409
- };
410
- ProPayConnector.prototype.UpdateGatewaySettings = function (builder) {
411
- var certTransactions = [
412
- Enums_1.TransactionType.EditAccount,
413
- Enums_1.TransactionType.ObtainSSOKey,
414
- Enums_1.TransactionType.UpdateBankAccountOwnership,
415
- Enums_1.TransactionType.AddFunds,
416
- Enums_1.TransactionType.AddCardFlashFunds
417
- ];
418
- if (certTransactions.includes(builder.transactionType)) {
419
- this.headers["X509Certificate"] = this.setX509Certificate();
420
- }
421
- };
422
- ProPayConnector.prototype.createNewElements = function (xmlns, mapping) {
423
- for (var _i = 0, _a = Object.entries(mapping); _i < _a.length; _i++) {
424
- var _b = _a[_i], key = _b[0], value = _b[1];
425
- if (value != null && value != '')
426
- elementtree_1.SubElement(xmlns, key).append(elementtree_1.CData("" + value));
427
- }
428
- };
429
- ProPayConnector.prototype.setX509Certificate = function () {
430
- var x509RawData = fs.readFileSync(this.x509CertificatePath);
431
- return x509RawData.toString().replace(/(\r\n|\n|\r)/gm, "");
432
- };
433
- ProPayConnector.prototype.mapRequestType = function (builder) {
434
- switch (builder.transactionType) {
435
- case Enums_1.TransactionType.CreateAccount:
436
- return "01";
437
- case Enums_1.TransactionType.EditAccount:
438
- return "42";
439
- case Enums_1.TransactionType.ResetPassword:
440
- return "32";
441
- case Enums_1.TransactionType.RenewAccount:
442
- return "39";
443
- case Enums_1.TransactionType.UpdateBeneficialOwnership:
444
- return "44";
445
- case Enums_1.TransactionType.DisownAccount:
446
- return "41";
447
- case Enums_1.TransactionType.UploadDocumentChargeback:
448
- return "46";
449
- case Enums_1.TransactionType.UploadDocument:
450
- return "47";
451
- case Enums_1.TransactionType.ObtainSSOKey:
452
- return "300";
453
- case Enums_1.TransactionType.UpdateBankAccountOwnership:
454
- return "210";
455
- case Enums_1.TransactionType.AddFunds:
456
- return "37";
457
- case Enums_1.TransactionType.SweepFunds:
458
- return "38";
459
- case Enums_1.TransactionType.AddCardFlashFunds:
460
- return "209";
461
- case Enums_1.TransactionType.PushMoneyFlashFunds:
462
- return "45";
463
- case Enums_1.TransactionType.DisburseFunds:
464
- return "02";
465
- case Enums_1.TransactionType.SpendBack:
466
- return "11";
467
- case Enums_1.TransactionType.ReverseSplitPay:
468
- return "43";
469
- case Enums_1.TransactionType.SplitFunds:
470
- return "16";
471
- case Enums_1.TransactionType.GetAccountDetails:
472
- // We are using the Additional TransactionModifier to differentiate between GetAccountDetails and GetAccountDetailsEnhanced
473
- if (builder.transactionModifier == Enums_1.TransactionModifier.Additional) {
474
- return "19";
475
- }
476
- // If the TransactionModifier isn't "Additional" then it is either "None" or an unsupported value that should be treated as "None"
477
- return "13";
478
- case Enums_1.TransactionType.GetAccountBalance:
479
- return "14";
480
- case Enums_1.TransactionType.OrderDevice:
481
- return "430";
482
- default:
483
- throw new Error("Unsupported transaction exception.");
484
- }
485
- };
486
- ProPayConnector.prototype.mapResponse = function (builder, rawResponse) {
487
- var xmlTransaction = elementtree_1.XML(rawResponse).find(".//XMLTrans");
488
- var responseCode = xmlTransaction.findtext(".//status");
489
- if (responseCode != "00" && responseCode != "66") {
490
- throw new Error("Unexpected Gateway Response: " + String(responseCode));
491
- }
492
- var proPayResponse = this.populateProPayResponse(builder, xmlTransaction);
493
- var response = new __1.Transaction();
494
- response.payFacData = proPayResponse,
495
- response.responseCode = responseCode;
496
- return response;
497
- };
498
- ProPayConnector.prototype.populateProPayResponse = function (builder, root) {
499
- if (builder.transactionType == Enums_1.TransactionType.GetAccountDetails &&
500
- builder.transactionModifier == Enums_1.TransactionModifier.Additional) {
501
- return this.populateResponseWithEnhancedAccountDetails(root);
502
- }
503
- else {
504
- var responseData = new PayFacResponseData_1.PayFacResponseData();
505
- responseData.accountNumber = this.getAccountNumberFromResponse(root);
506
- responseData.recAccountNum = root.findtext(".//recAccntNum");
507
- responseData.password = root.findtext(".//password");
508
- responseData.amount = root.findtext(".//amount");
509
- responseData.transNum = root.findtext(".//transNum");
510
- responseData.pending = root.findtext(".//pending");
511
- responseData.secondaryAmount = root.findtext(".//secondaryAmount");
512
- responseData.secondaryTransNum = root.findtext(".//secondaryTransNum");
513
- responseData.sourceEmail = root.findtext(".//sourceEmail");
514
- responseData.authToken = root.findtext(".//AuthToken");
515
- responseData.beneficialOwnerDataResults = this.getBeneficialOwnerDataResultsFromResponse(root);
516
- responseData.accountStatus = root.findtext(".//accntStatus");
517
- responseData.physicalAddress = this.getPhysicalAddressFromResponse(root);
518
- responseData.affiliation = root.findtext(".//affiliation");
519
- responseData.aPIReady = root.findtext(".//apiReady");
520
- responseData.currencyCode = root.findtext(".//currencyCode");
521
- responseData.expiration = root.findtext(".//expiration");
522
- responseData.signupDate = root.findtext(".//signupDate");
523
- responseData.tier = root.findtext(".//tier");
524
- responseData.visaCheckoutMerchantID = root.findtext(".//visaCheckoutMerchantId");
525
- responseData.creditCardTransactionLimit = root.findtext(".//CreditCardTransactionLimit");
526
- responseData.creditCardMonthLimit = root.findtext(".//CreditCardMonthLimit");
527
- responseData.aCHPaymentPerTranLimit = root.findtext(".//ACHPaymentPerTranLimit");
528
- responseData.aCHPaymentMonthLimit = root.findtext(".//ACHPaymentMonthLimit");
529
- responseData.creditCardMonthlyVolume = root.findtext(".//CreditCardMonthlyVolume");
530
- responseData.aCHPaymentMonthlyVolume = root.findtext(".//ACHPaymentMonthlyVolume");
531
- responseData.reserveBalance = root.findtext(".//ReserveBalance");
532
- responseData.masterPassCheckoutMerchantID = root.findtext(".//MasterPassCheckoutMerchantId");
533
- responseData.pendingAmount = root.findtext(".//pendingAmount");
534
- responseData.reserveAmount = root.findtext(".//reserveAmount>");
535
- responseData.aCHOut = this.getACHOutBalanceInfoFromResponse(root);
536
- responseData.flashFunds = this.getFlashFundsBalanceInfoFromResponse(root);
537
- return responseData;
538
- }
539
- ;
540
- };
541
- ProPayConnector.prototype.populateResponseWithEnhancedAccountDetails = function (root) {
542
- var _a, _b;
543
- var responseResult = new PayFacResponseData_1.PayFacResponseData();
544
- responseResult.accountNumber = this.getAccountNumberFromResponse(root);
545
- var personalData = new UserPersonalData_1.UserPersonalData();
546
- personalData.sourceEmail = root.findtext(".//sourceEmail");
547
- personalData.firstName = root.findtext(".//firstName");
548
- personalData.middleInitial = root.findtext(".//middleInitial");
549
- personalData.lastName = root.findtext(".//lastName");
550
- personalData.dayPhone = root.findtext(".//dayPhone");
551
- personalData.eveningPhone = root.findtext(".//evenPhone");
552
- personalData.externalID = root.findtext(".//externalId");
553
- personalData.tier = root.findtext(".//tier");
554
- personalData.currencyCode = root.findtext(".//currencyCode");
555
- personalData.notificationEmail = root.findtext(".//notificati;onEmail");
556
- responseResult.personalData = personalData;
557
- var homeAddress = new Entities_1.Address();
558
- homeAddress.streetAddress1 = root.findtext(".//addr");
559
- homeAddress.streetAddress2 = root.findtext(".//aptNum");
560
- homeAddress.city = root.findtext(".//city");
561
- homeAddress.state = root.findtext(".//state");
562
- homeAddress.postalCode = root.findtext(".//postalCode");
563
- homeAddress.country = root.findtext(".//country");
564
- responseResult.homeAddress = homeAddress;
565
- var mailAddress = new Entities_1.Address();
566
- mailAddress.streetAddress1 = root.findtext(".//mailAddr");
567
- mailAddress.streetAddress2 = root.findtext(".//mailApt");
568
- mailAddress.city = root.findtext(".//mailCity");
569
- mailAddress.state = root.findtext(".//mailState");
570
- mailAddress.postalCode = root.findtext(".//mailPostalCode");
571
- mailAddress.country = root.findtext(".//mailCountry");
572
- responseResult.mailAddress = mailAddress;
573
- var businessData = new BusinessData_1.BusinessData();
574
- businessData.businessLegalName = root.findtext(".//businessLegalName");
575
- businessData.doingBusinessAs = root.findtext(".//doingBusinessAs");
576
- businessData.employerIdentificationNumber = root.findtext(".//ein");
577
- businessData.websiteURL = root.findtext(".//websiteURL");
578
- businessData.averageTicket = root.findtext(".//averageTicket");
579
- businessData.highestTicket = root.findtext(".//highestTicket");
580
- responseResult.businessData = businessData;
581
- var businessAddress = new Entities_1.Address();
582
- businessAddress.streetAddress1 = root.findtext(".//businessAddress");
583
- businessAddress.streetAddress2 = root.findtext(".//businessAddress2");
584
- businessAddress.city = root.findtext(".//businessCity");
585
- businessAddress.state = root.findtext(".//businessState");
586
- businessAddress.postalCode = root.findtext(".//businessZip");
587
- businessData.businessAddress = businessAddress;
588
- responseResult.businessData = businessData;
589
- var accountLimits = new AccountPermissions_1.AccountPermissions();
590
- accountLimits.creditCardTransactionLimit = root.findtext(".//creditCardTransactionLimit");
591
- accountLimits.creditCardMonthLimit = root.findtext(".//creditCardMonthLimit");
592
- accountLimits.aCHPaymentSoftLimitEnabled = ((_a = root.findtext(".//achPaymentSoftLimitEnabled")) === null || _a === void 0 ? void 0 : _a.toUpperCase()) == "Y" ? true : false;
593
- accountLimits.aCHPaymentACHOffPercent = root.findtext(".//achPaymentAchOffPercent");
594
- accountLimits.softLimitEnabled = ((_b = root.findtext(".//softLimitEnabled")) === null || _b === void 0 ? void 0 : _b.toUpperCase()) == "Y" ? true : false;
595
- accountLimits.softLimitACHOffPercent = root.findtext(".//softLimitAchOffPercent");
596
- responseResult.aCHPaymentPerTranLimit = root.findtext(".//achPaymentPerTranLimit");
597
- responseResult.aCHPaymentMonthLimit = root.findtext(".//achPaymentMonthLimit");
598
- responseResult.aCHPaymentMonthlyVolume = root.findtext(".//achPaymentMonthlyVolume");
599
- responseResult.creditCardMonthlyVolume = root.findtext(".//creditCardMonthlyVolume");
600
- responseResult.availableBalance = root.findtext(".//availableBalance");
601
- responseResult.pendingBalance = root.findtext(".//pendingBalance");
602
- responseResult.reserveBalance = root.findtext(".//reserveBalance");
603
- responseResult.accountLimits = accountLimits;
604
- var primaryBankAccountData = new BankAccountData_1.BankAccountData();
605
- primaryBankAccountData.accountCountryCode = root.findtext(".//primaryAccountCountryCode");
606
- primaryBankAccountData.accountType = root.findtext(".//primaryAccountType");
607
- primaryBankAccountData.accountOwnershipType = root.findtext(".//primaryAccountOwnershipType");
608
- primaryBankAccountData.bankName = root.findtext(".//primaryBankName");
609
- primaryBankAccountData.accountNumber = root.findtext(".//primaryAccountNumberLast4");
610
- primaryBankAccountData.routingNumber = root.findtext(".//primaryRoutingNumber");
611
- responseResult.primaryBankAccountData = primaryBankAccountData;
612
- var secondaryBankAccountData = new BankAccountData_1.BankAccountData();
613
- secondaryBankAccountData.accountCountryCode = root.findtext(".//secondaryAccountCountryCode");
614
- secondaryBankAccountData.accountType = root.findtext(".//secondaryAccountType");
615
- secondaryBankAccountData.accountOwnershipType = root.findtext(".//secondaryAccountOwnershipTy;e");
616
- secondaryBankAccountData.bankName = root.findtext(".//secondaryBankName");
617
- secondaryBankAccountData.accountNumber = root.findtext(".//secondaryAccoun;tNumberLast4");
618
- secondaryBankAccountData.routingNumber = root.findtext(".//secondaryRoutingNumber");
619
- responseResult.secondaryBankAccountData = secondaryBankAccountData;
620
- var grossBillingInformation = new GrossBillingInformation_1.GrossBillingInformation();
621
- var grossSettleBankData = new BankAccountData_1.BankAccountData();
622
- grossSettleBankData.accountHolderName = root.findtext(".//grossSettleAccountHolderName");
623
- grossSettleBankData.accountNumber = root.findtext(".//grossSettleAccountNumberLast4");
624
- grossSettleBankData.routingNumber = root.findtext(".//grossSettleRoutingNumber");
625
- grossSettleBankData.accountType = root.findtext(".//grossSettleAccountType");
626
- var grossSettleAddress = new Entities_1.Address();
627
- grossSettleAddress.streetAddress1 = root.findtext(".//grossSettleAccountAddress");
628
- grossSettleAddress.city = root.findtext(".//rossSettleAccountCity");
629
- grossSettleAddress.state = root.findtext(".//grossSettleAccountState");
630
- grossSettleAddress.country = root.findtext(".//grossSettleAccountCountryCode");
631
- grossSettleAddress.postalCode = root.findtext(".//grossSettleAccountZipCode");
632
- grossBillingInformation.grossSettleBankData = grossSettleBankData;
633
- grossBillingInformation.grossSettleAddress = grossSettleAddress;
634
- return responseResult;
635
- };
636
- ProPayConnector.prototype.getAccountNumberFromResponse = function (root) {
637
- // ProPay API 4.1 (Create an account) has the account number specified in the response as "accntNum"
638
- // All other methods specify it as "accountNum" in the response
639
- if (root.find(".//accntNum")) {
640
- return root.findtext(".//accntNum");
641
- }
642
- else {
643
- return root.findtext(".//accountNum");
644
- }
645
- };
646
- ProPayConnector.prototype.getBeneficialOwnerDataResultsFromResponse = function (root) {
647
- var beneficialOwnerDataResults = new Array();
648
- if (root.find("beneficialOwnerDataResult")) {
649
- root.findall("Owner").forEach(function (owner) {
650
- var beneficialOwner = new BeneficialOwnerDataResult_1.BeneficialOwnerDataResult();
651
- beneficialOwner.firstName = owner.findtext(".//FirstName");
652
- beneficialOwner.lastName = owner.findtext(".//LastName");
653
- beneficialOwner.status = owner.findtext(".//Status");
654
- beneficialOwnerDataResults.push(beneficialOwner);
655
- });
656
- }
657
- return beneficialOwnerDataResults;
658
- };
659
- ProPayConnector.prototype.getPhysicalAddressFromResponse = function (root) {
660
- var addr = new Entities_1.Address();
661
- if (root.find("addr") || root.find("city") || root.find("state") || root.find("zip")) {
662
- addr.streetAddress1 = root.findtext(".//addr"),
663
- addr.city = root.findtext(".//city"),
664
- addr.state = root.findtext(".//state"),
665
- addr.postalCode = root.findtext(".//zip");
666
- }
667
- return addr;
668
- };
669
- ProPayConnector.prototype.getACHOutBalanceInfoFromResponse = function (root) {
670
- var balanceResponse = new AccountBalanceResponseData_1.AccountBalanceResponseData();
671
- if (root.find("achOut")) {
672
- balanceResponse.enabled = root.findtext(".//enabled"),
673
- balanceResponse.limitRemaining = root.findtext(".//limitRemaining"),
674
- balanceResponse.transferFee = root.findtext(".//transferFee"),
675
- balanceResponse.feeType = root.findtext(".//feeType"),
676
- balanceResponse.accountLastFour = root.findtext(".//accountLastFour");
677
- }
678
- return balanceResponse;
679
- ;
680
- };
681
- ProPayConnector.prototype.getFlashFundsBalanceInfoFromResponse = function (root) {
682
- var balanceResponse = new AccountBalanceResponseData_1.AccountBalanceResponseData();
683
- if (root.find("flashFunds")) {
684
- balanceResponse.enabled = root.findtext(".//enabled"),
685
- balanceResponse.limitRemaining = root.findtext(".//limitRemaining"),
686
- balanceResponse.transferFee = root.findtext(".//transferFee"),
687
- balanceResponse.feeType = root.findtext(".//feeType"),
688
- balanceResponse.accountLastFour = root.findtext(".//accountLastFour");
689
- }
690
- return balanceResponse;
691
- };
692
- return ProPayConnector;
693
- }(XmlGateway_1.XmlGateway));
694
- exports.ProPayConnector = ProPayConnector;
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.ProPayConnector = void 0;
27
+ const __1 = require("../");
28
+ const Enums_1 = require("../Entities/Enums");
29
+ const XmlGateway_1 = require("./XmlGateway");
30
+ const elementtree_1 = require("@azz/elementtree");
31
+ const BusinessData_1 = require("../Entities/ProFac/BusinessData");
32
+ const UserPersonalData_1 = require("../Entities/ProFac/UserPersonalData");
33
+ const AccountPermissions_1 = require("../Entities/ProFac/AccountPermissions");
34
+ const GrossBillingInformation_1 = require("../Entities/ProFac/GrossBillingInformation");
35
+ const Entities_1 = require("../Entities");
36
+ const PayFacResponseData_1 = require("../Entities/ProFac/PayFacResponseData");
37
+ const BankAccountData_1 = require("../Entities/ProFac/BankAccountData");
38
+ const AccountBalanceResponseData_1 = require("../Entities/ProFac/AccountBalanceResponseData");
39
+ const BeneficialOwnerDataResult_1 = require("../Entities/ProFac/BeneficialOwnerDataResult");
40
+ const fs = __importStar(require("fs"));
41
+ class ProPayConnector extends XmlGateway_1.XmlGateway {
42
+ config;
43
+ certStr;
44
+ termID;
45
+ x509CertificatePath;
46
+ x509CertStr;
47
+ selfSignedCert;
48
+ processPayFac(builder) {
49
+ const transaction = (0, elementtree_1.Element)("XMLRequest");
50
+ // Credentials
51
+ (0, elementtree_1.SubElement)(transaction, "certStr").append((0, elementtree_1.CData)(this.certStr.toString()));
52
+ (0, elementtree_1.SubElement)(transaction, "termid").append((0, elementtree_1.CData)(this.termID));
53
+ (0, elementtree_1.SubElement)(transaction, "class").append((0, elementtree_1.CData)("partner"));
54
+ //Transaction
55
+ const xmlTrans = (0, elementtree_1.SubElement)(transaction, "XMLTrans");
56
+ (0, elementtree_1.SubElement)(xmlTrans, "transType").append((0, elementtree_1.CData)(this.mapRequestType(builder)));
57
+ this.HydrateAccountDetails(xmlTrans, builder);
58
+ return this.doTransaction(new elementtree_1.ElementTree(transaction).write()).then((response) => this.mapResponse(builder, response));
59
+ }
60
+ HydrateAccountDetails(xmlTrans, builder) {
61
+ this.UpdateGatewaySettings(builder);
62
+ // common fields
63
+ this.hydrateCommonFields(xmlTrans, builder);
64
+ if (builder.password != null) {
65
+ (0, elementtree_1.SubElement)(xmlTrans, "password").append((0, elementtree_1.CData)(builder.password));
66
+ }
67
+ if (builder.accountPermissions != null) {
68
+ this.HydrateAccountPermissions(xmlTrans, builder.accountPermissions);
69
+ }
70
+ if (builder.userPersonalData != null) {
71
+ this.HydrateUserPersonalData(xmlTrans, builder.userPersonalData);
72
+ }
73
+ if (builder.businessData != null) {
74
+ this.HydrateBusinessData(xmlTrans, builder.businessData);
75
+ }
76
+ this.HydrateBankDetails(xmlTrans, builder);
77
+ if (builder.mailingAddressInformation != null ||
78
+ builder.mailingAddressInformation != undefined) {
79
+ this.HydrateMailAddress(xmlTrans, builder.mailingAddressInformation);
80
+ }
81
+ if (builder.threatRiskData != null) {
82
+ this.HydrateThreatRiskData(xmlTrans, builder.threatRiskData);
83
+ }
84
+ if (builder.significantOwnerData != null) {
85
+ this.HydrateSignificantOwnerData(xmlTrans, builder.significantOwnerData);
86
+ }
87
+ if (builder.timeZone && builder.timeZone.trim()) {
88
+ (0, elementtree_1.SubElement)(xmlTrans, "TimeZone").append((0, elementtree_1.CData)(builder.timeZone));
89
+ }
90
+ if (builder.deviceData != null) {
91
+ this.HydrateDeviceData(xmlTrans, builder.deviceData);
92
+ }
93
+ if (builder.beneficialOwnerData != null ||
94
+ builder.beneficialOwnerData != undefined) {
95
+ this.HydrateBeneficialOwnerData(xmlTrans, builder.beneficialOwnerData);
96
+ }
97
+ if (builder.grossBillingInformation != null) {
98
+ this.HydrateGrossBillingData(xmlTrans, builder.grossBillingInformation);
99
+ }
100
+ if (builder.renewalAccountData != null) {
101
+ this.HydrateAccountRenewDetails(xmlTrans, builder.renewalAccountData);
102
+ }
103
+ if (builder.FlashFundsPaymentCardData != null) {
104
+ this.HydrateFlashFundsPaymentCardData(xmlTrans, builder.FlashFundsPaymentCardData);
105
+ }
106
+ if (builder.documentUploadData != null) {
107
+ this.HydrateDocumentUploadData(xmlTrans, builder.TransactionType, builder.documentUploadData);
108
+ }
109
+ if (builder.sSORequestData != null) {
110
+ this.HydrateSSORequestData(xmlTrans, builder.sSORequestData);
111
+ }
112
+ if (builder.orderDevice != null) {
113
+ this.HydrateOrderDeviceData(xmlTrans, builder.orderDevice);
114
+ }
115
+ if (builder.orderDeviceData != null) {
116
+ this.HydrateOrderDeviceDetails(xmlTrans, builder.orderDeviceData);
117
+ }
118
+ this.HydrateBankAccountOwnershipData(xmlTrans, builder);
119
+ }
120
+ hydrateCommonFields(xmlTrans, builder) {
121
+ const elementMap = {
122
+ accountNum: builder.accountNumber ? builder.accountNumber : "",
123
+ amount: builder.amount ? builder.amount : "",
124
+ recAccntNum: builder.receivingAccountNumber
125
+ ? builder.receivingAccountNumber
126
+ : "",
127
+ allowPending: builder.allowPending == true ? "Y" : "",
128
+ ccAmount: builder.cCAmount ? builder.cCAmount : "",
129
+ requireCCRefund: builder.requireCCRefund == true
130
+ ? "Y"
131
+ : builder.requireCCRefund == false
132
+ ? "N"
133
+ : "",
134
+ transNum: builder.transNum ? builder.transNum : "",
135
+ gatewayTransactionId: builder.gatewayTransactionId
136
+ ? builder.gatewayTransactionId
137
+ : "",
138
+ globaltransId: builder.globaltransId ? builder.globaltransId : "",
139
+ globalTransSource: builder.globalTransSource
140
+ ? builder.globalTransSource
141
+ : "",
142
+ cardBrandTransactionId: builder.cardBrandTransactionId
143
+ ? builder.cardBrandTransactionId
144
+ : "",
145
+ };
146
+ this.createNewElements(xmlTrans, elementMap);
147
+ }
148
+ HydrateBankAccountOwnershipData(xmlTrans, builder) {
149
+ if (builder.primaryBankAccountOwner != null ||
150
+ builder.secondaryBankAccountOwner != null) {
151
+ const ownersDataTag = (0, elementtree_1.SubElement)(xmlTrans, "BankAccountOwnerData");
152
+ if (builder.primaryBankAccountOwner != null) {
153
+ const primaryOwnerTag = (0, elementtree_1.SubElement)(ownersDataTag, "PrimaryBankAccountOwner");
154
+ (0, elementtree_1.SubElement)(primaryOwnerTag, "FirstName").text =
155
+ builder.primaryBankAccountOwner.firstName;
156
+ (0, elementtree_1.SubElement)(primaryOwnerTag, "LastName").text =
157
+ builder.primaryBankAccountOwner.lastName;
158
+ (0, elementtree_1.SubElement)(primaryOwnerTag, "Address1").text =
159
+ builder.primaryBankAccountOwner.ownerAddress?.streetAddress1;
160
+ (0, elementtree_1.SubElement)(primaryOwnerTag, "Address2").text =
161
+ builder.primaryBankAccountOwner.ownerAddress.streetAddress2;
162
+ (0, elementtree_1.SubElement)(primaryOwnerTag, "Address3").text =
163
+ builder.primaryBankAccountOwner.ownerAddress.streetAddress3;
164
+ (0, elementtree_1.SubElement)(primaryOwnerTag, "City").text =
165
+ builder.primaryBankAccountOwner.ownerAddress.city;
166
+ (0, elementtree_1.SubElement)(primaryOwnerTag, "StateProvince").text =
167
+ builder.primaryBankAccountOwner.ownerAddress.state;
168
+ (0, elementtree_1.SubElement)(primaryOwnerTag, "PostalCode").text =
169
+ builder.primaryBankAccountOwner.ownerAddress.postalCode;
170
+ (0, elementtree_1.SubElement)(primaryOwnerTag, "Country").text =
171
+ builder.primaryBankAccountOwner.ownerAddress.country;
172
+ (0, elementtree_1.SubElement)(primaryOwnerTag, "Phone").text =
173
+ builder.primaryBankAccountOwner.phoneNumber;
174
+ }
175
+ if (builder.secondaryBankAccountOwner != null) {
176
+ const secondaryOwnerTag = (0, elementtree_1.SubElement)(ownersDataTag, "SecondaryBankAccountOwner");
177
+ (0, elementtree_1.SubElement)(secondaryOwnerTag, "FirstName").text =
178
+ builder.secondaryBankAccountOwner.firstName;
179
+ (0, elementtree_1.SubElement)(secondaryOwnerTag, "LastName").text =
180
+ builder.secondaryBankAccountOwner.lastName;
181
+ (0, elementtree_1.SubElement)(secondaryOwnerTag, "Address1").text =
182
+ builder.secondaryBankAccountOwner.ownerAddress?.streetAddress1;
183
+ (0, elementtree_1.SubElement)(secondaryOwnerTag, "Address2").text =
184
+ builder.secondaryBankAccountOwner.ownerAddress.streetAddress2;
185
+ (0, elementtree_1.SubElement)(secondaryOwnerTag, "Address3").text =
186
+ builder.secondaryBankAccountOwner.ownerAddress.streetAddress3;
187
+ (0, elementtree_1.SubElement)(secondaryOwnerTag, "City").text =
188
+ builder.secondaryBankAccountOwner.ownerAddress.city;
189
+ (0, elementtree_1.SubElement)(secondaryOwnerTag, "StateProvince").text =
190
+ builder.secondaryBankAccountOwner.ownerAddress.state;
191
+ (0, elementtree_1.SubElement)(secondaryOwnerTag, "PostalCode").text =
192
+ builder.secondaryBankAccountOwner.ownerAddress.postalCode;
193
+ (0, elementtree_1.SubElement)(secondaryOwnerTag, "Country").text =
194
+ builder.secondaryBankAccountOwner.ownerAddress.country;
195
+ (0, elementtree_1.SubElement)(secondaryOwnerTag, "Phone").text =
196
+ builder.secondaryBankAccountOwner.phoneNumber;
197
+ }
198
+ }
199
+ }
200
+ HydrateMailAddress(xmlTrans, mailingAddressInformation) {
201
+ (0, elementtree_1.SubElement)(xmlTrans, "mailAddr").append((0, elementtree_1.CData)(mailingAddressInformation?.streetAddress1));
202
+ (0, elementtree_1.SubElement)(xmlTrans, "mailApt").append((0, elementtree_1.CData)(mailingAddressInformation?.streetAddress2));
203
+ (0, elementtree_1.SubElement)(xmlTrans, "mailAddr3").append((0, elementtree_1.CData)(mailingAddressInformation?.streetAddress3));
204
+ (0, elementtree_1.SubElement)(xmlTrans, "mailCity").append((0, elementtree_1.CData)(mailingAddressInformation?.city));
205
+ (0, elementtree_1.SubElement)(xmlTrans, "mailCountry").append((0, elementtree_1.CData)(mailingAddressInformation?.country));
206
+ (0, elementtree_1.SubElement)(xmlTrans, "mailState").append((0, elementtree_1.CData)(mailingAddressInformation?.state));
207
+ (0, elementtree_1.SubElement)(xmlTrans, "mailZip").append((0, elementtree_1.CData)(mailingAddressInformation?.postalCode));
208
+ }
209
+ HydrateBankDetails(xmlTrans, builder) {
210
+ if (builder.creditCardInformation != null) {
211
+ (0, elementtree_1.SubElement)(xmlTrans, "NameOnCard").append((0, elementtree_1.CData)(builder.creditCardInformation.cardHolderName));
212
+ (0, elementtree_1.SubElement)(xmlTrans, "ccNum").append((0, elementtree_1.CData)(builder.creditCardInformation.number));
213
+ (0, elementtree_1.SubElement)(xmlTrans, "expDate").append((0, elementtree_1.CData)(builder.creditCardInformation.getShortExpiry()));
214
+ }
215
+ if (builder.aCHInformation != null) {
216
+ (0, elementtree_1.SubElement)(xmlTrans, "PaymentBankAccountNumber").append((0, elementtree_1.CData)(builder.aCHInformation.accountNumber));
217
+ (0, elementtree_1.SubElement)(xmlTrans, "PaymentBankRoutingNumber").append((0, elementtree_1.CData)(builder.aCHInformation.routingNumber));
218
+ (0, elementtree_1.SubElement)(xmlTrans, "PaymentBankAccountType").append((0, elementtree_1.CData)(builder.aCHInformation.accountType));
219
+ }
220
+ if (builder.bankAccountData != null) {
221
+ (0, elementtree_1.SubElement)(xmlTrans, "AccountCountryCode").append((0, elementtree_1.CData)(builder.bankAccountData.accountCountryCode));
222
+ (0, elementtree_1.SubElement)(xmlTrans, "accountName").append((0, elementtree_1.CData)(builder.bankAccountData.accountName));
223
+ (0, elementtree_1.SubElement)(xmlTrans, "AccountNumber").append((0, elementtree_1.CData)(builder.bankAccountData.accountNumber));
224
+ (0, elementtree_1.SubElement)(xmlTrans, "AccountOwnershipType").append((0, elementtree_1.CData)(builder.bankAccountData.accountOwnershipType));
225
+ (0, elementtree_1.SubElement)(xmlTrans, "AccountType").append((0, elementtree_1.CData)(builder.bankAccountData.accountType));
226
+ (0, elementtree_1.SubElement)(xmlTrans, "BankName").append((0, elementtree_1.CData)(builder.bankAccountData.bankName));
227
+ (0, elementtree_1.SubElement)(xmlTrans, "RoutingNumber").append((0, elementtree_1.CData)(builder.bankAccountData.routingNumber));
228
+ }
229
+ if (builder.secondaryBankInformation != null) {
230
+ (0, elementtree_1.SubElement)(xmlTrans, "SecondaryAccountCountryCode").append((0, elementtree_1.CData)(builder.secondaryBankInformation.accountCountryCode));
231
+ (0, elementtree_1.SubElement)(xmlTrans, "SecondaryAccountName").append((0, elementtree_1.CData)(builder.secondaryBankInformation.accountName));
232
+ (0, elementtree_1.SubElement)(xmlTrans, "SecondaryAccountNumber").append((0, elementtree_1.CData)(builder.secondaryBankInformation.accountNumber));
233
+ (0, elementtree_1.SubElement)(xmlTrans, "SecondaryAccountOwnershipType").append((0, elementtree_1.CData)(builder.secondaryBankInformation.accountOwnershipType));
234
+ (0, elementtree_1.SubElement)(xmlTrans, "SecondaryAccountType").append((0, elementtree_1.CData)(builder.secondaryBankInformation.accountType));
235
+ (0, elementtree_1.SubElement)(xmlTrans, "SecondaryBankName").append((0, elementtree_1.CData)(builder.secondaryBankInformation.bankName));
236
+ (0, elementtree_1.SubElement)(xmlTrans, "SecondaryRoutingNumber").append((0, elementtree_1.CData)(builder.secondaryBankInformation.routingNumber));
237
+ }
238
+ }
239
+ HydrateBusinessData(xmlTrans, businessData) {
240
+ (0, elementtree_1.SubElement)(xmlTrans, "BusinessLegalName").append((0, elementtree_1.CData)(businessData.businessLegalName));
241
+ (0, elementtree_1.SubElement)(xmlTrans, "DoingBusinessAs").append((0, elementtree_1.CData)(businessData.doingBusinessAs));
242
+ (0, elementtree_1.SubElement)(xmlTrans, "EIN").append((0, elementtree_1.CData)(businessData.employerIdentificationNumber));
243
+ (0, elementtree_1.SubElement)(xmlTrans, "MCCCode").append((0, elementtree_1.CData)(businessData.merchantCategoryCode));
244
+ (0, elementtree_1.SubElement)(xmlTrans, "WebsiteURL").append((0, elementtree_1.CData)(businessData.websiteURL));
245
+ (0, elementtree_1.SubElement)(xmlTrans, "BusinessDesc").append((0, elementtree_1.CData)(businessData.businessDescription));
246
+ (0, elementtree_1.SubElement)(xmlTrans, "MonthlyBankCardVolume").append((0, elementtree_1.CData)(businessData.monthlyBankCardVolume));
247
+ (0, elementtree_1.SubElement)(xmlTrans, "AverageTicket").append((0, elementtree_1.CData)(businessData.averageTicket));
248
+ (0, elementtree_1.SubElement)(xmlTrans, "HighestTicket").append((0, elementtree_1.CData)(businessData.highestTicket));
249
+ (0, elementtree_1.SubElement)(xmlTrans, "BusinessAddress").append((0, elementtree_1.CData)(businessData.businessAddress?.streetAddress1));
250
+ (0, elementtree_1.SubElement)(xmlTrans, "BusinessAddress2").append((0, elementtree_1.CData)(businessData.businessAddress.streetAddress2));
251
+ (0, elementtree_1.SubElement)(xmlTrans, "BusinessCity").append((0, elementtree_1.CData)(businessData.businessAddress.city));
252
+ (0, elementtree_1.SubElement)(xmlTrans, "BusinessCountry").append((0, elementtree_1.CData)(businessData.businessAddress.country));
253
+ (0, elementtree_1.SubElement)(xmlTrans, "BusinessState").append((0, elementtree_1.CData)(businessData.businessAddress.state));
254
+ (0, elementtree_1.SubElement)(xmlTrans, "BusinessZip").append((0, elementtree_1.CData)(businessData.businessAddress.postalCode));
255
+ (0, elementtree_1.SubElement)(xmlTrans, "BusinessType").append((0, elementtree_1.CData)(businessData.businessType));
256
+ }
257
+ HydrateUserPersonalData(xmlTrans, userPersonalData) {
258
+ (0, elementtree_1.SubElement)(xmlTrans, "firstName").append((0, elementtree_1.CData)(userPersonalData.firstName));
259
+ (0, elementtree_1.SubElement)(xmlTrans, "mInitial").append((0, elementtree_1.CData)(userPersonalData.middleInitial));
260
+ (0, elementtree_1.SubElement)(xmlTrans, "lastName").append((0, elementtree_1.CData)(userPersonalData.lastName));
261
+ (0, elementtree_1.SubElement)(xmlTrans, "dob").append((0, elementtree_1.CData)(userPersonalData.dateOfBirth));
262
+ (0, elementtree_1.SubElement)(xmlTrans, "ssn").append((0, elementtree_1.CData)(userPersonalData.sSN));
263
+ if (userPersonalData.sourceEmail != null)
264
+ (0, elementtree_1.SubElement)(xmlTrans, "sourceEmail").append((0, elementtree_1.CData)(userPersonalData.sourceEmail));
265
+ (0, elementtree_1.SubElement)(xmlTrans, "dayPhone").append((0, elementtree_1.CData)(userPersonalData.dayPhone));
266
+ (0, elementtree_1.SubElement)(xmlTrans, "evenPhone").append((0, elementtree_1.CData)(userPersonalData.eveningPhone));
267
+ (0, elementtree_1.SubElement)(xmlTrans, "NotificationEmail").append((0, elementtree_1.CData)(userPersonalData.notificationEmail));
268
+ (0, elementtree_1.SubElement)(xmlTrans, "currencyCode").append((0, elementtree_1.CData)(userPersonalData.currencyCode));
269
+ (0, elementtree_1.SubElement)(xmlTrans, "tier").append((0, elementtree_1.CData)(userPersonalData.tier));
270
+ if (userPersonalData.externalID != null)
271
+ (0, elementtree_1.SubElement)(xmlTrans, "externalId").append((0, elementtree_1.CData)(userPersonalData.externalID));
272
+ // user address
273
+ if (userPersonalData.userAddress != null)
274
+ (0, elementtree_1.SubElement)(xmlTrans, "addr").append((0, elementtree_1.CData)(userPersonalData.userAddress.streetAddress1));
275
+ if (userPersonalData.userAddress != null)
276
+ (0, elementtree_1.SubElement)(xmlTrans, "aptNum").append((0, elementtree_1.CData)(userPersonalData.userAddress.streetAddress2));
277
+ if (userPersonalData.userAddress != null)
278
+ (0, elementtree_1.SubElement)(xmlTrans, "addr3").append((0, elementtree_1.CData)(userPersonalData.userAddress.streetAddress3));
279
+ if (userPersonalData.userAddress != null)
280
+ (0, elementtree_1.SubElement)(xmlTrans, "city").append((0, elementtree_1.CData)(userPersonalData.userAddress.city));
281
+ if (userPersonalData.userAddress != null)
282
+ (0, elementtree_1.SubElement)(xmlTrans, "state").append((0, elementtree_1.CData)(userPersonalData.userAddress.state));
283
+ if (userPersonalData.userAddress != null)
284
+ (0, elementtree_1.SubElement)(xmlTrans, "zip").append((0, elementtree_1.CData)(userPersonalData.userAddress.postalCode));
285
+ if (userPersonalData.userAddress != null)
286
+ (0, elementtree_1.SubElement)(xmlTrans, "country").append((0, elementtree_1.CData)(userPersonalData.userAddress.country));
287
+ // mailing address
288
+ if (userPersonalData.mailingAddress != null)
289
+ (0, elementtree_1.SubElement)(xmlTrans, "mailAddr").append((0, elementtree_1.CData)(userPersonalData.mailingAddress.streetAddress1));
290
+ if (userPersonalData.mailingAddress != null)
291
+ (0, elementtree_1.SubElement)(xmlTrans, "mailApt").append((0, elementtree_1.CData)(userPersonalData.mailingAddress.streetAddress2));
292
+ if (userPersonalData.mailingAddress != null)
293
+ (0, elementtree_1.SubElement)(xmlTrans, "mailAddr3").append((0, elementtree_1.CData)(userPersonalData.mailingAddress.streetAddress3));
294
+ if (userPersonalData.mailingAddress != null)
295
+ (0, elementtree_1.SubElement)(xmlTrans, "mailCity").append((0, elementtree_1.CData)(userPersonalData.mailingAddress.city));
296
+ if (userPersonalData.mailingAddress != null)
297
+ (0, elementtree_1.SubElement)(xmlTrans, "mailCountry").append((0, elementtree_1.CData)(userPersonalData.mailingAddress.state));
298
+ if (userPersonalData.mailingAddress != null)
299
+ (0, elementtree_1.SubElement)(xmlTrans, "mailState").append((0, elementtree_1.CData)(userPersonalData.mailingAddress.postalCode));
300
+ if (userPersonalData.mailingAddress != null)
301
+ (0, elementtree_1.SubElement)(xmlTrans, "mailZip").append((0, elementtree_1.CData)(userPersonalData.mailingAddress.country));
302
+ (0, elementtree_1.SubElement)(xmlTrans, "IpSignup").append((0, elementtree_1.CData)(userPersonalData.ipSignup));
303
+ (0, elementtree_1.SubElement)(xmlTrans, "USCitizen").append((0, elementtree_1.CData)(userPersonalData.uSCitizen == true
304
+ ? "true"
305
+ : userPersonalData.uSCitizen == false
306
+ ? "false"
307
+ : ""));
308
+ (0, elementtree_1.SubElement)(xmlTrans, "bOAttestation").append((0, elementtree_1.CData)(userPersonalData.bOAttestation == true
309
+ ? "true"
310
+ : userPersonalData.bOAttestation == false
311
+ ? "false"
312
+ : ""));
313
+ (0, elementtree_1.SubElement)(xmlTrans, "TermsAcceptanceIP").append((0, elementtree_1.CData)(userPersonalData.termsAcceptanceIP));
314
+ (0, elementtree_1.SubElement)(xmlTrans, "TermsAcceptanceTimeStamp").append((0, elementtree_1.CData)(userPersonalData.termsAcceptanceTimeStamp));
315
+ (0, elementtree_1.SubElement)(xmlTrans, "TermsVersion").append((0, elementtree_1.CData)(userPersonalData.termsVersion == null
316
+ ? ""
317
+ : userPersonalData.termsVersion.toString()));
318
+ }
319
+ HydrateThreatRiskData(xmlTrans, threatRiskData) {
320
+ (0, elementtree_1.SubElement)(xmlTrans, "MerchantSourceip").append((0, elementtree_1.CData)(threatRiskData?.merchantSourceIP));
321
+ (0, elementtree_1.SubElement)(xmlTrans, "ThreatMetrixPolicy").append((0, elementtree_1.CData)(threatRiskData?.threatMetrixPolicy));
322
+ (0, elementtree_1.SubElement)(xmlTrans, "ThreatMetrixSessionid").append((0, elementtree_1.CData)(threatRiskData?.threatMetrixSessionID));
323
+ }
324
+ HydrateSignificantOwnerData(xmlTrans, significantOwnerData) {
325
+ (0, elementtree_1.SubElement)(xmlTrans, "AuthorizedSignerFirstName").append((0, elementtree_1.CData)(significantOwnerData?.authorizedSignerFirstName));
326
+ (0, elementtree_1.SubElement)(xmlTrans, "AuthorizedSignerLastName").append((0, elementtree_1.CData)(significantOwnerData?.authorizedSignerLastName));
327
+ (0, elementtree_1.SubElement)(xmlTrans, "AuthorizedSignerTitle").append((0, elementtree_1.CData)(significantOwnerData?.authorizedSignerTitle));
328
+ (0, elementtree_1.SubElement)(xmlTrans, "SignificantOwnerFirstName").append((0, elementtree_1.CData)(significantOwnerData?.significantOwner.firstName));
329
+ (0, elementtree_1.SubElement)(xmlTrans, "SignificantOwnerLastName").append((0, elementtree_1.CData)(significantOwnerData?.significantOwner.lastName));
330
+ (0, elementtree_1.SubElement)(xmlTrans, "SignificantOwnerSSN").append((0, elementtree_1.CData)(significantOwnerData?.significantOwner.sSN));
331
+ (0, elementtree_1.SubElement)(xmlTrans, "SignificantOwnerDateOfBirth").append((0, elementtree_1.CData)(significantOwnerData?.significantOwner.DateOfBirth));
332
+ (0, elementtree_1.SubElement)(xmlTrans, "SignificantOwnerStreetAddress").append((0, elementtree_1.CData)(significantOwnerData?.significantOwner.ownerAddress?.streetAddress1));
333
+ (0, elementtree_1.SubElement)(xmlTrans, "SignificantOwnerCityName").append((0, elementtree_1.CData)(significantOwnerData?.significantOwner.ownerAddress.city));
334
+ (0, elementtree_1.SubElement)(xmlTrans, "SignificantOwnerRegionCode").append((0, elementtree_1.CData)(significantOwnerData?.significantOwner.ownerAddress.state));
335
+ (0, elementtree_1.SubElement)(xmlTrans, "SignificantOwnerPostalCode").append((0, elementtree_1.CData)(significantOwnerData?.significantOwner.ownerAddress.postalCode));
336
+ (0, elementtree_1.SubElement)(xmlTrans, "SignificantOwnerCountryCode").append((0, elementtree_1.CData)(significantOwnerData?.significantOwner.ownerAddress.country));
337
+ (0, elementtree_1.SubElement)(xmlTrans, "SignificantOwnerTitle").append((0, elementtree_1.CData)(significantOwnerData?.significantOwner.title));
338
+ (0, elementtree_1.SubElement)(xmlTrans, "SignificantOwnerPercentage").append((0, elementtree_1.CData)(significantOwnerData?.significantOwner.percentage));
339
+ }
340
+ HydrateAccountPermissions(xmlTrans, accountPermissions) {
341
+ if (accountPermissions.aCHIn != null)
342
+ (0, elementtree_1.SubElement)(xmlTrans, "ACHIn").append((0, elementtree_1.CData)(accountPermissions.aCHIn == true ? "Y" : "N"));
343
+ if (accountPermissions.aCHOut != null)
344
+ (0, elementtree_1.SubElement)(xmlTrans, "ACHOut").append((0, elementtree_1.CData)(accountPermissions.aCHOut == true ? "Y" : "N"));
345
+ if (accountPermissions.cCProcessing != null)
346
+ (0, elementtree_1.SubElement)(xmlTrans, "CCProcessing").append((0, elementtree_1.CData)(accountPermissions.cCProcessing == true ? "Y" : "N"));
347
+ if (accountPermissions.proPayIn != null)
348
+ (0, elementtree_1.SubElement)(xmlTrans, "ProPayIn").append((0, elementtree_1.CData)(accountPermissions.proPayIn == true ? "Y" : "N"));
349
+ if (accountPermissions.proPayOut != null)
350
+ (0, elementtree_1.SubElement)(xmlTrans, "ProPayOut").append((0, elementtree_1.CData)(accountPermissions.proPayOut == true ? "Y" : "N"));
351
+ if (accountPermissions.creditCardMonthLimit != null)
352
+ (0, elementtree_1.SubElement)(xmlTrans, "CreditCardMonthLimit").append((0, elementtree_1.CData)(accountPermissions.creditCardMonthLimit));
353
+ if (accountPermissions.creditCardTransactionLimit != null)
354
+ (0, elementtree_1.SubElement)(xmlTrans, "CreditCardTransactionLimit").append((0, elementtree_1.CData)(accountPermissions.creditCardTransactionLimit));
355
+ if (accountPermissions.merchantOverallStatus != null)
356
+ (0, elementtree_1.SubElement)(xmlTrans, "MerchantOverallStatus").append((0, elementtree_1.CData)(String(accountPermissions.merchantOverallStatus)));
357
+ if (accountPermissions.softLimitEnabled != null)
358
+ (0, elementtree_1.SubElement)(xmlTrans, "SoftLimitEnabled", accountPermissions.softLimitEnabled == true ? "Y" : "N");
359
+ if (accountPermissions.aCHPaymentSoftLimitEnabled != null)
360
+ (0, elementtree_1.SubElement)(xmlTrans, "AchPaymentSoftLimitEnabled", accountPermissions.aCHPaymentSoftLimitEnabled == true ? "Y" : "N");
361
+ if (accountPermissions.softLimitACHOffPercent != null)
362
+ (0, elementtree_1.SubElement)(xmlTrans, "SoftLimitAchOffPercent", accountPermissions.softLimitACHOffPercent);
363
+ if (accountPermissions.aCHPaymentACHOffPercent != null)
364
+ (0, elementtree_1.SubElement)(xmlTrans, "AchPaymentAchOffPercent", accountPermissions.aCHPaymentACHOffPercent);
365
+ }
366
+ HydrateDeviceData(xmlTrans, deviceData) {
367
+ const devices = (0, elementtree_1.SubElement)(xmlTrans, "Devices");
368
+ if (deviceData.devices.length > 0) {
369
+ deviceData.devices.forEach((deviceObj) => {
370
+ const device = (0, elementtree_1.SubElement)(devices, "Device");
371
+ (0, elementtree_1.SubElement)(device, "Name").append((0, elementtree_1.CData)(deviceObj.name));
372
+ (0, elementtree_1.SubElement)(device, "Quantity").append((0, elementtree_1.CData)(deviceObj.quantity == null ? "0" : String(deviceObj.quantity)));
373
+ // if (deviceObj.attributes != null) {
374
+ // if (deviceObj.attributes.length > 0) {
375
+ // var attributes = subElement(device, "Attributes");
376
+ // deviceObj.attributes.forEach(attributeInfo => {
377
+ // var item = subElement(attributes, "Item");
378
+ // item.set("Name", attributeInfo.name);
379
+ // item.set("Value", attributeInfo.value);
380
+ // })
381
+ // }
382
+ // }
383
+ });
384
+ }
385
+ }
386
+ HydrateBeneficialOwnerData(xmlTrans, beneficialOwnerData) {
387
+ const ownerDetails = (0, elementtree_1.SubElement)(xmlTrans, "BeneficialOwnerData");
388
+ (0, elementtree_1.SubElement)(ownerDetails, "OwnerCount").text =
389
+ beneficialOwnerData?.ownersCount;
390
+ if (Number(beneficialOwnerData?.ownersCount) > 0) {
391
+ const ownersList = (0, elementtree_1.SubElement)(ownerDetails, "Owners");
392
+ beneficialOwnerData.ownersList.forEach((ownerInfo) => {
393
+ const newOwner = (0, elementtree_1.SubElement)(ownersList, "Owner");
394
+ (0, elementtree_1.SubElement)(newOwner, "FirstName").text = ownerInfo.firstName;
395
+ (0, elementtree_1.SubElement)(newOwner, "LastName").text = ownerInfo.lastName;
396
+ (0, elementtree_1.SubElement)(newOwner, "Email").text = ownerInfo.email;
397
+ (0, elementtree_1.SubElement)(newOwner, "SSN").text = ownerInfo.sSN;
398
+ (0, elementtree_1.SubElement)(newOwner, "DateOfBirth").text = ownerInfo.DateOfBirth;
399
+ (0, elementtree_1.SubElement)(newOwner, "Address").text =
400
+ ownerInfo.ownerAddress?.streetAddress1;
401
+ (0, elementtree_1.SubElement)(newOwner, "City").text = ownerInfo.ownerAddress.city;
402
+ (0, elementtree_1.SubElement)(newOwner, "State").text = ownerInfo.ownerAddress.state;
403
+ (0, elementtree_1.SubElement)(newOwner, "Zip").text = ownerInfo.ownerAddress.postalCode;
404
+ (0, elementtree_1.SubElement)(newOwner, "Country").text = ownerInfo.ownerAddress.country;
405
+ (0, elementtree_1.SubElement)(newOwner, "Title").text = ownerInfo.title;
406
+ if (ownerInfo.percentage != null)
407
+ (0, elementtree_1.SubElement)(newOwner, "Percentage").text = ownerInfo.percentage;
408
+ });
409
+ }
410
+ }
411
+ HydrateGrossBillingData(xmlTrans, grossBillingInformation) {
412
+ (0, elementtree_1.SubElement)(xmlTrans, "GrossSettleAddress").append((0, elementtree_1.CData)(grossBillingInformation.grossSettleAddress?.streetAddress1));
413
+ (0, elementtree_1.SubElement)(xmlTrans, "GrossSettleCity").append((0, elementtree_1.CData)(grossBillingInformation.grossSettleAddress.city));
414
+ (0, elementtree_1.SubElement)(xmlTrans, "GrossSettleState").append((0, elementtree_1.CData)(grossBillingInformation.grossSettleAddress.state));
415
+ (0, elementtree_1.SubElement)(xmlTrans, "GrossSettleZipCode").append((0, elementtree_1.CData)(grossBillingInformation.grossSettleAddress.postalCode));
416
+ (0, elementtree_1.SubElement)(xmlTrans, "GrossSettleCountry").append((0, elementtree_1.CData)(grossBillingInformation.grossSettleAddress.country));
417
+ (0, elementtree_1.SubElement)(xmlTrans, "GrossSettleCreditCardNumber").append((0, elementtree_1.CData)(grossBillingInformation.grossSettleCreditCardData.Number));
418
+ (0, elementtree_1.SubElement)(xmlTrans, "GrossSettleNameOnCard").append((0, elementtree_1.CData)(grossBillingInformation.grossSettleCreditCardData.CardHolderName));
419
+ (0, elementtree_1.SubElement)(xmlTrans, "GrossSettleCreditCardExpDate").append((0, elementtree_1.CData)(grossBillingInformation.grossSettleCreditCardData.getShortExpiry()));
420
+ (0, elementtree_1.SubElement)(xmlTrans, "GrossSettleAccountCountryCode").append((0, elementtree_1.CData)(grossBillingInformation.grossSettleBankData.accountCountryCode));
421
+ (0, elementtree_1.SubElement)(xmlTrans, "GrossSettleAccountHolderName").append((0, elementtree_1.CData)(grossBillingInformation.grossSettleBankData.accountHolderName));
422
+ (0, elementtree_1.SubElement)(xmlTrans, "GrossSettleAccountNumber").append((0, elementtree_1.CData)(grossBillingInformation.grossSettleBankData.accountNumber));
423
+ (0, elementtree_1.SubElement)(xmlTrans, "GrossSettleAccountType").append((0, elementtree_1.CData)(grossBillingInformation.grossSettleBankData.accountType));
424
+ (0, elementtree_1.SubElement)(xmlTrans, "GrossSettleRoutingNumber").append((0, elementtree_1.CData)(grossBillingInformation.grossSettleBankData.routingNumber));
425
+ }
426
+ HydrateAccountRenewDetails(xmlTrans, renewAccountData) {
427
+ const elementMap = {
428
+ tier: renewAccountData.tier,
429
+ CVV2: renewAccountData.creditCard.cvn,
430
+ ccNum: renewAccountData.creditCard.number,
431
+ expDate: renewAccountData.creditCard.getShortExpiry(),
432
+ zip: renewAccountData.zipCode,
433
+ PaymentBankAccountNumber: renewAccountData.paymentBankAccountNumber,
434
+ PaymentBankRoutingNumber: renewAccountData.paymentBankRoutingNumber,
435
+ PaymentBankAccountType: renewAccountData.paymentBankAccountType,
436
+ };
437
+ this.createNewElements(xmlTrans, elementMap);
438
+ }
439
+ HydrateFlashFundsPaymentCardData(xmlTrans, cardData) {
440
+ (0, elementtree_1.SubElement)(xmlTrans, "ccNum").append((0, elementtree_1.CData)(cardData.creditCard.number));
441
+ (0, elementtree_1.SubElement)(xmlTrans, "expDate").append((0, elementtree_1.CData)(cardData.creditCard.getShortExpiry()));
442
+ (0, elementtree_1.SubElement)(xmlTrans, "CVV2").append((0, elementtree_1.CData)(cardData.creditCard.cvn));
443
+ (0, elementtree_1.SubElement)(xmlTrans, "cardholderName").append((0, elementtree_1.CData)(cardData.creditCard.cardHolderName));
444
+ (0, elementtree_1.SubElement)(xmlTrans, "addr").append((0, elementtree_1.CData)(cardData.cardholderAddress?.streetAddress1));
445
+ (0, elementtree_1.SubElement)(xmlTrans, "city").append((0, elementtree_1.CData)(cardData.cardholderAddress.city));
446
+ (0, elementtree_1.SubElement)(xmlTrans, "state").append((0, elementtree_1.CData)(cardData.cardholderAddress.state));
447
+ (0, elementtree_1.SubElement)(xmlTrans, "zip").append((0, elementtree_1.CData)(cardData.cardholderAddress.postalCode));
448
+ (0, elementtree_1.SubElement)(xmlTrans, "country").append((0, elementtree_1.CData)(cardData.cardholderAddress.country));
449
+ }
450
+ HydrateDocumentUploadData(xmlTrans, transType, docUploadData) {
451
+ const docNameTag = transType == Enums_1.TransactionType.UploadDocumentChargeback
452
+ ? "DocumentName"
453
+ : "documentName";
454
+ const docTypeTag = transType == Enums_1.TransactionType.UploadDocumentChargeback
455
+ ? "DocType"
456
+ : "docType";
457
+ (0, elementtree_1.SubElement)(xmlTrans, docNameTag).append((0, elementtree_1.CData)(docUploadData.documentName));
458
+ if (docUploadData.transactionReference) {
459
+ (0, elementtree_1.SubElement)(xmlTrans, "TransactionReference").append((0, elementtree_1.CData)(docUploadData.transactionReference));
460
+ }
461
+ else {
462
+ ("");
463
+ }
464
+ if (docUploadData.docCategory) {
465
+ (0, elementtree_1.SubElement)(xmlTrans, "DocCategory").append((0, elementtree_1.CData)(docUploadData.docCategory));
466
+ }
467
+ else {
468
+ ("");
469
+ }
470
+ (0, elementtree_1.SubElement)(xmlTrans, docTypeTag).append((0, elementtree_1.CData)(docUploadData.docType));
471
+ (0, elementtree_1.SubElement)(xmlTrans, "Document").append((0, elementtree_1.CData)(docUploadData.document));
472
+ }
473
+ HydrateSSORequestData(xmlTrans, ssoRequestData) {
474
+ (0, elementtree_1.SubElement)(xmlTrans, "ReferrerUrl").append((0, elementtree_1.CData)(ssoRequestData.referrerURL));
475
+ (0, elementtree_1.SubElement)(xmlTrans, "IpAddress").append((0, elementtree_1.CData)(ssoRequestData.iPAddress));
476
+ (0, elementtree_1.SubElement)(xmlTrans, "IpSubnetMask").append((0, elementtree_1.CData)(ssoRequestData.iPSubnetMask));
477
+ }
478
+ HydrateOrderDeviceData(xmlTrans, orderDeviceData) {
479
+ (0, elementtree_1.SubElement)(xmlTrans, "accntNum").append((0, elementtree_1.CData)(orderDeviceData.accountNum.toString()));
480
+ (0, elementtree_1.SubElement)(xmlTrans, "shipTo").append((0, elementtree_1.CData)(orderDeviceData.shipTo));
481
+ (0, elementtree_1.SubElement)(xmlTrans, "shipToContact").append((0, elementtree_1.CData)(orderDeviceData.shipToContact));
482
+ (0, elementtree_1.SubElement)(xmlTrans, "shipToAddress").append((0, elementtree_1.CData)(orderDeviceData.shipToAddress));
483
+ (0, elementtree_1.SubElement)(xmlTrans, "shipToAddress2").append((0, elementtree_1.CData)(orderDeviceData.shipToAddress2));
484
+ (0, elementtree_1.SubElement)(xmlTrans, "shipToCity").append((0, elementtree_1.CData)(orderDeviceData.shipToCity));
485
+ (0, elementtree_1.SubElement)(xmlTrans, "shipToState").append((0, elementtree_1.CData)(orderDeviceData.shipToState));
486
+ (0, elementtree_1.SubElement)(xmlTrans, "shipToZip").append((0, elementtree_1.CData)(orderDeviceData.shipToZip));
487
+ (0, elementtree_1.SubElement)(xmlTrans, "shipToPhone").append((0, elementtree_1.CData)(orderDeviceData.shipToPhone));
488
+ (0, elementtree_1.SubElement)(xmlTrans, "cardholderName").append((0, elementtree_1.CData)(orderDeviceData.cardholderName));
489
+ (0, elementtree_1.SubElement)(xmlTrans, "CcNum").append((0, elementtree_1.CData)(orderDeviceData.ccNum));
490
+ (0, elementtree_1.SubElement)(xmlTrans, "ExpDate").append((0, elementtree_1.CData)(orderDeviceData.expDate));
491
+ (0, elementtree_1.SubElement)(xmlTrans, "CVV2").append((0, elementtree_1.CData)(orderDeviceData.cVV2));
492
+ (0, elementtree_1.SubElement)(xmlTrans, "billingZip").append((0, elementtree_1.CData)(orderDeviceData.billingZip));
493
+ }
494
+ HydrateOrderDeviceDetails(xmlTrans, orderDeviceData) {
495
+ const devices = (0, elementtree_1.SubElement)(xmlTrans, "Devices");
496
+ if (orderDeviceData.devices.length > 0) {
497
+ orderDeviceData.devices.forEach((deviceObj) => {
498
+ const device = (0, elementtree_1.SubElement)(devices, "Device");
499
+ (0, elementtree_1.SubElement)(device, "Name").append((0, elementtree_1.CData)(deviceObj.name));
500
+ (0, elementtree_1.SubElement)(device, "Quantity").append((0, elementtree_1.CData)(deviceObj.quantity == null ? "0" : String(deviceObj.quantity)));
501
+ if (deviceObj.attributes != null) {
502
+ if (deviceObj.attributes.length > 0) {
503
+ const attributes = (0, elementtree_1.SubElement)(device, "Attributes");
504
+ deviceObj.attributes.forEach((attributeInfo) => {
505
+ const item = (0, elementtree_1.SubElement)(attributes, "Item");
506
+ item.set("Name", attributeInfo.name);
507
+ item.set("Value", attributeInfo.value);
508
+ });
509
+ }
510
+ }
511
+ });
512
+ }
513
+ }
514
+ UpdateGatewaySettings(builder) {
515
+ const certTransactions = [
516
+ Enums_1.TransactionType.EditAccount,
517
+ Enums_1.TransactionType.ObtainSSOKey,
518
+ Enums_1.TransactionType.UpdateBankAccountOwnership,
519
+ Enums_1.TransactionType.AddFunds,
520
+ Enums_1.TransactionType.AddCardFlashFunds,
521
+ ];
522
+ if (certTransactions.includes(builder.transactionType)) {
523
+ this.headers["X509Certificate"] = this.setX509Certificate();
524
+ }
525
+ }
526
+ createNewElements(xmlns, mapping) {
527
+ for (const [key, value] of Object.entries(mapping)) {
528
+ if (value != null && value != "")
529
+ (0, elementtree_1.SubElement)(xmlns, key).append((0, elementtree_1.CData)(`${value}`));
530
+ }
531
+ }
532
+ setX509Certificate() {
533
+ const x509RawData = fs.readFileSync(this.selfSignedCert);
534
+ return x509RawData.toString().replace(/(\r\n|\n|\r)/gm, "");
535
+ }
536
+ mapRequestType(builder) {
537
+ switch (builder.transactionType) {
538
+ case Enums_1.TransactionType.CreateAccount:
539
+ return "01";
540
+ case Enums_1.TransactionType.EditAccount:
541
+ return "42";
542
+ case Enums_1.TransactionType.ResetPassword:
543
+ return "32";
544
+ case Enums_1.TransactionType.RenewAccount:
545
+ return "39";
546
+ case Enums_1.TransactionType.UpdateBeneficialOwnership:
547
+ return "44";
548
+ case Enums_1.TransactionType.DisownAccount:
549
+ return "41";
550
+ case Enums_1.TransactionType.UploadDocumentChargeback:
551
+ return "46";
552
+ case Enums_1.TransactionType.UploadDocument:
553
+ return "47";
554
+ case Enums_1.TransactionType.ObtainSSOKey:
555
+ return "300";
556
+ case Enums_1.TransactionType.UpdateBankAccountOwnership:
557
+ return "210";
558
+ case Enums_1.TransactionType.AddFunds:
559
+ return "37";
560
+ case Enums_1.TransactionType.SweepFunds:
561
+ return "38";
562
+ case Enums_1.TransactionType.AddCardFlashFunds:
563
+ return "209";
564
+ case Enums_1.TransactionType.PushMoneyFlashFunds:
565
+ return "45";
566
+ case Enums_1.TransactionType.DisburseFunds:
567
+ return "02";
568
+ case Enums_1.TransactionType.SpendBack:
569
+ return "11";
570
+ case Enums_1.TransactionType.ReverseSplitPay:
571
+ return "43";
572
+ case Enums_1.TransactionType.SplitFunds:
573
+ return "16";
574
+ case Enums_1.TransactionType.GetAccountDetails:
575
+ // We are using the Additional TransactionModifier to differentiate between GetAccountDetails and GetAccountDetailsEnhanced
576
+ if (builder.transactionModifier == Enums_1.TransactionModifier.Additional) {
577
+ return "19";
578
+ }
579
+ // If the TransactionModifier isn't "Additional" then it is either "None" or an unsupported value that should be treated as "None"
580
+ return "13";
581
+ case Enums_1.TransactionType.GetAccountBalance:
582
+ return "14";
583
+ case Enums_1.TransactionType.OrderDevice:
584
+ return "430";
585
+ default:
586
+ throw new Error("Unsupported transaction exception.");
587
+ }
588
+ }
589
+ mapResponse(builder, rawResponse) {
590
+ const xmlTransaction = (0, elementtree_1.XML)(rawResponse).find(".//XMLTrans");
591
+ const responseCode = xmlTransaction.findtext(".//status");
592
+ if (responseCode != "00" && responseCode != "66") {
593
+ throw new Error("Unexpected Gateway Response: " + String(responseCode));
594
+ }
595
+ const proPayResponse = this.populateProPayResponse(builder, xmlTransaction);
596
+ const response = new __1.Transaction();
597
+ response.payFacData = proPayResponse;
598
+ response.responseCode = responseCode;
599
+ return response;
600
+ }
601
+ populateProPayResponse(builder, root) {
602
+ if (builder.transactionType == Enums_1.TransactionType.GetAccountDetails &&
603
+ builder.transactionModifier == Enums_1.TransactionModifier.Additional) {
604
+ return this.populateResponseWithEnhancedAccountDetails(root);
605
+ }
606
+ else {
607
+ const responseData = new PayFacResponseData_1.PayFacResponseData();
608
+ responseData.accountNumber = this.getAccountNumberFromResponse(root);
609
+ responseData.recAccountNum = root.findtext(".//recAccntNum");
610
+ responseData.password = root.findtext(".//password");
611
+ responseData.amount = root.findtext(".//amount");
612
+ responseData.transNum = root.findtext(".//transNum");
613
+ responseData.pending = root.findtext(".//pending");
614
+ responseData.secondaryAmount = root.findtext(".//secondaryAmount");
615
+ responseData.secondaryTransNum = root.findtext(".//secondaryTransNum");
616
+ responseData.sourceEmail = root.findtext(".//sourceEmail");
617
+ responseData.authToken = root.findtext(".//AuthToken");
618
+ responseData.beneficialOwnerDataResults =
619
+ this.getBeneficialOwnerDataResultsFromResponse(root);
620
+ responseData.accountStatus = root.findtext(".//accntStatus");
621
+ responseData.physicalAddress = this.getPhysicalAddressFromResponse(root);
622
+ responseData.affiliation = root.findtext(".//affiliation");
623
+ responseData.aPIReady = root.findtext(".//apiReady");
624
+ responseData.currencyCode = root.findtext(".//currencyCode");
625
+ responseData.expiration = root.findtext(".//expiration");
626
+ responseData.signupDate = root.findtext(".//signupDate");
627
+ responseData.tier = root.findtext(".//tier");
628
+ responseData.visaCheckoutMerchantID = root.findtext(".//visaCheckoutMerchantId");
629
+ responseData.creditCardTransactionLimit = root.findtext(".//CreditCardTransactionLimit");
630
+ responseData.creditCardMonthLimit = root.findtext(".//CreditCardMonthLimit");
631
+ responseData.aCHPaymentPerTranLimit = root.findtext(".//ACHPaymentPerTranLimit");
632
+ responseData.aCHPaymentMonthLimit = root.findtext(".//ACHPaymentMonthLimit");
633
+ responseData.creditCardMonthlyVolume = root.findtext(".//CreditCardMonthlyVolume");
634
+ responseData.aCHPaymentMonthlyVolume = root.findtext(".//ACHPaymentMonthlyVolume");
635
+ responseData.reserveBalance = root.findtext(".//ReserveBalance");
636
+ responseData.masterPassCheckoutMerchantID = root.findtext(".//MasterPassCheckoutMerchantId");
637
+ responseData.pendingAmount = root.findtext(".//pendingAmount");
638
+ responseData.reserveAmount = root.findtext(".//reserveAmount>");
639
+ responseData.aCHOut = this.getACHOutBalanceInfoFromResponse(root);
640
+ responseData.flashFunds = this.getFlashFundsBalanceInfoFromResponse(root);
641
+ return responseData;
642
+ }
643
+ }
644
+ populateResponseWithEnhancedAccountDetails(root) {
645
+ const responseResult = new PayFacResponseData_1.PayFacResponseData();
646
+ responseResult.accountNumber = this.getAccountNumberFromResponse(root);
647
+ const personalData = new UserPersonalData_1.UserPersonalData();
648
+ personalData.sourceEmail = root.findtext(".//sourceEmail");
649
+ personalData.firstName = root.findtext(".//firstName");
650
+ personalData.middleInitial = root.findtext(".//middleInitial");
651
+ personalData.lastName = root.findtext(".//lastName");
652
+ personalData.dayPhone = root.findtext(".//dayPhone");
653
+ personalData.eveningPhone = root.findtext(".//evenPhone");
654
+ personalData.externalID = root.findtext(".//externalId");
655
+ personalData.tier = root.findtext(".//tier");
656
+ personalData.currencyCode = root.findtext(".//currencyCode");
657
+ personalData.notificationEmail = root.findtext(".//notificati;onEmail");
658
+ responseResult.personalData = personalData;
659
+ const homeAddress = new Entities_1.Address();
660
+ homeAddress.streetAddress1 = root.findtext(".//addr");
661
+ homeAddress.streetAddress2 = root.findtext(".//aptNum");
662
+ homeAddress.city = root.findtext(".//city");
663
+ homeAddress.state = root.findtext(".//state");
664
+ homeAddress.postalCode = root.findtext(".//postalCode");
665
+ homeAddress.country = root.findtext(".//country");
666
+ responseResult.homeAddress = homeAddress;
667
+ const mailAddress = new Entities_1.Address();
668
+ mailAddress.streetAddress1 = root.findtext(".//mailAddr");
669
+ mailAddress.streetAddress2 = root.findtext(".//mailApt");
670
+ mailAddress.city = root.findtext(".//mailCity");
671
+ mailAddress.state = root.findtext(".//mailState");
672
+ mailAddress.postalCode = root.findtext(".//mailPostalCode");
673
+ mailAddress.country = root.findtext(".//mailCountry");
674
+ responseResult.mailAddress = mailAddress;
675
+ const businessData = new BusinessData_1.BusinessData();
676
+ businessData.businessLegalName = root.findtext(".//businessLegalName");
677
+ businessData.doingBusinessAs = root.findtext(".//doingBusinessAs");
678
+ businessData.employerIdentificationNumber = root.findtext(".//ein");
679
+ businessData.websiteURL = root.findtext(".//websiteURL");
680
+ businessData.averageTicket = root.findtext(".//averageTicket");
681
+ businessData.highestTicket = root.findtext(".//highestTicket");
682
+ responseResult.businessData = businessData;
683
+ const businessAddress = new Entities_1.Address();
684
+ businessAddress.streetAddress1 = root.findtext(".//businessAddress");
685
+ businessAddress.streetAddress2 = root.findtext(".//businessAddress2");
686
+ businessAddress.city = root.findtext(".//businessCity");
687
+ businessAddress.state = root.findtext(".//businessState");
688
+ businessAddress.postalCode = root.findtext(".//businessZip");
689
+ businessData.businessAddress = businessAddress;
690
+ responseResult.businessData = businessData;
691
+ const accountLimits = new AccountPermissions_1.AccountPermissions();
692
+ accountLimits.creditCardTransactionLimit = root.findtext(".//creditCardTransactionLimit");
693
+ accountLimits.creditCardMonthLimit = root.findtext(".//creditCardMonthLimit");
694
+ accountLimits.aCHPaymentSoftLimitEnabled =
695
+ root.findtext(".//achPaymentSoftLimitEnabled")?.toUpperCase() == "Y"
696
+ ? true
697
+ : false;
698
+ accountLimits.aCHPaymentACHOffPercent = root.findtext(".//achPaymentAchOffPercent");
699
+ accountLimits.softLimitEnabled =
700
+ root.findtext(".//softLimitEnabled")?.toUpperCase() == "Y" ? true : false;
701
+ accountLimits.softLimitACHOffPercent = root.findtext(".//softLimitAchOffPercent");
702
+ responseResult.aCHPaymentPerTranLimit = root.findtext(".//achPaymentPerTranLimit");
703
+ responseResult.aCHPaymentMonthLimit = root.findtext(".//achPaymentMonthLimit");
704
+ responseResult.aCHPaymentMonthlyVolume = root.findtext(".//achPaymentMonthlyVolume");
705
+ responseResult.creditCardMonthlyVolume = root.findtext(".//creditCardMonthlyVolume");
706
+ responseResult.availableBalance = root.findtext(".//availableBalance");
707
+ responseResult.pendingBalance = root.findtext(".//pendingBalance");
708
+ responseResult.reserveBalance = root.findtext(".//reserveBalance");
709
+ responseResult.accountLimits = accountLimits;
710
+ const primaryBankAccountData = new BankAccountData_1.BankAccountData();
711
+ primaryBankAccountData.accountCountryCode = root.findtext(".//primaryAccountCountryCode");
712
+ primaryBankAccountData.accountType = root.findtext(".//primaryAccountType");
713
+ primaryBankAccountData.accountOwnershipType = root.findtext(".//primaryAccountOwnershipType");
714
+ primaryBankAccountData.bankName = root.findtext(".//primaryBankName");
715
+ primaryBankAccountData.accountNumber = root.findtext(".//primaryAccountNumberLast4");
716
+ primaryBankAccountData.routingNumber = root.findtext(".//primaryRoutingNumber");
717
+ responseResult.primaryBankAccountData = primaryBankAccountData;
718
+ const secondaryBankAccountData = new BankAccountData_1.BankAccountData();
719
+ secondaryBankAccountData.accountCountryCode = root.findtext(".//secondaryAccountCountryCode");
720
+ secondaryBankAccountData.accountType = root.findtext(".//secondaryAccountType");
721
+ secondaryBankAccountData.accountOwnershipType = root.findtext(".//secondaryAccountOwnershipTy;e");
722
+ secondaryBankAccountData.bankName = root.findtext(".//secondaryBankName");
723
+ secondaryBankAccountData.accountNumber = root.findtext(".//secondaryAccoun;tNumberLast4");
724
+ secondaryBankAccountData.routingNumber = root.findtext(".//secondaryRoutingNumber");
725
+ responseResult.secondaryBankAccountData = secondaryBankAccountData;
726
+ const grossBillingInformation = new GrossBillingInformation_1.GrossBillingInformation();
727
+ const grossSettleBankData = new BankAccountData_1.BankAccountData();
728
+ grossSettleBankData.accountHolderName = root.findtext(".//grossSettleAccountHolderName");
729
+ grossSettleBankData.accountNumber = root.findtext(".//grossSettleAccountNumberLast4");
730
+ grossSettleBankData.routingNumber = root.findtext(".//grossSettleRoutingNumber");
731
+ grossSettleBankData.accountType = root.findtext(".//grossSettleAccountType");
732
+ const grossSettleAddress = new Entities_1.Address();
733
+ grossSettleAddress.streetAddress1 = root.findtext(".//grossSettleAccountAddress");
734
+ grossSettleAddress.city = root.findtext(".//rossSettleAccountCity");
735
+ grossSettleAddress.state = root.findtext(".//grossSettleAccountState");
736
+ grossSettleAddress.country = root.findtext(".//grossSettleAccountCountryCode");
737
+ grossSettleAddress.postalCode = root.findtext(".//grossSettleAccountZipCode");
738
+ grossBillingInformation.grossSettleBankData = grossSettleBankData;
739
+ grossBillingInformation.grossSettleAddress = grossSettleAddress;
740
+ return responseResult;
741
+ }
742
+ getAccountNumberFromResponse(root) {
743
+ // ProPay API 4.1 (Create an account) has the account number specified in the response as "accntNum"
744
+ // All other methods specify it as "accountNum" in the response
745
+ if (root.find(".//accntNum")) {
746
+ return root.findtext(".//accntNum");
747
+ }
748
+ else {
749
+ return root.findtext(".//accountNum");
750
+ }
751
+ }
752
+ getBeneficialOwnerDataResultsFromResponse(root) {
753
+ const beneficialOwnerDataResults = new Array();
754
+ if (root.find("beneficialOwnerDataResult")) {
755
+ root.findall("Owner").forEach((owner) => {
756
+ const beneficialOwner = new BeneficialOwnerDataResult_1.BeneficialOwnerDataResult();
757
+ beneficialOwner.firstName = owner.findtext(".//FirstName");
758
+ beneficialOwner.lastName = owner.findtext(".//LastName");
759
+ beneficialOwner.status = owner.findtext(".//Status");
760
+ beneficialOwnerDataResults.push(beneficialOwner);
761
+ });
762
+ }
763
+ return beneficialOwnerDataResults;
764
+ }
765
+ getPhysicalAddressFromResponse(root) {
766
+ const addr = new Entities_1.Address();
767
+ if (root.find("addr") ||
768
+ root.find("city") ||
769
+ root.find("state") ||
770
+ root.find("zip")) {
771
+ addr.streetAddress1 = root.findtext(".//addr");
772
+ addr.city = root.findtext(".//city");
773
+ addr.state = root.findtext(".//state");
774
+ addr.postalCode = root.findtext(".//zip");
775
+ }
776
+ return addr;
777
+ }
778
+ getACHOutBalanceInfoFromResponse(root) {
779
+ const balanceResponse = new AccountBalanceResponseData_1.AccountBalanceResponseData();
780
+ if (root.find("achOut")) {
781
+ balanceResponse.enabled = root.findtext(".//enabled");
782
+ balanceResponse.limitRemaining = root.findtext(".//limitRemaining");
783
+ balanceResponse.transferFee = root.findtext(".//transferFee");
784
+ balanceResponse.feeType = root.findtext(".//feeType");
785
+ balanceResponse.accountLastFour = root.findtext(".//accountLastFour");
786
+ }
787
+ return balanceResponse;
788
+ }
789
+ getFlashFundsBalanceInfoFromResponse(root) {
790
+ const balanceResponse = new AccountBalanceResponseData_1.AccountBalanceResponseData();
791
+ if (root.find("flashFunds")) {
792
+ balanceResponse.enabled = root.findtext(".//enabled");
793
+ balanceResponse.limitRemaining = root.findtext(".//limitRemaining");
794
+ balanceResponse.transferFee = root.findtext(".//transferFee");
795
+ balanceResponse.feeType = root.findtext(".//feeType");
796
+ balanceResponse.accountLastFour = root.findtext(".//accountLastFour");
797
+ }
798
+ return balanceResponse;
799
+ }
800
+ }
801
+ exports.ProPayConnector = ProPayConnector;
695
802
  //# sourceMappingURL=ProPayConnector.js.map