activemerchant 1.43.3 → 1.44.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (326) hide show
  1. checksums.yaml +4 -4
  2. checksums.yaml.gz.sig +0 -0
  3. data.tar.gz.sig +0 -0
  4. data/CHANGELOG +133 -3
  5. data/CONTRIBUTORS +25 -0
  6. data/README.md +14 -39
  7. data/lib/active_merchant.rb +43 -2
  8. data/lib/active_merchant/billing.rb +3 -1
  9. data/lib/active_merchant/billing/base.rb +10 -2
  10. data/lib/active_merchant/billing/check.rb +29 -22
  11. data/lib/active_merchant/billing/compatibility.rb +120 -0
  12. data/lib/active_merchant/billing/credit_card.rb +129 -60
  13. data/lib/active_merchant/billing/credit_card_formatting.rb +4 -1
  14. data/lib/active_merchant/billing/credit_card_methods.rb +60 -43
  15. data/lib/active_merchant/billing/cvv_result.rb +15 -15
  16. data/lib/active_merchant/billing/gateway.rb +46 -11
  17. data/lib/active_merchant/billing/gateways/adyen.rb +205 -0
  18. data/lib/active_merchant/billing/gateways/app55.rb +1 -9
  19. data/lib/active_merchant/billing/gateways/authorize_net.rb +7 -391
  20. data/lib/active_merchant/billing/gateways/authorize_net_arb.rb +417 -0
  21. data/lib/active_merchant/billing/gateways/authorize_net_cim.rb +20 -4
  22. data/lib/active_merchant/billing/gateways/balanced.rb +127 -367
  23. data/lib/active_merchant/billing/gateways/barclays_epdq.rb +1 -1
  24. data/lib/active_merchant/billing/gateways/beanstream.rb +25 -6
  25. data/lib/active_merchant/billing/gateways/beanstream/beanstream_core.rb +3 -3
  26. data/lib/active_merchant/billing/gateways/blue_pay.rb +11 -3
  27. data/lib/active_merchant/billing/gateways/bogus.rb +1 -13
  28. data/lib/active_merchant/billing/gateways/borgun.rb +211 -0
  29. data/lib/active_merchant/billing/gateways/braintree_blue.rb +31 -13
  30. data/lib/active_merchant/billing/gateways/bridge_pay.rb +7 -0
  31. data/lib/active_merchant/billing/gateways/cashnet.rb +184 -0
  32. data/lib/active_merchant/billing/gateways/cc5.rb +45 -0
  33. data/lib/active_merchant/billing/gateways/certo_direct.rb +3 -2
  34. data/lib/active_merchant/billing/gateways/commercegate.rb +143 -0
  35. data/lib/active_merchant/billing/gateways/conekta.rb +56 -81
  36. data/lib/active_merchant/billing/gateways/cyber_source.rb +1 -0
  37. data/lib/active_merchant/billing/gateways/data_cash.rb +3 -1
  38. data/lib/active_merchant/billing/gateways/efsnet.rb +3 -14
  39. data/lib/active_merchant/billing/gateways/elavon.rb +45 -9
  40. data/lib/active_merchant/billing/gateways/epay.rb +2 -2
  41. data/lib/active_merchant/billing/gateways/eway.rb +1 -12
  42. data/lib/active_merchant/billing/gateways/eway_managed.rb +1 -1
  43. data/lib/active_merchant/billing/gateways/eway_rapid.rb +233 -202
  44. data/lib/active_merchant/billing/gateways/exact.rb +1 -1
  45. data/lib/active_merchant/billing/gateways/fat_zebra.rb +1 -1
  46. data/lib/active_merchant/billing/gateways/federated_canada.rb +1 -8
  47. data/lib/active_merchant/billing/gateways/finansbank.rb +2 -1
  48. data/lib/active_merchant/billing/gateways/first_pay.rb +108 -124
  49. data/lib/active_merchant/billing/gateways/firstdata_e4.rb +43 -13
  50. data/lib/active_merchant/billing/gateways/garanti.rb +2 -2
  51. data/lib/active_merchant/billing/gateways/hps.rb +281 -0
  52. data/lib/active_merchant/billing/gateways/iats_payments.rb +2 -2
  53. data/lib/active_merchant/billing/gateways/ideal/ideal_base.rb +1 -4
  54. data/lib/active_merchant/billing/gateways/inspire.rb +0 -8
  55. data/lib/active_merchant/billing/gateways/iridium.rb +25 -3
  56. data/lib/active_merchant/billing/gateways/jetpay.rb +1 -1
  57. data/lib/active_merchant/billing/gateways/linkpoint.rb +4 -13
  58. data/lib/active_merchant/billing/gateways/litle.rb +10 -4
  59. data/lib/active_merchant/billing/gateways/maxipago.rb +7 -0
  60. data/lib/active_merchant/billing/gateways/merchant_e_solutions.rb +0 -6
  61. data/lib/active_merchant/billing/gateways/merchant_ware.rb +4 -11
  62. data/lib/active_merchant/billing/gateways/merchant_ware_version_four.rb +3 -10
  63. data/lib/active_merchant/billing/gateways/mercury.rb +0 -7
  64. data/lib/active_merchant/billing/gateways/metrics_global.rb +1 -20
  65. data/lib/active_merchant/billing/gateways/migs.rb +1 -1
  66. data/lib/active_merchant/billing/gateways/moneris.rb +29 -21
  67. data/lib/active_merchant/billing/gateways/moneris_us.rb +1 -11
  68. data/lib/active_merchant/billing/gateways/money_movers.rb +1 -8
  69. data/lib/active_merchant/billing/gateways/nab_transact.rb +16 -15
  70. data/lib/active_merchant/billing/gateways/net_registry.rb +1 -1
  71. data/lib/active_merchant/billing/gateways/netbilling.rb +0 -7
  72. data/lib/active_merchant/billing/gateways/network_merchants.rb +21 -18
  73. data/lib/active_merchant/billing/gateways/ogone.rb +3 -3
  74. data/lib/active_merchant/billing/gateways/openpay.rb +1 -8
  75. data/lib/active_merchant/billing/gateways/optimal_payment.rb +34 -23
  76. data/lib/active_merchant/billing/gateways/orbital.rb +121 -4
  77. data/lib/active_merchant/billing/gateways/orbital/orbital_soft_descriptors.rb +22 -21
  78. data/lib/active_merchant/billing/gateways/pac_net_raven.rb +2 -9
  79. data/lib/active_merchant/billing/gateways/pago_facil.rb +122 -0
  80. data/lib/active_merchant/billing/gateways/pay_junction.rb +3 -13
  81. data/lib/active_merchant/billing/gateways/pay_secure.rb +0 -7
  82. data/lib/active_merchant/billing/gateways/paybox_direct.rb +1 -9
  83. data/lib/active_merchant/billing/gateways/payex.rb +1 -1
  84. data/lib/active_merchant/billing/gateways/payflow.rb +7 -1
  85. data/lib/active_merchant/billing/gateways/payflow/payflow_common_api.rb +15 -15
  86. data/lib/active_merchant/billing/gateways/payflow_express.rb +19 -19
  87. data/lib/active_merchant/billing/gateways/payment_express.rb +1 -1
  88. data/lib/active_merchant/billing/gateways/paymill.rb +7 -2
  89. data/lib/active_merchant/billing/gateways/paypal.rb +25 -14
  90. data/lib/active_merchant/billing/gateways/paypal/paypal_common_api.rb +1 -1
  91. data/lib/active_merchant/billing/gateways/paypal/paypal_recurring_api.rb +16 -2
  92. data/lib/active_merchant/billing/gateways/paypal_digital_goods.rb +3 -2
  93. data/lib/active_merchant/billing/gateways/paypal_express.rb +25 -0
  94. data/lib/active_merchant/billing/gateways/payscout.rb +1 -8
  95. data/lib/active_merchant/billing/gateways/pin.rb +39 -7
  96. data/lib/active_merchant/billing/gateways/plugnpay.rb +1 -12
  97. data/lib/active_merchant/billing/gateways/psigate.rb +1 -12
  98. data/lib/active_merchant/billing/gateways/qbms.rb +1 -1
  99. data/lib/active_merchant/billing/gateways/quantum.rb +2 -2
  100. data/lib/active_merchant/billing/gateways/quickpay.rb +17 -15
  101. data/lib/active_merchant/billing/gateways/realex.rb +3 -12
  102. data/lib/active_merchant/billing/gateways/sage.rb +1 -1
  103. data/lib/active_merchant/billing/gateways/sage/sage_bankcard.rb +2 -8
  104. data/lib/active_merchant/billing/gateways/sage/sage_core.rb +1 -1
  105. data/lib/active_merchant/billing/gateways/sage/sage_virtual_check.rb +1 -1
  106. data/lib/active_merchant/billing/gateways/sage_pay.rb +93 -28
  107. data/lib/active_merchant/billing/gateways/secure_net.rb +1 -8
  108. data/lib/active_merchant/billing/gateways/secure_pay_au.rb +3 -3
  109. data/lib/active_merchant/billing/gateways/secure_pay_tech.rb +0 -7
  110. data/lib/active_merchant/billing/gateways/skip_jack.rb +1 -2
  111. data/lib/active_merchant/billing/gateways/smart_ps.rb +8 -2
  112. data/lib/active_merchant/billing/gateways/spreedly_core.rb +2 -1
  113. data/lib/active_merchant/billing/gateways/stripe.rb +14 -15
  114. data/lib/active_merchant/billing/gateways/swipe_checkout.rb +0 -1
  115. data/lib/active_merchant/billing/gateways/trust_commerce.rb +4 -9
  116. data/lib/active_merchant/billing/gateways/usa_epay_advanced.rb +46 -43
  117. data/lib/active_merchant/billing/gateways/usa_epay_transaction.rb +7 -0
  118. data/lib/active_merchant/billing/gateways/verifi.rb +1 -8
  119. data/lib/active_merchant/billing/gateways/viaklix.rb +0 -6
  120. data/lib/active_merchant/billing/gateways/vindicia.rb +68 -44
  121. data/lib/active_merchant/billing/gateways/webpay.rb +1 -9
  122. data/lib/active_merchant/billing/gateways/wirecard.rb +117 -11
  123. data/lib/active_merchant/billing/gateways/worldpay.rb +50 -22
  124. data/lib/active_merchant/billing/gateways/worldpay_us.rb +181 -0
  125. data/lib/active_merchant/billing/model.rb +30 -0
  126. data/lib/active_merchant/billing/rails.rb +3 -0
  127. data/lib/active_merchant/billing/response.rb +20 -15
  128. data/lib/active_merchant/country.rb +327 -0
  129. data/lib/active_merchant/empty.rb +20 -0
  130. data/lib/active_merchant/errors.rb +29 -0
  131. data/lib/active_merchant/offsite_payments_shim.rb +19 -0
  132. data/lib/active_merchant/version.rb +1 -1
  133. metadata +60 -243
  134. metadata.gz.sig +0 -0
  135. data/gem-public_cert.pem +0 -21
  136. data/lib/active_merchant/billing/expiry_date.rb +0 -34
  137. data/lib/active_merchant/billing/gateways/orbital/avs_result.rb +0 -93
  138. data/lib/active_merchant/billing/gateways/orbital/cvv_result.rb +0 -34
  139. data/lib/active_merchant/billing/integrations.rb +0 -17
  140. data/lib/active_merchant/billing/integrations/a1agregator.rb +0 -26
  141. data/lib/active_merchant/billing/integrations/a1agregator/helper.rb +0 -31
  142. data/lib/active_merchant/billing/integrations/a1agregator/notification.rb +0 -186
  143. data/lib/active_merchant/billing/integrations/a1agregator/status.rb +0 -38
  144. data/lib/active_merchant/billing/integrations/action_view_helper.rb +0 -78
  145. data/lib/active_merchant/billing/integrations/authorize_net_sim.rb +0 -38
  146. data/lib/active_merchant/billing/integrations/authorize_net_sim/helper.rb +0 -229
  147. data/lib/active_merchant/billing/integrations/authorize_net_sim/notification.rb +0 -340
  148. data/lib/active_merchant/billing/integrations/bit_pay.rb +0 -30
  149. data/lib/active_merchant/billing/integrations/bit_pay/helper.rb +0 -66
  150. data/lib/active_merchant/billing/integrations/bit_pay/notification.rb +0 -74
  151. data/lib/active_merchant/billing/integrations/bit_pay/return.rb +0 -10
  152. data/lib/active_merchant/billing/integrations/bogus.rb +0 -23
  153. data/lib/active_merchant/billing/integrations/bogus/helper.rb +0 -17
  154. data/lib/active_merchant/billing/integrations/bogus/notification.rb +0 -11
  155. data/lib/active_merchant/billing/integrations/bogus/return.rb +0 -10
  156. data/lib/active_merchant/billing/integrations/chronopay.rb +0 -23
  157. data/lib/active_merchant/billing/integrations/chronopay/helper.rb +0 -120
  158. data/lib/active_merchant/billing/integrations/chronopay/notification.rb +0 -158
  159. data/lib/active_merchant/billing/integrations/chronopay/return.rb +0 -10
  160. data/lib/active_merchant/billing/integrations/citrus.rb +0 -28
  161. data/lib/active_merchant/billing/integrations/citrus/helper.rb +0 -57
  162. data/lib/active_merchant/billing/integrations/citrus/notification.rb +0 -133
  163. data/lib/active_merchant/billing/integrations/citrus/return.rb +0 -40
  164. data/lib/active_merchant/billing/integrations/direc_pay.rb +0 -41
  165. data/lib/active_merchant/billing/integrations/direc_pay/helper.rb +0 -200
  166. data/lib/active_merchant/billing/integrations/direc_pay/notification.rb +0 -76
  167. data/lib/active_merchant/billing/integrations/direc_pay/return.rb +0 -32
  168. data/lib/active_merchant/billing/integrations/direc_pay/status.rb +0 -37
  169. data/lib/active_merchant/billing/integrations/directebanking.rb +0 -47
  170. data/lib/active_merchant/billing/integrations/directebanking/helper.rb +0 -90
  171. data/lib/active_merchant/billing/integrations/directebanking/notification.rb +0 -120
  172. data/lib/active_merchant/billing/integrations/directebanking/return.rb +0 -11
  173. data/lib/active_merchant/billing/integrations/doku.rb +0 -24
  174. data/lib/active_merchant/billing/integrations/doku/helper.rb +0 -102
  175. data/lib/active_merchant/billing/integrations/doku/notification.rb +0 -69
  176. data/lib/active_merchant/billing/integrations/doku/return.rb +0 -10
  177. data/lib/active_merchant/billing/integrations/dotpay.rb +0 -22
  178. data/lib/active_merchant/billing/integrations/dotpay/helper.rb +0 -77
  179. data/lib/active_merchant/billing/integrations/dotpay/notification.rb +0 -86
  180. data/lib/active_merchant/billing/integrations/dotpay/return.rb +0 -11
  181. data/lib/active_merchant/billing/integrations/dwolla.rb +0 -23
  182. data/lib/active_merchant/billing/integrations/dwolla/common.rb +0 -23
  183. data/lib/active_merchant/billing/integrations/dwolla/helper.rb +0 -43
  184. data/lib/active_merchant/billing/integrations/dwolla/notification.rb +0 -64
  185. data/lib/active_merchant/billing/integrations/dwolla/return.rb +0 -49
  186. data/lib/active_merchant/billing/integrations/e_payment_plans.rb +0 -48
  187. data/lib/active_merchant/billing/integrations/e_payment_plans/helper.rb +0 -34
  188. data/lib/active_merchant/billing/integrations/e_payment_plans/notification.rb +0 -84
  189. data/lib/active_merchant/billing/integrations/easy_pay.rb +0 -30
  190. data/lib/active_merchant/billing/integrations/easy_pay/common.rb +0 -40
  191. data/lib/active_merchant/billing/integrations/easy_pay/helper.rb +0 -36
  192. data/lib/active_merchant/billing/integrations/easy_pay/notification.rb +0 -59
  193. data/lib/active_merchant/billing/integrations/epay.rb +0 -21
  194. data/lib/active_merchant/billing/integrations/epay/helper.rb +0 -55
  195. data/lib/active_merchant/billing/integrations/epay/notification.rb +0 -110
  196. data/lib/active_merchant/billing/integrations/first_data.rb +0 -38
  197. data/lib/active_merchant/billing/integrations/first_data/helper.rb +0 -61
  198. data/lib/active_merchant/billing/integrations/first_data/notification.rb +0 -56
  199. data/lib/active_merchant/billing/integrations/gestpay.rb +0 -25
  200. data/lib/active_merchant/billing/integrations/gestpay/common.rb +0 -42
  201. data/lib/active_merchant/billing/integrations/gestpay/helper.rb +0 -70
  202. data/lib/active_merchant/billing/integrations/gestpay/notification.rb +0 -85
  203. data/lib/active_merchant/billing/integrations/gestpay/return.rb +0 -10
  204. data/lib/active_merchant/billing/integrations/helper.rb +0 -123
  205. data/lib/active_merchant/billing/integrations/hi_trust.rb +0 -27
  206. data/lib/active_merchant/billing/integrations/hi_trust/helper.rb +0 -58
  207. data/lib/active_merchant/billing/integrations/hi_trust/notification.rb +0 -59
  208. data/lib/active_merchant/billing/integrations/hi_trust/return.rb +0 -68
  209. data/lib/active_merchant/billing/integrations/ipay88.rb +0 -23
  210. data/lib/active_merchant/billing/integrations/ipay88/helper.rb +0 -118
  211. data/lib/active_merchant/billing/integrations/ipay88/notification.rb +0 -103
  212. data/lib/active_merchant/billing/integrations/ipay88/return.rb +0 -29
  213. data/lib/active_merchant/billing/integrations/klarna.rb +0 -71
  214. data/lib/active_merchant/billing/integrations/klarna/helper.rb +0 -123
  215. data/lib/active_merchant/billing/integrations/klarna/notification.rb +0 -103
  216. data/lib/active_merchant/billing/integrations/liqpay.rb +0 -30
  217. data/lib/active_merchant/billing/integrations/liqpay/helper.rb +0 -43
  218. data/lib/active_merchant/billing/integrations/liqpay/notification.rb +0 -89
  219. data/lib/active_merchant/billing/integrations/liqpay/return.rb +0 -83
  220. data/lib/active_merchant/billing/integrations/maksuturva.rb +0 -86
  221. data/lib/active_merchant/billing/integrations/maksuturva/helper.rb +0 -119
  222. data/lib/active_merchant/billing/integrations/maksuturva/notification.rb +0 -48
  223. data/lib/active_merchant/billing/integrations/mollie_ideal.rb +0 -98
  224. data/lib/active_merchant/billing/integrations/mollie_ideal/helper.rb +0 -67
  225. data/lib/active_merchant/billing/integrations/mollie_ideal/notification.rb +0 -69
  226. data/lib/active_merchant/billing/integrations/mollie_ideal/return.rb +0 -10
  227. data/lib/active_merchant/billing/integrations/moneybookers.rb +0 -26
  228. data/lib/active_merchant/billing/integrations/moneybookers/helper.rb +0 -75
  229. data/lib/active_merchant/billing/integrations/moneybookers/notification.rb +0 -123
  230. data/lib/active_merchant/billing/integrations/nochex.rb +0 -88
  231. data/lib/active_merchant/billing/integrations/nochex/helper.rb +0 -68
  232. data/lib/active_merchant/billing/integrations/nochex/notification.rb +0 -94
  233. data/lib/active_merchant/billing/integrations/nochex/return.rb +0 -10
  234. data/lib/active_merchant/billing/integrations/notification.rb +0 -71
  235. data/lib/active_merchant/billing/integrations/pag_seguro.rb +0 -53
  236. data/lib/active_merchant/billing/integrations/pag_seguro/helper.rb +0 -121
  237. data/lib/active_merchant/billing/integrations/pag_seguro/notification.rb +0 -104
  238. data/lib/active_merchant/billing/integrations/paxum.rb +0 -44
  239. data/lib/active_merchant/billing/integrations/paxum/common.rb +0 -24
  240. data/lib/active_merchant/billing/integrations/paxum/helper.rb +0 -42
  241. data/lib/active_merchant/billing/integrations/paxum/notification.rb +0 -33
  242. data/lib/active_merchant/billing/integrations/pay_fast.rb +0 -70
  243. data/lib/active_merchant/billing/integrations/pay_fast/common.rb +0 -42
  244. data/lib/active_merchant/billing/integrations/pay_fast/helper.rb +0 -50
  245. data/lib/active_merchant/billing/integrations/pay_fast/notification.rb +0 -134
  246. data/lib/active_merchant/billing/integrations/pay_fast/return.rb +0 -10
  247. data/lib/active_merchant/billing/integrations/paydollar.rb +0 -59
  248. data/lib/active_merchant/billing/integrations/paydollar/helper.rb +0 -41
  249. data/lib/active_merchant/billing/integrations/paydollar/notification.rb +0 -64
  250. data/lib/active_merchant/billing/integrations/paydollar/return.rb +0 -15
  251. data/lib/active_merchant/billing/integrations/payflow_link.rb +0 -21
  252. data/lib/active_merchant/billing/integrations/payflow_link/helper.rb +0 -116
  253. data/lib/active_merchant/billing/integrations/payflow_link/notification.rb +0 -78
  254. data/lib/active_merchant/billing/integrations/paypal.rb +0 -39
  255. data/lib/active_merchant/billing/integrations/paypal/helper.rb +0 -119
  256. data/lib/active_merchant/billing/integrations/paypal/notification.rb +0 -227
  257. data/lib/active_merchant/billing/integrations/paypal/return.rb +0 -10
  258. data/lib/active_merchant/billing/integrations/paypal_payments_advanced.rb +0 -20
  259. data/lib/active_merchant/billing/integrations/paypal_payments_advanced/helper.rb +0 -15
  260. data/lib/active_merchant/billing/integrations/paysbuy.rb +0 -36
  261. data/lib/active_merchant/billing/integrations/paysbuy/helper.rb +0 -15
  262. data/lib/active_merchant/billing/integrations/paysbuy/notification.rb +0 -39
  263. data/lib/active_merchant/billing/integrations/payu_in.rb +0 -36
  264. data/lib/active_merchant/billing/integrations/payu_in/helper.rb +0 -76
  265. data/lib/active_merchant/billing/integrations/payu_in/notification.rb +0 -154
  266. data/lib/active_merchant/billing/integrations/payu_in/return.rb +0 -36
  267. data/lib/active_merchant/billing/integrations/payu_in_paisa.rb +0 -30
  268. data/lib/active_merchant/billing/integrations/payu_in_paisa/helper.rb +0 -19
  269. data/lib/active_merchant/billing/integrations/payu_in_paisa/notification.rb +0 -13
  270. data/lib/active_merchant/billing/integrations/payu_in_paisa/return.rb +0 -16
  271. data/lib/active_merchant/billing/integrations/platron.rb +0 -28
  272. data/lib/active_merchant/billing/integrations/platron/helper.rb +0 -32
  273. data/lib/active_merchant/billing/integrations/platron/notification.rb +0 -113
  274. data/lib/active_merchant/billing/integrations/pxpay.rb +0 -31
  275. data/lib/active_merchant/billing/integrations/pxpay/helper.rb +0 -113
  276. data/lib/active_merchant/billing/integrations/pxpay/notification.rb +0 -157
  277. data/lib/active_merchant/billing/integrations/pxpay/return.rb +0 -25
  278. data/lib/active_merchant/billing/integrations/quickpay.rb +0 -21
  279. data/lib/active_merchant/billing/integrations/quickpay/helper.rb +0 -96
  280. data/lib/active_merchant/billing/integrations/quickpay/notification.rb +0 -137
  281. data/lib/active_merchant/billing/integrations/rbkmoney.rb +0 -17
  282. data/lib/active_merchant/billing/integrations/rbkmoney/helper.rb +0 -23
  283. data/lib/active_merchant/billing/integrations/rbkmoney/notification.rb +0 -91
  284. data/lib/active_merchant/billing/integrations/return.rb +0 -42
  285. data/lib/active_merchant/billing/integrations/robokassa.rb +0 -49
  286. data/lib/active_merchant/billing/integrations/robokassa/common.rb +0 -19
  287. data/lib/active_merchant/billing/integrations/robokassa/helper.rb +0 -50
  288. data/lib/active_merchant/billing/integrations/robokassa/notification.rb +0 -55
  289. data/lib/active_merchant/billing/integrations/robokassa/return.rb +0 -17
  290. data/lib/active_merchant/billing/integrations/sage_pay_form.rb +0 -37
  291. data/lib/active_merchant/billing/integrations/sage_pay_form/encryption.rb +0 -33
  292. data/lib/active_merchant/billing/integrations/sage_pay_form/helper.rb +0 -136
  293. data/lib/active_merchant/billing/integrations/sage_pay_form/notification.rb +0 -210
  294. data/lib/active_merchant/billing/integrations/sage_pay_form/return.rb +0 -31
  295. data/lib/active_merchant/billing/integrations/two_checkout.rb +0 -44
  296. data/lib/active_merchant/billing/integrations/two_checkout/helper.rb +0 -107
  297. data/lib/active_merchant/billing/integrations/two_checkout/notification.rb +0 -171
  298. data/lib/active_merchant/billing/integrations/two_checkout/return.rb +0 -58
  299. data/lib/active_merchant/billing/integrations/universal.rb +0 -23
  300. data/lib/active_merchant/billing/integrations/universal/helper.rb +0 -76
  301. data/lib/active_merchant/billing/integrations/universal/notification.rb +0 -52
  302. data/lib/active_merchant/billing/integrations/universal/return.rb +0 -18
  303. data/lib/active_merchant/billing/integrations/valitor.rb +0 -33
  304. data/lib/active_merchant/billing/integrations/valitor/helper.rb +0 -86
  305. data/lib/active_merchant/billing/integrations/valitor/notification.rb +0 -13
  306. data/lib/active_merchant/billing/integrations/valitor/response_fields.rb +0 -97
  307. data/lib/active_merchant/billing/integrations/valitor/return.rb +0 -13
  308. data/lib/active_merchant/billing/integrations/verkkomaksut.rb +0 -20
  309. data/lib/active_merchant/billing/integrations/verkkomaksut/helper.rb +0 -88
  310. data/lib/active_merchant/billing/integrations/verkkomaksut/notification.rb +0 -59
  311. data/lib/active_merchant/billing/integrations/web_pay.rb +0 -45
  312. data/lib/active_merchant/billing/integrations/web_pay/common.rb +0 -50
  313. data/lib/active_merchant/billing/integrations/web_pay/helper.rb +0 -68
  314. data/lib/active_merchant/billing/integrations/web_pay/notification.rb +0 -51
  315. data/lib/active_merchant/billing/integrations/webmoney.rb +0 -43
  316. data/lib/active_merchant/billing/integrations/webmoney/common.rb +0 -17
  317. data/lib/active_merchant/billing/integrations/webmoney/helper.rb +0 -40
  318. data/lib/active_merchant/billing/integrations/webmoney/notification.rb +0 -47
  319. data/lib/active_merchant/billing/integrations/wirecard_checkout_page.rb +0 -39
  320. data/lib/active_merchant/billing/integrations/wirecard_checkout_page/common.rb +0 -104
  321. data/lib/active_merchant/billing/integrations/wirecard_checkout_page/helper.rb +0 -145
  322. data/lib/active_merchant/billing/integrations/wirecard_checkout_page/notification.rb +0 -101
  323. data/lib/active_merchant/billing/integrations/wirecard_checkout_page/return.rb +0 -35
  324. data/lib/active_merchant/billing/integrations/world_pay.rb +0 -34
  325. data/lib/active_merchant/billing/integrations/world_pay/helper.rb +0 -101
  326. data/lib/active_merchant/billing/integrations/world_pay/notification.rb +0 -160
