globalpayments-api 2.0.0 → 2.0.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 (502) hide show
  1. package/lib/src/Builders/AuthorizationBuilder.d.ts +325 -0
  2. package/lib/src/Builders/AuthorizationBuilder.js +601 -0
  3. package/lib/src/Builders/AuthorizationBuilder.js.map +1 -0
  4. package/lib/src/Builders/BaseBuilder/ValidationClause.d.ts +14 -0
  5. package/lib/src/Builders/BaseBuilder/ValidationClause.js +62 -0
  6. package/lib/src/Builders/BaseBuilder/ValidationClause.js.map +1 -0
  7. package/lib/src/Builders/BaseBuilder/ValidationTarget.d.ts +16 -0
  8. package/lib/src/Builders/BaseBuilder/ValidationTarget.js +29 -0
  9. package/lib/src/Builders/BaseBuilder/ValidationTarget.js.map +1 -0
  10. package/lib/src/Builders/BaseBuilder/Validations.d.ts +11 -0
  11. package/lib/src/Builders/BaseBuilder/Validations.js +57 -0
  12. package/lib/src/Builders/BaseBuilder/Validations.js.map +1 -0
  13. package/lib/src/Builders/BaseBuilder.d.ts +11 -0
  14. package/lib/src/Builders/BaseBuilder.js +17 -0
  15. package/lib/src/Builders/BaseBuilder.js.map +1 -0
  16. package/lib/src/Builders/ManagementBuilder.d.ts +103 -0
  17. package/lib/src/Builders/ManagementBuilder.js +228 -0
  18. package/lib/src/Builders/ManagementBuilder.js.map +1 -0
  19. package/lib/src/Builders/PayFacBuilder.d.ts +96 -0
  20. package/lib/src/Builders/PayFacBuilder.js +185 -0
  21. package/lib/src/Builders/PayFacBuilder.js.map +1 -0
  22. package/lib/src/Builders/RecurringBuilder.d.ts +13 -0
  23. package/lib/src/Builders/RecurringBuilder.js +48 -0
  24. package/lib/src/Builders/RecurringBuilder.js.map +1 -0
  25. package/lib/src/Builders/ReportBuilder.d.ts +8 -0
  26. package/lib/src/Builders/ReportBuilder.js +37 -0
  27. package/lib/src/Builders/ReportBuilder.js.map +1 -0
  28. package/lib/src/Builders/RequestBuilder/GpEcom/GpEcomAuthorizationRequestBuilder.d.ts +22 -0
  29. package/lib/src/Builders/RequestBuilder/GpEcom/GpEcomAuthorizationRequestBuilder.js +160 -0
  30. package/lib/src/Builders/RequestBuilder/GpEcom/GpEcomAuthorizationRequestBuilder.js.map +1 -0
  31. package/lib/src/Builders/RequestBuilder/GpEcom/GpEcomRequestBuilder.d.ts +6 -0
  32. package/lib/src/Builders/RequestBuilder/GpEcom/GpEcomRequestBuilder.js +24 -0
  33. package/lib/src/Builders/RequestBuilder/GpEcom/GpEcomRequestBuilder.js.map +1 -0
  34. package/lib/src/Builders/RequestBuilder/GpEcom/index.d.ts +2 -0
  35. package/lib/src/Builders/RequestBuilder/GpEcom/index.js +15 -0
  36. package/lib/src/Builders/RequestBuilder/GpEcom/index.js.map +1 -0
  37. package/lib/src/Builders/RequestBuilder/RequestBuilderFactory.d.ts +6 -0
  38. package/lib/src/Builders/RequestBuilder/RequestBuilderFactory.js +30 -0
  39. package/lib/src/Builders/RequestBuilder/RequestBuilderFactory.js.map +1 -0
  40. package/lib/src/Builders/RequestBuilder/index.d.ts +2 -0
  41. package/lib/src/Builders/RequestBuilder/index.js +15 -0
  42. package/lib/src/Builders/RequestBuilder/index.js.map +1 -0
  43. package/lib/src/Builders/TransactionBuilder.d.ts +10 -0
  44. package/lib/src/Builders/TransactionBuilder.js +47 -0
  45. package/lib/src/Builders/TransactionBuilder.js.map +1 -0
  46. package/lib/src/Builders/TransactionReportBuilder.d.ts +15 -0
  47. package/lib/src/Builders/TransactionReportBuilder.js +80 -0
  48. package/lib/src/Builders/TransactionReportBuilder.js.map +1 -0
  49. package/lib/src/Builders/index.d.ts +8 -0
  50. package/lib/src/Builders/index.js +21 -0
  51. package/lib/src/Builders/index.js.map +1 -0
  52. package/lib/src/ConfiguredServices.d.ts +22 -0
  53. package/lib/src/ConfiguredServices.js +57 -0
  54. package/lib/src/ConfiguredServices.js.map +1 -0
  55. package/lib/src/Entities/Address.d.ts +13 -0
  56. package/lib/src/Entities/Address.js +20 -0
  57. package/lib/src/Entities/Address.js.map +1 -0
  58. package/lib/src/Entities/BatchSummary.d.ts +6 -0
  59. package/lib/src/Entities/BatchSummary.js +10 -0
  60. package/lib/src/Entities/BatchSummary.js.map +1 -0
  61. package/lib/src/Entities/Customer.d.ts +64 -0
  62. package/lib/src/Entities/Customer.js +48 -0
  63. package/lib/src/Entities/Customer.js.map +1 -0
  64. package/lib/src/Entities/DocumentUploadData.d.ts +13 -0
  65. package/lib/src/Entities/DocumentUploadData.js +49 -0
  66. package/lib/src/Entities/DocumentUploadData.js.map +1 -0
  67. package/lib/src/Entities/EcommerceInfo.d.ts +12 -0
  68. package/lib/src/Entities/EcommerceInfo.js +15 -0
  69. package/lib/src/Entities/EcommerceInfo.js.map +1 -0
  70. package/lib/src/Entities/EncryptionData.d.ts +6 -0
  71. package/lib/src/Entities/EncryptionData.js +10 -0
  72. package/lib/src/Entities/EncryptionData.js.map +1 -0
  73. package/lib/src/Entities/Enums.d.ts +373 -0
  74. package/lib/src/Entities/Enums.js +498 -0
  75. package/lib/src/Entities/Enums.js.map +1 -0
  76. package/lib/src/Entities/Errors.d.ts +23 -0
  77. package/lib/src/Entities/Errors.js +107 -0
  78. package/lib/src/Entities/Errors.js.map +1 -0
  79. package/lib/src/Entities/HostedPaymentData.d.ts +10 -0
  80. package/lib/src/Entities/HostedPaymentData.js +11 -0
  81. package/lib/src/Entities/HostedPaymentData.js.map +1 -0
  82. package/lib/src/Entities/IRequestBuilder.d.ts +7 -0
  83. package/lib/src/Entities/IRequestBuilder.js +3 -0
  84. package/lib/src/Entities/IRequestBuilder.js.map +1 -0
  85. package/lib/src/Entities/ProFac/AccountBalanceResponseData.d.ts +7 -0
  86. package/lib/src/Entities/ProFac/AccountBalanceResponseData.js +10 -0
  87. package/lib/src/Entities/ProFac/AccountBalanceResponseData.js.map +1 -0
  88. package/lib/src/Entities/ProFac/AccountPermissions.d.ts +15 -0
  89. package/lib/src/Entities/ProFac/AccountPermissions.js +10 -0
  90. package/lib/src/Entities/ProFac/AccountPermissions.js.map +1 -0
  91. package/lib/src/Entities/ProFac/BankAccountData.d.ts +10 -0
  92. package/lib/src/Entities/ProFac/BankAccountData.js +10 -0
  93. package/lib/src/Entities/ProFac/BankAccountData.js.map +1 -0
  94. package/lib/src/Entities/ProFac/BankAccountOwnershipData.d.ts +8 -0
  95. package/lib/src/Entities/ProFac/BankAccountOwnershipData.js +12 -0
  96. package/lib/src/Entities/ProFac/BankAccountOwnershipData.js.map +1 -0
  97. package/lib/src/Entities/ProFac/BeneficialOwnerData.d.ts +6 -0
  98. package/lib/src/Entities/ProFac/BeneficialOwnerData.js +11 -0
  99. package/lib/src/Entities/ProFac/BeneficialOwnerData.js.map +1 -0
  100. package/lib/src/Entities/ProFac/BeneficialOwnerDataResult.d.ts +5 -0
  101. package/lib/src/Entities/ProFac/BeneficialOwnerDataResult.js +10 -0
  102. package/lib/src/Entities/ProFac/BeneficialOwnerDataResult.js.map +1 -0
  103. package/lib/src/Entities/ProFac/BusinessData.d.ts +14 -0
  104. package/lib/src/Entities/ProFac/BusinessData.js +12 -0
  105. package/lib/src/Entities/ProFac/BusinessData.js.map +1 -0
  106. package/lib/src/Entities/ProFac/DeviceAttributeInfo.d.ts +4 -0
  107. package/lib/src/Entities/ProFac/DeviceAttributeInfo.js +10 -0
  108. package/lib/src/Entities/ProFac/DeviceAttributeInfo.js.map +1 -0
  109. package/lib/src/Entities/ProFac/DeviceData.d.ts +5 -0
  110. package/lib/src/Entities/ProFac/DeviceData.js +11 -0
  111. package/lib/src/Entities/ProFac/DeviceData.js.map +1 -0
  112. package/lib/src/Entities/ProFac/DeviceInfo.d.ts +6 -0
  113. package/lib/src/Entities/ProFac/DeviceInfo.js +10 -0
  114. package/lib/src/Entities/ProFac/DeviceInfo.js.map +1 -0
  115. package/lib/src/Entities/ProFac/FlashFundsPaymentCardData.d.ts +7 -0
  116. package/lib/src/Entities/ProFac/FlashFundsPaymentCardData.js +14 -0
  117. package/lib/src/Entities/ProFac/FlashFundsPaymentCardData.js.map +1 -0
  118. package/lib/src/Entities/ProFac/GrossBillingInformation.d.ts +8 -0
  119. package/lib/src/Entities/ProFac/GrossBillingInformation.js +10 -0
  120. package/lib/src/Entities/ProFac/GrossBillingInformation.js.map +1 -0
  121. package/lib/src/Entities/ProFac/OrderDevice.d.ts +18 -0
  122. package/lib/src/Entities/ProFac/OrderDevice.js +10 -0
  123. package/lib/src/Entities/ProFac/OrderDevice.js.map +1 -0
  124. package/lib/src/Entities/ProFac/OwnersData.d.ts +12 -0
  125. package/lib/src/Entities/ProFac/OwnersData.js +12 -0
  126. package/lib/src/Entities/ProFac/OwnersData.js.map +1 -0
  127. package/lib/src/Entities/ProFac/PayFacResponseData.d.ts +55 -0
  128. package/lib/src/Entities/ProFac/PayFacResponseData.js +10 -0
  129. package/lib/src/Entities/ProFac/PayFacResponseData.js.map +1 -0
  130. package/lib/src/Entities/ProFac/RenewAccountData.d.ts +10 -0
  131. package/lib/src/Entities/ProFac/RenewAccountData.js +12 -0
  132. package/lib/src/Entities/ProFac/RenewAccountData.js.map +1 -0
  133. package/lib/src/Entities/ProFac/SignificantOwnerData.d.ts +8 -0
  134. package/lib/src/Entities/ProFac/SignificantOwnerData.js +12 -0
  135. package/lib/src/Entities/ProFac/SignificantOwnerData.js.map +1 -0
  136. package/lib/src/Entities/ProFac/ThreatRiskData.d.ts +5 -0
  137. package/lib/src/Entities/ProFac/ThreatRiskData.js +10 -0
  138. package/lib/src/Entities/ProFac/ThreatRiskData.js.map +1 -0
  139. package/lib/src/Entities/ProFac/UserPersonalData.d.ts +26 -0
  140. package/lib/src/Entities/ProFac/UserPersonalData.js +15 -0
  141. package/lib/src/Entities/ProFac/UserPersonalData.js.map +1 -0
  142. package/lib/src/Entities/RecurringEntity.d.ts +14 -0
  143. package/lib/src/Entities/RecurringEntity.js +87 -0
  144. package/lib/src/Entities/RecurringEntity.js.map +1 -0
  145. package/lib/src/Entities/Request.d.ts +9 -0
  146. package/lib/src/Entities/Request.js +15 -0
  147. package/lib/src/Entities/Request.js.map +1 -0
  148. package/lib/src/Entities/SSORequestData.d.ts +5 -0
  149. package/lib/src/Entities/SSORequestData.js +10 -0
  150. package/lib/src/Entities/SSORequestData.js.map +1 -0
  151. package/lib/src/Entities/Schedule.d.ts +47 -0
  152. package/lib/src/Entities/Schedule.js +254 -0
  153. package/lib/src/Entities/Schedule.js.map +1 -0
  154. package/lib/src/Entities/ServiceEndpoints.d.ts +4 -0
  155. package/lib/src/Entities/ServiceEndpoints.js +9 -0
  156. package/lib/src/Entities/ServiceEndpoints.js.map +1 -0
  157. package/lib/src/Entities/Transaction.d.ts +78 -0
  158. package/lib/src/Entities/Transaction.js +109 -0
  159. package/lib/src/Entities/Transaction.js.map +1 -0
  160. package/lib/src/Entities/TransactionSummary.d.ts +61 -0
  161. package/lib/src/Entities/TransactionSummary.js +10 -0
  162. package/lib/src/Entities/TransactionSummary.js.map +1 -0
  163. package/lib/src/Entities/index.d.ts +15 -0
  164. package/lib/src/Entities/index.js +28 -0
  165. package/lib/src/Entities/index.js.map +1 -0
  166. package/lib/src/Gateways/Gateway.d.ts +10 -0
  167. package/lib/src/Gateways/Gateway.js +43 -0
  168. package/lib/src/Gateways/Gateway.js.map +1 -0
  169. package/lib/src/Gateways/GpEcomConnector.d.ts +36 -0
  170. package/lib/src/Gateways/GpEcomConnector.js +557 -0
  171. package/lib/src/Gateways/GpEcomConnector.js.map +1 -0
  172. package/lib/src/Gateways/IPayFacProvider.d.ts +5 -0
  173. package/lib/src/Gateways/IPayFacProvider.js +3 -0
  174. package/lib/src/Gateways/IPayFacProvider.js.map +1 -0
  175. package/lib/src/Gateways/IPaymentGateway.d.ts +8 -0
  176. package/lib/src/Gateways/IPaymentGateway.js +3 -0
  177. package/lib/src/Gateways/IPaymentGateway.js.map +1 -0
  178. package/lib/src/Gateways/IRecurringService.d.ts +6 -0
  179. package/lib/src/Gateways/IRecurringService.js +3 -0
  180. package/lib/src/Gateways/IRecurringService.js.map +1 -0
  181. package/lib/src/Gateways/PayPlanConnector.d.ts +42 -0
  182. package/lib/src/Gateways/PayPlanConnector.js +553 -0
  183. package/lib/src/Gateways/PayPlanConnector.js.map +1 -0
  184. package/lib/src/Gateways/PorticoConnector.d.ts +44 -0
  185. package/lib/src/Gateways/PorticoConnector.js +1018 -0
  186. package/lib/src/Gateways/PorticoConnector.js.map +1 -0
  187. package/lib/src/Gateways/ProPayConnector.d.ts +41 -0
  188. package/lib/src/Gateways/ProPayConnector.js +695 -0
  189. package/lib/src/Gateways/ProPayConnector.js.map +1 -0
  190. package/lib/src/Gateways/RealexConnector.d.ts +30 -0
  191. package/lib/src/Gateways/RealexConnector.js +524 -0
  192. package/lib/src/Gateways/RealexConnector.js.map +1 -0
  193. package/lib/src/Gateways/RestGateway.d.ts +6 -0
  194. package/lib/src/Gateways/RestGateway.js +32 -0
  195. package/lib/src/Gateways/RestGateway.js.map +1 -0
  196. package/lib/src/Gateways/XmlGateway.d.ts +6 -0
  197. package/lib/src/Gateways/XmlGateway.js +38 -0
  198. package/lib/src/Gateways/XmlGateway.js.map +1 -0
  199. package/lib/src/Gateways/https-wrapper.d.ts +3 -0
  200. package/lib/src/Gateways/https-wrapper.js +36 -0
  201. package/lib/src/Gateways/https-wrapper.js.map +1 -0
  202. package/lib/src/Gateways/index.d.ts +8 -0
  203. package/lib/src/Gateways/index.js +21 -0
  204. package/lib/src/Gateways/index.js.map +1 -0
  205. package/lib/src/HostedPaymentConfig.d.ts +12 -0
  206. package/lib/src/HostedPaymentConfig.js +10 -0
  207. package/lib/src/HostedPaymentConfig.js.map +1 -0
  208. package/lib/src/Mapping/GpEcomMapping.d.ts +9 -0
  209. package/lib/src/Mapping/GpEcomMapping.js +74 -0
  210. package/lib/src/Mapping/GpEcomMapping.js.map +1 -0
  211. package/lib/src/Mapping/index.d.ts +1 -0
  212. package/lib/src/Mapping/index.js +14 -0
  213. package/lib/src/Mapping/index.js.map +1 -0
  214. package/lib/src/PaymentMethods/Cash.d.ts +8 -0
  215. package/lib/src/PaymentMethods/Cash.js +37 -0
  216. package/lib/src/PaymentMethods/Cash.js.map +1 -0
  217. package/lib/src/PaymentMethods/Credit.d.ts +85 -0
  218. package/lib/src/PaymentMethods/Credit.js +107 -0
  219. package/lib/src/PaymentMethods/Credit.js.map +1 -0
  220. package/lib/src/PaymentMethods/CreditCardData.d.ts +20 -0
  221. package/lib/src/PaymentMethods/CreditCardData.js +58 -0
  222. package/lib/src/PaymentMethods/CreditCardData.js.map +1 -0
  223. package/lib/src/PaymentMethods/CreditTrackData.d.ts +7 -0
  224. package/lib/src/PaymentMethods/CreditTrackData.js +28 -0
  225. package/lib/src/PaymentMethods/CreditTrackData.js.map +1 -0
  226. package/lib/src/PaymentMethods/Debit.d.ts +40 -0
  227. package/lib/src/PaymentMethods/Debit.js +71 -0
  228. package/lib/src/PaymentMethods/Debit.js.map +1 -0
  229. package/lib/src/PaymentMethods/DebitTrackData.d.ts +7 -0
  230. package/lib/src/PaymentMethods/DebitTrackData.js +28 -0
  231. package/lib/src/PaymentMethods/DebitTrackData.js.map +1 -0
  232. package/lib/src/PaymentMethods/EBT.d.ts +48 -0
  233. package/lib/src/PaymentMethods/EBT.js +89 -0
  234. package/lib/src/PaymentMethods/EBT.js.map +1 -0
  235. package/lib/src/PaymentMethods/EBTCardData.d.ts +16 -0
  236. package/lib/src/PaymentMethods/EBTCardData.js +33 -0
  237. package/lib/src/PaymentMethods/EBTCardData.js.map +1 -0
  238. package/lib/src/PaymentMethods/EBTTrackData.d.ts +8 -0
  239. package/lib/src/PaymentMethods/EBTTrackData.js +28 -0
  240. package/lib/src/PaymentMethods/EBTTrackData.js.map +1 -0
  241. package/lib/src/PaymentMethods/ECheck.d.ts +32 -0
  242. package/lib/src/PaymentMethods/ECheck.js +41 -0
  243. package/lib/src/PaymentMethods/ECheck.js.map +1 -0
  244. package/lib/src/PaymentMethods/GiftCard.d.ts +131 -0
  245. package/lib/src/PaymentMethods/GiftCard.js +206 -0
  246. package/lib/src/PaymentMethods/GiftCard.js.map +1 -0
  247. package/lib/src/PaymentMethods/Interfaces.d.ts +55 -0
  248. package/lib/src/PaymentMethods/Interfaces.js +3 -0
  249. package/lib/src/PaymentMethods/Interfaces.js.map +1 -0
  250. package/lib/src/PaymentMethods/PaymentMethod.d.ts +19 -0
  251. package/lib/src/PaymentMethods/PaymentMethod.js +115 -0
  252. package/lib/src/PaymentMethods/PaymentMethod.js.map +1 -0
  253. package/lib/src/PaymentMethods/RecurringPaymentMethod.d.ts +23 -0
  254. package/lib/src/PaymentMethods/RecurringPaymentMethod.js +78 -0
  255. package/lib/src/PaymentMethods/RecurringPaymentMethod.js.map +1 -0
  256. package/lib/src/PaymentMethods/TransactionReference.d.ts +10 -0
  257. package/lib/src/PaymentMethods/TransactionReference.js +13 -0
  258. package/lib/src/PaymentMethods/TransactionReference.js.map +1 -0
  259. package/lib/src/PaymentMethods/index.d.ts +15 -0
  260. package/lib/src/PaymentMethods/index.js +28 -0
  261. package/lib/src/PaymentMethods/index.js.map +1 -0
  262. package/lib/src/ServiceConfigs/AcceptorConfig.d.ts +41 -0
  263. package/lib/src/ServiceConfigs/AcceptorConfig.js +30 -0
  264. package/lib/src/ServiceConfigs/AcceptorConfig.js.map +1 -0
  265. package/lib/src/ServiceConfigs/Configuration.d.ts +15 -0
  266. package/lib/src/ServiceConfigs/Configuration.js +16 -0
  267. package/lib/src/ServiceConfigs/Configuration.js.map +1 -0
  268. package/lib/src/ServiceConfigs/Gateways/GatewayConfig.d.ts +14 -0
  269. package/lib/src/ServiceConfigs/Gateways/GatewayConfig.js +46 -0
  270. package/lib/src/ServiceConfigs/Gateways/GatewayConfig.js.map +1 -0
  271. package/lib/src/ServiceConfigs/Gateways/GpEcomConfig.d.ts +27 -0
  272. package/lib/src/ServiceConfigs/Gateways/GpEcomConfig.js +61 -0
  273. package/lib/src/ServiceConfigs/Gateways/GpEcomConfig.js.map +1 -0
  274. package/lib/src/ServiceConfigs/Gateways/index.d.ts +2 -0
  275. package/lib/src/ServiceConfigs/Gateways/index.js +15 -0
  276. package/lib/src/ServiceConfigs/Gateways/index.js.map +1 -0
  277. package/lib/src/ServiceConfigs/ServicesConfig.d.ts +27 -0
  278. package/lib/src/ServiceConfigs/ServicesConfig.js +51 -0
  279. package/lib/src/ServiceConfigs/ServicesConfig.js.map +1 -0
  280. package/lib/src/ServiceConfigs/ServicesConfigsAdded.d.ts +10 -0
  281. package/lib/src/ServiceConfigs/ServicesConfigsAdded.js +27 -0
  282. package/lib/src/ServiceConfigs/ServicesConfigsAdded.js.map +1 -0
  283. package/lib/src/ServiceConfigs/index.d.ts +5 -0
  284. package/lib/src/ServiceConfigs/index.js +18 -0
  285. package/lib/src/ServiceConfigs/index.js.map +1 -0
  286. package/lib/src/Services/BatchService.d.ts +4 -0
  287. package/lib/src/Services/BatchService.js +18 -0
  288. package/lib/src/Services/BatchService.js.map +1 -0
  289. package/lib/src/Services/CheckService.d.ts +6 -0
  290. package/lib/src/Services/CheckService.js +21 -0
  291. package/lib/src/Services/CheckService.js.map +1 -0
  292. package/lib/src/Services/CreditService.d.ts +12 -0
  293. package/lib/src/Services/CreditService.js +55 -0
  294. package/lib/src/Services/CreditService.js.map +1 -0
  295. package/lib/src/Services/DebitService.d.ts +7 -0
  296. package/lib/src/Services/DebitService.js +29 -0
  297. package/lib/src/Services/DebitService.js.map +1 -0
  298. package/lib/src/Services/EBTService.d.ts +8 -0
  299. package/lib/src/Services/EBTService.js +33 -0
  300. package/lib/src/Services/EBTService.js.map +1 -0
  301. package/lib/src/Services/GiftService.d.ts +16 -0
  302. package/lib/src/Services/GiftService.js +55 -0
  303. package/lib/src/Services/GiftService.js.map +1 -0
  304. package/lib/src/Services/HostedService.d.ts +9 -0
  305. package/lib/src/Services/HostedService.js +60 -0
  306. package/lib/src/Services/HostedService.js.map +1 -0
  307. package/lib/src/Services/PayFacService.d.ts +26 -0
  308. package/lib/src/Services/PayFacService.js +78 -0
  309. package/lib/src/Services/PayFacService.js.map +1 -0
  310. package/lib/src/Services/RecurringService.d.ts +8 -0
  311. package/lib/src/Services/RecurringService.js +28 -0
  312. package/lib/src/Services/RecurringService.js.map +1 -0
  313. package/lib/src/Services/ReportingService.d.ts +6 -0
  314. package/lib/src/Services/ReportingService.js +20 -0
  315. package/lib/src/Services/ReportingService.js.map +1 -0
  316. package/lib/src/Services/index.d.ts +9 -0
  317. package/lib/src/Services/index.js +22 -0
  318. package/lib/src/Services/index.js.map +1 -0
  319. package/lib/src/ServicesConfig.d.ts +27 -0
  320. package/lib/src/ServicesConfig.js +51 -0
  321. package/lib/src/ServicesConfig.js.map +1 -0
  322. package/lib/src/ServicesContainer.d.ts +26 -0
  323. package/lib/src/ServicesContainer.js +140 -0
  324. package/lib/src/ServicesContainer.js.map +1 -0
  325. package/lib/src/Utils/GenerationUtils.d.ts +5 -0
  326. package/lib/src/Utils/GenerationUtils.js +37 -0
  327. package/lib/src/Utils/GenerationUtils.js.map +1 -0
  328. package/lib/src/Utils/InputValidation.d.ts +12 -0
  329. package/lib/src/Utils/InputValidation.js +73 -0
  330. package/lib/src/Utils/InputValidation.js.map +1 -0
  331. package/lib/src/Utils/Sha1.d.ts +6 -0
  332. package/lib/src/Utils/Sha1.js +226 -0
  333. package/lib/src/Utils/Sha1.js.map +1 -0
  334. package/lib/src/Utils/StringUtils.d.ts +6 -0
  335. package/lib/src/Utils/StringUtils.js +54 -0
  336. package/lib/src/Utils/StringUtils.js.map +1 -0
  337. package/lib/src/Utils/index.d.ts +2 -0
  338. package/lib/src/Utils/index.js +15 -0
  339. package/lib/src/Utils/index.js.map +1 -0
  340. package/lib/src/index.d.ts +12 -0
  341. package/lib/src/index.js +29 -0
  342. package/lib/src/index.js.map +1 -0
  343. package/lib/test/Data/TestCards.d.ts +24 -0
  344. package/lib/test/Data/TestCards.js +233 -0
  345. package/lib/test/Data/TestCards.js.map +1 -0
  346. package/lib/test/Data/TestChecks.d.ts +4 -0
  347. package/lib/test/Data/TestChecks.js +33 -0
  348. package/lib/test/Data/TestChecks.js.map +1 -0
  349. package/lib/test/Data/index.d.ts +2 -0
  350. package/lib/test/Data/index.js +15 -0
  351. package/lib/test/Data/index.js.map +1 -0
  352. package/lib/test/Integration/Gateways/PorticoConnector/AchTest.d.ts +1 -0
  353. package/lib/test/Integration/Gateways/PorticoConnector/AchTest.js +113 -0
  354. package/lib/test/Integration/Gateways/PorticoConnector/AchTest.js.map +1 -0
  355. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/CheckTest.d.ts +1 -0
  356. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/CheckTest.js +484 -0
  357. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/CheckTest.js.map +1 -0
  358. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/EcommerceCheckTest.d.ts +1 -0
  359. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/EcommerceCheckTest.js +84 -0
  360. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/EcommerceCheckTest.js.map +1 -0
  361. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/EcommerceTest.d.ts +1 -0
  362. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/EcommerceTest.js +1721 -0
  363. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/EcommerceTest.js.map +1 -0
  364. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/MotoCheckTest.d.ts +1 -0
  365. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/MotoCheckTest.js +84 -0
  366. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/MotoCheckTest.js.map +1 -0
  367. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/MotoTest.d.ts +1 -0
  368. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/MotoTest.js +1758 -0
  369. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/MotoTest.js.map +1 -0
  370. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/RecurringTest.d.ts +1 -0
  371. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/RecurringTest.js +683 -0
  372. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/RecurringTest.js.map +1 -0
  373. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/RetailTest.d.ts +1 -0
  374. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/RetailTest.js +2219 -0
  375. package/lib/test/Integration/Gateways/PorticoConnector/Certifications/RetailTest.js.map +1 -0
  376. package/lib/test/Integration/Gateways/PorticoConnector/CreditTest.d.ts +1 -0
  377. package/lib/test/Integration/Gateways/PorticoConnector/CreditTest.js +708 -0
  378. package/lib/test/Integration/Gateways/PorticoConnector/CreditTest.js.map +1 -0
  379. package/lib/test/Integration/Gateways/PorticoConnector/DebitTest.d.ts +1 -0
  380. package/lib/test/Integration/Gateways/PorticoConnector/DebitTest.js +152 -0
  381. package/lib/test/Integration/Gateways/PorticoConnector/DebitTest.js.map +1 -0
  382. package/lib/test/Integration/Gateways/PorticoConnector/EbtTest.d.ts +1 -0
  383. package/lib/test/Integration/Gateways/PorticoConnector/EbtTest.js +172 -0
  384. package/lib/test/Integration/Gateways/PorticoConnector/EbtTest.js.map +1 -0
  385. package/lib/test/Integration/Gateways/PorticoConnector/EcommerceTest.d.ts +1 -0
  386. package/lib/test/Integration/Gateways/PorticoConnector/EcommerceTest.js +193 -0
  387. package/lib/test/Integration/Gateways/PorticoConnector/EcommerceTest.js.map +1 -0
  388. package/lib/test/Integration/Gateways/PorticoConnector/GiftTest.d.ts +1 -0
  389. package/lib/test/Integration/Gateways/PorticoConnector/GiftTest.js +378 -0
  390. package/lib/test/Integration/Gateways/PorticoConnector/GiftTest.js.map +1 -0
  391. package/lib/test/Integration/Gateways/PorticoConnector/RecurringTest.d.ts +1 -0
  392. package/lib/test/Integration/Gateways/PorticoConnector/RecurringTest.js +197 -0
  393. package/lib/test/Integration/Gateways/PorticoConnector/RecurringTest.js.map +1 -0
  394. package/lib/test/Integration/Gateways/PorticoConnector/ReportingTest.d.ts +1 -0
  395. package/lib/test/Integration/Gateways/PorticoConnector/ReportingTest.js +48 -0
  396. package/lib/test/Integration/Gateways/PorticoConnector/ReportingTest.js.map +1 -0
  397. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/GetInformationCertificationTests.d.ts +1 -0
  398. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/GetInformationCertificationTests.js +101 -0
  399. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/GetInformationCertificationTests.js.map +1 -0
  400. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/ProPayAccountCertificationTests.d.ts +1 -0
  401. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/ProPayAccountCertificationTests.js +353 -0
  402. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/ProPayAccountCertificationTests.js.map +1 -0
  403. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/ProPayFundCertificationTests.d.ts +1 -0
  404. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/ProPayFundCertificationTests.js +124 -0
  405. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/ProPayFundCertificationTests.js.map +1 -0
  406. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/ProPayInNetworkTransactionCertificationTests.d.ts +1 -0
  407. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/ProPayInNetworkTransactionCertificationTests.js +143 -0
  408. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/ProPayInNetworkTransactionCertificationTests.js.map +1 -0
  409. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/TestData/TestAccountData.d.ts +39 -0
  410. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/TestData/TestAccountData.js +372 -0
  411. package/lib/test/Integration/Gateways/ProPayConnector/Certifications/TestData/TestAccountData.js.map +1 -0
  412. package/lib/test/Integration/Gateways/ProPayConnector/GetInformationTests.d.ts +1 -0
  413. package/lib/test/Integration/Gateways/ProPayConnector/GetInformationTests.js +101 -0
  414. package/lib/test/Integration/Gateways/ProPayConnector/GetInformationTests.js.map +1 -0
  415. package/lib/test/Integration/Gateways/ProPayConnector/ProPayAccountTests.d.ts +1 -0
  416. package/lib/test/Integration/Gateways/ProPayConnector/ProPayAccountTests.js +536 -0
  417. package/lib/test/Integration/Gateways/ProPayConnector/ProPayAccountTests.js.map +1 -0
  418. package/lib/test/Integration/Gateways/ProPayConnector/ProPayFundsTests.d.ts +1 -0
  419. package/lib/test/Integration/Gateways/ProPayConnector/ProPayFundsTests.js +125 -0
  420. package/lib/test/Integration/Gateways/ProPayConnector/ProPayFundsTests.js.map +1 -0
  421. package/lib/test/Integration/Gateways/ProPayConnector/ProPayInNetworkTransactionTests.d.ts +1 -0
  422. package/lib/test/Integration/Gateways/ProPayConnector/ProPayInNetworkTransactionTests.js +145 -0
  423. package/lib/test/Integration/Gateways/ProPayConnector/ProPayInNetworkTransactionTests.js.map +1 -0
  424. package/lib/test/Integration/Gateways/ProPayConnector/TestData/TestAccountData.d.ts +33 -0
  425. package/lib/test/Integration/Gateways/ProPayConnector/TestData/TestAccountData.js +269 -0
  426. package/lib/test/Integration/Gateways/ProPayConnector/TestData/TestAccountData.js.map +1 -0
  427. package/lib/test/Integration/Gateways/ProPayConnector/TestData/TestFundsData.d.ts +4 -0
  428. package/lib/test/Integration/Gateways/ProPayConnector/TestData/TestFundsData.js +31 -0
  429. package/lib/test/Integration/Gateways/ProPayConnector/TestData/TestFundsData.js.map +1 -0
  430. package/lib/test/Integration/Gateways/RealexConnector/Certification/AuthTest.d.ts +1 -0
  431. package/lib/test/Integration/Gateways/RealexConnector/Certification/AuthTest.js +4374 -0
  432. package/lib/test/Integration/Gateways/RealexConnector/Certification/AuthTest.js.map +1 -0
  433. package/lib/test/Integration/Gateways/RealexConnector/Certification/AvsTest.d.ts +1 -0
  434. package/lib/test/Integration/Gateways/RealexConnector/Certification/AvsTest.js +759 -0
  435. package/lib/test/Integration/Gateways/RealexConnector/Certification/AvsTest.js.map +1 -0
  436. package/lib/test/Integration/Gateways/RealexConnector/Certification/CreditTest.d.ts +1 -0
  437. package/lib/test/Integration/Gateways/RealexConnector/Certification/CreditTest.js +2400 -0
  438. package/lib/test/Integration/Gateways/RealexConnector/Certification/CreditTest.js.map +1 -0
  439. package/lib/test/Integration/Gateways/RealexConnector/Certification/HoldTest.d.ts +1 -0
  440. package/lib/test/Integration/Gateways/RealexConnector/Certification/HoldTest.js +1657 -0
  441. package/lib/test/Integration/Gateways/RealexConnector/Certification/HoldTest.js.map +1 -0
  442. package/lib/test/Integration/Gateways/RealexConnector/Certification/ManualTest.d.ts +1 -0
  443. package/lib/test/Integration/Gateways/RealexConnector/Certification/ManualTest.js +5651 -0
  444. package/lib/test/Integration/Gateways/RealexConnector/Certification/ManualTest.js.map +1 -0
  445. package/lib/test/Integration/Gateways/RealexConnector/Certification/OtbTest.d.ts +1 -0
  446. package/lib/test/Integration/Gateways/RealexConnector/Certification/OtbTest.js +1986 -0
  447. package/lib/test/Integration/Gateways/RealexConnector/Certification/OtbTest.js.map +1 -0
  448. package/lib/test/Integration/Gateways/RealexConnector/Certification/RebateTest.d.ts +1 -0
  449. package/lib/test/Integration/Gateways/RealexConnector/Certification/RebateTest.js +2370 -0
  450. package/lib/test/Integration/Gateways/RealexConnector/Certification/RebateTest.js.map +1 -0
  451. package/lib/test/Integration/Gateways/RealexConnector/Certification/ReleaseTest.d.ts +1 -0
  452. package/lib/test/Integration/Gateways/RealexConnector/Certification/ReleaseTest.js +1704 -0
  453. package/lib/test/Integration/Gateways/RealexConnector/Certification/ReleaseTest.js.map +1 -0
  454. package/lib/test/Integration/Gateways/RealexConnector/Certification/SettleTest.d.ts +1 -0
  455. package/lib/test/Integration/Gateways/RealexConnector/Certification/SettleTest.js +2054 -0
  456. package/lib/test/Integration/Gateways/RealexConnector/Certification/SettleTest.js.map +1 -0
  457. package/lib/test/Integration/Gateways/RealexConnector/Certification/ValidationTest.d.ts +1 -0
  458. package/lib/test/Integration/Gateways/RealexConnector/Certification/ValidationTest.js +2470 -0
  459. package/lib/test/Integration/Gateways/RealexConnector/Certification/ValidationTest.js.map +1 -0
  460. package/lib/test/Integration/Gateways/RealexConnector/Certification/VerifyEnrolledTest.d.ts +1 -0
  461. package/lib/test/Integration/Gateways/RealexConnector/Certification/VerifyEnrolledTest.js +3117 -0
  462. package/lib/test/Integration/Gateways/RealexConnector/Certification/VerifyEnrolledTest.js.map +1 -0
  463. package/lib/test/Integration/Gateways/RealexConnector/Certification/VoidTest.d.ts +1 -0
  464. package/lib/test/Integration/Gateways/RealexConnector/Certification/VoidTest.js +2032 -0
  465. package/lib/test/Integration/Gateways/RealexConnector/Certification/VoidTest.js.map +1 -0
  466. package/lib/test/Integration/Gateways/RealexConnector/CreditTest.d.ts +1 -0
  467. package/lib/test/Integration/Gateways/RealexConnector/CreditTest.js +323 -0
  468. package/lib/test/Integration/Gateways/RealexConnector/CreditTest.js.map +1 -0
  469. package/lib/test/Integration/Gateways/RealexConnector/HppTest.d.ts +1 -0
  470. package/lib/test/Integration/Gateways/RealexConnector/HppTest.js +99 -0
  471. package/lib/test/Integration/Gateways/RealexConnector/HppTest.js.map +1 -0
  472. package/lib/test/Integration/Gateways/RealexConnector/RecurringTest.d.ts +1 -0
  473. package/lib/test/Integration/Gateways/RealexConnector/RecurringTest.js +264 -0
  474. package/lib/test/Integration/Gateways/RealexConnector/RecurringTest.js.map +1 -0
  475. package/lib/test/Integration/Services/CheckServiceTest.d.ts +1 -0
  476. package/lib/test/Integration/Services/CheckServiceTest.js +99 -0
  477. package/lib/test/Integration/Services/CheckServiceTest.js.map +1 -0
  478. package/lib/test/Integration/Services/CreditServiceTest.d.ts +1 -0
  479. package/lib/test/Integration/Services/CreditServiceTest.js +314 -0
  480. package/lib/test/Integration/Services/CreditServiceTest.js.map +1 -0
  481. package/lib/test/Integration/Services/DebitServiceTest.d.ts +1 -0
  482. package/lib/test/Integration/Services/DebitServiceTest.js +155 -0
  483. package/lib/test/Integration/Services/DebitServiceTest.js.map +1 -0
  484. package/lib/test/Integration/Services/EBTServiceTest.d.ts +1 -0
  485. package/lib/test/Integration/Services/EBTServiceTest.js +136 -0
  486. package/lib/test/Integration/Services/EBTServiceTest.js.map +1 -0
  487. package/lib/test/Unit/Builders/AuthorizationBuilder/ValidationTest.d.ts +1 -0
  488. package/lib/test/Unit/Builders/AuthorizationBuilder/ValidationTest.js +162 -0
  489. package/lib/test/Unit/Builders/AuthorizationBuilder/ValidationTest.js.map +1 -0
  490. package/lib/test/Unit/Builders/ReportBuilder/ValidationTest.d.ts +1 -0
  491. package/lib/test/Unit/Builders/ReportBuilder/ValidationTest.js +140 -0
  492. package/lib/test/Unit/Builders/ReportBuilder/ValidationTest.js.map +1 -0
  493. package/lib/test/Unit/Gateways/GpEcomConnector/CreditTest.d.ts +1 -0
  494. package/lib/test/Unit/Gateways/GpEcomConnector/CreditTest.js +73 -0
  495. package/lib/test/Unit/Gateways/GpEcomConnector/CreditTest.js.map +1 -0
  496. package/lib/test/Unit/Gateways/PorticoConnector/InputValidationTest.d.ts +1 -0
  497. package/lib/test/Unit/Gateways/PorticoConnector/InputValidationTest.js +203 -0
  498. package/lib/test/Unit/Gateways/PorticoConnector/InputValidationTest.js.map +1 -0
  499. package/lib/test/Unit/Gateways/RealexConnector/CreditTest.d.ts +1 -0
  500. package/lib/test/Unit/Gateways/RealexConnector/CreditTest.js +71 -0
  501. package/lib/test/Unit/Gateways/RealexConnector/CreditTest.js.map +1 -0
  502. package/package.json +2 -2
@@ -0,0 +1,1018 @@
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.PorticoConnector = void 0;
19
+ var elementtree_1 = require("@azz/elementtree");
20
+ var __1 = require("../");
21
+ var InputValidation_1 = require("../Utils/InputValidation");
22
+ var XmlGateway_1 = require("./XmlGateway");
23
+ var PorticoConnector = /** @class */ (function (_super) {
24
+ __extends(PorticoConnector, _super);
25
+ function PorticoConnector() {
26
+ var _this = _super !== null && _super.apply(this, arguments) || this;
27
+ _this.supportsHostedPayments = false;
28
+ return _this;
29
+ }
30
+ PorticoConnector.prototype.processAuthorization = function (builder) {
31
+ var _this = this;
32
+ // build request
33
+ var transaction = elementtree_1.Element(this.mapRequestType(builder));
34
+ var block1 = elementtree_1.SubElement(transaction, "Block1");
35
+ var allowDuplicates;
36
+ if (builder.transactionType === __1.TransactionType.Sale ||
37
+ builder.transactionType === __1.TransactionType.Auth) {
38
+ if (builder.paymentMethod.paymentMethodType !== __1.PaymentMethodType.Gift &&
39
+ builder.paymentMethod.paymentMethodType !== __1.PaymentMethodType.ACH) {
40
+ allowDuplicates = elementtree_1.SubElement(block1, "AllowDup");
41
+ allowDuplicates.append(elementtree_1.CData(builder.allowDuplicates ? "Y" : "N"));
42
+ if (builder.transactionModifier === __1.TransactionModifier.None &&
43
+ builder.paymentMethod.paymentMethodType !== __1.PaymentMethodType.EBT &&
44
+ builder.paymentMethod.paymentMethodType !==
45
+ __1.PaymentMethodType.Recurring) {
46
+ elementtree_1.SubElement(block1, "AllowPartialAuth").append(elementtree_1.CData(builder.allowPartialAuth ? "Y" : "N"));
47
+ }
48
+ }
49
+ }
50
+ if (builder.amount !== undefined && builder.amount !== "") {
51
+ elementtree_1.SubElement(block1, "Amt").append(elementtree_1.CData(InputValidation_1.validateAmount("portico", builder.amount)));
52
+ }
53
+ if (builder.gratuity) {
54
+ elementtree_1.SubElement(block1, "GratuityAmtInfo").append(elementtree_1.CData(InputValidation_1.validateAmount("portico", builder.gratuity)));
55
+ }
56
+ if (builder.convenienceAmt) {
57
+ elementtree_1.SubElement(block1, "ConvenienceAmtInfo").append(elementtree_1.CData(InputValidation_1.validateAmount("portico", builder.convenienceAmt)));
58
+ }
59
+ if (builder.shippingAmt) {
60
+ elementtree_1.SubElement(block1, "ShippingAmtInfo").append(elementtree_1.CData(InputValidation_1.validateAmount("portico", builder.shippingAmt)));
61
+ }
62
+ if (builder.cashBackAmount !== undefined && builder.cashBackAmount !== "") {
63
+ elementtree_1.SubElement(block1,
64
+ // because plano
65
+ builder.paymentMethod.paymentMethodType === __1.PaymentMethodType.Debit
66
+ ? "CashbackAmtInfo"
67
+ : "CashBackAmount").append(elementtree_1.CData(InputValidation_1.validateAmount("portico", builder.cashBackAmount)));
68
+ }
69
+ if (builder.offlineAuthCode) {
70
+ elementtree_1.SubElement(block1, "OfflineAuthCode").append(elementtree_1.CData(builder.offlineAuthCode));
71
+ }
72
+ if (builder.transactionType === __1.TransactionType.Alias) {
73
+ elementtree_1.SubElement(block1, "Action").append(elementtree_1.CData(builder.aliasAction.toString()));
74
+ elementtree_1.SubElement(block1, "Alias").append(elementtree_1.CData(builder.alias));
75
+ }
76
+ var isCheck = builder.paymentMethod.paymentMethodType === __1.PaymentMethodType.ACH;
77
+ var property = isCheck ? "checkHolderName" : "cardHolderName";
78
+ if (builder.transactionType !== __1.TransactionType.Reversal && (isCheck || builder.billingAddress || builder.paymentMethod[property])) {
79
+ var holder = elementtree_1.SubElement(block1, isCheck ? "ConsumerInfo" : "CardHolderData");
80
+ var pm = builder.paymentMethod;
81
+ if (pm[property]) {
82
+ var names = pm[property].split(" ", 2);
83
+ elementtree_1.SubElement(holder, isCheck ? "FirstName" : "CardHolderFirstName").append(elementtree_1.CData(InputValidation_1.validateInput("portico", "firstName", names[0])));
84
+ if (names[1]) {
85
+ elementtree_1.SubElement(holder, isCheck ? "LastName" : "CardHolderLastName").append(elementtree_1.CData(InputValidation_1.validateInput("portico", "lastName", names[1])));
86
+ }
87
+ }
88
+ if (builder.billingAddress) {
89
+ elementtree_1.SubElement(holder, isCheck ? "Address1" : "CardHolderAddr").append(elementtree_1.CData(builder.billingAddress.streetAddress1));
90
+ elementtree_1.SubElement(holder, isCheck ? "City" : "CardHolderCity").append(elementtree_1.CData(InputValidation_1.validateInput("portico", "city", builder.billingAddress.city)));
91
+ elementtree_1.SubElement(holder, isCheck ? "State" : "CardHolderState").append(elementtree_1.CData(InputValidation_1.validateInput("portico", "province", builder.billingAddress.province || builder.billingAddress.state)));
92
+ elementtree_1.SubElement(holder, isCheck ? "Zip" : "CardHolderZip").append(elementtree_1.CData(InputValidation_1.validateInput("portico", "postalCode", builder.billingAddress.postalCode)));
93
+ }
94
+ if (isCheck) {
95
+ var check = builder.paymentMethod;
96
+ elementtree_1.SubElement(holder, "CheckName").append(elementtree_1.CData(check.checkName || check.checkHolderName));
97
+ elementtree_1.SubElement(holder, "PhoneNumber").append(elementtree_1.CData(InputValidation_1.validateInput("portico", "phoneNumber", check.phoneNumber)));
98
+ elementtree_1.SubElement(holder, "DLNumber").append(elementtree_1.CData(check.driversLicenseNumber));
99
+ elementtree_1.SubElement(holder, "DLState").append(elementtree_1.CData(check.driversLicenseState));
100
+ if (check.ssnLast4 || check.birthYear) {
101
+ var identity = elementtree_1.SubElement(holder, "IdentityInfo");
102
+ elementtree_1.SubElement(identity, "SSNL4").append(elementtree_1.CData(check.ssnLast4));
103
+ elementtree_1.SubElement(identity, "DOBYear").append(elementtree_1.CData(check.birthYear));
104
+ }
105
+ }
106
+ }
107
+ var _a = this.hasToken(builder.paymentMethod), hasToken = _a.hasToken, tokenValue = _a.tokenValue;
108
+ var cardData;
109
+ if (builder.paymentMethod.paymentMethodType === __1.PaymentMethodType.Debit ||
110
+ builder.paymentMethod.paymentMethodType === __1.PaymentMethodType.ACH) {
111
+ cardData = block1;
112
+ }
113
+ else {
114
+ cardData = elementtree_1.Element("CardData");
115
+ }
116
+ if (builder.paymentMethod.isCardData) {
117
+ var card = builder.paymentMethod;
118
+ var manualEntry = elementtree_1.SubElement(cardData, hasToken ? "TokenData" : "ManualEntry");
119
+ if (this.shouldIncludeCredentialOnFile(builder) && (builder.cardBrandTransactionId || builder.transactionInitiator)) {
120
+ block1.append(this.hydrateCredentialOnFile(builder));
121
+ }
122
+ elementtree_1.SubElement(manualEntry, hasToken ? "TokenValue" : "CardNbr").append(elementtree_1.CData(tokenValue || card.number));
123
+ if (card.expMonth) {
124
+ elementtree_1.SubElement(manualEntry, "ExpMonth").append(elementtree_1.CData(card.expMonth.toString()));
125
+ }
126
+ if (card.expYear) {
127
+ elementtree_1.SubElement(manualEntry, "ExpYear").append(elementtree_1.CData(card.expYear.toString()));
128
+ }
129
+ if (card.cvn) {
130
+ elementtree_1.SubElement(manualEntry, "CVV2").append(elementtree_1.CData(card.cvn));
131
+ }
132
+ elementtree_1.SubElement(manualEntry, "ReaderPresent").append(elementtree_1.CData(card.readerPresent ? "Y" : "N"));
133
+ elementtree_1.SubElement(manualEntry, "CardPresent").append(elementtree_1.CData(card.cardPresent ? "Y" : "N"));
134
+ block1.append(cardData);
135
+ if (card instanceof __1.CreditCardData) {
136
+ var creditCardData = card;
137
+ // WalletData Element
138
+ if ((creditCardData.mobileType == __1.MobilePaymentMethodType.APPLEPAY
139
+ || creditCardData.mobileType == __1.MobilePaymentMethodType.GOOGLEPAY)
140
+ && typeof creditCardData.paymentSource != "undefined"
141
+ && this.isAppleOrGooglePay(creditCardData.paymentSource)) {
142
+ var walletData = elementtree_1.SubElement(block1, "WalletData");
143
+ elementtree_1.SubElement(walletData, "PaymentSource").append(elementtree_1.CData(creditCardData.paymentSource.trim()));
144
+ if (typeof creditCardData.mobileType != "undefined") {
145
+ elementtree_1.SubElement(walletData, "DigitalPaymentToken").append(elementtree_1.CData(creditCardData.token));
146
+ block1.remove(cardData);
147
+ }
148
+ }
149
+ }
150
+ if (builder.transactionModifier === __1.TransactionModifier.Recurring) {
151
+ var recurring = elementtree_1.SubElement(block1, "RecurringData");
152
+ elementtree_1.SubElement(recurring, "ScheduleID").append(elementtree_1.CData(builder.scheduleId));
153
+ elementtree_1.SubElement(recurring, "OneTime").append(elementtree_1.CData(builder.oneTimePayment ? "Y" : "N"));
154
+ }
155
+ }
156
+ else if (builder.paymentMethod.isTrackData) {
157
+ var track = builder.paymentMethod;
158
+ var trackData = elementtree_1.SubElement(cardData, hasToken ? "TokenData" : "TrackData");
159
+ if (!hasToken) {
160
+ trackData.append(elementtree_1.CData(track.value));
161
+ if (builder.paymentMethod.paymentMethodType !== __1.PaymentMethodType.Debit) {
162
+ trackData.set("method", track.entryMethod === __1.EntryMethod.Swipe ? "swipe" : "proximity");
163
+ block1.append(cardData);
164
+ }
165
+ }
166
+ else if (tokenValue) {
167
+ elementtree_1.SubElement(trackData, "TokenValue").append(elementtree_1.CData(tokenValue));
168
+ }
169
+ }
170
+ else if (builder.paymentMethod instanceof __1.GiftCard) {
171
+ var card = builder.paymentMethod;
172
+ if (builder.currency) {
173
+ elementtree_1.SubElement(block1, "Currency").append(elementtree_1.CData(builder.currency.toUpperCase()));
174
+ }
175
+ // if it's replace, add the new card, and change the card data name to be old card data
176
+ if (builder.transactionType === __1.TransactionType.Replace) {
177
+ var newCardData = elementtree_1.SubElement(block1, "NewCardData");
178
+ elementtree_1.SubElement(newCardData, builder.replacementCard.valueType).append(elementtree_1.CData(builder.replacementCard.value));
179
+ elementtree_1.SubElement(newCardData, "PIN").append(elementtree_1.CData(builder.replacementCard.pin));
180
+ cardData = elementtree_1.Element("OldCardData");
181
+ }
182
+ elementtree_1.SubElement(cardData, card.valueType).append(elementtree_1.CData(card.value));
183
+ if (card.pin) {
184
+ elementtree_1.SubElement(cardData, "PIN").append(elementtree_1.CData(card.pin));
185
+ }
186
+ if (builder.aliasAction !== __1.AliasAction.Create) {
187
+ block1.append(cardData);
188
+ }
189
+ }
190
+ else if (builder.paymentMethod instanceof __1.ECheck) {
191
+ var check = builder.paymentMethod;
192
+ elementtree_1.SubElement(block1, "CheckAction").append(elementtree_1.CData("SALE"));
193
+ if (!hasToken) {
194
+ var accountInfo = elementtree_1.SubElement(block1, "AccountInfo");
195
+ elementtree_1.SubElement(accountInfo, "RoutingNumber").append(elementtree_1.CData(check.routingNumber));
196
+ elementtree_1.SubElement(accountInfo, "AccountNumber").append(elementtree_1.CData(check.accountNumber));
197
+ elementtree_1.SubElement(accountInfo, "CheckNumber").append(elementtree_1.CData(check.checkNumber));
198
+ elementtree_1.SubElement(accountInfo, "MICRData").append(elementtree_1.CData(check.micrNumber));
199
+ elementtree_1.SubElement(accountInfo, "AccountType").append(elementtree_1.CData(check.accountType.toString()));
200
+ }
201
+ else if (tokenValue) {
202
+ elementtree_1.SubElement(block1, "TokenValue").append(elementtree_1.CData(tokenValue));
203
+ }
204
+ elementtree_1.SubElement(block1, "DataEntryMode").append(elementtree_1.CData(check.entryMode.toString().toUpperCase()));
205
+ elementtree_1.SubElement(block1, "CheckType").append(elementtree_1.CData(check.checkType.toString()));
206
+ elementtree_1.SubElement(block1, "SECCode").append(elementtree_1.CData(check.secCode.toString()));
207
+ var verify = elementtree_1.SubElement(block1, "VerifyInfo");
208
+ elementtree_1.SubElement(verify, "CheckVerify").append(elementtree_1.CData(check.checkVerify ? "Y" : "N"));
209
+ elementtree_1.SubElement(verify, "ACHVerify").append(elementtree_1.CData(check.achVerify ? "Y" : "N"));
210
+ }
211
+ if (builder.paymentMethod instanceof __1.TransactionReference) {
212
+ var reference = builder.paymentMethod;
213
+ if (reference.transactionId) {
214
+ elementtree_1.SubElement(block1, "GatewayTxnId").append(elementtree_1.CData(reference.transactionId));
215
+ }
216
+ if (reference.clientTransactionId) {
217
+ elementtree_1.SubElement(block1, "ClientTxnId").append(elementtree_1.CData(reference.clientTransactionId));
218
+ }
219
+ }
220
+ if (builder.paymentMethod instanceof __1.RecurringPaymentMethod) {
221
+ var method = builder.paymentMethod;
222
+ if (method.paymentType === "ACH") {
223
+ if (allowDuplicates) {
224
+ block1.remove(allowDuplicates);
225
+ }
226
+ elementtree_1.SubElement(block1, "CheckAction").append(elementtree_1.CData("SALE"));
227
+ }
228
+ elementtree_1.SubElement(block1, "PaymentMethodKey").append(elementtree_1.CData(method.key));
229
+ if (method.paymentMethod &&
230
+ method.paymentMethod instanceof __1.CreditCardData) {
231
+ var card = method.paymentMethod;
232
+ var data = elementtree_1.SubElement(block1, "PaymentMethodKeyData");
233
+ elementtree_1.SubElement(data, "ExpMonth").append(elementtree_1.CData(card.expMonth));
234
+ elementtree_1.SubElement(data, "ExpYear").append(elementtree_1.CData(card.expYear));
235
+ elementtree_1.SubElement(data, "CVV2").append(elementtree_1.CData(card.cvn));
236
+ if (this.shouldIncludeCredentialOnFile(builder) && (builder.cardBrandTransactionId || builder.transactionInitiator)) {
237
+ block1.append(this.hydrateCredentialOnFile(builder));
238
+ }
239
+ }
240
+ var recurring = elementtree_1.SubElement(block1, "RecurringData");
241
+ elementtree_1.SubElement(recurring, "ScheduleID").append(elementtree_1.CData(builder.scheduleId));
242
+ elementtree_1.SubElement(recurring, "OneTime").append(elementtree_1.CData(builder.oneTimePayment ? "Y" : "N"));
243
+ }
244
+ if (builder.paymentMethod.isPinProtected &&
245
+ builder.transactionType !== __1.TransactionType.Reversal) {
246
+ elementtree_1.SubElement(block1, "PinBlock").append(elementtree_1.CData(builder.paymentMethod.pinBlock));
247
+ }
248
+ if (builder.paymentMethod.isEncryptable) {
249
+ var encryptionData = builder.paymentMethod
250
+ .encryptionData;
251
+ if (encryptionData) {
252
+ var enc = elementtree_1.SubElement(cardData, "EncryptionData");
253
+ if (encryptionData.version) {
254
+ elementtree_1.SubElement(enc, "Version").append(elementtree_1.CData(encryptionData.version));
255
+ }
256
+ if (encryptionData.trackNumber) {
257
+ elementtree_1.SubElement(enc, "EncryptedTrackNumber").append(elementtree_1.CData(encryptionData.trackNumber));
258
+ }
259
+ if (encryptionData.ktb) {
260
+ elementtree_1.SubElement(enc, "KTB").append(elementtree_1.CData(encryptionData.ktb));
261
+ }
262
+ if (encryptionData.ksn) {
263
+ elementtree_1.SubElement(enc, "KSN").append(elementtree_1.CData(encryptionData.ksn));
264
+ }
265
+ }
266
+ }
267
+ if (builder.paymentMethod.isTokenizable &&
268
+ builder.paymentMethod.paymentMethodType !== __1.PaymentMethodType.ACH) {
269
+ elementtree_1.SubElement(cardData, "TokenRequest").append(elementtree_1.CData(builder.requestMultiUseToken ? "Y" : "N"));
270
+ }
271
+ if (builder.paymentMethod.isBalanceable && builder.balanceInquiryType) {
272
+ elementtree_1.SubElement(block1, "BalanceInquiryType").append(elementtree_1.CData(builder.balanceInquiryType.toString()));
273
+ }
274
+ if (builder.level2Request) {
275
+ elementtree_1.SubElement(block1, "CPCReq").append(elementtree_1.CData("Y"));
276
+ }
277
+ if (builder.customerId || builder.description || builder.invoiceNumber) {
278
+ var fields = elementtree_1.SubElement(block1, "AdditionalTxnFields");
279
+ elementtree_1.SubElement(fields, "CustomerID").append(elementtree_1.CData(builder.customerId));
280
+ elementtree_1.SubElement(fields, "Description").append(elementtree_1.CData(builder.description));
281
+ elementtree_1.SubElement(fields, "InvoiceNbr").append(elementtree_1.CData(builder.invoiceNumber));
282
+ }
283
+ if (builder.ecommerceInfo) {
284
+ if (builder.ecommerceInfo.channel) {
285
+ elementtree_1.SubElement(block1, "Ecommerce").append(elementtree_1.CData(builder.ecommerceInfo.channel.toString()));
286
+ }
287
+ if (builder.invoiceNumber || builder.ecommerceInfo.shipMonth) {
288
+ var direct = elementtree_1.SubElement(block1, "DirectMktData");
289
+ elementtree_1.SubElement(direct, "DirectMktInvoiceNbr").append(elementtree_1.CData(builder.invoiceNumber));
290
+ elementtree_1.SubElement(direct, "DirectMktShipDay").append(elementtree_1.CData(builder.ecommerceInfo.shipDay));
291
+ elementtree_1.SubElement(direct, "DirectMktShipMonth").append(elementtree_1.CData(builder.ecommerceInfo.shipMonth));
292
+ }
293
+ if (builder.ecommerceInfo.cavv ||
294
+ builder.ecommerceInfo.eci ||
295
+ builder.ecommerceInfo.xid) {
296
+ var secure = elementtree_1.SubElement(block1, "SecureECommerce");
297
+ elementtree_1.SubElement(secure, "PaymentDataSource").append(elementtree_1.CData(builder.ecommerceInfo.paymentDataSource));
298
+ elementtree_1.SubElement(secure, "TypeOfPaymentData").append(elementtree_1.CData(builder.ecommerceInfo.paymentDataType));
299
+ elementtree_1.SubElement(secure, "PaymentData").append(elementtree_1.CData(builder.ecommerceInfo.cavv));
300
+ elementtree_1.SubElement(secure, "ECommerceIndicator").append(elementtree_1.CData(builder.ecommerceInfo.eci));
301
+ elementtree_1.SubElement(secure, "XID").append(elementtree_1.CData(builder.ecommerceInfo.xid));
302
+ }
303
+ }
304
+ if (builder.dynamicDescriptor) {
305
+ elementtree_1.SubElement(block1, "TxnDescriptor").append(elementtree_1.CData(builder.dynamicDescriptor));
306
+ }
307
+ return this.doTransaction(this.buildEnvelope(transaction, builder.clientTransactionId)).then(function (response) { return _this.mapResponse(response, builder); });
308
+ };
309
+ PorticoConnector.prototype.serializeRequest = function (_builder) {
310
+ throw new __1.UnsupportedTransactionError("Portico does not support hosted payments.");
311
+ };
312
+ PorticoConnector.prototype.manageTransaction = function (builder) {
313
+ var _this = this;
314
+ // build request
315
+ var transaction = elementtree_1.Element(this.mapRequestType(builder));
316
+ if (builder.transactionType !== __1.TransactionType.BatchClose) {
317
+ var root = void 0;
318
+ if (builder.transactionType === __1.TransactionType.Reversal ||
319
+ builder.transactionType === __1.TransactionType.Refund ||
320
+ builder.paymentMethod.paymentMethodType === __1.PaymentMethodType.Gift ||
321
+ builder.paymentMethod.paymentMethodType === __1.PaymentMethodType.ACH) {
322
+ root = new elementtree_1.Element("Block1");
323
+ }
324
+ else {
325
+ root = transaction;
326
+ }
327
+ // amount
328
+ if (builder.amount) {
329
+ elementtree_1.SubElement(root, "Amt").append(elementtree_1.CData(builder.amount.toString()));
330
+ }
331
+ // auth amount
332
+ if (builder.authAmount) {
333
+ elementtree_1.SubElement(root, "AuthAmt").append(elementtree_1.CData(builder.authAmount.toString()));
334
+ }
335
+ // gratuity
336
+ if (builder.gratuity) {
337
+ elementtree_1.SubElement(root, "GratuityAmtInfo").append(elementtree_1.CData(builder.gratuity.toString()));
338
+ }
339
+ if (builder.clientTransactionId) {
340
+ elementtree_1.SubElement(root, "ClientTxnId").append(elementtree_1.CData(builder.clientTransactionId));
341
+ }
342
+ // transaction ID
343
+ if (builder.paymentMethod &&
344
+ builder.paymentMethod
345
+ .transactionId) {
346
+ var ref = builder.paymentMethod;
347
+ elementtree_1.SubElement(root, "GatewayTxnId").append(elementtree_1.CData(ref.transactionId));
348
+ }
349
+ // level II Data
350
+ if (builder.transactionType === __1.TransactionType.Edit &&
351
+ builder.transactionModifier === __1.TransactionModifier.LevelII) {
352
+ var cpc = elementtree_1.SubElement(root, "CPCData");
353
+ if (builder.poNumber) {
354
+ elementtree_1.SubElement(cpc, "CardHolderPONbr").append(elementtree_1.CData(builder.poNumber));
355
+ }
356
+ if (builder.taxType) {
357
+ elementtree_1.SubElement(cpc, "TaxType").append(elementtree_1.CData(this.hydrateTaxType(builder.taxType)));
358
+ }
359
+ if (builder.taxAmount) {
360
+ elementtree_1.SubElement(cpc, "TaxAmt").append(elementtree_1.CData(builder.taxAmount.toString()));
361
+ }
362
+ }
363
+ if (builder.transactionType === __1.TransactionType.Reversal ||
364
+ builder.transactionType === __1.TransactionType.Refund ||
365
+ builder.paymentMethod.paymentMethodType === __1.PaymentMethodType.Gift ||
366
+ builder.paymentMethod.paymentMethodType === __1.PaymentMethodType.ACH) {
367
+ transaction.append(root);
368
+ }
369
+ }
370
+ return this.doTransaction(this.buildEnvelope(transaction, builder.clientTransactionId)).then(function (response) { return _this.mapResponse(response, builder); });
371
+ };
372
+ PorticoConnector.prototype.processReport = function (builder) {
373
+ var _this = this;
374
+ var transaction = elementtree_1.Element(this.mapReportRequestType(builder));
375
+ if (builder.timeZoneConversion) {
376
+ elementtree_1.SubElement(transaction, "TzConversion").append(elementtree_1.CData(builder.timeZoneConversion.toString()));
377
+ }
378
+ if (builder instanceof __1.TransactionReportBuilder) {
379
+ var trb = builder;
380
+ if (trb.deviceId) {
381
+ elementtree_1.SubElement(transaction, "DeviceId").append(elementtree_1.CData(trb.deviceId));
382
+ }
383
+ if (trb.startDate) {
384
+ elementtree_1.SubElement(transaction, "RptStartUtcDT").append(elementtree_1.CData(trb.startDate.toISOString()));
385
+ }
386
+ if (trb.endDate) {
387
+ elementtree_1.SubElement(transaction, "RptEndUtcDT").append(elementtree_1.CData(trb.endDate.toISOString()));
388
+ }
389
+ if (trb.transactionId) {
390
+ elementtree_1.SubElement(transaction, "TxnId").append(elementtree_1.CData(trb.transactionId));
391
+ }
392
+ if (trb.searchCriteria) {
393
+ var criteriaNode = elementtree_1.Element("Criteria");
394
+ for (var property in trb.searchCriteria) {
395
+ elementtree_1.SubElement(criteriaNode, property).append(elementtree_1.CData(trb.searchCriteria[property]));
396
+ }
397
+ transaction.append(criteriaNode);
398
+ }
399
+ }
400
+ return this.doTransaction(this.buildEnvelope(transaction)).then(function (response) { return _this.mapReportResponse(response, builder); });
401
+ };
402
+ PorticoConnector.prototype.buildEnvelope = function (transaction, clientTransactionId) {
403
+ var envelope = elementtree_1.Element("soap:Envelope", {
404
+ "xmlns:soap": "http://schemas.xmlsoap.org/soap/envelope/",
405
+ });
406
+ var body = elementtree_1.SubElement(envelope, "soap:Body");
407
+ var request = elementtree_1.SubElement(body, "PosRequest", {
408
+ xmlns: PorticoConnector.XmlNamespace,
409
+ });
410
+ var version1 = elementtree_1.SubElement(request, "Ver1.0");
411
+ // header
412
+ var header = elementtree_1.SubElement(version1, "Header");
413
+ if (this.secretApiKey) {
414
+ elementtree_1.SubElement(header, "SecretAPIKey").append(elementtree_1.CData(this.secretApiKey));
415
+ }
416
+ if (this.siteId) {
417
+ elementtree_1.SubElement(header, "SiteId").append(elementtree_1.CData(this.siteId));
418
+ }
419
+ if (this.licenseId) {
420
+ elementtree_1.SubElement(header, "LicenseId").append(elementtree_1.CData(this.licenseId));
421
+ }
422
+ if (this.deviceId) {
423
+ elementtree_1.SubElement(header, "DeviceId").append(elementtree_1.CData(this.deviceId));
424
+ }
425
+ if (this.username) {
426
+ elementtree_1.SubElement(header, "UserName").append(elementtree_1.CData(this.username));
427
+ }
428
+ if (this.password) {
429
+ elementtree_1.SubElement(header, "Password").append(elementtree_1.CData(this.password));
430
+ }
431
+ if (this.developerId) {
432
+ elementtree_1.SubElement(header, "DeveloperID").append(elementtree_1.CData(this.developerId));
433
+ }
434
+ if (this.versionNumber) {
435
+ elementtree_1.SubElement(header, "VersionNbr").append(elementtree_1.CData(this.versionNumber));
436
+ }
437
+ if (clientTransactionId) {
438
+ elementtree_1.SubElement(header, "ClientTxnId").append(elementtree_1.CData(clientTransactionId));
439
+ }
440
+ if (this.sdkNameVersion) {
441
+ elementtree_1.SubElement(header, "SDKNameVersion").append(elementtree_1.CData(this.sdkNameVersion));
442
+ }
443
+ else {
444
+ elementtree_1.SubElement(header, "SDKNameVersion").append(elementtree_1.CData("nodejs-version:" + process.env.npm_package_version));
445
+ }
446
+ // transaction
447
+ elementtree_1.SubElement(version1, "Transaction").append(transaction);
448
+ return new elementtree_1.ElementTree(envelope).write();
449
+ };
450
+ PorticoConnector.prototype.mapRequestType = function (builder) {
451
+ switch (builder.transactionType) {
452
+ case __1.TransactionType.BatchClose:
453
+ return "BatchClose";
454
+ case __1.TransactionType.Decline:
455
+ if (builder.transactionModifier === __1.TransactionModifier.ChipDecline) {
456
+ return "ChipCardDecline";
457
+ }
458
+ else if (builder.transactionModifier === __1.TransactionModifier.FraudDecline) {
459
+ return "OverrideFraudDecline";
460
+ }
461
+ throw new __1.UnsupportedTransactionError();
462
+ case __1.TransactionType.Verify:
463
+ if (builder.transactionModifier === __1.TransactionModifier.EncryptedMobile) {
464
+ throw new __1.UnsupportedTransactionError();
465
+ }
466
+ return "CreditAccountVerify";
467
+ case __1.TransactionType.Capture:
468
+ return "CreditAddToBatch";
469
+ case __1.TransactionType.Auth:
470
+ if (builder.paymentMethod.paymentMethodType === __1.PaymentMethodType.Credit) {
471
+ if (builder.transactionModifier === __1.TransactionModifier.Additional) {
472
+ return "CreditAdditionalAuth";
473
+ }
474
+ else if (builder.transactionModifier === __1.TransactionModifier.Incremental) {
475
+ return "CreditIncrementalAuth";
476
+ }
477
+ else if (builder.paymentMethod.paymentMethodType ===
478
+ __1.PaymentMethodType.Recurring) {
479
+ return "RecurringBillingAuth";
480
+ }
481
+ else if (builder.transactionModifier === __1.TransactionModifier.EncryptedMobile) {
482
+ throw new __1.UnsupportedTransactionError();
483
+ }
484
+ else if (builder.transactionModifier === __1.TransactionModifier.Offline) {
485
+ return "CreditOfflineAuth";
486
+ }
487
+ return "CreditAuth";
488
+ }
489
+ else if (builder.paymentMethod.paymentMethodType ===
490
+ __1.PaymentMethodType.Recurring) {
491
+ return "RecurringBillingAuth";
492
+ }
493
+ throw new __1.UnsupportedTransactionError();
494
+ case __1.TransactionType.Sale:
495
+ if (builder.paymentMethod.paymentMethodType === __1.PaymentMethodType.Credit) {
496
+ if (builder.transactionModifier === __1.TransactionModifier.Offline) {
497
+ return "CreditOfflineSale";
498
+ }
499
+ else if (builder.transactionModifier === __1.TransactionModifier.Recurring) {
500
+ return "RecurringBilling";
501
+ }
502
+ else if (builder.transactionModifier === __1.TransactionModifier.EncryptedMobile) {
503
+ throw new __1.UnsupportedTransactionError();
504
+ }
505
+ else {
506
+ return "CreditSale";
507
+ }
508
+ }
509
+ else if (builder.paymentMethod.paymentMethodType ===
510
+ __1.PaymentMethodType.Recurring) {
511
+ if (builder.paymentMethod.paymentType === "ACH") {
512
+ return "CheckSale";
513
+ }
514
+ return "RecurringBilling";
515
+ }
516
+ else if (builder.paymentMethod.paymentMethodType === __1.PaymentMethodType.Debit) {
517
+ return "DebitSale";
518
+ }
519
+ else if (builder.paymentMethod.paymentMethodType === __1.PaymentMethodType.Cash) {
520
+ return "CashSale";
521
+ }
522
+ else if (builder.paymentMethod.paymentMethodType === __1.PaymentMethodType.ACH) {
523
+ return "CheckSale";
524
+ }
525
+ else if (builder.paymentMethod.paymentMethodType === __1.PaymentMethodType.EBT) {
526
+ if (builder.transactionModifier === __1.TransactionModifier.CashBack) {
527
+ return "EBTCashBackPurchase";
528
+ }
529
+ else if (builder.transactionModifier === __1.TransactionModifier.Voucher) {
530
+ return "EBTVoucherPurchase";
531
+ }
532
+ else {
533
+ return "EBTFSPurchase";
534
+ }
535
+ }
536
+ else if (builder.paymentMethod.paymentMethodType === __1.PaymentMethodType.Gift) {
537
+ return "GiftCardSale";
538
+ }
539
+ throw new __1.UnsupportedTransactionError();
540
+ case __1.TransactionType.Refund:
541
+ if (builder.paymentMethod.paymentMethodType === __1.PaymentMethodType.Credit) {
542
+ return "CreditReturn";
543
+ }
544
+ else if (builder.paymentMethod.paymentMethodType === __1.PaymentMethodType.Debit) {
545
+ if (builder.paymentMethod instanceof __1.TransactionReference) {
546
+ throw new __1.UnsupportedTransactionError();
547
+ }
548
+ return "DebitReturn";
549
+ }
550
+ else if (builder.paymentMethod.paymentMethodType === __1.PaymentMethodType.Cash) {
551
+ return "CashReturn";
552
+ }
553
+ else if (builder.paymentMethod.paymentMethodType === __1.PaymentMethodType.EBT) {
554
+ if (builder.paymentMethod instanceof __1.TransactionReference) {
555
+ throw new __1.UnsupportedTransactionError();
556
+ }
557
+ return "EBTFSReturn";
558
+ }
559
+ throw new __1.UnsupportedTransactionError();
560
+ case __1.TransactionType.Reversal:
561
+ if (builder.paymentMethod.paymentMethodType === __1.PaymentMethodType.Credit) {
562
+ return "CreditReversal";
563
+ }
564
+ else if (builder.paymentMethod.paymentMethodType === __1.PaymentMethodType.Debit) {
565
+ if (builder.paymentMethod instanceof __1.TransactionReference) {
566
+ throw new __1.UnsupportedTransactionError();
567
+ }
568
+ return "DebitReversal";
569
+ }
570
+ else if (builder.paymentMethod.paymentMethodType === __1.PaymentMethodType.Gift) {
571
+ return "GiftCardReversal";
572
+ }
573
+ throw new __1.UnsupportedTransactionError();
574
+ case __1.TransactionType.Edit:
575
+ if (builder.transactionModifier === __1.TransactionModifier.LevelII) {
576
+ return "CreditCPCEdit";
577
+ }
578
+ return "CreditTxnEdit";
579
+ case __1.TransactionType.Void:
580
+ if (builder.paymentMethod.paymentMethodType === __1.PaymentMethodType.Credit) {
581
+ return "CreditVoid";
582
+ }
583
+ else if (builder.paymentMethod.paymentMethodType === __1.PaymentMethodType.ACH) {
584
+ return "CheckVoid";
585
+ }
586
+ else if (builder.paymentMethod.paymentMethodType === __1.PaymentMethodType.Gift) {
587
+ return "GiftCardVoid";
588
+ }
589
+ throw new __1.UnsupportedTransactionError();
590
+ case __1.TransactionType.AddValue:
591
+ if (builder.paymentMethod.paymentMethodType === __1.PaymentMethodType.Credit) {
592
+ return "PrePaidAddValue";
593
+ }
594
+ else if (builder.paymentMethod.paymentMethodType === __1.PaymentMethodType.Debit) {
595
+ return "DebitAddValue";
596
+ }
597
+ else if (builder.paymentMethod.paymentMethodType === __1.PaymentMethodType.Gift) {
598
+ return "GiftCardAddValue";
599
+ }
600
+ throw new __1.UnsupportedTransactionError();
601
+ case __1.TransactionType.Balance:
602
+ if (builder.paymentMethod.paymentMethodType === __1.PaymentMethodType.Credit) {
603
+ return "PrePaidBalanceInquiry";
604
+ }
605
+ else if (builder.paymentMethod.paymentMethodType === __1.PaymentMethodType.EBT) {
606
+ return "EBTBalanceInquiry";
607
+ }
608
+ else if (builder.paymentMethod.paymentMethodType === __1.PaymentMethodType.Gift) {
609
+ return "GiftCardBalance";
610
+ }
611
+ throw new __1.UnsupportedTransactionError();
612
+ case __1.TransactionType.BenefitWithDrawal:
613
+ return "EBTCashBenefitWithdrawal";
614
+ case __1.TransactionType.Activate:
615
+ return "GiftCardActivate";
616
+ case __1.TransactionType.Alias:
617
+ return "GiftCardAlias";
618
+ case __1.TransactionType.Deactivate:
619
+ return "GiftCardDeactivate";
620
+ case __1.TransactionType.Replace:
621
+ return "GiftCardReplace";
622
+ case __1.TransactionType.Reward:
623
+ return "GiftCardReward";
624
+ default:
625
+ break;
626
+ }
627
+ throw new __1.NotImplementedError();
628
+ };
629
+ PorticoConnector.prototype.mapReportRequestType = function (builder) {
630
+ switch (builder.reportType) {
631
+ case __1.ReportType.Activity:
632
+ return "ReportActivity";
633
+ case __1.ReportType.TransactionDetail:
634
+ return "ReportTxnDetail";
635
+ case __1.ReportType.FindTransactions:
636
+ return "FindTransactions";
637
+ default:
638
+ throw new __1.UnsupportedTransactionError();
639
+ }
640
+ };
641
+ PorticoConnector.prototype.mapResponse = function (rawResponse, builder) {
642
+ var result = new __1.Transaction();
643
+ var root = elementtree_1.XML(rawResponse).find(".//PosResponse");
644
+ var acceptedCodes = ["00", "0", "85", "10"];
645
+ var gatewayRspCode = this.normalizeResponse(root.findtext(".//GatewayRspCode"));
646
+ var gatewayRspText = root.findtext(".//GatewayRspMsg");
647
+ if (acceptedCodes.indexOf(gatewayRspCode) === -1) {
648
+ throw new __1.GatewayError("Unexpected Gateway Response: " + gatewayRspCode + " - " + gatewayRspText);
649
+ }
650
+ result.responseCode = root.findtext(".//RspCode")
651
+ ? this.normalizeResponse(root.findtext(".//RspCode"))
652
+ : gatewayRspCode;
653
+ result.responseMessage = root.findtext(".//RspText")
654
+ ? root.findtext(".//RspText")
655
+ : gatewayRspText;
656
+ result.authorizedAmount = root.findtext(".//AuthAmt");
657
+ result.availableBalance = root.findtext(".//AvailableBalance");
658
+ result.avsResponseCode = root.findtext(".//AVSRsltCode");
659
+ result.avsResponseMessage = root.findtext(".//AVSRsltText");
660
+ result.balanceAmount = root.findtext(".//BalanceAmt");
661
+ result.cardType = root.findtext(".//CardType");
662
+ result.cardLast4 = root.findtext(".//TokenPANLast4");
663
+ result.cavvResponseCode = root.findtext(".//CAVVResultCode");
664
+ result.commercialIndicator = root.findtext(".//CPCInd");
665
+ result.cvnResponseCode = root.findtext(".//CVVRsltCode");
666
+ result.cvnResponseMessage = root.findtext(".//CVVRsltText");
667
+ result.pointsBalanceAmount = root.findtext(".//PointsBalanceAmt");
668
+ result.recurringDataCode = root.findtext(".//RecurringDataCode");
669
+ result.referenceNumber = root.findtext(".//RefNbr");
670
+ result.transactionDescriptor = root.findtext(".//TxnDescriptor");
671
+ result.cardBrandTransactionId = root.findtext(".//CardBrandTxnId");
672
+ if (builder.paymentMethod) {
673
+ result.transactionReference = new __1.TransactionReference(root.findtext(".//GatewayTxnId"));
674
+ result.transactionReference.paymentMethodType =
675
+ builder.paymentMethod.paymentMethodType;
676
+ }
677
+ if (root.findtext(".//AuthCode")) {
678
+ result.transactionReference =
679
+ result.transactionReference || new __1.TransactionReference();
680
+ result.transactionReference.authCode = root.findtext(".//AuthCode");
681
+ }
682
+ if (root.find(".//TokenData") &&
683
+ root.find(".//TokenData").findtext(".//TokenValue")) {
684
+ var tokenData = root.find(".//TokenData");
685
+ result.token = tokenData.findtext(".//TokenValue");
686
+ }
687
+ if (root.find(".//CardData")) {
688
+ var cardData = root.find(".//CardData");
689
+ result.giftCard = new __1.GiftCard();
690
+ result.giftCard.number = cardData.findtext(".//CardNbr");
691
+ result.giftCard.alias = cardData.findtext(".//Alias");
692
+ result.giftCard.pin = cardData.findtext(".//PIN");
693
+ }
694
+ if (root.find(".//BatchId")) {
695
+ result.batchId = root.findtext(".//BatchId");
696
+ result.batchSeqNbr = root.findtext(".//BatchSeqNbr");
697
+ }
698
+ return result;
699
+ };
700
+ PorticoConnector.prototype.mapReportResponse = function (rawResponse, builder) {
701
+ // todo: handle non-200 responses
702
+ var posResponse = elementtree_1.XML(rawResponse).find(".//PosResponse");
703
+ var doc = posResponse.find(".//" + this.mapReportRequestType(builder));
704
+ var result;
705
+ if (builder.reportType === __1.ReportType.Activity) {
706
+ result = doc
707
+ .findall(".//Details")
708
+ .map(this.hydrateTransactionSummary.bind(this));
709
+ }
710
+ if (builder.reportType === __1.ReportType.FindTransactions) {
711
+ result = doc
712
+ .findall(".//Transactions")
713
+ .map(this.hydrateTransactionSummary.bind(this));
714
+ }
715
+ else if (builder.reportType === __1.ReportType.TransactionDetail) {
716
+ result = this.hydrateTransactionSummary(doc);
717
+ }
718
+ return result;
719
+ };
720
+ PorticoConnector.prototype.normalizeResponse = function (input) {
721
+ if (["0", "85"].indexOf(input) !== -1) {
722
+ input = "00";
723
+ }
724
+ return input;
725
+ };
726
+ PorticoConnector.prototype.hasToken = function (paymentMethod) {
727
+ var tokenizable = paymentMethod;
728
+ if (tokenizable.token) {
729
+ return {
730
+ hasToken: true,
731
+ tokenValue: tokenizable.token,
732
+ };
733
+ }
734
+ return {
735
+ hasToken: false,
736
+ tokenValue: "",
737
+ };
738
+ };
739
+ PorticoConnector.prototype.hydrateAccountType = function (type) {
740
+ switch (type) {
741
+ case __1.AccountType.Checking:
742
+ return "CHECKING";
743
+ case __1.AccountType.Savings:
744
+ return "SAVINGS";
745
+ default:
746
+ return "";
747
+ }
748
+ };
749
+ PorticoConnector.prototype.hydrateCheckType = function (type) {
750
+ switch (type) {
751
+ case __1.CheckType.Business:
752
+ return "BUSINESS";
753
+ case __1.CheckType.Payroll:
754
+ return "PAYROLL";
755
+ case __1.CheckType.Personal:
756
+ return "PERSONAL";
757
+ default:
758
+ return "";
759
+ }
760
+ };
761
+ PorticoConnector.prototype.hydrateCredentialOnFile = function (builder) {
762
+ var cof = new elementtree_1.Element("CardOnFileData");
763
+ if (builder.transactionInitiator) {
764
+ elementtree_1.SubElement(cof, "CardOnFile").append(elementtree_1.CData(builder.transactionInitiator));
765
+ }
766
+ if (builder.cardBrandTransactionId) {
767
+ elementtree_1.SubElement(cof, "CardBrandTxnId").append(elementtree_1.CData(builder.cardBrandTransactionId));
768
+ }
769
+ return cof;
770
+ };
771
+ PorticoConnector.prototype.hydrateEncryptionData = function (builder) {
772
+ var enc = new elementtree_1.Element("EncryptionData");
773
+ var data = builder.paymentMethod
774
+ .encryptionData;
775
+ if (data.version) {
776
+ elementtree_1.SubElement(enc, "Version").append(elementtree_1.CData(data.version));
777
+ }
778
+ if (data.trackNumber) {
779
+ elementtree_1.SubElement(enc, "TrackNumber").append(elementtree_1.CData(data.trackNumber));
780
+ }
781
+ if (data.ktb) {
782
+ elementtree_1.SubElement(enc, "KTB").append(elementtree_1.CData(data.ktb));
783
+ }
784
+ if (data.ksn) {
785
+ elementtree_1.SubElement(enc, "KSN").append(elementtree_1.CData(data.ksn));
786
+ }
787
+ return enc;
788
+ };
789
+ PorticoConnector.prototype.hydrateEntryMethod = function (method) {
790
+ switch (method) {
791
+ case __1.EntryMethod.Manual:
792
+ return "Manual";
793
+ case __1.EntryMethod.Proximity:
794
+ return "Proximity";
795
+ case __1.EntryMethod.Swipe:
796
+ return "Swipe";
797
+ default:
798
+ return "";
799
+ }
800
+ };
801
+ PorticoConnector.prototype.hydrateHolder = function (builder, isCheck) {
802
+ var holder = new elementtree_1.Element(isCheck ? "ConsumerInfo" : "CardHolderData");
803
+ elementtree_1.SubElement(holder, isCheck ? "Address1" : "CardHolderAddr").append(elementtree_1.CData(builder.billingAddress.streetAddress1));
804
+ elementtree_1.SubElement(holder, isCheck ? "City" : "CardHolderCity").append(elementtree_1.CData(builder.billingAddress.city));
805
+ elementtree_1.SubElement(holder, isCheck ? "State" : "CardHolderState").append(elementtree_1.CData(builder.billingAddress.province));
806
+ elementtree_1.SubElement(holder, isCheck ? "Zip" : "CardHolderZip").append(elementtree_1.CData(builder.billingAddress.postalCode));
807
+ if (isCheck) {
808
+ var check = builder.paymentMethod;
809
+ if (check.checkName) {
810
+ var names = check.checkName.split(" ", 2);
811
+ elementtree_1.SubElement(holder, "FirstName").append(elementtree_1.CData(names[0]));
812
+ if (names[1]) {
813
+ elementtree_1.SubElement(holder, "LastName").append(elementtree_1.CData(names[1]));
814
+ }
815
+ elementtree_1.SubElement(holder, "CheckName").append(elementtree_1.CData(check.checkName));
816
+ }
817
+ if (check.phoneNumber) {
818
+ elementtree_1.SubElement(holder, "PhoneNumber").append(elementtree_1.CData(check.phoneNumber));
819
+ }
820
+ if (check.driversLicenseNumber) {
821
+ elementtree_1.SubElement(holder, "DLNumber").append(elementtree_1.CData(check.driversLicenseNumber));
822
+ }
823
+ if (check.driversLicenseState) {
824
+ elementtree_1.SubElement(holder, "DLState").append(elementtree_1.CData(check.driversLicenseState));
825
+ }
826
+ if (check.ssnLast4 || check.birthYear) {
827
+ var identity = elementtree_1.SubElement(holder, "IdentityInfo");
828
+ elementtree_1.SubElement(identity, "SSNL4").append(elementtree_1.CData(check.ssnLast4));
829
+ elementtree_1.SubElement(identity, "DOBYear").append(elementtree_1.CData(check.birthYear));
830
+ }
831
+ }
832
+ return holder;
833
+ };
834
+ PorticoConnector.prototype.hydrateInquiryType = function (type) {
835
+ switch (type) {
836
+ case __1.InquiryType.Cash:
837
+ return "CASH";
838
+ case __1.InquiryType.Foodstamp:
839
+ return "FOODSTAMP";
840
+ case __1.InquiryType.Points:
841
+ return "POINTS";
842
+ case __1.InquiryType.Standard:
843
+ return "STANDARD";
844
+ default:
845
+ return "";
846
+ }
847
+ };
848
+ PorticoConnector.prototype.hydrateManualEntry = function (block1, builder, hasToken, tokenValue) {
849
+ var me = new elementtree_1.Element(hasToken ? "TokenData" : "ManualEntry");
850
+ var card;
851
+ if (builder.paymentMethod instanceof __1.CreditCardData) {
852
+ card = builder.paymentMethod;
853
+ }
854
+ else {
855
+ card = builder.paymentMethod;
856
+ }
857
+ if (builder.cardBrandTransactionId || builder.transactionInitiator) {
858
+ block1.append(this.hydrateCredentialOnFile(builder));
859
+ }
860
+ if (card.number || hasToken) {
861
+ elementtree_1.SubElement(me, hasToken ? "TokenValue" : "CardNbr").append(elementtree_1.CData(hasToken ? tokenValue : card.number));
862
+ }
863
+ if (card.expMonth) {
864
+ elementtree_1.SubElement(me, "ExpMonth").append(elementtree_1.CData(card.expMonth));
865
+ }
866
+ if (card.expYear) {
867
+ elementtree_1.SubElement(me, "ExpYear").append(elementtree_1.CData(card.expYear));
868
+ }
869
+ if (card.cvn) {
870
+ elementtree_1.SubElement(me, "CVV2").append(elementtree_1.CData(card.cvn));
871
+ }
872
+ elementtree_1.SubElement(me, "ReaderPresent").append(elementtree_1.CData(card.readerPresent ? "Y" : "N"));
873
+ elementtree_1.SubElement(me, "CardPresent").append(elementtree_1.CData(card.cardPresent ? "Y" : "N"));
874
+ if (builder.transactionModifier === __1.TransactionModifier.Recurring) {
875
+ var recurring = elementtree_1.SubElement(block1, "RecurringData");
876
+ elementtree_1.SubElement(recurring, "ScheduleID").append(elementtree_1.CData(builder.scheduleId));
877
+ elementtree_1.SubElement(recurring, "OneTime").append(elementtree_1.CData(builder.oneTimePayment ? "Y" : "N"));
878
+ }
879
+ return me;
880
+ };
881
+ PorticoConnector.prototype.hydrateSecCode = function (code) {
882
+ switch (code) {
883
+ case __1.SecCode.CCD:
884
+ return "CCD";
885
+ case __1.SecCode.PPD:
886
+ return "PPD";
887
+ case __1.SecCode.POP:
888
+ return "POP";
889
+ case __1.SecCode.WEB:
890
+ return "WEB";
891
+ case __1.SecCode.TEL:
892
+ return "TEL";
893
+ case __1.SecCode.EBronze:
894
+ return "EBRONZE";
895
+ default:
896
+ return "";
897
+ }
898
+ };
899
+ PorticoConnector.prototype.hydrateTaxType = function (type) {
900
+ switch (type) {
901
+ case __1.TaxType.NotUsed:
902
+ return "NOTUSED";
903
+ case __1.TaxType.SalesTax:
904
+ return "SALESTAX";
905
+ case __1.TaxType.TaxExempt:
906
+ return "TAXEXEMPT";
907
+ default:
908
+ return "";
909
+ }
910
+ };
911
+ PorticoConnector.prototype.hydrateTrackData = function (builder, hasToken, tokenValue) {
912
+ var trackData = new elementtree_1.Element(hasToken ? "TokenValue" : "TrackData");
913
+ if (hasToken) {
914
+ elementtree_1.SubElement(trackData, "TokenValue").append(elementtree_1.CData(tokenValue));
915
+ return trackData;
916
+ }
917
+ var track;
918
+ if (builder.paymentMethod instanceof __1.CreditTrackData) {
919
+ track = builder.paymentMethod;
920
+ }
921
+ else if (builder.paymentMethod instanceof __1.DebitTrackData) {
922
+ track = builder.paymentMethod;
923
+ }
924
+ else {
925
+ track = builder.paymentMethod;
926
+ }
927
+ trackData.append(elementtree_1.CData(track.value));
928
+ if (track.paymentMethodType !== __1.PaymentMethodType.Debit) {
929
+ trackData.set("method", track.entryMethod === __1.EntryMethod.Swipe ? "swipe" : "proximity");
930
+ }
931
+ return trackData;
932
+ };
933
+ PorticoConnector.prototype.hydrateTransactionSummary = function (root) {
934
+ var result = new __1.TransactionSummary();
935
+ result.accountDataSource = root.findtext(".//AcctDataSrc");
936
+ result.amount = root.findtext(".//Amt");
937
+ result.authorizedAmount = root.findtext(".//AuthAmt");
938
+ result.authCode = root.findtext(".//AuthCode");
939
+ result.batchCloseDate = new Date(root.findtext(".//BatchCloseDT"));
940
+ result.batchSequenceNumber = root.findtext(".//BatchSeqNbr");
941
+ result.cardSwiped = root.findtext(".//CardSwiped");
942
+ result.cardType = root.findtext(".//CardType");
943
+ result.clerkId = root.findtext(".//ClerkID");
944
+ result.clientTransactionId = root.findtext(".//ClientTxnId");
945
+ result.convenienceAmt = root.findtext(".//ConvenienceAmtInfo");
946
+ result.deviceId = root.findtext(".//DeviceId");
947
+ result.gratuityAmount = root.findtext(".//GratuityAmtInfo");
948
+ result.issuerResponseCode = this.normalizeResponse(root.findtext(".//IssuerRspCode"));
949
+ result.issuerResponseMessage = root.findtext(".//IssuerRspText");
950
+ result.issuerTransactionId = root.findtext(".//IssTxnId");
951
+ result.maskedCardNumber = root.findtext(".//MaskedCardNbr");
952
+ result.gatewayResponseCode = this.normalizeResponse(root.findtext(".//GatewayRspCode"));
953
+ result.gatewayResponseMessage = root.findtext(".//GatewayRspMsg");
954
+ result.originalTransactionId = root.findtext(".//OriginalGatewayTxnId");
955
+ result.paymentType = root.findtext(".//PaymentType");
956
+ result.poNumber = root.findtext(".//CardHolderPONbr");
957
+ result.referenceNumber = root.findtext(".//RefNbr");
958
+ result.responseDate = new Date(root.findtext(".//RspDT"));
959
+ result.serviceName = root.findtext(".//ServiceName");
960
+ result.settlementAmount = root.findtext(".//SettlementAmt");
961
+ result.shippingAmt = root.findtext(".//ShippingAmtInfo");
962
+ result.siteTrace = root.findtext(".//SiteTrace");
963
+ result.status = root.findtext(".//TxnStatus");
964
+ result.taxAmount = root.findtext(".//TaxAmtInfo");
965
+ result.taxType = root.findtext(".//TaxType");
966
+ result.transactionDate = new Date(root.findtext(".//TxnUtcDT"));
967
+ result.transactionId = root.findtext(".//GatewayTxnId");
968
+ result.username = root.findtext(".//UserName");
969
+ result.description = root.findtext(".//Description");
970
+ result.invoiceNumber = root.findtext(".//InvoiceNbr");
971
+ result.customerId = root.findtext(".//CustomerID");
972
+ result.uniqueDeviceId = root.findtext(".//UniqueDeviceId");
973
+ result.transactionDescriptor = root.findtext(".//TxnDescriptor");
974
+ result.giftCurrency = root.findtext(".//GiftCurrency");
975
+ result.maskedAlias = root.findtext(".//GiftMaskedAlias");
976
+ result.paymentMethodKey = root.findtext(".//PaymentMethodKey");
977
+ result.scheduleId = root.findtext(".//ScheduleID");
978
+ result.oneTimePayment = root.findtext(".//OneTime");
979
+ result.recurringDataCode = root.findtext(".//RecurringDataCode");
980
+ result.surchargeAmount = root.findtext(".//SurchargeAmtInfo");
981
+ result.fraudRuleInfo = root.findtext(".//FraudInfoRule");
982
+ result.repeatCount = root.findtext(".//RepeatCount");
983
+ result.emvChipCondition = root.findtext(".//EMVChipCondition");
984
+ result.hasEmvTags = root.findtext(".//HasEMVTag");
985
+ result.hasEcomPaymentData = root.findtext(".//HasEComPaymentData");
986
+ result.cavvResponseCode = root.findtext(".//CAVVResultCode");
987
+ result.tokenPanLastFour = root.findtext(".//TokenPANLast4");
988
+ result.companyName = root.findtext(".//Company");
989
+ result.customerFirstName = root.findtext(".//CustomerFirstname");
990
+ result.customerLastName = root.findtext(".//CustomerLastname");
991
+ result.debtRepaymentIndicator = root.findtext(".//DebtRepaymentIndicator");
992
+ result.captureAmount = root.findtext(".//CaptureAmtInfo");
993
+ result.fullyCaptured = root.findtext(".//FullyCapturedInd");
994
+ return result;
995
+ };
996
+ PorticoConnector.prototype.shouldIncludeCredentialOnFile = function (builder) {
997
+ if ([
998
+ __1.TransactionType.Auth,
999
+ __1.TransactionType.Refund,
1000
+ __1.TransactionType.Sale,
1001
+ __1.TransactionType.Verify,
1002
+ ].indexOf(builder.transactionType) !== -1) {
1003
+ return true;
1004
+ }
1005
+ return false;
1006
+ };
1007
+ PorticoConnector.prototype.isAppleOrGooglePay = function (paymentDataSource) {
1008
+ return paymentDataSource == __1.PaymentDataSourceType.APPLEPAY
1009
+ || paymentDataSource == __1.PaymentDataSourceType.APPLEPAYAPP
1010
+ || paymentDataSource == __1.PaymentDataSourceType.APPLEPAYWEB
1011
+ || paymentDataSource == __1.PaymentDataSourceType.GOOGLEPAYAPP
1012
+ || paymentDataSource == __1.PaymentDataSourceType.GOOGLEPAYWEB;
1013
+ };
1014
+ PorticoConnector.XmlNamespace = "http://Hps.Exchange.PosGateway";
1015
+ return PorticoConnector;
1016
+ }(XmlGateway_1.XmlGateway));
1017
+ exports.PorticoConnector = PorticoConnector;
1018
+ //# sourceMappingURL=PorticoConnector.js.map