@@ -1,45 +0,0 @@
1
- module ActiveMerchant #:nodoc:
2
- module Billing #:nodoc:
3
- module Integrations #:nodoc:
4
-
5
- # Documentation: You will get it after registration steps here:
6
- # http://reg.webpay.by/registration-form.php
7
- module WebPay
8
- autoload :Helper, File.dirname(__FILE__) + '/web_pay/helper.rb'
9
- autoload :Notification, File.dirname(__FILE__) + '/web_pay/notification.rb'
10
- autoload :Common, File.dirname(__FILE__) + '/web_pay/common.rb'
11
-
12
- # Overwrite this if you want to change the WebPay sandbox url
13
- mattr_accessor :test_url
14
- self.test_url = 'https://secure.sandbox.webpay.by:8843'
15
-
16
- # Overwrite this if you want to change the WebPay production url
17
- mattr_accessor :production_url
18
- self.production_url = 'https://secure.webpay.by'
19
-
20
- mattr_accessor :signature_parameter_name
21
- self.signature_parameter_name = 'wsb_signature'
22
-
23
- def self.service_url
24
- mode = ActiveMerchant::Billing::Base.integration_mode
25
- case mode
26
- when :production
27
- self.production_url
28
- when :test
29
- self.test_url
30
- else
31
- raise StandardError, "Integration mode set to an invalid value: #{mode}"
32
- end
33
- end
34
-
35
- def self.helper(order, account, options = {})
36
- Helper.new(order, account, options)
37
- end
38
-
39
- def self.notification(query_string, options = {})
40
- Notification.new(query_string, options)
41
- end
42
- end
43
- end
44
- end
45
- end
@@ -1,50 +0,0 @@
1
- module ActiveMerchant #:nodoc:
2
- module Billing #:nodoc:
3
- module Integrations #:nodoc:
4
- module WebPay
5
- module Common
6
- def generate_signature(type)
7
- string = case type
8
- when :request
9
- request_signature_string
10
- when :notify
11
- notify_signature_string
12
- end
13
- if type != :notify && @fields[mappings[:version]] == '2'
14
- Digest::SHA1.hexdigest(string)
15
- else
16
- Digest::MD5.hexdigest(string)
17
- end
18
- end
19
-
20
- def request_signature_string
21
- [
22
- @fields[mappings[:seed]],
23
- @fields[mappings[:account]],
24
- @fields[mappings[:order]],
25
- @fields[mappings[:test]],
26
- @fields[mappings[:currency]],
27
- @fields[mappings[:amount]],
28
- secret
29
- ].join
30
- end
31
-
32
- def notify_signature_string
33
- [
34
- params['batch_timestamp'],
35
- params['currency_id'],
36
- params['amount'],
37
- params['payment_method'],
38
- params['order_id'],
39
- params['site_order_id'],
40
- params['transaction_id'],
41
- params['payment_type'],
42
- params['rrn'],
43
- secret
44
- ].join
45
- end
46
- end
47
- end
48
- end
49
- end
50
- end
@@ -1,68 +0,0 @@
1
- module ActiveMerchant #:nodoc:
2
- module Billing #:nodoc:
3
- module Integrations #:nodoc:
4
- module WebPay
5
- class Helper < ActiveMerchant::Billing::Integrations::Helper
6
- include Common
7
-
8
- def initialize(order, account, options = {})
9
- @md5secret = options.delete(:secret)
10
- @line_item_count = 0
11
- super
12
- end
13
-
14
- def form_fields
15
- @fields.merge(ActiveMerchant::Billing::Integrations::WebPay.signature_parameter_name => generate_signature(:request))
16
- end
17
-
18
- def params
19
- @fields
20
- end
21
-
22
- def secret
23
- @md5secret
24
- end
25
-
26
- def add_line_item(options)
27
- options.each do |key, value|
28
- add_field("wsb_invoice_item_#{key}[#{@line_item_count}]", value)
29
- end
30
-
31
- @line_item_count += 1
32
- end
33
-
34
- def calculate_total
35
- sum = 0
36
-
37
- @line_item_count.times do |i|
38
- sum += @fields["wsb_invoice_item_quantity[#{i}]"].to_i * @fields["wsb_invoice_item_price[#{i}]"].to_i
39
- end
40
-
41
- sum + @fields[mappings[:tax]].to_i + @fields[mappings[:shipping_price]].to_i - @fields[mappings[:discount_price]].to_i
42
- end
43
-
44
- mapping :scart, '*scart'
45
- mapping :account, 'wsb_storeid'
46
- mapping :store, 'wsb_store'
47
- mapping :order, 'wsb_order_num'
48
- mapping :currency, 'wsb_currency_id'
49
- mapping :version, 'wsb_version'
50
- mapping :language, 'wsb_language_id'
51
- mapping :seed, 'wsb_seed'
52
- mapping :success_url, 'wsb_return_url'
53
- mapping :cancel_url, 'wsb_cancel_return_url'
54
- mapping :notify_url, 'wsb_notify_url'
55
- mapping :test, 'wsb_test'
56
- mapping :tax, 'wsb_tax'
57
- mapping :shipping_name, 'wsb_shipping_name'
58
- mapping :shipping_price, 'wsb_shipping_price'
59
- mapping :discount_name, 'wsb_discount_name'
60
- mapping :discount_price, 'wsb_discount_price'
61
- mapping :amount, 'wsb_total'
62
- mapping :email, 'wsb_email'
63
- mapping :phone, 'wsb_phone'
64
- end
65
- end
66
- end
67
- end
68
- end
@@ -1,51 +0,0 @@
1
- module ActiveMerchant #:nodoc:
2
- module Billing #:nodoc:
3
- module Integrations #:nodoc:
4
- module WebPay
5
- class Notification < ActiveMerchant::Billing::Integrations::Notification
6
- include Common
7
-
8
- def self.recognizes?(params)
9
- params.has_key?('site_order_id') && params.has_key?('amount')
10
- end
11
-
12
- def complete?
13
- true
14
- end
15
-
16
- def amount
17
- BigDecimal.new(gross)
18
- end
19
-
20
- def item_id
21
- params['site_order_id']
22
- end
23
-
24
- def security_key
25
- params[ActiveMerchant::Billing::Integrations::WebPay.signature_parameter_name]
26
- end
27
-
28
- def gross
29
- params['amount']
30
- end
31
-
32
- def status
33
- 'success'
34
- end
35
-
36
- def secret
37
- @options[:secret]
38
- end
39
-
40
- def acknowledge(authcode = nil)
41
- (security_key == generate_signature(:notify))
42
- end
43
-
44
- def success_response(*args)
45
- {:nothing => true}
46
- end
47
- end
48
- end
49
- end
50
- end
51
- end
@@ -1,43 +0,0 @@
1
- module ActiveMerchant #:nodoc:
2
- module Billing #:nodoc:
3
- module Integrations #:nodoc:
4
- # Documentation:
5
- # http://wiki.webmoney.ru/projects/webmoney/wiki/Web_Merchant_Interface
6
- module Webmoney
7
- autoload :Helper, File.dirname(__FILE__) + '/webmoney/helper.rb'
8
- autoload :Notification, File.dirname(__FILE__) + '/webmoney/notification.rb'
9
- autoload :Return, File.dirname(__FILE__) + '/webmoney/return.rb'
10
- autoload :Common, File.dirname(__FILE__) + '/webmoney/common.rb'
11
-
12
- mattr_accessor :test_url
13
- self.test_url = "https://merchant.webmoney.ru/lmi/payment.asp"
14
-
15
- mattr_accessor :production_url
16
- self.production_url = "https://merchant.webmoney.ru/lmi/payment.asp"
17
-
18
- mattr_accessor :signature_parameter_name
19
- self.signature_parameter_name = 'LMI_HASH'
20
-
21
- def self.service_url
22
- mode = ActiveMerchant::Billing::Base.integration_mode
23
- case mode
24
- when :production
25
- self.production_url
26
- when :test
27
- self.test_url
28
- else
29
- raise StandardError, "Integration mode set to an invalid value: #{mode}"
30
- end
31
- end
32
-
33
- def self.helper(order, account, options = {})
34
- Helper.new(order, account, options)
35
- end
36
-
37
- def self.notification(query_string, options = {})
38
- Notification.new(query_string, options)
39
- end
40
- end
41
- end
42
- end
43
- end
@@ -1,17 +0,0 @@
1
- module ActiveMerchant #:nodoc:
2
- module Billing #:nodoc:
3
- module Integrations #:nodoc:
4
- module Webmoney
5
- module Common
6
- def generate_signature_string
7
- "#{params['LMI_PAYEE_PURSE']}#{params['LMI_PAYMENT_AMOUNT']}#{params['LMI_PAYMENT_NO']}#{params['LMI_MODE']}#{params['LMI_SYS_INVS_NO']}#{params['LMI_SYS_TRANS_NO']}#{params['LMI_SYS_TRANS_DATE']}#{secret}#{params['LMI_PAYER_PURSE']}#{params['LMI_PAYER_WM']}"
8
- end
9
-
10
- def generate_signature
11
- Digest::MD5.hexdigest(generate_signature_string).upcase
12
- end
13
- end
14
- end
15
- end
16
- end
17
- end
@@ -1,40 +0,0 @@
1
- module ActiveMerchant #:nodoc:
2
- module Billing #:nodoc:
3
- module Integrations #:nodoc:
4
- module Webmoney
5
- class Helper < ActiveMerchant::Billing::Integrations::Helper
6
- include Common
7
-
8
- def initialize(order, account, options = {})
9
- @webmoney_options = options.dup
10
- options.delete(:description)
11
- options.delete(:fail_url)
12
- options.delete(:success_url)
13
- options.delete(:result_url)
14
- super
15
- @webmoney_options.each do |key, value|
16
- add_field mappings[key], value
17
- end
18
- end
19
-
20
- def form_fields
21
- @fields
22
- end
23
-
24
- def params
25
- @fields
26
- end
27
-
28
- mapping :account, 'LMI_PAYEE_PURSE'
29
- mapping :amount, 'LMI_PAYMENT_AMOUNT'
30
- mapping :order, 'LMI_PAYMENT_NO'
31
- mapping :description, 'LMI_PAYMENT_DESC'
32
- mapping :fail_url, 'LMI_FAIL_URL'
33
- mapping :success_url, 'LMI_SUCCESS_URL'
34
- mapping :result_url, 'LMI_RESULT_URL'
35
- mapping :debug, 'LMI_SIM_MODE'
36
- end
37
- end
38
- end
39
- end
40
- end
@@ -1,47 +0,0 @@
1
- module ActiveMerchant #:nodoc:
2
- module Billing #:nodoc:
3
- module Integrations #:nodoc:
4
- module Webmoney
5
- class Notification < ActiveMerchant::Billing::Integrations::Notification
6
- include Common
7
-
8
- def recognizes?
9
- (params.has_key?('LMI_PAYMENT_NO') && params.has_key?('LMI_PAYMENT_AMOUNT'))
10
- end
11
-
12
- def amount
13
- BigDecimal.new(gross)
14
- end
15
-
16
- def key_present?
17
- params["LMI_HASH"].present?
18
- end
19
-
20
- def item_id
21
- params['LMI_PAYMENT_NO']
22
- end
23
-
24
- def gross
25
- params['LMI_PAYMENT_AMOUNT']
26
- end
27
-
28
- def security_key
29
- params["LMI_HASH"]
30
- end
31
-
32
- def secret
33
- @options[:secret]
34
- end
35
-
36
- def acknowledge(authcode = nil)
37
- (security_key == generate_signature)
38
- end
39
-
40
- def success_response(*args)
41
- {:nothing => true}
42
- end
43
- end
44
- end
45
- end
46
- end
47
- end
@@ -1,39 +0,0 @@
1
- =begin
2
- * Shop System Plugins - Terms of use
3
- *
4
- * This terms of use regulates warranty and liability between Wirecard Central Eastern Europe (subsequently referred to as WDCEE) and it's
5
- * contractual partners (subsequently referred to as customer or customers) which are related to the use of plugins provided by WDCEE.
6
- *
7
- * The Plugin is provided by WDCEE free of charge for it's customers and must be used for the purpose of WDCEE's payment platform
8
- * integration only. It explicitly is not part of the general contract between WDCEE and it's customer. The plugin has successfully been tested
9
- * under specific circumstances which are defined as the shopsystem's standard configuration (vendor's delivery state). The Customer is
10
- * responsible for testing the plugin's functionality before putting it into production environment.
11
- * The customer uses the plugin at own risk. WDCEE does not guarantee it's full functionality neither does WDCEE assume liability for any
12
- * disadvantage related to the use of this plugin. By installing the plugin into the shopsystem the customer agrees to the terms of use.
13
- * Please do not use this plugin if you do not agree to the terms of use!
14
- =end
15
-
16
- module ActiveMerchant #:nodoc:
17
- module Billing #:nodoc:
18
- module Integrations #:nodoc:
19
- module WirecardCheckoutPage
20
- autoload :Common, File.dirname(__FILE__) + '/wirecard_checkout_page/common.rb'
21
- autoload :Helper, File.dirname(__FILE__) + '/wirecard_checkout_page/helper.rb'
22
- autoload :Notification, File.dirname(__FILE__) + '/wirecard_checkout_page/notification.rb'
23
- autoload :Return, File.dirname(__FILE__) + '/wirecard_checkout_page/return.rb'
24
-
25
- mattr_accessor :service_url
26
- self.service_url = 'https://checkout.wirecard.com/page/init.php'
27
-
28
- def self.notification(post, options)
29
- Notification.new(post, options)
30
- end
31
-
32
- def self.return(postdata, options)
33
- Return.new(postdata, options)
34
- end
35
-
36
- end
37
- end
38
- end
39
- end
@@ -1,104 +0,0 @@
1
- =begin
2
- * Shop System Plugins - Terms of use
3
- *
4
- * This terms of use regulates warranty and liability between Wirecard Central Eastern Europe (subsequently referred to as WDCEE) and it's
5
- * contractual partners (subsequently referred to as customer or customers) which are related to the use of plugins provided by WDCEE.
6
- *
7
- * The Plugin is provided by WDCEE free of charge for it's customers and must be used for the purpose of WDCEE's payment platform
8
- * integration only. It explicitly is not part of the general contract between WDCEE and it's customer. The plugin has successfully been tested
9
- * under specific circumstances which are defined as the shopsystem's standard configuration (vendor's delivery state). The Customer is
10
- * responsible for testing the plugin's functionality before putting it into production enviroment.
11
- * The customer uses the plugin at own risk. WDCEE does not guarantee it's full functionality neither does WDCEE assume liability for any
12
- * disadvantage related to the use of this plugin. By installing the plugin into the shopsystem the customer agrees to the terms of use.
13
- * Please do not use this plugin if you do not agree to the terms of use!
14
- =end
15
-
16
- module ActiveMerchant #:nodoc:
17
- module Billing #:nodoc:
18
- module Integrations #:nodoc:
19
- module WirecardCheckoutPage
20
- module Common
21
-
22
- mattr_accessor :paymenttypes
23
- self.paymenttypes = %w(
24
- SELECT
25
- CCARD
26
- BANCONTACT_MISTERCASH
27
- C2P
28
- CCARD-MOTO
29
- EKONTO
30
- ELV
31
- EPS
32
- GIROPAY
33
- IDL
34
- INSTALLMENT
35
- INSTANTBANK
36
- INVOICE
37
- MAESTRO
38
- MONETA
39
- MPASS
40
- PRZELEWY24
41
- PAYPAL
42
- PBX
43
- POLI
44
- PSC
45
- QUICK
46
- SKRILLDIRECT
47
- SKRILLWALLET
48
- SOFORTUEBERWEISUNG)
49
-
50
- def message
51
- @message
52
- end
53
-
54
- def verify_response(params, secret)
55
-
56
- logstr = ''
57
- params.each { |key, value|
58
- logstr += "#{key} #{value}\n"
59
- }
60
-
61
- @paymentstate = 'FAILURE'
62
-
63
- unless params.has_key?('paymentState')
64
- @message = "paymentState is missing"
65
- return false
66
- end
67
-
68
- if params['paymentState'] == 'SUCCESS' || params['paymentState'] == 'PENDING'
69
- unless params.has_key?('responseFingerprint')
70
- @message = "responseFingerprint is missing"
71
- return false
72
- end
73
-
74
- unless params.has_key?('responseFingerprintOrder')
75
- @message = "responseFingerprintOrder is missing"
76
- return false
77
- end
78
-
79
- end
80
-
81
- if params['paymentState'] == 'SUCCESS' || params['paymentState'] == 'PENDING'
82
- fields = params['responseFingerprintOrder'].split(",")
83
- values = ''
84
- fields.each { |f|
85
- values += f == 'secret' ? secret : params[f]
86
- }
87
-
88
-
89
- if Digest::MD5.hexdigest(values) != params['responseFingerprint']
90
- @message = "responseFingerprint verification failed"
91
- return false
92
- end
93
- end
94
-
95
- @paymentstate = params['paymentState']
96
- true
97
- end
98
-
99
- end
100
-
101
- end
102
- end
103
- end
104
- end