activemerchant 1.45.0 → 1.126.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (288) hide show
  1. checksums.yaml +5 -5
  2. data/CHANGELOG +2167 -2
  3. data/CONTRIBUTORS +57 -0
  4. data/README.md +62 -41
  5. data/lib/active_merchant/billing/avs_result.rb +25 -28
  6. data/lib/active_merchant/billing/base.rb +11 -35
  7. data/lib/active_merchant/billing/check.rb +28 -24
  8. data/lib/active_merchant/billing/compatibility.rb +10 -12
  9. data/lib/active_merchant/billing/credit_card.rb +141 -69
  10. data/lib/active_merchant/billing/credit_card_formatting.rb +4 -4
  11. data/lib/active_merchant/billing/credit_card_methods.rb +348 -52
  12. data/lib/active_merchant/billing/cvv_result.rb +0 -1
  13. data/lib/active_merchant/billing/gateway.rb +125 -61
  14. data/lib/active_merchant/billing/gateways/adyen.rb +633 -127
  15. data/lib/active_merchant/billing/gateways/airwallex.rb +341 -0
  16. data/lib/active_merchant/billing/gateways/allied_wallet.rb +205 -0
  17. data/lib/active_merchant/billing/gateways/authorize_net.rb +883 -195
  18. data/lib/active_merchant/billing/gateways/authorize_net_arb.rb +31 -24
  19. data/lib/active_merchant/billing/gateways/authorize_net_cim.rb +104 -103
  20. data/lib/active_merchant/billing/gateways/axcessms.rb +179 -0
  21. data/lib/active_merchant/billing/gateways/balanced.rb +72 -65
  22. data/lib/active_merchant/billing/gateways/bambora_apac.rb +222 -0
  23. data/lib/active_merchant/billing/gateways/bank_frick.rb +16 -16
  24. data/lib/active_merchant/billing/gateways/banwire.rb +24 -13
  25. data/lib/active_merchant/billing/gateways/barclaycard_smartpay.rb +397 -0
  26. data/lib/active_merchant/billing/gateways/barclays_epdq_extra_plus.rb +7 -7
  27. data/lib/active_merchant/billing/gateways/be2bill.rb +7 -7
  28. data/lib/active_merchant/billing/gateways/beanstream/beanstream_core.rb +143 -62
  29. data/lib/active_merchant/billing/gateways/beanstream.rb +45 -13
  30. data/lib/active_merchant/billing/gateways/beanstream_interac.rb +13 -10
  31. data/lib/active_merchant/billing/gateways/blue_pay.rb +549 -506
  32. data/lib/active_merchant/billing/gateways/blue_snap.rb +623 -0
  33. data/lib/active_merchant/billing/gateways/bogus.rb +82 -36
  34. data/lib/active_merchant/billing/gateways/borgun.rb +61 -40
  35. data/lib/active_merchant/billing/gateways/bpoint.rb +277 -0
  36. data/lib/active_merchant/billing/gateways/braintree/braintree_common.rb +21 -2
  37. data/lib/active_merchant/billing/gateways/braintree/token_nonce.rb +113 -0
  38. data/lib/active_merchant/billing/gateways/braintree.rb +3 -3
  39. data/lib/active_merchant/billing/gateways/braintree_blue.rb +592 -203
  40. data/lib/active_merchant/billing/gateways/braintree_orange.rb +3 -4
  41. data/lib/active_merchant/billing/gateways/bridge_pay.rb +116 -61
  42. data/lib/active_merchant/billing/gateways/cams.rb +230 -0
  43. data/lib/active_merchant/billing/gateways/card_connect.rb +320 -0
  44. data/lib/active_merchant/billing/gateways/card_save.rb +7 -9
  45. data/lib/active_merchant/billing/gateways/card_stream.rb +248 -97
  46. data/lib/active_merchant/billing/gateways/cardknox.rb +327 -0
  47. data/lib/active_merchant/billing/gateways/cardprocess.rb +256 -0
  48. data/lib/active_merchant/billing/gateways/cashnet.rb +70 -26
  49. data/lib/active_merchant/billing/gateways/cc5.rb +14 -17
  50. data/lib/active_merchant/billing/gateways/cecabank.rb +73 -53
  51. data/lib/active_merchant/billing/gateways/cenpos.rb +328 -0
  52. data/lib/active_merchant/billing/gateways/checkout.rb +32 -33
  53. data/lib/active_merchant/billing/gateways/checkout_v2.rb +340 -0
  54. data/lib/active_merchant/billing/gateways/citrus_pay.rb +21 -0
  55. data/lib/active_merchant/billing/gateways/clearhaus.rb +219 -0
  56. data/lib/active_merchant/billing/gateways/commercegate.rb +11 -12
  57. data/lib/active_merchant/billing/gateways/conekta.rb +55 -34
  58. data/lib/active_merchant/billing/gateways/creditcall.rb +272 -0
  59. data/lib/active_merchant/billing/gateways/credorax.rb +506 -0
  60. data/lib/active_merchant/billing/gateways/ct_payment.rb +269 -0
  61. data/lib/active_merchant/billing/gateways/culqi.rb +279 -0
  62. data/lib/active_merchant/billing/gateways/cyber_source.rb +637 -221
  63. data/lib/active_merchant/billing/gateways/d_local.rb +303 -0
  64. data/lib/active_merchant/billing/gateways/data_cash.rb +57 -355
  65. data/lib/active_merchant/billing/gateways/decidir.rb +347 -0
  66. data/lib/active_merchant/billing/gateways/decidir_plus.rb +344 -0
  67. data/lib/active_merchant/billing/gateways/dibs.rb +199 -0
  68. data/lib/active_merchant/billing/gateways/digitzs.rb +295 -0
  69. data/lib/active_merchant/billing/gateways/ebanx.rb +334 -0
  70. data/lib/active_merchant/billing/gateways/efsnet.rb +46 -50
  71. data/lib/active_merchant/billing/gateways/elavon.rb +377 -250
  72. data/lib/active_merchant/billing/gateways/element.rb +386 -0
  73. data/lib/active_merchant/billing/gateways/epay.rb +92 -71
  74. data/lib/active_merchant/billing/gateways/evo_ca.rb +13 -14
  75. data/lib/active_merchant/billing/gateways/eway.rb +85 -73
  76. data/lib/active_merchant/billing/gateways/eway_managed.rb +85 -87
  77. data/lib/active_merchant/billing/gateways/eway_rapid.rb +134 -80
  78. data/lib/active_merchant/billing/gateways/exact.rb +37 -36
  79. data/lib/active_merchant/billing/gateways/ezic.rb +195 -0
  80. data/lib/active_merchant/billing/gateways/fat_zebra.rb +124 -74
  81. data/lib/active_merchant/billing/gateways/federated_canada.rb +11 -13
  82. data/lib/active_merchant/billing/gateways/finansbank.rb +4 -5
  83. data/lib/active_merchant/billing/gateways/first_giving.rb +23 -23
  84. data/lib/active_merchant/billing/gateways/first_pay.rb +45 -23
  85. data/lib/active_merchant/billing/gateways/firstdata_e4.rb +184 -87
  86. data/lib/active_merchant/billing/gateways/firstdata_e4_v27.rb +505 -0
  87. data/lib/active_merchant/billing/gateways/flo2cash.rb +215 -0
  88. data/lib/active_merchant/billing/gateways/flo2cash_simple.rb +20 -0
  89. data/lib/active_merchant/billing/gateways/forte.rb +286 -0
  90. data/lib/active_merchant/billing/gateways/garanti.rb +31 -32
  91. data/lib/active_merchant/billing/gateways/global_collect.rb +507 -0
  92. data/lib/active_merchant/billing/gateways/global_transport.rb +25 -15
  93. data/lib/active_merchant/billing/gateways/hdfc.rb +55 -57
  94. data/lib/active_merchant/billing/gateways/hps.rb +252 -68
  95. data/lib/active_merchant/billing/gateways/iats_payments.rb +99 -38
  96. data/lib/active_merchant/billing/gateways/in_context_paypal_express.rb +15 -0
  97. data/lib/active_merchant/billing/gateways/inspire.rb +48 -48
  98. data/lib/active_merchant/billing/gateways/instapay.rb +10 -14
  99. data/lib/active_merchant/billing/gateways/ipg.rb +415 -0
  100. data/lib/active_merchant/billing/gateways/ipp.rb +176 -0
  101. data/lib/active_merchant/billing/gateways/iridium.rb +254 -244
  102. data/lib/active_merchant/billing/gateways/itransact.rb +14 -14
  103. data/lib/active_merchant/billing/gateways/iveri.rb +254 -0
  104. data/lib/active_merchant/billing/gateways/ixopay.rb +320 -0
  105. data/lib/active_merchant/billing/gateways/jetpay.rb +200 -80
  106. data/lib/active_merchant/billing/gateways/jetpay_v2.rb +432 -0
  107. data/lib/active_merchant/billing/gateways/komoju.rb +115 -0
  108. data/lib/active_merchant/billing/gateways/kushki.rb +277 -0
  109. data/lib/active_merchant/billing/gateways/latitude19.rb +412 -0
  110. data/lib/active_merchant/billing/gateways/linkpoint.rb +95 -85
  111. data/lib/active_merchant/billing/gateways/litle.rb +371 -94
  112. data/lib/active_merchant/billing/gateways/mastercard.rb +293 -0
  113. data/lib/active_merchant/billing/gateways/maxipago.rb +146 -123
  114. data/lib/active_merchant/billing/gateways/mercado_pago.rb +331 -0
  115. data/lib/active_merchant/billing/gateways/merchant_e_solutions.rb +47 -23
  116. data/lib/active_merchant/billing/gateways/merchant_one.rb +16 -20
  117. data/lib/active_merchant/billing/gateways/merchant_partners.rb +245 -0
  118. data/lib/active_merchant/billing/gateways/merchant_ware.rb +54 -60
  119. data/lib/active_merchant/billing/gateways/merchant_ware_version_four.rb +60 -44
  120. data/lib/active_merchant/billing/gateways/merchant_warrior.rb +76 -23
  121. data/lib/active_merchant/billing/gateways/mercury.rb +73 -54
  122. data/lib/active_merchant/billing/gateways/metrics_global.rb +33 -43
  123. data/lib/active_merchant/billing/gateways/micropayment.rb +182 -0
  124. data/lib/active_merchant/billing/gateways/migs/migs_codes.rb +7 -7
  125. data/lib/active_merchant/billing/gateways/migs.rb +101 -37
  126. data/lib/active_merchant/billing/gateways/mit.rb +260 -0
  127. data/lib/active_merchant/billing/gateways/modern_payments.rb +3 -3
  128. data/lib/active_merchant/billing/gateways/modern_payments_cim.rb +30 -34
  129. data/lib/active_merchant/billing/gateways/moka.rb +290 -0
  130. data/lib/active_merchant/billing/gateways/monei.rb +422 -0
  131. data/lib/active_merchant/billing/gateways/moneris.rb +236 -72
  132. data/lib/active_merchant/billing/gateways/money_movers.rb +11 -13
  133. data/lib/active_merchant/billing/gateways/mundipagg.rb +363 -0
  134. data/lib/active_merchant/billing/gateways/nab_transact.rb +87 -68
  135. data/lib/active_merchant/billing/gateways/ncr_secure_pay.rb +163 -0
  136. data/lib/active_merchant/billing/gateways/net_registry.rb +12 -12
  137. data/lib/active_merchant/billing/gateways/netaxept.rb +33 -34
  138. data/lib/active_merchant/billing/gateways/netbanx.rb +376 -0
  139. data/lib/active_merchant/billing/gateways/netbilling.rb +82 -43
  140. data/lib/active_merchant/billing/gateways/netpay.rb +10 -10
  141. data/lib/active_merchant/billing/gateways/network_merchants.rb +7 -11
  142. data/lib/active_merchant/billing/gateways/nmi.rb +279 -174
  143. data/lib/active_merchant/billing/gateways/ogone.rb +96 -50
  144. data/lib/active_merchant/billing/gateways/omise.rb +323 -0
  145. data/lib/active_merchant/billing/gateways/openpay.rb +58 -23
  146. data/lib/active_merchant/billing/gateways/opp.rb +394 -0
  147. data/lib/active_merchant/billing/gateways/optimal_payment.rb +87 -69
  148. data/lib/active_merchant/billing/gateways/orbital/orbital_soft_descriptors.rb +5 -7
  149. data/lib/active_merchant/billing/gateways/orbital.rb +771 -328
  150. data/lib/active_merchant/billing/gateways/pac_net_raven.rb +31 -32
  151. data/lib/active_merchant/billing/gateways/pagarme.rb +239 -0
  152. data/lib/active_merchant/billing/gateways/pago_facil.rb +12 -14
  153. data/lib/active_merchant/billing/gateways/pay_arc.rb +392 -0
  154. data/lib/active_merchant/billing/gateways/pay_conex.rb +245 -0
  155. data/lib/active_merchant/billing/gateways/pay_gate_xml.rb +84 -68
  156. data/lib/active_merchant/billing/gateways/pay_hub.rb +213 -0
  157. data/lib/active_merchant/billing/gateways/pay_junction.rb +37 -37
  158. data/lib/active_merchant/billing/gateways/pay_junction_v2.rb +206 -0
  159. data/lib/active_merchant/billing/gateways/pay_secure.rb +15 -17
  160. data/lib/active_merchant/billing/gateways/pay_trace.rb +404 -0
  161. data/lib/active_merchant/billing/gateways/paybox_direct.rb +85 -49
  162. data/lib/active_merchant/billing/gateways/payeezy.rb +458 -0
  163. data/lib/active_merchant/billing/gateways/payex.rb +39 -42
  164. data/lib/active_merchant/billing/gateways/payflow/payflow_common_api.rb +67 -41
  165. data/lib/active_merchant/billing/gateways/payflow/payflow_express_response.rb +11 -8
  166. data/lib/active_merchant/billing/gateways/payflow/payflow_response.rb +3 -3
  167. data/lib/active_merchant/billing/gateways/payflow.rb +215 -46
  168. data/lib/active_merchant/billing/gateways/payflow_express.rb +64 -68
  169. data/lib/active_merchant/billing/gateways/payflow_express_uk.rb +2 -3
  170. data/lib/active_merchant/billing/gateways/payflow_uk.rb +5 -6
  171. data/lib/active_merchant/billing/gateways/payment_express.rb +78 -58
  172. data/lib/active_merchant/billing/gateways/paymentez.rb +353 -0
  173. data/lib/active_merchant/billing/gateways/paymill.rb +163 -75
  174. data/lib/active_merchant/billing/gateways/paypal/paypal_common_api.rb +55 -7
  175. data/lib/active_merchant/billing/gateways/paypal/paypal_recurring_api.rb +1 -1
  176. data/lib/active_merchant/billing/gateways/paypal.rb +37 -18
  177. data/lib/active_merchant/billing/gateways/paypal_ca.rb +2 -2
  178. data/lib/active_merchant/billing/gateways/paypal_digital_goods.rb +5 -5
  179. data/lib/active_merchant/billing/gateways/paypal_express.rb +12 -6
  180. data/lib/active_merchant/billing/gateways/paypal_express_common.rb +3 -3
  181. data/lib/active_merchant/billing/gateways/paysafe.rb +412 -0
  182. data/lib/active_merchant/billing/gateways/payscout.rb +10 -13
  183. data/lib/active_merchant/billing/gateways/paystation.rb +96 -91
  184. data/lib/active_merchant/billing/gateways/payu_in.rb +249 -0
  185. data/lib/active_merchant/billing/gateways/payu_latam.rb +479 -0
  186. data/lib/active_merchant/billing/gateways/payway.rb +27 -27
  187. data/lib/active_merchant/billing/gateways/payway_dot_com.rb +253 -0
  188. data/lib/active_merchant/billing/gateways/pin.rb +113 -37
  189. data/lib/active_merchant/billing/gateways/plugnpay.rb +82 -82
  190. data/lib/active_merchant/billing/gateways/priority.rb +369 -0
  191. data/lib/active_merchant/billing/gateways/pro_pay.rb +325 -0
  192. data/lib/active_merchant/billing/gateways/psigate.rb +55 -44
  193. data/lib/active_merchant/billing/gateways/psl_card.rb +32 -40
  194. data/lib/active_merchant/billing/gateways/qbms.rb +86 -76
  195. data/lib/active_merchant/billing/gateways/quantum.rb +21 -23
  196. data/lib/active_merchant/billing/gateways/quickbooks.rb +377 -0
  197. data/lib/active_merchant/billing/gateways/quickpay/quickpay_common.rb +184 -0
  198. data/lib/active_merchant/billing/gateways/quickpay/quickpay_v10.rb +297 -0
  199. data/lib/active_merchant/billing/gateways/quickpay/quickpay_v4to7.rb +226 -0
  200. data/lib/active_merchant/billing/gateways/quickpay.rb +10 -353
  201. data/lib/active_merchant/billing/gateways/qvalent.rb +305 -0
  202. data/lib/active_merchant/billing/gateways/rapyd.rb +258 -0
  203. data/lib/active_merchant/billing/gateways/realex.rb +154 -52
  204. data/lib/active_merchant/billing/gateways/redsys.rb +488 -161
  205. data/lib/active_merchant/billing/gateways/s5.rb +247 -0
  206. data/lib/active_merchant/billing/gateways/safe_charge.rb +298 -0
  207. data/lib/active_merchant/billing/gateways/sage.rb +404 -133
  208. data/lib/active_merchant/billing/gateways/sage_pay.rb +145 -109
  209. data/lib/active_merchant/billing/gateways/sallie_mae.rb +13 -15
  210. data/lib/active_merchant/billing/gateways/secure_net.rb +62 -54
  211. data/lib/active_merchant/billing/gateways/secure_pay.rb +32 -42
  212. data/lib/active_merchant/billing/gateways/secure_pay_au.rb +36 -27
  213. data/lib/active_merchant/billing/gateways/secure_pay_tech.rb +14 -16
  214. data/lib/active_merchant/billing/gateways/securion_pay.rb +265 -0
  215. data/lib/active_merchant/billing/gateways/simetrik.rb +362 -0
  216. data/lib/active_merchant/billing/gateways/skip_jack.rb +52 -54
  217. data/lib/active_merchant/billing/gateways/smart_ps.rb +51 -60
  218. data/lib/active_merchant/billing/gateways/so_easy_pay.rb +29 -29
  219. data/lib/active_merchant/billing/gateways/spreedly_core.rb +108 -43
  220. data/lib/active_merchant/billing/gateways/stripe.rb +536 -120
  221. data/lib/active_merchant/billing/gateways/stripe_payment_intents.rb +516 -0
  222. data/lib/active_merchant/billing/gateways/swipe_checkout.rb +19 -25
  223. data/lib/active_merchant/billing/gateways/telr.rb +273 -0
  224. data/lib/active_merchant/billing/gateways/tns.rb +16 -217
  225. data/lib/active_merchant/billing/gateways/trans_first.rb +148 -34
  226. data/lib/active_merchant/billing/gateways/trans_first_transaction_express.rb +612 -0
  227. data/lib/active_merchant/billing/gateways/transact_pro.rb +222 -0
  228. data/lib/active_merchant/billing/gateways/transax.rb +6 -8
  229. data/lib/active_merchant/billing/gateways/transnational.rb +1 -2
  230. data/lib/active_merchant/billing/gateways/trexle.rb +221 -0
  231. data/lib/active_merchant/billing/gateways/trust_commerce.rb +162 -89
  232. data/lib/active_merchant/billing/gateways/usa_epay.rb +5 -6
  233. data/lib/active_merchant/billing/gateways/usa_epay_advanced.rb +332 -236
  234. data/lib/active_merchant/billing/gateways/usa_epay_transaction.rb +185 -72
  235. data/lib/active_merchant/billing/gateways/vanco.rb +294 -0
  236. data/lib/active_merchant/billing/gateways/verifi.rb +52 -53
  237. data/lib/active_merchant/billing/gateways/viaklix.rb +19 -31
  238. data/lib/active_merchant/billing/gateways/visanet_peru.rb +250 -0
  239. data/lib/active_merchant/billing/gateways/vpos.rb +220 -0
  240. data/lib/active_merchant/billing/gateways/webpay.rb +9 -9
  241. data/lib/active_merchant/billing/gateways/wepay.rb +108 -62
  242. data/lib/active_merchant/billing/gateways/wirecard.rb +52 -43
  243. data/lib/active_merchant/billing/gateways/wompi.rb +193 -0
  244. data/lib/active_merchant/billing/gateways/world_net.rb +345 -0
  245. data/lib/active_merchant/billing/gateways/worldpay.rb +725 -121
  246. data/lib/active_merchant/billing/gateways/worldpay_online_payments.rb +208 -0
  247. data/lib/active_merchant/billing/gateways/worldpay_us.rb +79 -39
  248. data/lib/active_merchant/billing/gateways.rb +8 -11
  249. data/lib/active_merchant/billing/model.rb +2 -2
  250. data/lib/active_merchant/billing/network_tokenization_credit_card.rb +39 -0
  251. data/lib/active_merchant/billing/payment_token.rb +1 -1
  252. data/lib/active_merchant/billing/rails.rb +1 -1
  253. data/lib/active_merchant/billing/response.rb +19 -13
  254. data/lib/active_merchant/billing/three_d_secure_eci_mapper.rb +27 -0
  255. data/lib/active_merchant/billing.rb +3 -0
  256. data/lib/active_merchant/connection.rb +196 -0
  257. data/lib/active_merchant/country.rb +13 -8
  258. data/lib/active_merchant/errors.rb +6 -0
  259. data/lib/active_merchant/net_http_ssl_connection.rb +11 -0
  260. data/lib/active_merchant/network_connection_retries.rb +78 -0
  261. data/lib/active_merchant/post_data.rb +26 -0
  262. data/lib/active_merchant/posts_data.rb +92 -0
  263. data/lib/active_merchant/version.rb +1 -1
  264. data/lib/active_merchant.rb +14 -59
  265. data/lib/activemerchant.rb +1 -1
  266. data/lib/certs/cacert.pem +3214 -0
  267. data/lib/support/gateway_support.rb +8 -10
  268. data/lib/support/outbound_hosts.rb +13 -10
  269. data/lib/support/ssl_verify.rb +9 -14
  270. data/lib/support/ssl_version.rb +86 -0
  271. metadata +136 -94
  272. checksums.yaml.gz.sig +0 -1
  273. data/lib/active_merchant/billing/gateways/app55.rb +0 -176
  274. data/lib/active_merchant/billing/gateways/barclays_epdq.rb +0 -314
  275. data/lib/active_merchant/billing/gateways/certo_direct.rb +0 -278
  276. data/lib/active_merchant/billing/gateways/ideal/ideal_base.rb +0 -246
  277. data/lib/active_merchant/billing/gateways/ideal/ideal_rabobank.pem +0 -13
  278. data/lib/active_merchant/billing/gateways/ideal/ideal_response.rb +0 -29
  279. data/lib/active_merchant/billing/gateways/ideal_rabobank.rb +0 -66
  280. data/lib/active_merchant/billing/gateways/moneris_us.rb +0 -291
  281. data/lib/active_merchant/billing/gateways/sage/sage_bankcard.rb +0 -87
  282. data/lib/active_merchant/billing/gateways/sage/sage_core.rb +0 -114
  283. data/lib/active_merchant/billing/gateways/sage/sage_vault.rb +0 -149
  284. data/lib/active_merchant/billing/gateways/sage/sage_virtual_check.rb +0 -102
  285. data/lib/active_merchant/billing/gateways/vindicia.rb +0 -385
  286. data/lib/active_merchant/offsite_payments_shim.rb +0 -19
  287. data.tar.gz.sig +0 -0
  288. metadata.gz.sig +0 -0
data/CHANGELOG CHANGED
@@ -1,5 +1,2168 @@
1
+
1
2
  = ActiveMerchant CHANGELOG
2
3
 
4
+ == HEAD
5
+
6
+ == Version 1.126.0 (April 15th, 2022)
7
+ * Moneris: Add 3DS MPI field support [esmitperez] #4373
8
+ * StripePI: Add ability to change payment_method_type to confirm_intent [aenand] #4300
9
+ * GlobalCollect: Improve support for Naranja and Cabal card types [dsmcclain] #4286
10
+ * Payflow: Add support for stored credentials [ajawadmirza] #4277
11
+ * Orbital: Don't void $0 auths for Verify [javierpedrozaing] #2487
12
+ * StripePI: Enable Apple Pay and Google Pay payment methods [gasb150] #4252
13
+ * PaySafe: Update `unstore` method and authorization for redact [ajawadmirza] #4294
14
+ * CyberSource: Add `national_tax_indicator` fields in authorize and purchase [ajawadmirza] #4299
15
+ * NMI: Update gateway credentials to accept security_key [javierpedrozaing] #4302
16
+ * PaySafe: Fix commit for `unstore` method [ajawadmirza] #4303
17
+ * Ebanx: Add support for `order_number` field [ali-hassan] #4304
18
+ * BlueSnap: Add support for `idempotency_key` field [drkjc] #4305
19
+ * Paymentez: Update `capture` method to verify by otp for pending transactions [ajawadmirza] #4267
20
+ * BlueSnap: Update refund request and endpoint along with merchant transaction support [ajawadmirza] #4307
21
+ * DecidirPlus: Added `authorize`, `capture`, `void`, and `verify` methods [ajawadmirza] #4284
22
+ * Paymentez: Fix `authorize` to call `purchase` for otp flow [ajawadmirza] #4310
23
+ * Orbital: Indicate support for network tokenization [dsmcclain] #4309
24
+ * IPG: remove `uruguay` from supported countries [ajawadmirza] #4311
25
+ * Decidir: Add sub_payments sub-fields to gateway [meagabeth] #4315
26
+ * Priority: Add additional fields to purchase and capture requests [dsmcclain] #4301
27
+ * DecidirPlus: Added `unstore` method [ajawadmirza] #4317
28
+ * Decidir & Decidir Plus: Revise handling of `sub_payment` sub-fields [meagabeth] #4318
29
+ * DecidirPlus: Update `unstore` implementation to get token from params [ajawadmirza] #4320
30
+ * CyberSource: Add option for zero amount verify [gasb150] #4313
31
+ * PayU Latam: Refactor `message_from` method, fix failing remote tests [rachelkirk] #4326
32
+ * Adyen: Add currencies with three decimals places [gasb150] #4322
33
+ * GlobalCollect: Stregthen success criteria for void action [peteroas] #4324
34
+ * Priority Payment Systems - Clean up/refactor gateway file and tests [ali-hassan] #4327
35
+ * SafeCharge: change `verify` to send 0 amount [dsmcclain] #4332
36
+ * DLocal: add support for `force_type` field [dsmcclain] #4336
37
+ * Barclaycard SmartPay: Support more nonstandard currencies [jherreraa] #4335
38
+ * DecidirPlus: `name_override` option on `store` [naashton] #4338
39
+ * Priority: Update `add_purchases_data` to return if `options[:purchases]` is empty [drkjc] #4349
40
+ * Stripe PI: update `shipping` field to `shipping_address` [ajawadmirza] #4347
41
+ * DecidirPlus: Handle `payment_method_id` by `card_brand` [naashton] #4350
42
+ * DecidirPlus: `debit` and `payment_method_id` fields [naashton] #4351
43
+ * Adyen: Include Application ID in adyen authorize and purchase transactions [peteroas] #4343
44
+ * Priority: Add support for `replay_id` field [drkjc] #4352
45
+ * Stripe PI: standardize `shipping_address` fields [dsmcclain] #4355
46
+ * Airwallex: support gateway [therufs] #4342
47
+ * Litle: Translate google_pay as android_pay [javierpedrozaing] #4331
48
+ * Braintree: Add ACH support for store [cristian] #4285
49
+ * Simetrik: Add support for Simetrik gateway [simetrik-frank] #4339
50
+ * EBANX: Change amount for Mexico and Chile [flaaviaa] #4337
51
+ * DecidirPlus: Add `establishment_name`, `aggregate_data`, `sub_payments`, `card_holder_identification_type`, `card_holder_identification_number`, `card_door_number`, and `card_holder_birthday` fields [ajawadmirza] #4361
52
+ * DecidirPlus: Update `error_code_from` to get error reason id [ajawadmirza] #4364
53
+ * Dlocal: Add three_ds mpi support [cristian] #4345
54
+ * Stripe PI: Add `request_three_d_secure` field for `create_setup_intent` [aenand] #4365
55
+ * Adyen: Add `verify_amount` field for verify [ajawadmirza] #4369
56
+ * Stripe PI: Pass options for tokenizing Apple/Google Pay [gasb150] #4368
57
+ * Dlocal: Format 3DS mpi enrollment data correctly [cristian] #4371
58
+ * Airwallex: QA fixes for option handling [therufs] #4367
59
+ * CardConnect: Fixed duplicate(concat) Address sent - card_connect is concat. address1 and 2 causing a AVS error [ahmirza] #4362
60
+ * CyberSource: Remove Pinless Debit Transaction Functionality [peteroas] #4370
61
+ * Litle: Add support for Level 2 and 3 enhanced data [curiousepic] #4360
62
+ * Rapyd: Add gateway support [meagabeth] #4372
63
+ * CyberSource: Update and fix test coverage [peteroas] #4374
64
+ * Airwallex: QA fixes for address and create_setup_intent handling [therufs] #4377
65
+ * Airwallex: add `descriptor` field and update logic for sending `request_id` and `merchant_order_id` [dsmcclain] #4379
66
+ * Visanet Peru: use timestamp instead of random for purchaseNumber [therufs] #4093
67
+ * Orbital: add `verify_amount` field [ajawadmirza] #4376
68
+ * Credorax: add `recipient_street_address`, `recipient_city`, `recipient_province_code`, and `recipient_country_code` fields [ajawadmirza] #4384
69
+ * Airwallex: add support for stored credentials [drkjc] #4382
70
+ * Rapyd: Add metadata and ewallet_id options [naashton] #4387
71
+ * Priority: Add additional fields to request and refactor gateway integration [dsmcclain] #4383
72
+ * Rapyd: Update `type` option to `pm_type` [naashton] #4391
73
+ * Conekta: Fix remote test [javierpedrozaing] #4386
74
+ * NMI: Update post URL [jherreraa] #4380
75
+ * Multiple Gateways: Resolve when/case bug [naashton] #4399
76
+ * Airwallex: Add 3DS MPI support [drkjc] #4395
77
+ * Add Cartes Bancaires card bin ranges [leahriffell] #4398
78
+
79
+ == Version 1.125.0 (January 20, 2022)
80
+ * Wompi: support gateway [therufs] #4173
81
+ * Stripe Payment Intents: Add setup_purchase [aenand] #4178
82
+ * Ipg: Add new gateway [ajawadmirza] #4171
83
+ * Worldpay: Adding support for google pay and apple pay [cristian] #4180
84
+ * Worldpay: Adding scrubbing for network token transactions [cristian] #4181
85
+ * SafeCharge: Add sg_NotUseCVV field [ajawadmirza] #4177
86
+ * PayULatam: Correctly map maestro and condensa card types [dsmcclain] #4182
87
+ * StripePaymentIntents: Refactor response for setup_purchase [aenand] #4183
88
+ * Wompi: cast error messages to JSON [therufs] #4186
89
+ * NMI: Omit initial_transaction_id for CIT [aenand] #4189
90
+ * Priority: Support Priority Payment Systems gateway [jessiagee] #4166
91
+ * GlobalCollect: Support for Lodging Data [naashton] #4190
92
+ * IPG: Add support for sub-merchant and recurring type fields [ajawadmirza] # 4188
93
+ * Wompi: Support `installments` option [therufs] #4192
94
+ * Stripe PI: add support for `fulfillment_date` and `event_type` [dsmcclain] #4193
95
+ * Paysafe: Adjust logic for sending 3DS field [meagabeth] #4194
96
+ * Priority: Fix unit test cases [ajawadmirza] #4195
97
+ * EBANX: New Gateway Specific Receiver [spreedly-kledoux] #4198
98
+ * Wompi: Don't send CVV field if no CVV provided [therufs] #4199
99
+ * Worldpay: cleaning order_id according to worldpay rules [cristian] #4197
100
+ * Paysafe: Concatenate credentials for headers [meagabeth] #4201
101
+ * Stripe Payment Intents: Add metadata to setup_purchase [aenand] #4202
102
+ * Priority: Add gateway standard changes [ajawadmirza] #4200
103
+ * IPG: Add support for payment by token [ajawadmirza] #4191
104
+ * Element (Vantiv Express): Add support for general credit [dsmcclain] #4203
105
+ * Worldpay: Update supported countries list, currencies [jherreraa] #4207
106
+ * StripePI: Adding countries available. [gasb150] #4208
107
+ * Orbital: Adding google pay payment tests for Orbital. [ajawadmirza] #4205
108
+ * Bug: Fixing supported countries method when there is inheritance involved [cristian] #4211
109
+ * Mundipagg: Update success method [ajawadmirza] #4210
110
+ * Worldpay: Add support for Visa Direct Fast Funds Credit [dsmcclain] #4212
111
+ * Paysafe: Add support for stored credentials [meagabeth] #4214
112
+ * Worldpay: Adding missing countries to supported countries [cristian] #4213
113
+ * Update institution numbers for Canadian banks [therufs] #4216
114
+ * Worldpay: Set default eCommerce indicator for EMVCO network tokens [shasum] #4215
115
+ * Update handling routing numbers for Canadian banks [therufs] #4217
116
+ * Stripe: API version updated [jherreraa] #4209
117
+ * Mercado Pago: Update verify method [ajawadmirza] #4219
118
+ * DLocal: Set API Version [gasb150] #4222
119
+ * Wompi: Add support for Authorize and Capture [rachelkirk] #4218
120
+ * Priority: Update source and billing address checks [jessiagee] #4220
121
+ * Pin Payments: Add support for `diners_club`, `discover`, and `jcb` cardtypes [montdidier] #4142
122
+ * USA ePay: Add store method [ajawadmirza] #4224
123
+ * IPG: Quick fix to remove warning [ajawadmirza] #4225
124
+ * Remove YAML warning on load_fixtures_method [jherreraa] #4226
125
+ * Worldpay: Add support for tokenizing payment methods with transaction identifiers [dsmcclain] #4227
126
+ * USA ePay: Update implementation to send valid authorization [ajawadmirza] #4231
127
+ * USA ePay: Add store test, update authorize param [jessiagee] #4232
128
+ * Stripe: Update destination test account [jherreraa] #4234
129
+ * Add skip_response option on request check for commit stubs [cristian] #4223
130
+ * Pin Payments: Add support for `void` and New Zealand to supported countries. [montdidier] #4144
131
+ * Wompi: Update authorization in `capture` method. [rachelkirk] #4238
132
+ * IPG: Update authorization to support `store` method token. [ajawadmirza] #4233
133
+ * Paymentez: Update card mappings [ajawadmirza] #4237
134
+ * Priority: Update parsing for error messages [jessiagee] #4245
135
+ * GlobalCollect: Support for Airline Data [naashton] #4187
136
+ * IPG: Add `tpv_error_code` and `tpv_error_msg` fields [ajawadmirza] #4241
137
+ * StripePI: Set restriction for Apple/Google Pay [jherreraa] #4247
138
+ * Cashnet: support multiple itemcodes and amounts [peteroas] #4243
139
+ * IPG: Send default currency in `verify` and two digit `ExpMonth` [ajawadmirza] #4244
140
+ * Stripe: Add remote tests set up to avoid exceed the max external accounts limit [jherreraa] #4239
141
+ * Stripe: Add support for `radar_options: skip_rules` [dsmcclain] #4250
142
+ * CyberSource: Add `user_po`, `taxable`, `national_tax_indicator`, `tax_amount`, and `national_tax` fields [ajawadmirza] #4251
143
+ * Kushki: Add support for `metadata` [rachelkirk] #4253
144
+ * IPG: Add `redact` operation [ajawadmirza] #4254
145
+ * Wompi: Update sandbox and production endpoints [rachelkirk] #4255
146
+ * Orbital: Add `sca_merchant_initiated` operation [ajawadmirza] #4256
147
+ * Cashnet: convert amounts to integers for proper gateway handling [peteroas] #2207
148
+ * PayTrace: Add `unstore` operation [ajawadmirza] #4262
149
+ * Decidir Plus: Add gateway adapter [naashton] #4264
150
+ * CheckoutV2: Add support for Apple Pay and Google Pay tokens [AMHOL] #4235
151
+ * Decidir Plus: Update payment reference [naashton] #4271
152
+ * Paysafe: Update redact method [meagabeth] #4269
153
+ * CyberSource: Add `line_items` field in authorize method [ajawadmirza] #4268
154
+ * CheckoutV2: Support processing channel and marketplace sub entity ID [AMHOL] #4236
155
+ * Elavon: `third_party_token` bug fix [rachelkirk] #4273
156
+ * Decidir Plus: Add `sub_payments` field [naashton] #4274
157
+ * Pin Payments: Add `unstore` support [montdidier] #4276
158
+ * Orbital: Add support for $0 verify [javierpedrozaing] #4275
159
+ * Update inline documentation with all supported cardtypes [ali-hassan] #4283
160
+ * PayWay: Update endpoints, response code [jessiagee] #4281
161
+ * CyberSource: Add `line_items` for purchase [ajawadmirza] #4282
162
+ * Payflow Pro: Add `stored_credential` fields [ajawadmirza] #4277
163
+ * Decidir Plus: Add `fraud_detection` fields [naashton] #4289
164
+
165
+ == Version 1.124.0 (October 28th, 2021)
166
+ * Worldpay: Add Support for Submerchant Data on Worldpay [almalee24] #4147
167
+ * dlocal: Add device_id and ip to payer object and add additional_data [aenand] #4116
168
+ * Adyen: Add network tokenization support to Adyen gateway [mymir] #4101
169
+ * Adyen: Add ACH Support [almalee24] #4105
170
+ * Moka: Support 3DS endpoint and update test url [dsmcclain] #4110
171
+ * Paysafe: Adjust profile data [meagabeth] #4112
172
+ * Stripe Payment Intents: Add support for claim_without_transaction_id field [BritneyS] #4111
173
+ * Mit: Add New Gateway [EsporaInfra] #3820
174
+ * Routex: add card type [rachelkirk] #4115
175
+ * Orbital: Scrub Payment Cryptogram [naashton] #4121
176
+ * Paysafe: Add support for airline fields [meagabeth] #4120
177
+ * Stripe and Stripe PI: Add Radar Session Option [tatsianaclifton] #4119
178
+ * PayArc: Fix billing address nil and phone_number issues [dsmcclain] #4114
179
+ * Routex: Update BIN numbers [rachelkirk] #4123
180
+ * UnionPay: Add Stripe's UnionPay test card to UnionPay BIN range #4122
181
+ * GlobalCollect: Support URL override [naashton] #4127
182
+ * PayConex: scrub bank account info from transcripts [mbreenlyles] #4128
183
+ * Moka: Remove additional transaction data from subsequent calls [naashton] #4129
184
+ * Moka: Ensure CvcNumber can be an empty string [jessiagee] #4130
185
+ * Maestro: Allow more card lengths for Luhnless bins [therufs] #4131
186
+ * Paysafe: Update supported countries [meagabeth] #4135
187
+ * Paysafe: Update field mapping for split_pay [meagabeth] #4136
188
+ * SafeCharge: Add handling for non-fractional currencies [dsmcclain] #4137
189
+ * CardStream: Support passing country_code in request [dsmcclain] #4139
190
+ * Adyen: Adjust phone number mapping [aenand] #4138
191
+ * Mit: Change how parameters are converted to JSON [tatsianaclifton] #4140
192
+ * Stripe: Add account_number to scrubbing [aenand] #4145
193
+ * Stripe PI: add name on card to billing_details [dsmcclain] #4146
194
+ * TrustCommerce: Scrub bank account info [mbreenlyles] #4149
195
+ * TransFirst: Scrub account number [aenand] #4152
196
+ * Paysafe: Update supported countries list [meagabeth] #4154
197
+ * dLocal: Update supported countries list [mbreenlyles] #4155
198
+ * SafeCharge: Add support for email field in capture [rachelkirk] #4153
199
+ * Paysafe: Remove invalid code [meagabeth] #4156
200
+ * NMI: Add descriptor fields [ajawadmirza] #4157
201
+ * Authorize.net: Add tests for scrubbing banking account info (in addition to BluePay, BridgePay, Forte, HPS, and Vanco Gateways)[aenand] #4159
202
+ * Moka: Send refund amount with decimal [dsmcclain] #4160
203
+ * GlobalCollect: Append URI to the URL [naashton] #4162
204
+ * Adyen: Add application info fields [aenand] #4163
205
+ * Adyen: Send NTID from stored cred hash [curiousepic] #4164
206
+ * Payflow: use proper case for 3DS 2.x element names [bbraschi] #4113
207
+ * Realex: Add support for stored credentials [dsmcclain] #4170
208
+ * Moka: Add support for InstallmentNumber field [dsmcclain] #4172
209
+ * Payflow: include AuthenticationStatus for 3DS 2.x [bbraschi] #4168
210
+
211
+ == Version 1.123.0 (September 10th, 2021)
212
+ * Paysafe: Add gateway integration [meagabeth] #4085
213
+ * Elavon: Support recurring transactions with stored credentials [cdmackeyfree] #4086
214
+ * Orbital: Truncate three_d_secure[:version] [carrigan] #4087
215
+ * Credorax: Determine ISK decimal by datetime [curiousepic] #4088
216
+ * Moka: support new gateway type [dsmcclain] #4089
217
+ * Paymentez: Add more_info field [reblevins] #4091
218
+ * Worldpay: Support $0 auth [therufs] #4092
219
+ * Elavon: Support recurring transactions with token, revert stored credentials recurring [cdmackeyfree] #4089
220
+ * SafeCharge(Nuvei): Add support for product_id [rachelkirk] #4095
221
+ * NMI: Change cardholder_auth 3DS field population [carrigan] #4094
222
+ * Synchrony: add card type [therufs] #4096
223
+ * Maestro: support BINs without Luhn check [therufs] #4097
224
+ * Maestro: support BINs [therufs] #4098
225
+ * Redsys: Route MIT Exemptions to webservice endpoint [curiousepic] #4081
226
+ * Adyen: Update Classic Integration API to v64 and Recurring API to v49 [almalee24] #4090
227
+ * Payeezy: support soft_descriptor and merchant_ref [cdmackeyfree] #4099
228
+ * Elavon: add ssl_token field [cdmackeyfree] #4100
229
+ * Credorax: Remove special logic for ISK [curiousepic] #4102
230
+ * UnionPay: Pull UnionPay's 62* BIN ranges out of Discover's #4103
231
+ * Monei: Update Creation of Billing Details [tatsianaclifton] #4107
232
+ * Monei: Typo Correction on Billing Details [tatsianaclifton] #4108
233
+ * Paysafe: Add support for 3DS [meagabeth] #4109
234
+
235
+ == Version 1.122.0 (August 3rd, 2021)
236
+ * Orbital: Correct success logic for refund [tatsianaclifton] #4014
237
+ * usaepay: Added pin gateway setting [DustinHaefele] #4026
238
+ * MercadoPago: Added external_reference, more payer object options, and metadata field [DustinHaefele] #4020
239
+ * Element: Add duplicate_override_flag [almalee24] #4012
240
+ * PayTrace: Support gateway [meagabeth] #3985
241
+ * vPOS: Support credit + refund [therufs] #3998
242
+ * PayArc: Support gateway [senthil-code] #3974
243
+ * NMI: Support cardholder_auth field for 3DS2 [cdmackeyfree] #4002
244
+ * Confiable: Support cardtype [therufs] #4004
245
+ * Maestro: Add BIN [therufs] #4003
246
+ * PayULatam: Ensure phone number is pulled from shipping_address correctly [dsmcclain] #4005
247
+ * SafeCharge: Add challenge_preference for 3DS [klaiv] #3999
248
+ * Adyen: Pass networkTxReference in all transactions [naashton] #4006
249
+ * Adyen: Ensure correct transaction reference is selected [dsmcclain] #4007
250
+ * PayTrace: Support level_3_data fields [meagabeth] #4008
251
+ * BluePay: Add support for Stored Credentials [dsmcclain] #4009
252
+ * Orbital: Add support for SCARecurringPayment [jessiagee] #4010
253
+ * Braintree: Support recurring_first and moto reasons [curiousepic] #4013
254
+ * PayTrace: Adjust capture method [meagabeth] #4015
255
+ * BarclaysEpdqExtraPlus: updated custom_eci test + remote tests [yyapuncich] #4022
256
+ * CyberSource: Add customerID field [deemeyers] #4025
257
+ * CyberSource: Adjust Auth [naashton] #3956
258
+ * Valid Canadian Institution Numbers [naashton] #4024
259
+ * PayTrace: Adjust purchase and capture methods to handle MultiResponse scenarios [meagabeth] #4027
260
+ * Payflow: Add support for MERCHDESCR field [rachelkirk] #4028
261
+ * PayTrace: Support $0 authorize in verify method [meagabeth] #4030
262
+ * PayArc: Add error_code in response [cdm-83] #4021
263
+ * Update bank routing account validation check [jessiagee] #4029
264
+ * Kushki: Add 'contactDetails' fields [mbreenlyles] #4033
265
+ * Adyen: Truncating order_id and remote test [yyapuncich] #4036
266
+ * CyberSource: Allow string content for Ignore AVS/CVV flags [curiousepic] #4043
267
+ * Decidir: Update validation error message handling [arbianchi] #4042
268
+ * Authorize.net: Remove cardholderAuthentication for non-3DS transactions [BritneyS] #4045
269
+ * BlueSnap: Handle 429 errors [britth] #4044
270
+ * Orbital: Update unit test files [meagabeth] #4046
271
+ * Orbital: Strip null characters from responses [britth] #4041
272
+ * Merchant Warrior: Handle invalid XML responses [arbianchi] #4047
273
+ * Braintree: Fix NoMethodError for failed card verification [molbrown] #4048
274
+ * Worldpay: Accepting 3DS1 and 3DS2 authentication data from external MPI [chandan-PS] #4017
275
+ * PayArc: Currency and parameters updates [jessiagee] #4051
276
+ * Elavon: Add support for special characters [mbreenlyles] #4049
277
+ * PayArc: Formatting CC month, adding tax_rate, removing default void reason [jessiagee] #4053
278
+ * Kushki: Add support for fullResponse field [rachelkirk] #4057
279
+ * Element: Add support for `MerchantDescriptor` field [BritneyS] #4058
280
+ * PayArc: Added email and phone to credit and charge [jessiagee] #4056
281
+ * Mundipagg: Added support for 'authentication_secret_key' for 'api_key' overwrite [DustinHaefele] #4059
282
+ * Payflow: Raise an error if store method is called [dsmcclain] #4066
283
+ * Monei: JSON API implementation [jimmyn] #3613
284
+ * Maestro: Update BINs [therufs] #4067
285
+ * Monei: Change domain to monei.com [jimmyn] #4068
286
+ * Spreedly: Support gateway_specific_response_fields in response params [abarrak] #4064
287
+ * Payeezy: Add support for `add_soft_descriptors` [rachelkirk] #4069
288
+ * Stripe Payment Intents: Add support for network_transaction_id field [cdmackeyfree] #4060
289
+ * Worldpay: Support 'CAPTURED' response for authorize transactions [naashton] #4070
290
+ * Ingenico (Global Collect): New idempotence key header [BritneyS] #4073
291
+ * PayTrace: Adjust handling of line_items subfields [meagabeth] #4074
292
+ * Worldpay: Correct Expiration Year Format [tatsianaclifton] #4076
293
+ * Monei: Improve Scrub Regex [tatsianaclifton] #4072
294
+ * Payflow: add THREEDSVERSION and DSTRANSACTIONID when present [bbraschi] #4075
295
+ * CT Payments: update remote tests [cdmackeyfree] #3947
296
+ * Orbital: Ensure full e-check scrubbing [mbreenlyles] #4079
297
+
298
+ == Version 1.121 (June 8th, 2021)
299
+ * Braintree: Lift restriction on gem version to allow for backwards compatibility [naashton] #3993
300
+ * Payment Express/Windcave: Send amount on verify calls [cdmackeyfree] #3995
301
+ * Orbital: Use billing_address name as fallback [curiousepic] #3966
302
+ * vPOS: handle shop_process_id correctly [therufs] #3996
303
+ * Checkout v2: Support metadata field [saschakala] #3992
304
+ * Adyen: Support networkTxReference field [naashton] #3997
305
+ * Paypal Express: Enable PayPal express reference transaction request to send merchant session id [janees-e] #3994
306
+
307
+ == Version 1.120.0 (May 28th, 2021)
308
+ * Braintree: Bump required braintree gem version to 3.0.1
309
+ * Stripe PI: ensure `setup_future_sage` and `off_session` work when using SetupIntents.
310
+ * Orbital: Update commit to accept retry_logic in params [jessiagee] #3890
311
+ * Orbital: Update remote 3DS tests [jessiagee] #3892
312
+ * Mercado Pago: support Creditel card type [therufs] #3893
313
+ * Payeezy: Update error mapping [meagabeth] #3896
314
+ * HPS: Add support for stored_credential [cdmackeyfree] #3894
315
+ * Orbital: Ensure payment_detail sends for ECP [jessiagee] #3899
316
+ * Payeezy: Update `error_code_from` method [meagabeth] #3900
317
+ * Worldpay: Add support for `statementNarrative` field [meagabeth] #3901
318
+ * Mercado Pago: Give ability to pass capture option in authorize txn field [naashton] #3897
319
+ * Orbital: Ensure correct fields sent in refund [jessiagee] #3903
320
+ * WorldPay: remove some defaults in billing address [carrigan] #3902
321
+ * Adyen: Support for General Credit [naashton] #3904
322
+ * Worldpay: reintroduce address1 and city defaults [carrigan] #3905
323
+ * Stripe: ensure potentially nested data is scrubbed #3907
324
+ * Stripe PI: Send Validate on Payment Method Attach [tatsianaclifton] #3909
325
+ * Adyen: Update handling of authorization returned from gateway [meagabeth] #3910
326
+ * Update gateway templates for Rubocop compliance [therufs] #3912 #3895
327
+ * Orbital: Send AVSname for all eCheck transactions [jessiagee] #3911
328
+ * Litle: update support of customerId field [cdmackeyfree] #3913
329
+ * Payment Express: fix signature for `verify` [therufs] #3914
330
+ * Forte: Send xdata fields [dsmcclain] #3915
331
+ * PaywayDotCom: Add New Gateway [DanAtPayway] #3898
332
+ * Orbital: Remove unnecessary requirements [jessiagee] #3917
333
+ * SafeCharge (Nuvei): Add network tokenization support [DStoyanoff] #3847
334
+ * Stripe PI: Enhance testing of SetupIntents API #3908
335
+ * SafeCharge (Nuvei): Fix NT related bug [jimilpatel24] #3921
336
+ * Worldpay: Only override cardholdername for 3ds tests [curiousepic] #3918
337
+ * Orbital: Add support for general credit [meagabeth] #3922
338
+ * Banco Sabadell: Ensure sca_exemption field is used #3923
339
+ * Redsys: Refactor XML character escape logic #3925
340
+ * HPS: Strip zip codes of non-alphanumeric characters [dsmcclain] #3926
341
+ * Orbital: $0 PreNote using authorize for eCheck force_capture [jessiagee] #3927
342
+ * Worldpay: synchronous response changes [naashton] #3928
343
+ * PaywayDotCom: Add more thorough scrubbing [tatsianaclifton] #3929
344
+ * Remove CONTRIBUTING.md and update README.md to reflect new repository wiki [dsmcclain] #3930
345
+ * Qvalent: Add customer_reference_number [fredo-] #3931
346
+ * Orbital: Add 'ND' ECPActionCode to $0 Prenote Check [jessiagee] #3935
347
+ * Checkout: Add support for stored_credential [meagabeth] #3934
348
+ * Credorax: Add support for 3ds_reqchallengeind [dsmcclain] #3936
349
+ * Adyen: cancelOrRefund endpoint when passed as option [naashton] #3937
350
+ * Qvalent: Add customer reference number FIX [fredo-] #3939
351
+ * Orbital: Pass line_items in capture [jessiagee] #3941
352
+ * BraintreeBlue: Add support for $0 auth verification [meagabeth] #3944
353
+ * JCB: Add additional BIN ranges [dsmcclain] #3946
354
+ * vPOS: Support new gateway type [therufs] #3906
355
+ * Braintree: Add support for AVS and CVV results in $0 credit card verification transactions [meagabeth] #3951
356
+ * Braintree: Return cvv_code and avs_code in response [meagabeth] #3952
357
+ * vPOS: Stringify values [therufs] #3954
358
+ * Payeezy: Send level2 fields [dsmcclain] #3953
359
+ * Credorax: adjust logic for sending 3ds shipping address fields [dsmcclain] #3959
360
+ * Orbital: Ensure ECP always sends AVSName [jessiagee] #3963
361
+ * Orbital: Add middle name to EWSMiddleName for ECP [jessiagee] #3962
362
+ * Support Canadian Bank Accounts [naashton] #3964
363
+ * Windcave/Payment Express: Add support for AvsAction and EnableAVSData fields [meagabeth] #3967
364
+ * CyberSource: Update XML tag for merchantDefinedData [meagabeth] #3969
365
+ * Elavon: Send ssl_vendor_id field [dsmcclain] #3972
366
+ * Credorax: Add support for `echo` field [meagabeth] #3973
367
+ * Worldpay: support cancelOrRefund via options [therufs] #3975
368
+ * Payeezy: support general credit [cdmackeyfree] #3977
369
+ * Ripley and Hipercard: Add BIN ranges [naashton] #3978
370
+ * Adyen: Default card holder name for credit cards [shasum] #3980
371
+ * PaywayDotCom: make `source_id` a required field [dsmcclain] # 3981
372
+ * Qvalent: remove `pem_password` from required credentials [dsmcclain] #3982
373
+ * Authorize.net: Fix stored credentials [tatsianaclifton] #3971
374
+ * CyberSource: Add support for multiple new fields [dsmcclain] #3984
375
+ * CASHNet: Update gateway adapter [dsmcclain] #3986
376
+ * Elavon: Send `ssl_vendor_id` field via options on gateway initialization [dsmcclain] #3989
377
+
378
+ == Version 1.119.0 (February 9th, 2021)
379
+ * Payment Express: support verify/validate [therufs] #3874
380
+ * GlobalCollect: Truncate address fields [meagabeth] #3878
381
+ * Litle: Truncate address fields [meagabeth] #3877
382
+ * Netbanx: Add-customer-information(name,email,IP)-to-a-transaction [rockyhakjoong] #3754
383
+ * Netbanx: Adjust the avs and cvv return code in shopify [rockyhakjoong] #3833
384
+ * Decidir: Improve error mapping [meagabeth] #3875
385
+ * Worldpay: support `skip_capture` [therufs] #3879
386
+ * Redsys: Add new response code text [britth] #3880
387
+ * Orbital: Update ECP details to use payment source [jessiagee] #3881
388
+ * Alelo: Add additional BIN ranges [meagabeth] #3882
389
+ * HPS: Update Add support for general credit [naashton] #3885
390
+ * Elavon: Fix issue with encoding data sent in the request [naashton] #3865
391
+ * Orbital: Update ECP to use EWS verification [jessiagee] #3886
392
+ * Eway: Add 3ds field when do direct payment [GavinSun9527] #3860
393
+ * Support Creditel cardtype [therufs] #3883
394
+ * Elavon: Remove ampersand char from fields [naashton] #3891
395
+
396
+ == Version 1.118.0 (January 22nd, 2021)
397
+ * Worldpay: Add support for challengeWindowSize [carrigan] #3823
398
+ * Adyen: Update capitalization on subMerchantId field [cdmackeyfree] #3824
399
+ * Maestro and Elo: Update BIN ranges [meagabeth] #3822
400
+ * HPS: Truncate invoice numbers that are too long [curiousepic] #3825
401
+ * Pass network_transaction_id attribute in Response [therufs] #3815
402
+ * Elavon: support standardized stored credentials [therufs] #3816
403
+ * Decidir: update fraud_detection field [cdmackeyfree] #3829
404
+ * Paymentez: Add Olimpica cardtype [meagabeth] #3831
405
+ * SafeCharge: 3DS external MPI data refinements [curiousepic] #3821
406
+ * Credorax: Add support for 3DS Adviser [meagabeth] #3834
407
+ * Adyen: Support subMerchant data [mymir][therufs] #3835
408
+ * Decidir: add device_unique_identifier to card data [cdmackeyfree] #3839
409
+ * BraintreeBlue: add support for account_type field [jimilpatel24] #3840
410
+ * Redsys: Add support for stored_credential [meagabeth] #3844
411
+ * Redsys: add_payment method solution [meagabeth] #3845
412
+ * Stripe Payment Intents: Add support for error_on_requires_action option [tatsianaclifton] #3846
413
+ * Add 3DS 2.0 values to paypal [nebdil] #3285
414
+ * Redsys: Update Mpi Fields [tatsianaclifton] #3855
415
+ * Paypal: Update AuthStatus3ds MPI field [curiousepic] #3857
416
+ * Orbital: Update 3DS support for Mastercard [meagabeth] #3850
417
+ * Payeezy: Support standardized stored credentials [therufs] #3861
418
+ * CyberSource: Update `billing_address` override [meagabeth] #3862
419
+ * Paymentez: Add 3DS MPI field support [carrigan] #3856
420
+ * BlueSnap: Add support `fraud-session-id` field [meagabeth] #3863
421
+ * BlueSnap: Update handling of `transaction-fraud-info` fields [meagabeth] #3866
422
+ * Payeezy: Allow no stored credential transaction id [therufs] #3868
423
+ * Orbital: eCheck processing added [ajawadmirza] #3870
424
+ * FirsdataE4V27: Fixes some apple pay transaction issues [pi3r] #3872
425
+
426
+ == Version 1.117.0 (November 13th)
427
+ * Checkout V2: Pass attempt_n3d along with 3ds enabled [naashton] #3805
428
+ * GlobalCollect: Add support for Third-party 3DS2 data [molbrown] #3801
429
+ * Authorize.net: Pass stored credentials [therufs] #3804
430
+ * Authorize.net: Don't pass isFirstRecurringPayment [therufs] #3805
431
+ * Litle: Add support for general credit transactions [naashton] #3807
432
+ * Redsys: Add 3DS2 Integration Support [esmitperez] #3794
433
+ * Cybersource: Use firstname/lastname from address instead of the payment method [pi3r] #3798
434
+ * Add MPI functionality for SafeCharge gateway [daniel] #3809
435
+ * SafeCharge: Standardize MPI fields [curiousepic] #3809
436
+ * Credorax: Adds AMEX to supported cards and adds 1A error code [LinTrieu] #3792
437
+ * Stripe PI: Pass external 3DS auth data [curiousepic] #3811
438
+ * Credorax: Allow 3DS1 normalized pass-through, ease version matching [britth] #3812
439
+ * Redsys: Redsys: Harden 3DS v1/v2 check for External MPI [esmitperez] #3814
440
+ * Add card types for Stripe, Worldpay, Checkout.com [LinTrieu] #3810
441
+ * ActiveMerchant::Billing::Response: Include `network_transaction_id` attribute [therufs] #3815
442
+
443
+ == Version 1.116.0 (October 28th)
444
+ * Remove Braintree specific version dependency [pi3r] #3800
445
+
446
+ == Version 1.115.0 (October 27th)
447
+ * Checkout v2: $0 Auth on gateway [jessiagee] #3762
448
+ * Adyen: Safely add execute_threeds: false [curiousepic] #3756
449
+ * RuboCop: Fix Layout/SpaceAroundEqualsInParameterDefault [leila-alderman] #3720
450
+ * iATS: Allow email to be passed outside of the billing_address context [naashton] #3750
451
+ * Orbital: Don't pass xid for transactions using network tokens [britth] #3757
452
+ * Forte: Add service_fee_amount field [meagabeth] #3751
453
+ * WorldPay: Add support for idempotency_key[cdmackeyfree] #3759
454
+ * Orbital: Handle line_tot key as a string [naashton] #3760
455
+ * RuboCop: Fix Lint/UnusedMethodArgument [leila-alderman] #3721
456
+ * RuboCop: Fix Naming/MemoizedInstanceVariableName [leila-alderman] #3722
457
+ * RuboCop: Fix Style/BlockComments [leila-alderman] #3729
458
+ * Checkout V2: Move to single-transaction Purchases [curiousepic] #3761
459
+ * RuboCop: Fix Naming/ConstantName [leila-alderman] #3723
460
+ * Orbital: Fix schema errors [britth] #3766
461
+ * Checkout V2: Start testing via amount code [curiousepic] #3767
462
+ * CyberSource: Don't include empty `mdd_` fields [arbianchi] #3758
463
+ * RuboCop: Fix Naming/VariableNumber [leila-alderman] #3725
464
+ * Update BIN ranges for Elo cardtype [cdmackeyfree] #3769
465
+ * Orbital: Resolve CardIndicators issue [meagabeth] #3771
466
+ * Adyen: Add subMerchant fields [naashton] #3772
467
+ * PayPal Express: reduce param requirements [shasum] #3773
468
+ * PayU Latam: Support partial refunds [leila-alderman] #3774
469
+ * RuboCop: Fix Style/Alias [leila-alderman] #3727
470
+ * Stripe PI: Allow `on_behalf_of` to be passed alone #3776
471
+ * RuboCop: Fix Performance/RedundantMatch [leila-alderman] #3765
472
+ * RuboCop: Fix Layout/MultilineMethodCallBraceLayout [leila-alderman] #3763
473
+ * NMI: Add standardized 3DS fields [meagabeth] #3775
474
+ * Mundipagg: Add support for SubMerchant fields [meagabeth] #3779
475
+ * Stripe Payment Intents: Add request_three_d_secure option [molbrown] #3787
476
+ * Decidir: Add support for csmdds fields [naashton] #3786
477
+ * RuboCop: Fix Performance/StringReplacement [leila-alderman] #3782
478
+ * RuboCop: Fix Naming/HeredocDelimiterCase & Naming [leila-alderman] #3781
479
+ * BlueSnap: Add address fields to contact info [naashton] #3777
480
+ * RuboCop: Fix Layout/SpaceInsideHashLiteralBraces [leila-alderman] #3780
481
+ * RuboCop: Fix Style/AndOr [leila-alderman] #3783
482
+ * Checkout V2: Support ability to pass attempt_n3d 3ds field [naashton] #3788
483
+ * Elavon: Upgrade to `processxml.do` [therufs] #3784
484
+ * Checkout V2: Support for attempt_n3d 3DS field [naashton] #3790
485
+ * Elavon: Strip ampersands [therufs] #3795
486
+ * Paybox: Add support for 3DS 1.0 values [jcpaybox] #3335
487
+ * Decidir: Add additional fraud_detection options [cdmackeyfree] #3812
488
+
489
+ == Version 1.114.0
490
+ * BlueSnap: Add address1,address2,phone,shipping_* support #3749
491
+ * BlueSnap: Protect against `nil` metadata [carrigan] #3752
492
+ * Cybersource: [CyberSource] Ensure the default address doesn't override `ActionController::Parameters` [pi3r] #3755
493
+
494
+ == Version 1.113.0
495
+ * Orbital: Add cardIndicators field [meagabeth] #3734
496
+ * Openpay: Add Colombia to supported countries [molbrown] #3740
497
+ * Mercado Pago: Update Device Id Header field [cdmackeyfree] #3741
498
+ * RuboCop: Fix Style/TrailingCommaInHashLiteral [leila-alderman] #3718
499
+ * RuboCop: Fix Naming/PredicateName [leila-alderman] #3724
500
+ * RuboCop: Fix Style/Attr [leila-alderman] #3728
501
+ * Payflow: Use application_id to set buttonsource [britth] #3737
502
+ * HPS: Enable refunds using capture transaction [britth] #3738
503
+ * Quickbooks: Omit empty strings in address [leila-alderman] #3743
504
+ * BlueSnap: Add transactionMetaData support #3745
505
+ * Orbital: Fix typo in PC3DtlLineTot field [naashton] #3736
506
+ * Credorax: Send first and last name parameters for CFT transactions [britth] #3748
507
+ * Orbital: Update CardIndicators field to fix bug [meagabeth] #3746
508
+ * CyberSource: Always send default address [leila-alderman] #3747
509
+ * Netbanx: Reject partial refund on pending status [rockyhakjoong] #3735
510
+
511
+ == Version 1.112.0
512
+ * Cybersource: add `maestro` and `diners_club` eci brand mapping [bbraschi] #3708
513
+ * Cybersource: Ensure Partner Solution Id placement conforms to schema [britth] #3715
514
+ * Adyen: Adyen: Pass `subMerchantId` as `additionalData` [naashton] #3714
515
+ * Litle: Omit checkNum when nil [leila-alderman] #3719
516
+ * PayU Latam: Improve error response [esmitperez] #3717
517
+ * Vantiv: Vantiv Express - CardPresentCode, PaymentType, SubmissionType, DuplicateCheckDisableFlag [esmitperez] #3730,#3731
518
+ * Cybersource: Ensure issueradditionaldata comes before partnerSolutionId [britth] #3733
519
+
520
+ == Version 1.111.0
521
+ * Fat Zebra: standardized 3DS fields and card on file extra data for Visa scheme rules [montdidier] #3409
522
+ * Realex: Change 3DSecure v1 message_version to a valid format [shuhala] #3702
523
+ * Ingenico/ GlobalCollect: Add field for installments [cdmackeyfree] #3707
524
+ * Cybersource: do not send 3DS fields if 'cavv` is missing and `commerceIndicator` is inferred [bbraschi] #3712
525
+
526
+ == Version 1.110.0
527
+ * FirstData e4 v27+: Strip linebreaks from address [curiousepic] #3693
528
+ * Adyen: Change shopper_email to email and shopper_ip to ip [rikterbeek] #3675
529
+ * FirstData e4 v27+ Fix strip_line_breaks method [carrigan] #3695
530
+ * Cybersource: Set authorization on the response even when in fraud review [pi3r] #3701
531
+ * Cybersource: Add fields to override stored creds [leila-alderman] #3689
532
+ * Cybersource: Conditionally find stored credentials [therufs] #3696 #3697
533
+ * Cybersource: Update logic to send cavv as xid for 3DS2 [douglas] #3699
534
+ * Credorax: Default 3ds_browsercolordepth to 32 when passed as 30 [britth] #3700
535
+
536
+ == Version 1.109.0
537
+ * Remove reference to `Billing::Integrations` [pi3r] #3692
538
+ * DLocal: Handle nil address1 [molbrown] #3661
539
+ * Braintree: Add travel and lodging fields [leila-alderman] #3668
540
+ * Stripe: strict_encode64 api key [britth] #3672
541
+ * Stripe PI: Implement verify action [leila-alderman] #3662
542
+ * Stripe, Stripe Payment Intents: Update supported countries [britth] #3684
543
+ * Forte: Use underscore for unused arguments in test [wsmoak] #3605
544
+ * Add Alia card type [therufs] #3673
545
+ * Element: Fix unit tests [leila-alderman] #3676
546
+ * PayU Latam: Fix store method [ccarruitero] #2590
547
+ * Adyen: Allow for executeThreeD to be passed as false [naashton] #3681
548
+ * WorldPay: Fix handling of `state` field for 3DS transactions [chinhle23] #3687
549
+ * Alia: Skip Luhn validation [therufs] #3673
550
+ * Diners Club: support 16 digit card numbers [therufs] #3682
551
+ * Cybersource: Update supported countries [britth] #3683
552
+ * Cybersource: pass reconciliation_id [therufs] #3688
553
+ * RuboCop: Fix Style/SpecialGlobalVars [leila-alderman] #3669
554
+ * RuboCop: Fix Style/StringLiteralsInInterpolation [leila-alderman] #3670
555
+ * RuboCop: Fix Layout/HeredocIndentation [leila-alderman] #3685
556
+ * RuboCop: Fix Gemspec/OrderedDependencies [leila-alderman] #3679
557
+ * RuboCop: Fix Style/TrailingUnderscoreVariable [leila-alderman] #3663
558
+ * RuboCop: Fix Style/WordArray [leila-alderman] #3664
559
+ * RuboCop: Fix Style/SymbolArray [leila-alderman] #3665
560
+ * Mercado-Pago: Notification url GSF [cdmackeyfree] #3678
561
+ * Credorax: Update logic for setting 3ds_homephonecountry [britth] #3691
562
+
563
+ == Version 1.108.0 (Jun 9, 2020)
564
+ * Cybersource: Send cavv as xid is xid is missing [pi3r] #3658
565
+ * Forte: Change default sec_code value to PPD [molbrown] #3653
566
+ * Elavon: Add merchant initiated unscheduled field [leila-alderman] #3647
567
+ * Decidir: Add aggregate data fields [leila-alderman] #3648
568
+ * Vantiv: Vantiv(Element): add option to send terminal id in transactions [cdmackeyfree] #3654
569
+ * Update supported Ruby and Rails versions [leila-alderman] #3656
570
+ * CI: Drop unused sudo: false Travis directive [olleolleolle] #3616
571
+ * PayU Latam: Prevent blank country in billing_address [britth] #3657
572
+ * DLocal: Fix address field names [molbrown] #3651
573
+
574
+ == Version 1.107.4 (Jun 2, 2020)
575
+ * Elavon: Implement true verify action [leila-alderman] #3610
576
+ * Vantiv Express: Implement true verify [leila-alderman] #3617
577
+ * Litle: Pass expiration data for basis payment method [therufs] #3606
578
+ * Stripe Payment Intents: Error handling and backwards compatibility within refund [britth] #3627
579
+ * HPS: Prevent errors when account_type or account_holder_type are nil [britth] #3628
580
+ * D Local: Handle invalid country code errors [curiousepic] #3626
581
+ * Stripe Payment Intents: Utilize execute_threed flag to determine success [britth] #3625
582
+ * Elavon: Add Level 3 fields [leila-alderman] #3632
583
+ * CyberSource: Stored Credential fixes [curiousepic] #3624
584
+ * CyberSource: Fix invalid and missing field tests [curiousepic] #3634
585
+ * CyberSource: Pass stored credentials with purchase [curiousepic] #3636
586
+ * Mercado Pago: Add payment_method_option_id field [schwarzgeist] #3635
587
+ * Stripe: Provide error when attempting an authorize with ACH [britth] #3633
588
+ * EBANX: Send original order id as merchant_payment_code metadata [miguelxpn] #3637
589
+ * Element: Add card_present_code field [schwarzgeist] #3623
590
+ * Orbital: Add support for Level 3 fields [leila-alderman] #3639
591
+ * Firstdata: Strip newline characters from address [bittercoder] #3643
592
+ * Forte: add sec_code attribute for echeck [wsmoak] #3640
593
+
594
+ == Version 1.107.3 (May 8, 2020)
595
+ * Realex: Ignore IPv6 unsupported addresses [elfassy] #3622
596
+ * Cybersource: Set partnerSolutionID after the business rules, fixes 500 error [pi3r] #3621
597
+
598
+ == Version 1.107.2 (May 7, 2020)
599
+ * Cybersource: Send a specific card brand commerceIndicator for 3DS [pi3r] #3620
600
+ * Cybersource: Send application_id as partnerSolutionID [pi3r] #3620
601
+ * Iridium: Localize zero-decimal currencies [chinhle23] #3587
602
+ * iVeri: Fix `verify` action [chinhle23] #3588
603
+ * Ixopay: Properly support three-decimal currencies [chinhle23] #3589
604
+ * Kushki: support `auth` and `capture` [therufs] #3591
605
+ * PaymentExpress: Update references to Windcave to reflect rebranding [britth] #3595
606
+ * Decidir: Improve handling of error responses from the gateway [naashton] #3594
607
+ * CyberSource: Added support for MerchantInformation CyberSource-specific fields [apfranzen] #3592
608
+ * ePay: Send unique order ids for remote tests [curiousepic] #3593
609
+ * Checkout V2: Send more informative error messages for 4xx errors [britth] #3601
610
+ * Elavon: Add ssl_dynamic_dba field [apfranzen] #3600
611
+ * iATS Payments: Update gateway to v3 and add support for additional GSFs [naashton] #3599
612
+ * Remove deprecated `rubyforge_project` attribute and tidy up unit test output [fatcatt316] #3598
613
+ * Elavon: Cleanup inadvertant field removal (avs_address) in #3600 [apfranzen] #3602
614
+ * EBANX: Fix transaction amount for verify transaction [miguelxpn] #3603
615
+ * iATS Payments: Update gateway to accept `email`, `phone`, and `country` fields [naashton] #3607
616
+ * Braintree: Fix response for failed refunds when falling back to voids [jasonwebster] #3608
617
+ * Worldpay: Fix response for failed refunds when falling back to voids [jasonwebster] #3609
618
+ * iATS Payments: Add support for Customer Code payment method [molbrown] #3611
619
+ * HPS: Add Google Pay support [MSmedal] #3597
620
+ * Adyen: Parse appropriate message for 3DS2 authorization calls [britth] #3619
621
+ * CyberSource: Add error details response fields [schwarzgeist] #3629
622
+
623
+ == Version 1.107.1 (Apr 1, 2020)
624
+ * Add `allowed_push_host` to gemspec [mdeloupy]
625
+
626
+ == Version 1.107.0 (Apr 1, 2020)
627
+ * Stripe Payment Intents: Early return failed `payment_methods` response [chinhle23] #3570
628
+ * Borgun: Support `passengerItineraryData` [therufs] #3572
629
+ * Ingenico GlobalCollect: support optional `requires_approval` field [fatcatt316] #3571
630
+ * CenPOS: Update failing remote tests [britth] #3575
631
+ * Realex: Update remote tests [britth] #3576
632
+ * FirstData e4 v27: Properly tag stored credential initiation field in request [britth] #3578
633
+ * Orbital: Fix stored credentials [chinhle23] #3579
634
+ * Acapture(Opp): Update gateway credentials [molbrown] #3574
635
+ * Ingenico GlobalCollect: support `requires_approval` field [fatcatt316] #3577
636
+ * CyberSource: Fix `void` for `purchase` transactions [chinhle23] #3581
637
+ * Checkout V2: Begin to add support for using network tokens for transactions. [arbianchi] #3580
638
+ * Opp: Update remote test fixtures [ccarruitero] #3582
639
+ * Optimal Payment: Add support for store [britth] #3585
640
+ * SecurePay Australia : Update test URL (#3586)
641
+
642
+ == Version 1.106.0 (Mar 10, 2020)
643
+ * PayJunctionV2: Send billing address in `auth` and `purchase` transactions [naashton] #3538
644
+ * Adyen: Fix some remote tests [curiousepic] #3541
645
+ * Redsys: Properly escape cardholder name and description fields in 3DS requests [britth] #3537
646
+ * RuboCop: Fix Style/HashSyntax [leila-alderman] #3540
647
+ * Paypal: Fix OrderTotal elements in `add_payment_details` [chinhle23] #3544
648
+ * Stripe Payment Intents: Add tests for "Idempotency-Key" header [fatcatt316] #3542
649
+ * Paypal: Fix RuboCop Style/HashSyntax violations [chinhle23] #3547
650
+ * Rubocop corrections for space around operators [cdmackeyfree] #3543
651
+ * Fat Zebra: Add `is_billing` in post for `store` call [chinhle23] #3551
652
+ * SafeCharge: Adds four supported countries [carrigan] #3550
653
+ * Ixopay: Support stored credentials [leila-alderman] #3549
654
+ * BlueSnap: Adds localized currency support [carrigan] #3552
655
+ * CheckoutV2: Use status as message for 3DS txns in progress [britth] #3545
656
+ * Stripe Payment Intents: Prevent idempotency key errors for compound actions [britth] #3554
657
+ * Adyen: Add tests for voiding with idempotency keys [jknipp] #3553
658
+ * Fat Zebra: Fix `store` call [chinhle23] #3556
659
+ * Update README to include Adyen [haolime] #3452
660
+ * PayJunctionv2: Fix billing address fields [leila-alderman] #3557
661
+ * Adyen: Fail unexpected 3DS responses [curiousepic] #3546
662
+ * Merchant Warrior: Add support for setting soft descriptors [daBayrus] #3558
663
+ * Adyen: Fix stored credentials [chinhle23] #3560
664
+ * Update BIN ranges for Alelo and Maestro cards [leila-alderman] #3559
665
+ * EBANX: Fix declines if order id is bigger than 40 chars [miguelxpn] #3563
666
+ * Moneris US: Remove gateway [chinhle23] #3561
667
+ * Decidir: Decidir: Improving the response message when encountering errors [naashton] #3564
668
+ * PayBox: Added USERTrust RSA Certification Authority and Sectigo RSA Organization Validation Secure Server CA [baldowl] #3567
669
+
670
+ == Version 1.105.0 (Feb 20, 2020)
671
+ * Credorax: Fix `3ds_transtype` setting in post [chinhle23] #3531
672
+ * Bambora Apac: Send void amount in options [leila-alderman] #3532
673
+ * RuboCop: Fix Layout/IndentHash [leila-alderman] #3529
674
+ * Stripe: Add connected account support [Carrigan] #3535
675
+ * Redsys: Update scrub method to account for 3DS error responses [britth] #3534
676
+ * Authorize.Net: Pass `account_type` to `check` payment types [chinhle23] #3530
677
+ * Merchant Warrior: Send void amount in options [leila-alderman] #3525
678
+ * Stripe: Add support for `statement_descriptor_suffix` field [Carrigan] #3528
679
+ * Decidir: Add support for fraud_detection, site_id, and establishment_name [fatcatt316] #3527
680
+ * HPS: support eCheck [therufs] #3500
681
+ * EBANX: Add metadata information in post [miguelxpn] #3522
682
+ * Worldpay: Add `riskData` GSF [fatcatt316] #3514
683
+ * EBANX: Fix `scrub` [chinhle23] #3521
684
+ * Worldpay: Remove unnecessary .tag! methods [leila-alderman] #3519
685
+ * BPoint: Remove amount from void requests [leila-alderman] #3518
686
+ * Authorize.net: Trim supported countries to AU, CA, US [fatcatt316] #3516
687
+ * Credorax: Allow optional 3DS 2 fields [jeremywrowe] #3515
688
+ * Stripe: Remove outdated 'customer options' deprecation [alexdunae] #3401
689
+ * Added support for fraud review in CyberSource gateway [greg-burgoon] #3536
690
+
691
+ == Version 1.104.0 (Jan 29, 2020)
692
+ * Adyen: add `recurring_contract_type` GSF [therufs] #3460
693
+ * Credorax: Only pass `3ds_version` parameter when required [britth] #3458
694
+ * EBANX: Include Peru in supported countries [Ruanito] #3443
695
+ * Bluesnap: include fraud data in response message [therufs] #3459
696
+ * Ingenico GlobalCollect: support `airline_data` and related GSFs [therufs] #3461
697
+ * Add UnionPay card type [leila-alderman] #3464
698
+ * Braintree: Fix add_credit_card_to_customer in Store [molbrown] #3466
699
+ * EBANX: Default to not send amount on capture [chinhle23] #3463
700
+ * Latitude19: Convert money format to dollars [molbrown] #3468
701
+ * Adyen: Fix response success for unstore [kheang] #3470
702
+ * CyberSource: add several GSFs [therufs] #3465
703
+ * Adyen: add `recurring_contract_type` GSF to auth [therufs] #3471
704
+ * Stripe Payment Intents: Use localized_amount on capture [molbrown] #3475
705
+ * dLocal: Add support for installments [kdelemme] #3456
706
+ * Merchant Warrior: Add void operation [leila-alderman] #3474
707
+ * Decidir: Update payment method IDs [leila-alderman] #3476
708
+ * Adyen: Add delivery address [leila-alderman] #3477
709
+ * Authorize.net: Correctly parse direct_response field with quotation marks [britth] #3479
710
+ * Decidir: Add debit card payment method IDs [leila-alderman] #3480
711
+ * CyberSource: Add issuer data+MDD to credit & void [leila-alderman] #3481
712
+ * Credorax: add `authorization_type` and `multiple_capture_count` GSFs [therufs] #3478
713
+ * CardStream: use localized_amount to correctly support zero-decimal currencies [britth] #3473
714
+ * EBANX: Add additional data in post [Ruanito] #3482
715
+ * Credorax: Omit phone when nil [leila-alderman] #3490
716
+ * TransFirst TrExp: Remove hyphens from zip [leila-alderman] #3483
717
+ * Mundipagg: Return acquirer code as the error code [leila-alderman] #3492
718
+ * Braintree Blue: Remove customer hash when using a payment_method_nonce #3495
719
+ * Credorax: Update non-standard currencies list [chinhle23] #3499
720
+ * Redsys: Update production URL [britth] #3505
721
+ * Moneris: include AVS and CoF fields when storing vault records [alexdunae] #3446
722
+ * Moneris: Add support for temporary vault storage [alexdunae] #3446
723
+ * Clearhaus: Update currencies without fractions list [chinhle23] #3506
724
+ * Merchant Warrior: Add recurringFlag to purchase & authorize [carrigan] #3504
725
+ * CardConnect: Remove domain port validation [leila-alderman] #3494
726
+ * Paymentez: Correct refund and void message parsing [carrigan] #3509
727
+ * Mercado Pago: Add taxes and net_amount gateway specific fields [carrigan] #3512
728
+ * Moneris: use dedicated card_verification methods [alexdunae] #3428
729
+ * Authorize.net: Trim down supported countries [fatcatt316] #3511
730
+ * Stripe: Add support for `statement_descriptor_suffix` field [carrigan] #3528
731
+ * Stripe: Add connected account support [carrigan] #3535
732
+
733
+ == Version 1.103.0 (Dec 2, 2019)
734
+ * Quickbooks: Mark transactions that returned `AuthorizationFailed` as failures [britth] #3447
735
+ * Credorax: Add referral CFT transactions [leila-alderman] #3432
736
+ * DLocal: Updates for version 2.1 [molbrown] #3449
737
+ * CyberSource: Send MDD on capture [leila-alderman] #3453
738
+ * Ixopay: Include extra_data gateway specific field [therufs] #3450
739
+ * CyberSource: Fix XML error on capture [leila-alderman] #3454
740
+ * Adyen: Add gateway specific field for splits [leila-alderman] #3448
741
+ * Adyen: Add `unstore` and `storeToken` actions with '/Recurring' endpoint [deedeelavinder][davidsantoso] #3438
742
+ * Barclaycard Smartpay: Add functionality to set 3DS exemptions via API [britth] #3457
743
+ * Use null@cybersource.com when option[:email] is an empty string [pi3r] #3462
744
+
745
+ == Version 1.102.0 (Nov 14, 2019)
746
+ * Quickbooks: Make token refresh optional with allow_refresh flag [britth] #3419
747
+ * Paymentez: Update supported countries [curiousepic] #3425
748
+ * Ixopay: Add new gateway [jasonxp] #3426
749
+ * Ixopay: Add support for currency option to refund method #3433
750
+ * Ixopay: Remove default callback URL #3436
751
+ * Ixopay: Refactor capture #3431
752
+ * Update supported countries list. Add currencies without fractions / with 3 decimal places #3424
753
+ * RuboCop: Fix Layout/EndAlignment [leila-alderman] #3427
754
+ * RuboCop: Fix Layout/ExtraSpacing [leila-alderman] #3429
755
+ * RuboCop: Fix Layout/MultilineOperationIndentation [leila-alderman] #3439
756
+ * Worldpay: Update logic to set cardholderName for 3DS transactions [britth] #3444
757
+ * Adopt new enrolled key for 3DS1 transactions. enrolled contains the 3… #3442
758
+
759
+ == Version 1.101.0 (Nov 4, 2019)
760
+ * Add UYI to list of currencies without fractions [curiousepic] #3416
761
+ * Quickbooks: Add OAuth 2.0 support and void action [britth] #3397
762
+ * Credorax: Stop always sending r1 parameter [molbrown] #3415
763
+ * Rubocop: Layout/RescueEnsureAlignment fix [leila-alderman] #3411
764
+ * CyberSource: Send issuer data on capture [leila-alderman] #3404
765
+ * Rubocop: Style/IfUnlessModifier [nfarve] #3390
766
+ * Redsys: Updates to parse method for non-3DS responses [britth] #3391
767
+ * Netbanx: Add 3DS2 Support [Jujhar] #3394
768
+
769
+ == Version 1.100.0 (Oct 16, 2019)
770
+ * Stripe: Restore non-auto capture behaviour for card present transactions [PatrickFang] #3258
771
+ * Revert "Revert "Worldpay: Switch to Nokogiri"" [curiousepic] #3373
772
+ * Adyen: Fix `authorise3d` message for refusals [jeremywrowe] #3374
773
+ * Redsys: Set authorization field for 3DS transactions [britth] #3377
774
+ * Adyen: Add capture_delay_hours GSF [therufs] #3376
775
+ * Credorax: Add support for stored credentials [chinhle23] #3375
776
+ * BlueSnap: Add remote tests for Cabal and Naranja [leila-alderman] #3382
777
+ * WorldPay: Add Cabal and Naranja remote tests [leila-alderman] #3378
778
+ * Rubocop: Indentions [nfarve] #3383
779
+ * Worldpay: Handle parse errors gracefully [curiousepic] #3380
780
+ * BluePay: Add ability to pass doc_type in refunds and credits [britth] #3386
781
+ * Stripe Payment Intents: Fix fallback for Store [waaux] #3343
782
+ * Update Securionpay supported countries [hossamhossny] #2472
783
+ * Visanet Peru: Add amount argument to Capture [curiousepic] #3389
784
+ * Rubocop: Layout/MultilineHashBraceLayout [nfarve] #3385
785
+ * CardConnect: Always include additional_data in purchase [therufs] #3387
786
+ * CardConnect: Add user_fields GSF [therufs] #3388
787
+ * Moneris: Add support for stored credentials [chinhle23] #3384
788
+
789
+ == Version 1.99.0 (Sep 26, 2019)
790
+ * Adyen: Add functionality to set 3DS exemptions via API [britth] #3331
791
+ * Adyen: Send "NA" instead of "N/A" [leila-alderman] #3339
792
+ * Stripe Payment Intents: Set application fee or transfer amount on capture [britth] #3340
793
+ * TNS: Support Europe endpoint [curiousepic] #3346
794
+ * Redsys: Add 3DS support to gateway [britth] #3336
795
+ * Worldpay: Allow multiple refunds per authorization [jknipp] #3349
796
+ * MercadoPago: Add remote and unit tests for Naranja card [hdeters] #3345
797
+ * CyberSource: Pass commerce indicator if present [curiousepic] #3350
798
+ * Worldpay: Add 3DS2 Support [nfarve] #3344
799
+ * Credorax: Add 3DS 2.0 [nfarve] #3342
800
+ * TNS: Update verison and support pay mode [curiousepic] #3355
801
+ * Stripe: Add supported countries [therufs] #3358
802
+ * Stripe Payment Intents: Add supported countries [therufs] #3359
803
+ * Mundipagg: Append error messages to the message response field [jasonxp] #3353
804
+ * Redsys: Add ability to pass sca_exemption and moto fields to request exemptions [britth] #3354
805
+ * Credorax: Add A Mandatory 3DS field [nfarve] #3360
806
+ * CyberSource: Support 3DS2 pass-through fields [curiousepic] #3363
807
+ * Credorax: Add support for MOTO flagging [britth] #3366
808
+ * Credorax: Enable selecting a processor [leila-alderman] #3302
809
+ * Adyen: Add Cabal card [leila-alderman] #3361
810
+ * Decidir: Add remote tests for Cabal and Naranja [leila-alderman] #3337
811
+ * Payflow: Pass correct field in Status for 3DS in Payflow [nebdil] #3362
812
+ * CyberSource: Use 3DS hash for enrolled field [curiousepic] #3371
813
+
814
+ == Version 1.98.0 (Sep 9, 2019)
815
+ * Stripe Payment Intents: Add new gateway [britth] #3290
816
+ * Stripe: Send cardholder name and address when creating sources for 3DS 1.0 [jknipp] #3300
817
+ * Checkout_v2: Support for native 3DS2.0 [nfarve] #3303
818
+ * Adds new Maestro BINs [tanyajajodia] #3305
819
+ * eWAY Rapid: If no address is available, default to the name associated with the payment method when setting the Customer fields [jasonxp] #3306
820
+ * eWAY Rapid: Fix a bug in which the email was not set in Customer fields if no address was provided [jasonxp] #3306
821
+ * eWAY Rapid: Support both `phone` and `phone_number` fields under the `shipping_address` option [jasonxp] #3306
822
+ * PayU Latam: Add support for the `merchant_buyer_id` field in the `options` and `buyer` hashes [jasonxp] #3308
823
+ * Update Braintree Gem [curiousepic] #3311
824
+ * Fat Zebra: Send metadata for purchase and authorize [montdidier] #3101
825
+ * TrustCommerce: Add support for custom fields [jasonxp] #3313
826
+ * Stripe Payment Intents: Support option fields `transfer_destination` and `transfer_amount` and remove `transfer_data` hash [britth] #3317
827
+ * Barclaycard Smartpay: Add support for `shopperStatement` gateway-specific field [jasonxp] #3319
828
+ * Stripe Payment Intents: Add support for billing_details on payment methods [britth] #3320
829
+ * BlueSnap: add standardized 3DS 2 auth fields [bayprogrammer] #3318
830
+ * Barclaycard Smartpay: Add app based 3DS requests for auth and purchase [britth] #3327
831
+ * Stripe Payment Intents, Checkout V2: Add support for `MOTO` flagging [britth] #3323
832
+ * Braintree Blue: Adding 3DS2 passthru support [molbrown] #3328
833
+ * Global Collect: Add Cabal card [leila-alderman] #3310
834
+ * WorldPay: Add Cabal card [leila-alderman] #3316
835
+ * Decidir: Add Cabal card [leila-alderman] #3322
836
+ * PayU Latam: Add Cabal card [leila-alderman] #3324
837
+ * dLocal: Add Cabal card [leila-alderman] #3325
838
+ * BlueSnap: Add Cabal card [leila-alderman] #3326
839
+ * Adyen: added 3DS support through external [rikterbeek] #3294
840
+ * Worldpay: Add support for MOTO flagging [britth] #3329
841
+ * ePay: 3DS support [AllaWLie] #3321
842
+ * Checkout.com: added options[:metadata][:manual_entry] support for MOTO transactions [filipebarcos] #3330
843
+
844
+ == Version 1.97.0 (Aug 15, 2019)
845
+ * CyberSource: Add issuer `additionalData` gateway-specific field [jasonxp] #3296
846
+ * PayU Latam: Add Naranja card type [hdeters] #3299
847
+ * Adyen: Add app based 3DS requests for auth and purchase [jeremywrowe] #3298
848
+ * MercadoPago: Add Cabal card type [leila-alderman] #3295
849
+ * MONEI: Add external MPI 3DS 1 support [jimmyn] #3292
850
+ * Bambora formerly Beanstream: Pass card owner when storing tokenized cards [alexdunae] #3006
851
+ * Realex: Prevent error calculating `refund_hash` or `credit_hash` when the secret is nil [jasonxp] #3291
852
+ * Orbital: Add external MPI support for 3DS1 [pi3r] #3261
853
+ * Paymill: Add currency and amount to store requests [jasonxp] #3289
854
+ * Realex: Re-implement credit as general credit [leila-alderman] #3280
855
+ * Braintree Blue: Support for stored credentials [hdeters] #3286
856
+ * CardConnect: Move domain from gateway specific to gateway field [hdeters] #3283
857
+
858
+ == Version 1.96.0 (Jul 26, 2019)
859
+ * Bluesnap: Omit state codes for unsupported countries [therufs] #3229
860
+ * Adyen: Pass updateShopperStatement, industryUsage [curiousepic] #3233
861
+ * TransFirst Transaction Express: Fix blank address2 values [britth] #3231
862
+ * WorldPay: Add support for store method [bayprogrammer] #3232
863
+ * Adyen: Support for additional AVS code mapping [jknipp] #3236
864
+ * Adyen: Update message for AVS result code 'A' to generically cover postal code mismatches [jknipp] #3237
865
+ * CyberSource: Update CyberSource SOAP documentation link [vince-smith] #3204
866
+ * USAePay: Handle additional error codes and add default error code [estelendur] #3167
867
+ * Braintree: Add `skip_avs` and `skip_cvv` gateway specific fields [leila-alderman] #3241
868
+ * NAB Transact: Update periodic test url [mengqing] #3177
869
+ * NMI: Add level 3 gateway-specific fields tax, shipping, and ponumber [jasonxp] #3239
870
+ * Checkout V2: Update stored card flag [curiousepic] #3247
871
+ * NMI: Add support for stored credentials [bayprogrammer] #3243
872
+ * Spreedly: Consolidate API requests and support bank accounts [lancecarlson] #3105
873
+ * BPoint: Hook up merchant_reference and CRN fields [curiousepic] #3249
874
+ * Checkout V2: Stop sending phone number to Checkout V2 integration [filipebarcos] #3248
875
+ * Barclaycard Smartpay: Add support for 3DS2 [britth] #3251
876
+ * Adyen: Add support for non-fractional currencies [molbrown] #3257
877
+ * Decidir: Add new gateway [jknipp] #3254
878
+ * Checkout V2: Reapply Update stored card flag [curiousepic]
879
+ * CyberSource: Update supported countries [molbrown] #3260
880
+ * Credorax: Update supported countries [molbrown] #3260
881
+ * Kushki: Update supported countries [molbrown] #3260
882
+ * Paypal: Update supported countries [molbrown] #3260
883
+ * BlueSnap: Send amount in capture requests [jknipp] #3262
884
+ * Mundipagg: Add Alelo card support [jasonxp] #3255
885
+ * Adyen: Remove temporary amount modification for non-fractional currencies [molbrown] #3263
886
+ * Adyen: Set blank state to N/A [therufs] #3252
887
+ * MiGS: Add tx_source gateway specific field [leila-alderman] #3264
888
+ * NMI: Correct password scrubber to scrub symbols [hdeters] #3267
889
+ * Global Collect: Only add name if present [curiousepic] #3268
890
+ * HPS: Add Apple Pay raw cryptogram support [slogsdon] #3209
891
+ * CardConnect: Fix parsing of level 3 fields [hdeters] #3273
892
+ * TrustCommerce: Support void after purchase [jknipp] #3265
893
+ * Payflow: Support arbitrary level 2 + level 3 fields [therufs] #3272
894
+ * BlueSnap: Default to not send amount on capture [molbrown] #3270
895
+ * Spreedly: extra fields, remove extraneous check [montdidier] #3102 #3281
896
+ * Cecabank: Update encryption to SHA2 [leila-alderman] #3278
897
+ * Checkout V2: Fix 3DS 1&2 integration [nicolas-maalouf-cko] #3240
898
+ * Credorax: add 3DS2 MPI auth data support [bayprogrammer] #3274
899
+ * Add Kosovo to the list of countries [AnotherJoSmith] #3226
900
+ * Realex: Adds 3DS 1&2 support through external MPI [filipebarcos] #3284
901
+ * PayPal: Adds 3DS 1 support through external MPI [nebdil] #3279
902
+
903
+ == Version 1.95.0 (May 23, 2019)
904
+ * Adyen: Constantize version to fix subdomains [curiousepic] #3228
905
+ * Qvalent: Adds support for standard stored credential framework [molbrown] #3227
906
+ * Cybersource: Send tokenization data when card is :master [pi3r] #3230
907
+
908
+ == Version 1.94.0 (May 21, 2019)
909
+ * Mundipagg: Fix number lengths for both VR and Sodexo [dtykocki] #3195
910
+ * Stripe: Support show and list webhook endpoints [jknipp] #3196
911
+ * CardConnect: Add frontendid parameter to requests [gcatlin] #3198
912
+ * Adyen: Correct formatting of Billing Address [nfarve] #3200
913
+ * Stripe: Stripe: Show payment source [jknipp] #3202
914
+ * Checkout V2: Checkout V2: Correct success criteria [curiousepic] #3205
915
+ * Adyen: Add normalized hash of 3DS 2.0 data fields from web browsers [davidsantoso] #3207
916
+ * Stripe: Do not attempt application fee refund if refund was not successful [jasonwebster] #3206
917
+ * Elavon: Send transaction_currency if currency is provided [gcatlin] #3201
918
+ * Elavon: Multi-currency support [jknipp] #3210
919
+ * Adyen: Support preAuths and Synchronous Adjusts [curiousepic] #3212
920
+ * WorldPay: Support Unknown Card Type [tanyajajodia] #3213
921
+ * Mundipagg: Make gateway_affiliation_id an option [curiousepic] #3219
922
+ * CyberSource: Adds Elo Card Type [tanyajajodia] #3220
923
+ * CyberSource: Support standalone credit for cards [curiousepic] #3225
924
+
925
+ == Version 1.93.0 (April 18, 2019)
926
+ * Stripe: Do not consider a refund unsuccessful if only refunding the fee failed [jasonwebster] #3188
927
+ * Stripe: Fix webhook creation for connected account [jknipp] #3193
928
+ * Adyen: Upgrade to v40 API version [davidsantoso] #3192
929
+
930
+ == Version 1.92.0 (April 8, 2019)
931
+ * BluePay: Send customer IP address when provided [jknipp] #3149
932
+ * PaymentExpress: Use ip field for client_info field [jknipp] #3150
933
+ * Bambora Asia-Pacific: Adds Store [molbrown] #3147
934
+ * Orbital: Pass normalized stored credential fields [curiousepic] #3148
935
+ * Adds Elo card type in general and specifically to Adyen [deedeelavinder] #3153
936
+ * Mercado Pago: Adds Elo card type [deedeelavinder] #3156
937
+ * Litle: Add support for stored credentials [bayprogrammer] #3155
938
+ * Adyen: Correctly process risk_data option [bayprogrammer] #3161
939
+ * Paymentez: Adds Elo card type [deedeelavinder] #3162
940
+ * WorldPay: Adds Elo card type [deedeelavinder] #3163
941
+ * Adyen: Idempotency for non-purchase requests [molbrown] #3164
942
+ * FirstData e4 v27: Support v28 url and stored creds [curiousepic] #3165
943
+ * WorldPay: Fix element order for 3DS + stored cred [bayprogrammer] #3172
944
+ * Braintree: Add risk data to returned response [jknipp] #3169
945
+ * Adyen: Support idempotency on purchase [molbrown] #3168
946
+ * Adyen: Pass phone, statement, device_fingerprint [curiousepic] #3178
947
+ * Adyen: Fix adding phone from billing address [curiousepic] #3179
948
+ * Fix partial or missing address exceptions [molbrown] #3180
949
+ * Adyen: Update to support normalized stored credential fields [molbrown] #3182
950
+ * VisaNet Peru: Always include DSC_COD_ACCION [bayprogrammer] #3174
951
+ * Adyen: Support adjust action [curiousepic] #3190
952
+ * CyberSource: Add support for stored credentials [therufs] #3185
953
+
954
+ == Version 1.91.0 (February 22, 2019)
955
+ * WorldPay: Pull CVC and AVS Result from Response [nfarve] #3106
956
+ * Worldpay: Add AVS and CVC Mapping [nfarve] #3107
957
+ * Paymentez: Fixes extra_params field [molbrown] #3108
958
+ * Improved support for account_type using Check class's account_type instead [lancecarlson] #3097
959
+ * USA Epay: Allow quantity to be passed and check custom fields [lancecarlson] #3090
960
+ * Fix usaepay transaction invoice [lancecarlson] #3093
961
+ * Adyen: Handles blank state address field [molbrown] #3113
962
+ * Braintree: Send all country fields [curiousepic] #3112
963
+ * Braintree: Account for empty string countries [curiousepic] #3115
964
+ * Orbital: Support for stored credentials framework [jknipp] #3117
965
+ * Openpay: Fix for marking successful transaction(s) as failed [jknipp] #3121
966
+ * Braintree: Adds support for transaction_source [molbrown] #3120
967
+ * Moneris: Remove redundant card on file guard clause [davidsantoso] #3123
968
+ * Switch order of Romania country codes [molbrown] #3125
969
+ * Blue Snap: Supports Level 2/3 data [molbrown] #3126
970
+ * Blue Snap: Support personal_identification_number [jknipp] #3128
971
+ * ProPay: Send 9 digit zip code without dash [molbrown] #3129
972
+ * Adyen: Extend AVS code mappings [therufs] #3119
973
+ * NMI: Add customer id to authorization on store [curiousepic] #3130
974
+ * Trans First Express: Don't pass blank name field [curiousepic] #3133
975
+ * TrustCommerce: Send full name on ACH transactions [jknipp] #3132
976
+ * Qvalent: Map CVV Result to responses [curiousepic] #3135
977
+ * Card Connect: Handle 401s as responses [curiousepic] #3137
978
+ * Worldpay: Introduce normalized stored credential options [davidsantoso] #3134
979
+ * Worldpay: Adjust use of normalized stored credentials hash [davidsantoso] #3139
980
+ * Adyen: Enable Dynamic 3DS [molbrown] #3138
981
+ * Fat Zebra: Support voids [curiousepic] #3142
982
+ * Blue Snap: Support ACH/ECP payments [jknipp] #3143
983
+ * Blue Snap: Fix Card-on-File field typo [jknipp] #3143
984
+ * Add Bambora gateway [InfraRuby] #3145
985
+ * Bambora Asia-Pacific: Updates Gateway [molbrown] #3145
986
+ * PaymentExpress: Support ClientInfo field [jknipp] #3131
987
+ * Pin Payments: Concatenate card and customer tokens when storing card [therufs] #3144
988
+ * Update Discover regex to allow card numbers longer than 16 digits [prashcr] #3146
989
+ * Merrco partial refunds fix [payfirma1] #3141
990
+
991
+ == Version 1.90.0 (January 8, 2019)
992
+ * Mercado Pago: Support "gateway" processing mode [curiousepic] #3087
993
+ * Braintree: Update gem to latest version [curiousepic] #3091
994
+ * Adyen: Pass arbitrary riskData fields [curiousepic] #3089
995
+ * Worldpay: Fix cookie header name [curiousepic] #3099
996
+ * Paymentez: Adds support for extra_params optional field [molbrown] #3095
997
+ * Braintree Blue: Support Level 2 and 3 data fields [curiousepic] #3094
998
+ * Braintree Blue: Refactor line_items field [curiousepic] #3100
999
+ * TrustCommerce: Use `application_id` [nfarve] #3103
1000
+ * Stripe: Add 3DS Support [nfarve] #3086
1001
+ * Cecabank: Append error text to message [therufs] #3127
1002
+
1003
+ == Version 1.89.0 (December 17, 2018)
1004
+ * Worldpay: handle Visa and MasterCard payouts differently [bpollack] #3068
1005
+ * QuickPay: update supported countries [ta] #3049
1006
+ * WorldPay: set cardholder name to "3D" for 3DS transactions [bpollack] #3071
1007
+ * Authorize.Net: Support refunds for bank accounts [nfarve] #3063
1008
+ * Stripe: support specifying a reason for refunds [yosukehasumi] #3056
1009
+ * Paybox Direct: add support for XPF currency [adam-stead] #2938
1010
+ * TrustCommerce: Add ACH Ability [nfarve] #3073
1011
+ * Payeezy: Support $0 for verify transactions [molbrown] #3074
1012
+ * USA ePay: add support for recurring transactions, custom fields, and line items [lancecarlson] #3069
1013
+ * Add dLocal gateway [curiousepic] #3709
1014
+ * dLocal: Require secret_key [curiousepic] #3080
1015
+ * Adyen: Implement 3DS [nfarve] #3076
1016
+ * Adyen: Add 3DS Fix [nfarve] #3081
1017
+ * Payeezy: Add `stored_credentials` [nfarve] #3083
1018
+ * Fix CVC validation for 0 length CVC [filipebarcos] #3082
1019
+ * NMI: Supports vendor_id and processor_id fields [molbrown] #3085
1020
+
1021
+ == Version 1.88.0 (November 30, 2018)
1022
+ * Added ActiveSupport/Rails master support [Edouard-chin] #3065
1023
+
1024
+ == Version 1.87.0 (November 29, 2018)
1025
+ * Barclaycard Smartpay: Improves Error Handling [deedeelavinder] #3026
1026
+ * Braintree: Fix passing phone-only billing address [curiousepic] #3025
1027
+ * Litle: Capitalize check account type [curiousepic] #3028
1028
+ * Braintree: Account for nil billing address fields [curiousepic] #3029
1029
+ * Realex: Add verify [kheang] #3030
1030
+ * Braintree: Actually account for nil address fields [curiousepic] #3032
1031
+ * Mercado Pago: do not infer card type [bpollack] #3038
1032
+ * Credorax: allow sending submerchant ID (h3 parameter) [bpollack] #3040
1033
+ * Worldpay: Pass stored credential option fields [curiousepic] #3041
1034
+ * Make behavior of nil CC numbers more consistent [guaguasi] #3010
1035
+ * Moneris: Adds Credential on File logic [deedeelavinder] #3042
1036
+ * Adyen: Return AVS and CVC Result [nfarve] #3044
1037
+ * Paymentez: Supports phone field, does not send if empty [molbrown] #3043
1038
+ * Braintree: Account for nil address with existing customer [curiousepic] #3047
1039
+ * Optimal Payment: Add verify capabilities #3052
1040
+ * Moneris: Allows cof_enabled gateway to process non-cof transactions [deedeelavinder] #3051
1041
+ * Cenpos: update supported countries [bpollack] #3055
1042
+ * CyberSource: update supported countries [bpollack] #3055
1043
+ * MiGS: update supported countries [bpollack] #3055
1044
+ * Clearhaus: update submission data format [bpollack] #3053
1045
+ * Forte: Allow void on capture [nfarve] #3059
1046
+
1047
+ == Version 1.86.0 (October 26, 2018)
1048
+ * UsaEpayTransaction: Support UMcheckformat option for echecks [dtykocki] #3002
1049
+ * Global Collect: handle internal server errors [molbrown] #3005
1050
+ * Barclaycard Smartpay: allow third-party payouts for credits [bpollack] #3009
1051
+ * RuboCop: AlignHash [nfarve] #3004
1052
+ * Beanstream: Switch `recurringPayment` flag from boolean to integer [dtykocki] #3011
1053
+ * Update Swipe HQ endpoint [bdewater] #3013
1054
+ * Braintree: Adds device_data [deedeelavinder] #3012
1055
+ * Payflow Express: Add phone to returned Response [filipebarcos] #3003
1056
+ * Authorize.Net: Pass some level 3 fields [curiousepic] #3022
1057
+ * Add state to the netbanx payload [Girardvjonathan] #3024
1058
+
1059
+ == Version 1.85.0 (September 28, 2018)
1060
+ * Authorize.Net: Support custom delimiter for cim [curiousepic] #3001
1061
+
1062
+ == Version 1.84.0 (September 27, 2018)
1063
+ * PayU Latam: support partial captures [bpollack] #2974
1064
+ * Braintree: Reflect correct test mode in Braintree responses [elfassy] #2980
1065
+ * FirstPay: Expose error code [curiousepic] #2979
1066
+ * Barclaycard Smartpay: Pass device_fingerprint when specified [dtykocki] #2981
1067
+ * Komoju: remove no-longer-relevant sandbox URL [miyazawadegica] #2987
1068
+ * [POSSIBLE BREAKAGE] Determine credit cards via functions [bpollack] #2983
1069
+ * Drop support for Laser cards [bpollack] #2983
1070
+ * Improve Maestro card detection [bpollack] #2983
1071
+ * Add ROU alpha3 code for Romania [dtykocki] #2989
1072
+ * [POSSIBLE BREAKAGE] Drop support for Solo and Switch cards [bpollack] #2991
1073
+ * Add support for Carnet cards [bpollack] #2992
1074
+ * Stripe: support a reason for voiding a transaction [whitby3001] #2378
1075
+ * Payeezy: Add reversal_id in support of timeout reversals [dtykocki] #2997
1076
+ * Stripe: support Level 3 transaction fields [bpollack] #2996
1077
+ * Conekta: support Carnet cards [bpollack] #2999
1078
+ * Openpay: support Carnet cards [bpollack] #2999
1079
+ * Adyen: Add support for GooglePay [dtykocki] #2971
1080
+
1081
+ == Version 1.83.0 (August 30, 2018)
1082
+ * CT Payment: Update How Address is Passed [nfarve] #2960
1083
+ * Adyen: Add RecurringProcessingModel [nfarve] #2951
1084
+ * Optimal Payments: update country list [bpollack] #2961
1085
+ * Ebanx: update sandbox and production URLs [vnbrs] #2949
1086
+ * Ebanx: support additional countries [vnbrs] #2950
1087
+ * Gateway generator: fix a typo that would cause the script to crash [bpollack] #2962
1088
+ * Clearhaus: use $0 for verify transactions [bpollack] #2964
1089
+ * Global Collect: properly handle partial captures [bpollack] #2967
1090
+ * Braintree: Add support for GooglePay [dtykocki] #2966
1091
+ * Adyen: allow overriding card brands [bpollack] #2968
1092
+ * Adyen: allow custom routing [bpollack] #2969
1093
+ * First Pay: Adds scrubbing [deedeelavinder] #2972
1094
+
1095
+ == Version 1.82.0 (August 13, 2018)
1096
+ * FirstData: add support for WalletProviderID in v27 gateway [bpollack] #2946
1097
+ * BlueSnap: Handle 403 responses [curiousepic] #2948
1098
+ * BlueSnap: Add StoreCard Field [nfarve] #2953
1099
+ * Worldpay: support installments [bpollack] #2957
1100
+ * Paymentez: support partial refunds [bpollack] #2959
1101
+ * Payflow: allow support for partial captures [pi3r] #2952
1102
+
1103
+ == Version 1.81.0 (July 30, 2018)
1104
+ * GlobalCollect: Don't overwrite contactDetails [curiousepic] #2915
1105
+ * Pin Payments: Pass reference for statement desc [curiousepic] #2919
1106
+ * FirstData: introduce v27 gateway [shasum] #2912
1107
+ * Stripe: Fix contactless magstripe support [abhiin1947] #2917
1108
+ * ANET: Expose full response code [curiousepic] #2924
1109
+ * Global Collect: Fix customer data field structure [curiousepic] #2929
1110
+ * Adyen: Set Default Name for Apple Pay Transactions [nfarve] #2930
1111
+ * Beanstream: Update to use api key with login credentials [nfarve] #2934
1112
+ * CT Payments: Fix a typo in the live URL scheme [bpollack] #2936
1113
+ * CyberSource: Don't throw exceptions on HTML responses [bpollack] #2937
1114
+ * CyberSource: Remove extraneous parameter blocking echecks [chriscz] #2861
1115
+ * FirstPay: Update Fields For Recurring Payments [nfarve] #2940
1116
+ * Remove unused handle_response method [bl] #2309
1117
+ * Barclaycard Smartpay: bump API version to v30 [bpollack] #2941
1118
+ * Safecharge: Remove duplicate supported country [curiousepic]
1119
+ * Payflow Express: Use SHIPTONAME instead of `full_name` for shipping address [filipebarcos] #2945
1120
+
1121
+ == Version 1.80.0 (July 4, 2018)
1122
+ * Default SSL min_version to TLS 1.1 to comply with June 30 PCI DSS deadline [bdewater] #2909
1123
+ * Paymentez: return a Result object even when the upstream server 500s [bpollack] #2871
1124
+ * Drop support for Ruby versions older than 2.3 [bpollack] #2863
1125
+ * Bridge Pay: don't throw an exception when bank account type is omitted [bpollack] #2873
1126
+ * Avoid making actual connections in Blue Snap and Mundipagg unit tests [bpollack] #2875
1127
+ * Avoid making actual connections in the connection unit tests [bpollack] #2876
1128
+ * Openpay: support payment installments [bpollack] #2865
1129
+ * First Pay: support recurring charges [bpollack] #2877
1130
+ * Bridge Pay: pass full name of account type for echeck transactions [bpollack] #2878
1131
+ * Kushki: do not send 0 for tax values if tax values are not provided [bpollack] #2886
1132
+ * Payflow: Update ACH tests [curiousepic] #2887
1133
+ * Credorax: support passing billing description [bpollack] #2889
1134
+ * MiGS: scrub 3DS fields [abarrak] #2771
1135
+ * Forte: avoid crashing when location_id or account_id have spaces [bpollack] #2890
1136
+ * Adyen: Support Network Tokenization Cards via mpiData fields [curiousepic] #2891
1137
+ * Moneris US: Add ACH [nfarve] #2888
1138
+ * Realex: Pass amount for captures [curiousepic] #2895
1139
+ * Card Connect: support storing cards [bpollack] #2896
1140
+ * Avoid mutating headers passed in for Active Merchant connections [grantbdev] #2892
1141
+ * Forte: add support for refunds [bpollack] #2898
1142
+ * Forte: fix a bug in logic for selecting billing names [whitby3001] #2381
1143
+ * Paymentez: allow capture amount to exceed authorization amount [bpollack] #2900
1144
+ * JetPay: fix typo in error messages [reynhout] #2749
1145
+ * Braintree: add support for Maestro cards [matthewheath] #2571
1146
+ * Visanet Peru: Refund on unsettled transactions [nfarve] #2772
1147
+ * Remove iDeal offsite gateway references [bdewater] #2807
1148
+ * Conekta: Allow customer application in headers [curiousepic] #2908
1149
+ * Payment Express: use testing URLs when testing [oklas] #2231
1150
+ * Redsys: Fix payments with cc token [Leonardo Diez] #2586
1151
+ * Redsys: Missing cardnumber params in xml_signed_fields [nerburish] #2628
1152
+ * Bogus: allow authorizing with a tokenized card [Azdaroth] #2703
1153
+ * CT Payment: Add new gateway [nfarve] #2911
1154
+
1155
+ == Version 1.79.2 (June 2, 2018)
1156
+ * Fix Gateway#max_version= overwriting min_version [bdewater]
1157
+
1158
+ == Version 1.79.1 (May 31, 2018)
1159
+ * Fix Net::HTTP connections defaulting to connection: keep-alive instead of close since #2862 [bpollack] #2868
1160
+ * Mundipagg: allow passing holder_document for credit card purchases [bpollack] #2864
1161
+ * Conekta: support monthly_installments [bpollack] #2866
1162
+ * Authorize.net: allow sending email_customer set to false [bpollack] #2867
1163
+
1164
+ == Version 1.79.0 (May 30, 2018)
1165
+ * Allow setting min/max SSL version for a connection on Ruby 2.5 [bdewater] #2775
1166
+ * Add `gateways:ssl:min_version` rake task to test upcoming TLS 1.0 deprecation deadline [bdewater] #2775
1167
+ * Log negotiated SSL version and cipher [bdewater + methodmissing] #2862
1168
+ * Remove support for Rails < 4.2, add support for Rails 5.2 and Ruby 2.5 [bdewater]
1169
+ * Spreedly: Support verify and find transactions [abarrak] #2798
1170
+ * Adyen: Support merchant-specific subdomains [curiousepic] #2799
1171
+ * Fix ENV based configuration of Net::Http for proxies [bbergstrom] #2800
1172
+ * ANET: Withhold cryptogram for credit [curiousepic] #2804
1173
+ * Borgun: Remove batch from request parameters [deedeelavinder] #2805
1174
+ * WorldPay: Remove Inquiry requests in verify transactions [nfarve] #2802
1175
+ * Credorax: Update tests [curiousepic] #2809
1176
+ * Braintree: Remove decimal for non-fractional currencies [nfarve] #2806
1177
+ * Realex: Add documented country support for US and CA [a-salty-strudel] #2810
1178
+ * Paymentez: Add `tax_percentage` optional parameter [deedeelavinder] #2814
1179
+ * Braintree: Add `skip_advanced_fraud_checking` optional parameter [deedeelavinder] #2811
1180
+ * SafeCharge: Additional gateway options [dtykocki] #2816
1181
+ * FirstPay: Handle missing billing addresses [dtykocki] #2822
1182
+ * Realex: Add ApplePay Support [nfarve] #2820
1183
+ * Checkout V2: Additional gateway options [dtykocki] #2821
1184
+ * CyberSource: Support 3ds validate request [curiousepic] #2823
1185
+ * Paymentez: Remove card tokenization step from authorize [dtykocki] #2825
1186
+ * WorldPay: Add 3DS [nfarve] #2819
1187
+ * EBANX: Interpolate authorization string [curiousepic] #2830
1188
+ * CyberSource: Support 3DS validation for authorize [curiousepic] #2832
1189
+ * Redsys: Fix ISO code for PLN [chopenhauer] #2831
1190
+ * Merchant E Solutions: Support transcript scrubbing [curiousepic] #2836
1191
+ * Paystation: Support transcript scrubbing [curiousepic] #2837
1192
+ * Psigate: Support transcript scrubbing [curiousepic] #2835
1193
+ * Braintree: Adding 3D Secure pass thru capabilities [filipebarcos] #2843
1194
+ * Authorize.net: Add flexibility for 3D Secure Parameters [filipebarcos] #2844
1195
+ * Elavon: Update Country List [nfarve] #2840
1196
+ * WorldPay: Update Country List [nfarve] #2841
1197
+ * Merchant Warrior: Support transcript scrubbing [curiousepic] #2845
1198
+ * NAB Transact: Pass nonfractional amounts correctly [curiousepic] #2843
1199
+ * Realex: Update Country List [nfarve] #2842
1200
+ * QBMS: Support transcript scrubbing [curiousepic] #2849
1201
+ * Adyen: Add support for installments [nfarve] #2839
1202
+ * Paymentez: Read messages on Failure with no error [nfarve] #2850
1203
+ * Paymentez: Fix response message conditional [curiousepic] #2851
1204
+ * Add ability to send email receipt [nfarve] #2852
1205
+ * Barclaycard Smartpay: Pass shopper_interaction [curiousepic] #2853
1206
+ * Stripe: Treat UGX as a zero-decimal currency [bpollack] #2857
1207
+ * Mundipagg: Remove Billing Address if no Address Sent [nfarve] #2855
1208
+ * Paypal: Support more robust scrubbing [curiousepic] #2858
1209
+ * Stripe: Report internal Stripe errors as failures [bpollack] #2859
1210
+ * Authorize.net: Add ability to pass `customer_payment_profile_id` [nfarve] #2854
1211
+
1212
+ == Version 1.78.0 (March 29, 2018)
1213
+ * Litle: Add store for echecks [nfarve] #2779
1214
+ * Litle: Add Support for Echeck [nfarve] #2776
1215
+ * Orbital: Correct level 2 tax handling [deedeelavinder] #2729
1216
+ * Payeezy: Change determination method of endpoint for store request [deedeelavinder] #2731
1217
+ * Adyen: Return refusal_reason_raw when present [curiousepic] #2728
1218
+ * Payeezy: Update Store method [nfarve] #2733
1219
+ * CenPOS: Remove gzip encoding header [curiousepic] #2735
1220
+ * Mercado Pago: Allow binary_mode to be changed [nfarve] #2736
1221
+ * Stripe: Accept strings for refund_fee_amount [curiousepic] #2738
1222
+ * Orbital: Complete scrub test coverage [curiousepic] #2739
1223
+ * MIGS: Scrub sensitive data [curiousepic] #2740
1224
+ * Worldpay US: Scrub sensitive data [curiousepic] #2742
1225
+ * WorldPay: Remove Israel from supported country list [dtykocki] #2746
1226
+ * Optimal Payments: Scrub sensitive data [curiousepic] #2743
1227
+ * USA Epay Transaction: Scrub sensitive data [curiousepic] #2745
1228
+ * MIGS: Add unit test for scrub [curiousepic] #2747
1229
+ * Worldpay US: Fix bank account scrub [curiousepic] #2748
1230
+ * Litle: Add support for merchantData elements [dtykocki] #2751
1231
+ * Paymentez: Add support for purchasing and authorizatin with tokens [bpollack] #2753
1232
+ * Ingenico: Remove Trinidad and Tobego from supported country list [bpollack] #2754
1233
+ * Barclaycard Smartpay: Remove Georgia from supported country list [bpollack] #2755
1234
+ * Merchant Warrior: Remove requirement for state field [joshnuss] #2638
1235
+ * Wirecard: Adding missing DigiCert Global Root G2 Cert [filipebarcos] #2759
1236
+ * Redsys: Add support for CNY, IDR, INR, KRW and TWD [chopenhauer] #2761
1237
+ * Optimal Payments: Fix scrub for double escaping [curiousepic] #2763
1238
+ * Orbital: Scrub profile transactions [curiousepic] #2762
1239
+ * BlueSnap: Fix currency passing [curiousepic] #2765
1240
+ * Stripe: Support pickup_card decline code [dtykocki] #2764
1241
+ * Improve scrub testing for five gateways [curiousepic] #2767
1242
+ * Payflow: Support scrub [curiousepic] #2768
1243
+ * SecureNet: Support scrub [curiousepic] #2769
1244
+ * Payeezy: Update transaction method when using stored cards [dtykocki] #2770
1245
+ * Citrus Pay, DIBS, 1stPayGateway, Global Transport, NETbilling, Ogone, TNS: remove TLS 1.0 requirement [bdewater] #2774
1246
+ * CardStream: Default IP and customer country [dtykocki] #2773
1247
+ * Stripe: Support destination amount [dtykocki] #2777
1248
+ * GlobalCollect: Update supported country list [dtykocki] #2783
1249
+ * Adyen: Support store action [curiousepic] #2784
1250
+ * Psigate: Update Test URL and Card [nfarve] #2785
1251
+ * USA ePay Transaction: Support ACH/eChecks [curiousepic] #2786
1252
+ * PayU Latam: Support language parameter [dtykocki] #2787
1253
+ * Payflow: Pass OrderDesc field [curiousepic] #2789
1254
+ * Global Collect: Add arbitrary fraudField params [curiousepic] #2790
1255
+ * Paystation: Support verify action [curiousepic] #2793
1256
+ * Checkout V2: Return error codes in response [curiousepic] #2791
1257
+ * CardStream: Change refund to use REFUND_SALE [dtykocki] #2795
1258
+ * Spreedly: Scrub sensitive transaction data [abarrak] #2781
1259
+ * Stripe: Add `exchange_rate` parameter [WilsonChiang] #2796
1260
+ * Mundipagg: New Gateway Implementation [nfarve] #2791
1261
+
1262
+ == Version 1.77.0 (January 31, 2018)
1263
+ * Authorize.net: Allow Transaction Id to be passed for refuds [nfarve] #2698
1264
+ * Forte: ensure unit tests are local-only [bpollack] #2696
1265
+ * Moneris US: ensure unit tests are local-only [bpollack] #2696
1266
+ * Payflow: Change Verify Method for Amex Cards [nfarve] #2693
1267
+ * Safe Charge: fix an issue with variable shadowing in the adapter [bpollack] #2697
1268
+ * Crashnet: add scrubbing support [bpollack] #2695
1269
+ * Barclays EPDQ: add scrubbing support [bpollack] #2695
1270
+ * Fat Zebra: add remote scrubbing test [bpollack] #2695
1271
+ * Clearhaus: add remote scrubbing test [bpollack] #2695
1272
+ * Borgun: add remote scrubbing test [bpollack] #2695
1273
+ * Stripe: Added support for the quickchip entry mode option [rbalsdon]
1274
+ * Ogone: Add tests for scrubbing [bpollack] #2700
1275
+ * Global Transport: Add scrubbing support [bpollack] #2700
1276
+ * HPS: Add scrubbing support [bpollack] #2700
1277
+ * FirstData E4: Improve scrubbing and add remote scrubbing test [bpollack] #2700
1278
+ * Elavon: Add scrubbing support [bpollack] #2700
1279
+ * Data Cash: Add scrubbing support [bpollack] #2700
1280
+ * Litle: Fix testing URL [wsmoak] #2673
1281
+ * Barclays ePDQ Extra Plus: Add missing Entrust root certificates [pacso] #2614
1282
+ * Moneris US: Add scrubbing support [bpollack] #2702
1283
+ * Mercury: Add scrubbing support [bpollack] #2702
1284
+ * Fat Zebra: Tweak remote scrubbing test [bpollack] #2704
1285
+ * Card Connect: Add new gateway [nfarve] #2706
1286
+ * Payeezy: Ensure store calls are properly scrubbed [dtykocki] #2709
1287
+ * Payeezy: Add unit test for scrubbing store call [dtykocki] #2710
1288
+ * Element: Correct URL used by store transactions [dtykocki] #2711
1289
+ * Borgun: Add support for specifying TerminalID [bpollack] #2712
1290
+ * Barclaycard Smartpay: 3DS Implementation [nfarve] #2714
1291
+ * Payeezy: Surface gateway_message on failure [curiousepic] #2717
1292
+ * Payment Express: Scrub merchant password [curiousepic] #2723
1293
+ * Stripe: Fix Partial Application Fee Refunds [curiousepic] #2713
1294
+ * GooglePay: Support network tokenized cards [joshnuss] #2725
1295
+
1296
+ == Version 1.76.0 (January 3, 2018)
1297
+ * PayU Latam: Change default text for description [nfarve] #2669
1298
+ * Checkout V2: Allows AVS and CVV result details to come through on authorizations [deedeelavinder] #2650
1299
+ * Global Collect: Adds boolean option for pre_authorization [deeedeelavinder] #2651
1300
+ * Credorax: Pass Transaction Type field [curiousepic] #2653
1301
+ * Add CardProcess Gateway [bpollack] #2659
1302
+ * Safe Charge: Provision 3DS option for approved merchants [deedeelavinder] #2661
1303
+ * PayU Latam: Require payment_country on initialize [curiousepic] #2663
1304
+ * Adyen: Remove CVV as Required Field and Determines shopperInteraction [nfarve] #2665
1305
+ * SafeCharge: add support for VendorID, WebsiteID, and IP logging [bpollack] #2667
1306
+ * Safe Charge: Adds 3DS flag [deedeelavinder] #2668
1307
+ * CardProcess: Fix success? to always return true or false [bpollack] #2674
1308
+ * SagePay: Correct CVV, AVS codes for Sagepay [singhai0] #2670
1309
+ * PayU Latam: Count pending Voids as successful [curiousepic] #2677
1310
+ * Mercado Pago: Ensure acess tokens are URL escaped [bpollack] #2675
1311
+ * MiGS: Update hash format to SHA256 and restore remote tests [bpollack] #2676
1312
+ * MiGS: Support verify calls [bpollack] #2664
1313
+ * iATS: Fix Messages with Failure on iATS Server [nfarve] #2680
1314
+ * Barclaycard Smartpay: Correct repsonse for fraud rejects #2683
1315
+ * Adyen: Allow incomplete addresses in some situations [bpollack] #2684
1316
+ * Paymentez: Add new gateway [bpollack] #2685
1317
+ * PayU Latam: Provide a mechanism to override the amount in verify [dtykocki] #2688
1318
+ * Mercado Pago: Support X-Device-Session-ID Header [bpollack] #2689
1319
+ * Mercado Pago: Support arbitrary additional_info JSON [bpollack] #2691
1320
+ * FirstData E4: Override ECI value for Apple Pay transactions with Discover [jasonwebster] #2671
1321
+ * Quickbooks: Add payment context to Quickbooks charges and refunds [bdewater] #2694
1322
+
1323
+ == Version 1.75.0 (November 9, 2017)
1324
+ * Barclaycard Smartpay: Clean up test options hashes [bpollack] #2632
1325
+ * Barclaycard Smartpay: Extra data fields for credits [bpollack] #2631
1326
+ * Cyber Source: Correctly passes subscriptionID for store [deedeelavinder] #2633
1327
+ * Ebanx: Pass fields for business person responsible [curiousepic] #2635
1328
+ * Ebanx: Support Colombian transactions [bpollack] #2636
1329
+ * FirstData E4 (Payeezy): Ensure numeric ECI values are zero padded [jasonwebster] #2630
1330
+ * Netbanx: Only send currency and billing_details for auths and sales [anotherjosmith] #2643
1331
+ * Netbanx: Revert "Fixes basic auth for netbanx by sending the account_number and api_key" [anotherjosmith] #2644
1332
+ * PayU Latam: Adds `partnerID`, adjusts phone preferences, allows empty `ip_address`, and adjusts for no `cvv` [deedeelavinder] #2634
1333
+ * Sage Payment Solutions: Scrub check info [curiousepic] #2639
1334
+ * Worldbank US: Allow using the backup URL [bpollack] #2641
1335
+ * Worldbank US: Allow using the backup URL per-request [bpollack] #2645
1336
+
1337
+ == Version 1.74.0 (October 24, 2017)
1338
+ * Adyen: Update list of supported countries [dtykocki] #2600
1339
+ * Authorize.net CIM: Handle multiple error messages [amandapuff] #2537
1340
+ * Barclaycard Smartpay: Pass street and house_number fields, in addition to standard address [deedeelavinder] #2603
1341
+ * Barclaycard Smartpay: Use authorization pspReference for refunds [davidsantoso] #2599
1342
+ * Beanstream: Pass email fields without address [curiousepic] #2615
1343
+ * Beanstream: Support recurringPayment for auth, capture, and purchase transactions [dtykocki] #2617
1344
+ * Borgun: Add support for USD transactions [dtykocki] #2602
1345
+ * Borgun: Include currency code from split authorization for voids [dtykocki] #2605
1346
+ * Checkout V2: Expose AVS and CVV results for purchases [dtykocki] #2619
1347
+ * Credorax: Update response codes [curiousepic] #2595
1348
+ * CyberSource: Support 3DSecure requests [curiousepic] #2624
1349
+ * Ebanx: Pass person_type and name for stored cards [curiousepic] #2621
1350
+ * Ebanx: Support Store and person_type option [curiousepic] #2604
1351
+ * Elavon: Update endpoint URLs [curiousepic] #2608
1352
+ * Netbanx: Fix basic auth by sending the account_number and api_key [anotherjosmith] #2616
1353
+ * Payeezy: Adds support for store [deedeelavinder] #2591
1354
+ * PayU Latam: Set payment_country gateway attribute [curiousepic] #2611
1355
+ * Redsys: Support the DKK currency type [bpollack] #2618
1356
+ * WePay: Only send ip and device for non-recurring transactions [dtykocki] #2597
1357
+
1358
+ == Version 1.73.0 (September 28, 2017)
1359
+ * Adyen: Use original authorization pspReference on Refunds [lyverovski] #2589
1360
+ * Braintree Blue: Explicitly require braintree-ruby version 2.78 [anotherjosmith]
1361
+ * FirstData E4: Scrub 3DS cryptogram [jasonwebster] #2596
1362
+ * PayHub: Replace single quotes with double quotes in error message [matthewheath] #2572
1363
+ * Wirecard: Format non-fractional currency amounts correctly [bdewater] #2594
1364
+
1365
+ == Version 1.72.0 (September 20, 2017)
1366
+ * Adyen: Fix failing remote tests [dtykocki] #2584
1367
+ * Authorize.net: Remove numeric restriction on customer ID [dtykocki] #2579
1368
+ * Authorize.net: Restore default state value for non-US addresses [jasonwebster] #2563
1369
+ * Beanstream: Do not default state and zip with empty country [dtykocki] #2582
1370
+ * Braintree Blue: Add eci_indicator field for Apple Pay [davidsantoso] #2565
1371
+ * Conekta: Add guard clause for details fallbacks [curiousepic] #2573
1372
+ * Conekta: Pull required details from billing address [nfarve] #2568
1373
+ * DataCash: Enable refunding recurring transactions [davidsantoso] #2560
1374
+ * Ebanx: Adds Brazil Specific Parameters [nfarve] #2559
1375
+ * Kushki: Add support for refunds [dtykocki] #2575
1376
+ * MercadoPago: Additional tweaks for transaction requests [davidsantoso]
1377
+ * MercadoPago: Default to alphanumeric order_id [davidsantoso]
1378
+ * MercadoPago: Send diners_club cards as diners [davidsantoso] #2585
1379
+ * PayU Latam: Correctly condition buyer element fields [curiousepic] #2578
1380
+ * PayU Latam: Pass unique buyer fields and country requirements [curiousepic] #2570
1381
+ * Qvalent: Support general credit [curiousepic] #2558
1382
+ * SafeCharge: Update to Version 4.1.0 [nfarve] #2556
1383
+ * WePay: Don't default API version header [curiousepic] #2567
1384
+ * WePay: Don't require email for Store [curiousepic] #2588
1385
+
1386
+ == Version 1.71.0 (August 22, 2017)
1387
+ * Bambora formerly Beanstream: Change casing on customerIp variable [aengusbates] #2551
1388
+ * Checkout V2: Add localized_amount support to add_invoice function [nicolas-maalouf-cko] #2452
1389
+ * Checkout V2: Add UAE to country list [shasum] #2548
1390
+ * Checkout V2: Fix success response code validation [nicolas-maalouf-cko] #2452
1391
+ * CreditCall: Only allow AVS when specified [curiousepic] #2549
1392
+ * CreditCall: Parse additional params from responses [nfarve] #2552
1393
+ * CreditCall: Parse more response params [nfavre] #2543
1394
+ * MercadoPago: Small tweaks to building requests [davidsantoso] #2555
1395
+ * Orbital: Support Network Tokenization Credit Cards [curiousepic] #2553
1396
+ * Orbital: Updgrade schema version to 7.1 [curiousepic] #2546
1397
+ * Remove HUF from default non-fractional currencies [curiousepic] #2538
1398
+ * Stripe: Add support for statement_address parameters for EMV transactions [malcolm-mergulhao] #2524
1399
+ * TransFirst Express: Don't send address2 without value [nfarve] #2545
1400
+ * TransFirst Express: Fix Optional Fields Being Passed Blank [nfarve] #2550
1401
+ * TransFirst: Fix partial refund [nfarve] #2541
1402
+ * Vantiv (Litle): Pass 3DS fields [curiousepic] #2536
1403
+ * Braintree Blue: Add phone to options [deedeelavinder] #2564
1404
+
1405
+ == Version 1.70.0 (August 4, 2017)
1406
+ * Barclaycard Smartpay: Provider a default billing address house number [nfarve] #2520
1407
+ * FirstData E4: Fix duplicate XID and CAVV values in tokenized transactions [jasonwebster] #2529
1408
+ * FirstData E4: Loose XSD validation for Payeezy (FirstData E4) [jasonwebster] #2529
1409
+ * GlobalTransport: Support partial authorizations [dtykocki] #2511
1410
+ * Litle: Update schema and certification tests to v9.12 [curiousepic] #2522
1411
+ * Litle: Update urls and name to Vantiv [curiousepic] #2531
1412
+ * Mercado Pago: Add gateway support [davidsantoso] #2518
1413
+ * Orbital: Add support for level 2 data [dtykocki] #2515
1414
+ * PayU Latam: Pass DNI Number [curiousepic] #2517
1415
+ * Qvalent: Pass 3dSecure fields [curiousepic] #2508
1416
+ * SafeCharge: Correct UserID field name [curiousepic]
1417
+ * SafeCharge: Pass UserID field [curiousepic] #2507
1418
+ * AuthorizeNet: Allow Response Code 4 to be returned as successful [nfarve] #2530
1419
+ * Forte: Remove order number from captures in Forte Gateway [nfarve] #2532
1420
+ * PayU Latam: Add additional mandatory fields [deedeelavinder] #2528
1421
+
1422
+ == Version 1.69.0 (July 12, 2017)
1423
+ * WePay: Add payer_rbits and transaction_rbits optional fields [davidsantoso]
1424
+ * Adyen: Use Active Merchant standard order_id option for reference [jasonwebster] #2483
1425
+ * Correct calculation for three-exponent currencies [curiousepic] #2486
1426
+ * SagePay: Use VPSTxId from authorization for refunds [dtykocki] #2489
1427
+ * Payflow: Move PAYPAL-NVP header option to a class attribute on the payment gateway [deuxpi] #2492
1428
+ * Optimal Payments: Pass CVD indicator accurately [curiousepic] #2491
1429
+ * SagePay: Make Repeat purchase if payment is a past authorization [curiousepic] #2495
1430
+ * Netbanx: map response errorCodes onto standard error code [iirving] #2456
1431
+ * Netbanx: Update supported countries and cardtypes [iirving] #2456
1432
+ * Barclaycard Smartpay: Support 0- and 3-exponent currencies [curiousepic] #2498
1433
+ * CyberSource: Fix XSD schema validation issues [jasonwebster] #2497
1434
+ * WorldPay: Support three-decimal currencies [curiousepic] #2501
1435
+ * NMI: Add first and lastname to echeck transactions [dtykocki] #2499
1436
+ * PayFlow: Add optional email field [davidsantoso] #2505
1437
+ * Worldpay: Support Credit on CFT-enabled merchant IDs [curiousepic] #2503
1438
+ * FirstPay: Add processor_id field [davidsantoso] #2506
1439
+ * Authorize.Net: Use two character default for billing state [dtykocki] #2496
1440
+
1441
+ == Version 1.68.0 (June 27, 2017)
1442
+ * Authorize.Net: Return failed response if forced refund settlement fails [bizla] #2476
1443
+ * Authorize.net: Concatenate address1 and address2 [dtykocki] #2479
1444
+ * Braintree Blue: Braintree Blue: Add ECI indicator to Android Pay transactions [davidsantoso] #2474
1445
+ * Credorax: Support 0- and 3-exponent currencies [curiousepic]
1446
+ * Cybersource: update supported card types [bdewater] #2477
1447
+ * FirstData: Add a default network tokenization strategy for FirstData E4 [krystosterone] #2473
1448
+ * FirstPay: FirstPay: Update hostname and force TLSv1 minimum [davidsantoso] #2478
1449
+ * JetPay V2: Support store transactions and token based payments [shasum] #2475
1450
+ * Moneris: Add 3DS fields for decrypted Apple and Android Pay data [davidsantoso] #2457
1451
+ * Openpay: Send customer name and email in authorize and purchase [dtykocki] #2468
1452
+ * Payflow: Moved to name value pair (NVP) with payflow [jusleg] #2462
1453
+ * Payflow: Set PAYPAL_NVP header as optional [davidsantoso] #2480
1454
+ * QuickPay V10: Return last response for purchase and authorize [curiousepic] #2461
1455
+ * SafeCharge: Map billing address fields [davidsantoso] #2464
1456
+ * SafeCharge: Track currency from original transaction [davidsantoso] #2470
1457
+ * Support three-decimal currencies [curiousepic] #2466
1458
+ * Trexle: Add gateway support [hossamhossny] #2351
1459
+
1460
+ == Version 1.67.0 (June 8, 2017)
1461
+ * Acapture: Pass 3D Secure fields [davidsantoso] #2451
1462
+ * Authorize.net: Pass Level 2 Data Fields [curiousepic] #2444
1463
+ * Credorax: Add 3D Secure authentication fields [davidsantoso] #2446
1464
+ * Ebanx: Add gateway support [davidsantoso] #2447
1465
+ * Ebanx: Reduce supported countries to Brazil and Mexico [davidsantoso]
1466
+ * FirstData Payeezy: Set default ECI value for auth/purchase transactions [jasonwebster] #2448
1467
+ * JetPay V2: Add new gateway [shasum] #2442
1468
+ * JetPay V2: Add optional tax data to capture calls [shasum] #2445
1469
+ * NMI: Add Network Tokenization support [shasum] #2431
1470
+ * Orbital: Pass soft descriptors from options hash [curiousepic]
1471
+ * Orbital: Update test and production urls [jcowhigjr] #2436
1472
+ * Payeezy: Add client_email field for telecheck [davidsantoso] #2455
1473
+ * Payeezy: Add customer_id_type and customer_id_number fields [davidsantoso] #2454
1474
+ * Quickpay V10: Fix store and token use for recurring payments [wsmoak] #2180
1475
+ * Elavon: Support custom fields [curiousepic] #2416
1476
+ * WePay: Support risk headers [shasum] #2419
1477
+ * WePay: Add Canada as supported country [shasum] #2419
1478
+ * Fat Zebra: Fix xid 3D Secure field [curiousepic]
1479
+ * SafeCharge: Mark support for European countries [curiousepic]
1480
+ * Checkout V2: Pass customer ip option [curiousepic]
1481
+ * Realex: Map AVS and CVV response codes [davidsantoso] #2424
1482
+ * Opp: Send disable3DSecure custom parameter if present [davidsantoso] #2432
1483
+ * SafeCharge: Map standard Active Merchant order_id field [davidsantoso] #2434
1484
+ * Payeezy: Default check number to 001 if not present [davidsantoso] #2439
1485
+ * Opp: Fix incorrect customParameter key to disable 3DS [davidsantoso]
1486
+
1487
+ == Version 1.66.0 (May 4, 2017)
1488
+ * Support Rails 5.1 [jhawthorn] #2407
1489
+ * ProPay: Add Canada as supported country [davidsantoso]
1490
+ * ProPay: Add gateway support [davidsantoso] #2405
1491
+ * SafeCharge: Support credit transactions [shasum] #2404
1492
+ * WePay: Add scrub method [shasum] #2406
1493
+ * iVeri: Add gateway support [curiousepic] #2400
1494
+ * iVeri: Support 3DSecure data fields [davidsantoso] #2412
1495
+ * Opp: Fix transaction success criteria and clean up options [shasum] #2414
1496
+
1497
+ == Version 1.65.0 (April 26, 2017)
1498
+ * Adyen: Add Adyen v18 gateway [adyenpayments] #2272
1499
+ * Authorize.Net: Force refund of unsettled payments via void [bizla] #2399
1500
+ * Barclays ePDQ: removed because it has been replaced by a new API [bdewater] #2331
1501
+ * Beanstream: Map ISO province codes for US and CA [shasum] #2396
1502
+ * Braintree Blue: Change :full_refund option to :force_full_refund_if_unsettled [bizla] #2403
1503
+ * Braintree Blue: Force refund of unsettled payments via void [bizla] #2398
1504
+ * Checkout V2: Fix sandbox URL [nicolas-maalouf-cko] #2391
1505
+ * Checkout V2: Fix success_from not properly checking two possible success codes [davidsantoso]
1506
+ * Cybersource: Rescue XML parse exception [shasum] #2380
1507
+ * GlobalCollect: Make message and error reporting more robust [curiousepic] #2370
1508
+ * GlobalCollect: Set REJECTED refunds as unsuccessful transactions [davidsantoso] #2365
1509
+ * GlobalCollect: Truncate firstName field to 15 characters [davidsantoso]
1510
+ * JetPay: Pass down authorization payment method token to refund a capture [davidsantoso]
1511
+ * Openpay: Support card points [shasum] #2401
1512
+ * Orbital: Don't send CVV indicator if CVV is not present [curiousepic] #2368
1513
+ * PayU LATAM: Fix incorrect capture method definition [davidsantoso]
1514
+ * Payeezy: Support dynamic soft descriptors [shasum] #2384
1515
+ * Pin: Add metadata optional field [shasum] #2363
1516
+ * Qvalent: Add soft descriptor fields. Add authorize, capture, and void [davidsantoso]
1517
+ * SafeCharge: Add gateway [davidsantoso]
1518
+ * SagePay: Support Repeat transactions [curiousepic] #2395
1519
+ * Stripe: Support custom application in X-Stripe-Client-User-Agent header [davidsantoso]
1520
+ * TransFirst Transaction Express: Support ACH [curiousepic] #2389
1521
+ * WePay: Support unique_id for idempotent transactions [shasum] #2367
1522
+ * Worldpay: Force refund of unsettled payments via void [bizla] #2402
1523
+
1524
+ == Version 1.64.0 (March 6, 2017)
1525
+ * Authorize.net: Allow settings to be passed for CIM purchases [fwilkins] #2300
1526
+ * Authorize.net: Use new `unsupported_feature` standard error code [jasonwebster] #2322
1527
+ * Base Gateway: Add new `unsupported_feature` standard error code [jasonwebster] #2322
1528
+ * Braintree Blue: Pass cardholder_name with card [curiousepic] #2324
1529
+ * Braintree: Add Android Pay meta data fields [jknipp] #2347
1530
+ * CardStream: Add additional of currencies [shasum] #2337
1531
+ * Credorax: Return failure response reason [shasum] #2341
1532
+ * Digitzs: Add gateway [davidsantoso]
1533
+ * Digitzs: Remove merchant_id from gateway credentials [davidsantoso]
1534
+ * GlobalCollect: Pass options to Refund [curiousepic] #2330
1535
+ * Kushki: Add new gateway [shasum] #2326
1536
+ * Kushki: Remove body from void call [shasum] #2348
1537
+ * Linkpoint: Raise ArgumentError when trying to instantiate without `:pem` [jasonwebster] #2329
1538
+ * Omise: Enable Japan, JPY and JCB support [zdk] #2284
1539
+ * PayU LATAM: Count pending refunds as succeeded [curiousepic] #2336
1540
+ * PayU LATAM: Let Refund take amount value [curiousepic] #2334
1541
+ * Paymill: Send new required fields on tokenization requests [tschelabaumann] #2279
1542
+ * Revert "Authorize.net: Allow settings to be passed for CIM purchases" [curiousepic] #2339
1543
+ * Sage: Default billing state when outside US [shasum] #2340
1544
+ * Stripe: Remove idempotency key from verify [shasum] #2335
1545
+ * TransFirst Transaction Express: Don't send order_id with refunds [curiousepic] #2350
1546
+ * TransFirst Transaction Express: Fix improper AVS and CVV response code mapping [shasum] #2342
1547
+ * WePay: Update API version [shasum] #2349
1548
+ * USA ePay Advanced: Add quick_update_customer action [joshreeves] #2229
1549
+
1550
+ == Version 1.63.0 (February 2, 2017)
1551
+ * Authorize.net: Add #unstore support [jimryan] #2293
1552
+ * AuthorizeNet: Fix line items quirk [shasum]
1553
+ * CardStream: Add dynamic descriptor option fields [curiousepic]
1554
+ * CardStream: Support PEN currency [shasum]
1555
+ * Culqi: Add new gateway [shasum]
1556
+ * CyberSource: Add Lebanon to supported countries [shasum]
1557
+ * Element: Add AVS and CVV codes to response [shasum]
1558
+ * Firstdata E4 (Payeezy): Set correct ECI value for card present swipes [jasonwebster] #2318
1559
+ * GlobalCollect: On purchase skip capture if not required [davidsantoso]
1560
+ * PaymentExpress: Update supported countries [shasum]
1561
+ * Remove leading or trailing whitespace from credit card name [davidsantoso]
1562
+ * Remove support for Ruby 2.0 [jasonwebster]
1563
+ * Secure Pay AU: Add scrubbing support to Secure Pay AU [bruno] #2253
1564
+ * Stripe: Fix error in handling of track-only contactless EMV data [jasonwebster]
1565
+ * Vanco: Update test URL [davidsantoso]
1566
+ * WePay: Build fee structure correctly [curiousepic]
1567
+ * WePay: Remove null address fields from request [davidsantoso]
1568
+ * WePay: Update WePay to API version 2016-12-07 [davidsantoso]
1569
+ * Wirecard: Send customer data in requests [davidsantoso]
1570
+ * Worldpay: Add session id attribute [shasum]
1571
+ * Worldpay: Do not default address when not provided [shasum]
1572
+
1573
+ == Version 1.62.0 (December 5, 2016)
1574
+ * AuthorizeNet: Map to standard AVSResult codes [shasum]
1575
+ * CitrusPay: Add 3DSecureId field [davidsantoso]
1576
+ * CyberSource: Only get alpha2 country code when it's a known country [bruno] #2238
1577
+ * Fat Zebra: Add scrubbing to Fat Zebra gateway [bruno] #2037
1578
+ * Monei: Add US and CA as new supported countries [davidgf] #2209
1579
+ * NAB Transact: Add scrubbing to NAB Transact [bruno] #2038
1580
+ * iATS: Add scrubbing support to iATS [bruno] #2228
1581
+ * Stripe: Ensure ECI values for tokenized cards are padded [jasonwebster] #2250
1582
+ * Forte: Fix incorrect authorization_code response mapping [davidsantoso]
1583
+ * maxiPago: Send currency with request [curiousepic]
1584
+ * Credorax: Map order_id to field H9 [curiousepic]
1585
+ * Authorize.net: Remove duplicate country GB [shasum]
1586
+ * PayU Latam: Add processWithoutCvv2 field [shasum]
1587
+ * Fat Zebra: De-nest soft descriptor fields [curiousepic]
1588
+ * Credorax: Only pass c5 field for billing address1 [davidsantoso]
1589
+ * Orbital: Add support for CLP currency [curiousepic]
1590
+ * Authorize.net: Add line item fields and additional transaction settings [shasum]
1591
+ * Authorize.net: Pass through `header_email_receipt` [shasum]
1592
+ * Stripe: Scrub additional network tokenization related sensitive data [jasonwebster] #2251
1593
+ * Applying: Worldpay: Format non-fractional currency amounts correctly [jasonwebster] #2267
1594
+
1595
+ == Version 1.61.0 (November 7, 2016)
1596
+ * Add codes AQ, BQ, SX, and SS to list of countries and update SD numeric code [zxlin]
1597
+ * AuthorizeNet: Update supported countries list [shasum]
1598
+ * Barclay SmartPay: Add support for credit [shasum]
1599
+ * Barclaycard SmartPay: Update supported countries [shasum]
1600
+ * BluePay: Add Canada to supported countries list [shasum]
1601
+ * BlueSnap: Update countries list [shasum]
1602
+ * Braintree Blue: Add Android Pay support [mrezentes]
1603
+ * Braintree Blue: Add remote test to verify card token [shasum]
1604
+ * Braintree Blue: Get Android Pay tx id from payment method, not options [mrezentes]
1605
+ * CardStream: Add MXN currency code [curiousepic]
1606
+ * CardStream: Set captureDelay to zero on purchase [davidsantoso]
1607
+ * CitrusPay: Add gateway [duff]
1608
+ * CitrusPay: Update URL to current API version [davidsantoso]
1609
+ * Clearhaus: Fix refund of captures [duff]
1610
+ * Clearhaus: Update list of non fractal currencies [curiousepic]
1611
+ * Clearhaus: Use localized amount [curiouspic]
1612
+ * Conekta: Add void action [MauricioMurga]
1613
+ * Credorax: Add gateway support [davidsantoso]
1614
+ * CyberSource, Paymill, Payflow: Add verify_credentials [duff]
1615
+ * CyberSource: Combine auth_reversal with Void [curiousepic]
1616
+ * CyberSource: Increase merchant defined data fields [davidsantoso]
1617
+ * CyberSource: Look up alpha2 country code [curiousepic]
1618
+ * CyberSource: Use localized_amount [curiousepic]
1619
+ * Element: Pass order_id and shipping address [curiousepic]
1620
+ * Fat Zebra: Add cavv, xid, and sli fields [curiousepic]
1621
+ * Fat Zebra: Fix improper descriptor nesting [curiousepic]
1622
+ * Find countries if they are differently cased [curiousepic]
1623
+ * GlobalCollect: Update credit card brand list [curiousepic]
1624
+ * Jetpay: Support endpoint for Canada [shasum]
1625
+ * Linkpoint: Clean whitespace from PEM [curiousepic]
1626
+ * Litle: Retain amount to send in auth reversals [curiousepic]
1627
+ * Litle: add scrubbing support [bruno]
1628
+ * MONEI: Update supported countries list [davidgf]
1629
+ * MiGS: Handle IDR currency [curiousepic]
1630
+ * Migs: Add support for void [mohsenottello]
1631
+ * Migs: Support some additional fields [duff]
1632
+ * Moneris: Fix unit test stubs [shasum]
1633
+ * Moneris: add scrubbing support [bruno]
1634
+ * NMI, FirstData: Support verify_credentials [curiousepic]
1635
+ * Openpay: Add support for verify [duff]
1636
+ * PayJunctionV2: Add gateway support [shasum]
1637
+ * PayU Latam: Add new gateway [shasum]
1638
+ * PayU Latam: Update supported countries list [shasum]
1639
+ * Payflow: Update supported countries list [shasum]
1640
+ * PaypalExpress: Add SoftDescriptor field [talyssonoc]
1641
+ * Redsys: Added DOP and CRC currency [davidsantoso]
1642
+ * Sage: Add support for scrubbing [bruno]
1643
+ * SagePay: Fix truncation [duff]
1644
+ * SecurionPay: Update supported countries list [shasum]
1645
+ * Stripe: Increase authorize amount during verify [davidsantoso]
1646
+ * Stripe: Set minimum authorize amount depending on currency [davidsantoso]
1647
+ * Stripe: Support new network tokenization API params [methodmissing]
1648
+ * Stripe: Update supported countries list [shasum]
1649
+ * TNS and CitrusPay: Support scrub and verify_credentials [duff]
1650
+ * TNS and CitrusPay: Update to version 36 of the API [duff]
1651
+ * TNS: Try TLS v1 [duff]
1652
+ * Telr: Add gateway support [curiousepic]
1653
+ * TransFirsTransactionExpress: Remove blank cvv element [davidsantoso]
1654
+ * TransFirsTransactionExpress: Take into account blank string CVV [davidsantoso]
1655
+ * Vanco: Improve handling of success determination [duff]
1656
+ * Worldpay: Add hcgAdditionalData element [davidsantoso]
1657
+ * Worldpay: Report error code [curiousepic]
1658
+
1659
+ == Version 1.60.0 (July 4, 2016)
1660
+ * Orbital: Fix CC num leak on profile calls [drewblas]
1661
+ * VisaNetPeru: Add ability to refund [duff]
1662
+ * AuthorizeNet: Fix store using new profile [duff]
1663
+ * Clearhaus: Support private key for signature [curiousepic]
1664
+ * Clearhaus: Copy private_key when stripping [curiousepic]
1665
+ * CertoDirect: Remove gateway [shiroginne]
1666
+ * Braintree: Extra error messaging [jordan-brough]
1667
+ * AuthorizeNetCim: Set error code for AuthorizeNetCimGateway response [ka8725]
1668
+ * Quickpay v10: Remove amount requirement for store [curiousepic]
1669
+ * PSLCards: correct namespace in doc for Response object from ActiveRecord::Billing to ActiveMerchant::Billing [CJ Keeney]
1670
+ * Pagar.me: Add pagar.me [chrisenytc]
1671
+ * Stripe: Update Readme to show stripe support [rhlrjv]
1672
+ * Orbital: Add support for the BRL currency [duff]
1673
+ * GlobalTransport: Require TLSv1 [duff]
1674
+ * Openpay: Allow currency to be specified [darkaz]
1675
+ * DataCash: Use API version 2 [curiousepic]
1676
+ * Stripe: Support verify_credentials [duff]
1677
+ * AuthorizeNet: Support verify_credentials [duff]
1678
+ * BraintreeBlue: Support verify_credentials [duff]
1679
+ * Redsys: Added SAR currency [agseco]
1680
+ * QuickPay: Adding customer_ip for authorize action in quickpay [dinesh]
1681
+ * MaxiPago: add void and refund [shasum]
1682
+ * MaxiPago: Allow processor_id override [duff]
1683
+ * Stripe: Interpret string input to store method as token identifier [bizla]
1684
+ * MaxiPago: Add verify and scrub [shasum]
1685
+ * Stripe: Remove metadata restriction from EMV transactions [bizla]
1686
+ * SagePay: Add optional fields to SagePay requests [cristianstanescu]
1687
+ * CyberSource: Assign default with override for billing address and email [shasum]
1688
+ * CyberSource: Assign default order_id [duff]
1689
+ * TNS: Support asia_pacific endpoint [curiousepic]
1690
+ * TransFirsTransactionExpress: Fix exception [duff]
1691
+ * CyberSource: Add decision manager optional fields [shasum]
1692
+ * CyberSource: Add decision manager optional fields [shasum]
1693
+ * TNS: Add support for TLS v1.2 [curiousepic]
1694
+ * QuickpayV7: Default description field for store operation [duff]
1695
+ * Elavon: Support customer_number field [duff]
1696
+ * Map test_mode_live_card code to new standard error code [berkcaputcu]
1697
+ * Elavon: Pass customer_number correctly [duff]
1698
+ * Stripe: add SG to supported_countries attribute [timbeiko]
1699
+
1700
+ == Version 1.59.0 (May 18, 2016)
1701
+ * Orbital: Allow AVS parts to be sent sans country [duff]
1702
+ * SecureNet: Return the right error message for declines [duff]
1703
+ * Moneris: Add verify [anellis]
1704
+ * Moneris: Add verify [anellis]
1705
+ * Jetpay: Add support for origin field[anellis]
1706
+ * Jetpay: Don't default origin field [duff]
1707
+ * GlobalCollect: New gateway support [curiousepic]
1708
+ * Openpay: Use strict_encode64 [duff]
1709
+ * Sage: Always pass along the billing state [duff]
1710
+ * VisaNet Peru: New gateway support [shasum]
1711
+ * Worldpay: Allow installationId to be specified at transaction time [duff]
1712
+ * SecurionPay: Support store [shasum]
1713
+ * Barclaycard Smartpay: Proper AVS return codes [curiousepic]
1714
+ * VisaNetPeru: Pass through CVV [duff]
1715
+ * Barclaycard Smartpay: Use strict_encode64 [duff]
1716
+ * VisaNetPeru: Fix error when billing address empty [shasum]
1717
+ * Vanco: Update live_url [duff]
1718
+ * Cardstream: Reference purchase [curiousepic]
1719
+ * Paymill: Fix error handling [methodmissing]
1720
+ * Latitude19: New gateway support [shasum]
1721
+ * BraintreeBlue: remove invalid test assertions [prburke]
1722
+ * Merchant e-Solutions: Pass order_id with capture [curiousepic]
1723
+ * CyberSource: Add rescue for ResponseErrors [curiousepic]
1724
+ * AuthorizeNet: Always pass recurringBilling flag if present [curiousepic]
1725
+ * S5: Pass order_id to TransactionID [curiousepic]
1726
+ * NMI: Set ACH sec_code from options if present [curiousepic]
1727
+ * VisaNet Peru: Refactor merchant_id and purchase_number handling [shasum]
1728
+ * Braintree Blue: Pass descriptor_url field [curiousepic]
1729
+ * VisaNet Peru: Add merchant_define_data option [duff]
1730
+ * Merchant e-Solutions: pass optional 3Dsecure params [curiousepic]
1731
+ * NMI: Fix refunds and voids of echecks [duff]
1732
+ * VisaNet Peru: Pass dummy email when not present [curiousepic]
1733
+ * PayU India: Add Maestro as supported card [curiousepic]
1734
+ * Cashnet: Don't retry [duff]
1735
+ * CardStream: Make Void call Cancel instead of Refund [curiousepic]
1736
+ * Remove AN and KV country codes as they're not recognized by ISO-3166-1 [apdunston]
1737
+ * Worldpay: Pass unchanged amount with correct currency exponent [curiousepic]
1738
+ * Improve our handling of currencies sans fractions [duff]
1739
+ * Stripe: Added support for the contactless magstripe entry mode option [rbalsdon]
1740
+ * VisaNet Peru: Change money format to dollars [shasum]
1741
+ * BlueSnap: Add gateway [duff]
1742
+ * VisaNet Peru: Select the most meaningful gateway error message [shasum]
1743
+ * SecurionPay: Update country list [duff]
1744
+ * Support for BIN 2 MasterCard brand detection [rbalsdon]
1745
+ * CardStream: Fix signature calculation [duff]
1746
+ * CyberSource: Update test and live URL [marquisong]
1747
+ * AuthorizeNet: Truncate nameOnAccount field [duff]
1748
+ * Tns: Fix ipAddress field [duff]
1749
+ * WorldNet: New gateway support [varyonic]
1750
+ * BraintreeBlue: Allow channel override [duff]
1751
+ * MerchantWarrior: Use Truncated Order Id [ThereExistsX]
1752
+
1753
+
1754
+ == Version 1.58.0 (March 1, 2016)
1755
+ * Move Electron check out of CreditCard into CreditCardMethods [ThereExistsX]
1756
+ * CardStream: Add AED and NZD currencies [sdball]
1757
+ * App55: Remove Gateway [ThereExistsX]
1758
+ * Mercury: Stripping the start and end sentinels on card-present track data for max-length track1 requests [ryanbalsdon]
1759
+ * SagePay: Update VISA Electron ranges [sdball]
1760
+ * Clearhaus: Make request signing more transparent & robust [sdball]
1761
+ * NCRSecurePay: Fix production URL [rwdaigle]
1762
+ * Add ACH support to Stripe [sdball]
1763
+ * PayPal Express: Fixing list of currencies without fractions [Krystosterone]
1764
+ * Cashnet: Default custcode option and proper redirect handling [rwdaigle]
1765
+ * TransFirst: Fix missing address and remove CC only fields for ACH [davidsantoso]
1766
+ * More prominent links to contribution docs [rwdaigle]
1767
+
1768
+
1769
+ == Version 1.57.0 (February 1, 2016)
1770
+ * AuthorizeNetCim: Add unmaskExpirationDate option [RamilGilmanov]
1771
+ * Element: Add gateway support [davidsantoso]
1772
+ * Cardstream: 3D-secure capture fix [duff]
1773
+ * Auth.net: Update store to create payment profiles [davidsantoso]
1774
+ * CyberSource: Add support for mdd_fields [duff]
1775
+ * Worldpay: Add support for verify [davidsantoso]
1776
+ * Element: Add guard clause to handle undocumented errors [davidsantoso]
1777
+ * Clearhaus: Add tests for signed requests [anellis]
1778
+ * Stripe: Support adding cards to account [anellis]
1779
+ * Clearhaus: Add text_on_statement option [anellis]
1780
+ * Payeezy: Void and verify support [davidsantoso]
1781
+ * Creditcall: Use ecommerce rather than cnp [duff]
1782
+ * Payeezy: Add support for echecks [davidsantoso]
1783
+ * Bridgepay: Add ability to store cards and pay with token [anellis]
1784
+ * Initial support for Android Pay network tokenization cards [mrezentes]
1785
+ * Transfirst: Fix exception when not all eCheck information is present [davidsantoso]
1786
+ * Auth.net: Add tests for echeck refunds [davidsantoso]
1787
+ * Transfirst: use default values for some eCheck data [davidsantoso]
1788
+ * Element: Update the live URL endpoint [davidsantoso]
1789
+ * Element: Parse responses from unexpected API errors [davidsantoso]
1790
+ * Transfirst: Remove unused fields for echeck [davidsantoso]
1791
+ * Sage: Internal refactoring into a single gateway class w/ common http conn [anellis]
1792
+ * Cardstream: Adjust authorize and capture transactions [anellis]
1793
+ * NCRSecurePay: New gateway support (Monetra white-label) [rwdaigle]
1794
+ * Element: Map ReferenceNumber to order_id [duff]
1795
+ * Element: Use a better MotoECICode default [duff]
1796
+ * BraintreeBlue: Return transaction id for failed transactions when available [prburke]
1797
+ * PayPal: Add InContextPaypalExpressGateway [xuorig]
1798
+ * TransFirst: CVV is a required tag [duff]
1799
+ * Checkout V2: Add Descriptor Name and City Options [anellis]
1800
+ * Forte: Pass order_id [anellis]
1801
+ * Merchant ESolutioins: Truncate order_id [anellis]
1802
+ * Transfirst Transaction Express: New gateway support [sdball]
1803
+ * Stripe: Add `stripe_account` header option [anellis]
1804
+ * Cardstream: Add AVS code and message [anellis]
1805
+ * Barclaycard Smartpay: New gateway support [curiousepic]
1806
+ * Transfirst: Fix missing address and remove CC only fields for ACH [davidsantoso]
1807
+ * Stripe: Support ACH payments [sdball]
1808
+ * NCRSecurePay: Fix production URL [rwdaigle]
1809
+ * Clearhaus: Make request signing more transparent & robust [sdball]
1810
+ * SagePay: Properly detect Electron brand [sdball]
1811
+ * Mercury: Fix for max-length track 1 [ryanbalsdon]
1812
+
1813
+
1814
+ == Version 1.56.0 (December 1, 2015)
1815
+ * Add Cardknox gateway [dlehren]
1816
+ * Mercury: Add support for card present track 2 [ryanbalsdon]
1817
+ * Cardstream: Improve default currency handling [duff]
1818
+ * Mercury: Strip start and end sentinels on track 2 [ryanbalsdon]
1819
+ * Redsys: Support new SHA256 authentication method [davidsantoso]
1820
+ * Cashnet: Allow custcode override [duff]
1821
+ * Add Rails 5 support [rafaelfranca]
1822
+ * Set required Ruby version for install to 2 or greater [rafaelfranca]
1823
+ * JetPay: Pass ud_fields in capture too [duff]
1824
+ * Stripe: Correctly detect test mode refunds [aprofeit]
1825
+ * Fix variables in remote gateways test template [sdball]
1826
+ * Micropayment: Update fieldnames for new API [duff]
1827
+ * Fix CreditCard#valid_number? erroring on non-digit characters [PatrickTulskie]
1828
+ * Stripe: Correctly detect test mode voids [methodmissing]
1829
+ * Garanti: Add test mode URL and update remote test credentials [cbilgili]
1830
+ * Cashnet: Allow custcode override on refund [duff]
1831
+ * Omise: Add a new optional api_version config [zdk]
1832
+ * Elavon: Include IP address in purchase and authorize requests [aprofeit]
1833
+ * TransFirst: Add support for ACH and more operations [davidsantoso]
1834
+ * FirstData_e4: Fix void for even dollar transactions [duff]
1835
+
1836
+ == Version 1.55.0 (November 9, 2015)
1837
+ * CyberSource: send customer IP address when provided [fastjames]
1838
+ * Braintree: Simplify Braintree scrubbing when no transcript [duff]
1839
+ * AuthorizeNet: Allow market_type override [duff]
1840
+ * FirstData_e4: Support level_2 data [duff]
1841
+ * FirstData_e4: Fix level_2 and level_3 [duff]
1842
+ * MerchantWareFour: Use Void not PreAuthorizationVoid [duff]
1843
+ * JetPay: Allow partial captures [duff]
1844
+ * Creditcall: Fix production url [duff]
1845
+ * FirstData_e4: Fix float error in Void [duff]
1846
+ * Micropayment: Upgrade to new API [mrezentes]
1847
+ * Netbilling: Add order_id to user_info [mrezentes]
1848
+ * Stripe: scrub swipe/track, EMV data out of gateway transcripts [girasquid]
1849
+ * Remove integration_mode [mattfawcett]
1850
+ * Allow setting CVV requirement at instance level [fabiokr]
1851
+ * Add SecurionPay gateway [szajbus]
1852
+ * AuthorizeNet: Don't send currency to void [duff]
1853
+ * Add Komoju gateway [k2nr]
1854
+ * Replace Connection magic numbers with constant references [larrylv]
1855
+ * Add CAMS gateway [trevorgrayson]
1856
+ * PayPal Express: Fix AllowedPaymentMethod [edclements]
1857
+ * Litle: Store credit card from PayPage [dontmatta]
1858
+ * Orbital: Deprecate profile management API [ntalbott]
1859
+ * FirstData e4: Honor currency when supplied [tchill]
1860
+ * Authorize.net: Add config_error standard error code [andrewpaliga]
1861
+ * PayPal Express: Add support for TotalType in SetExpressCheckout [gingerhendrix]
1862
+ * eWay Rapid: Add :invoice option [DylanFM]
1863
+ * Braintree: Add nonce payment method [eric1234,cwoodcox]
1864
+ * Payflow: Allow passing of 3D Secure details via options [marquisong]
1865
+ * Elavon: Support capture via CCCOMPLETE without credit card [marquisong]
1866
+ * Securenet: Allow setting test_mode independently [wedstar]
1867
+ * Replace Base.integration_mode and Base.gateway_mode with just Base.mode [aprofeit]
1868
+ * Micropayment: Allow specification of a project [duff]
1869
+ * QuickpayV10: Truncate order_id [duff]
1870
+ * FirstData_e4: Fix Level 2 data [duff]
1871
+ * Remove some duplication around name handling [duff]
1872
+ * FirstData_e4: Support Tax1Number [duff]
1873
+ * Add Transact Pro gateway [varyonic]
1874
+ * Add Payeezy gateway [huoxito]
1875
+ * USAePay: Add test mode setting via options [marquisong]
1876
+ * Add Clearhaus gateway [dinesh]
1877
+ * WorldpayOnlinePayments: Fix logic to determine success [ao]
1878
+ * Paymill: store order_id in description field [nikoloff]
1879
+ * TWD isn't a zero decimal currency [duff]
1880
+ * PaypalExpress: Use custom zero decimal currencies [duff]
1881
+ * Stripe: Migrate from /refund to /refunds [matthelm]
1882
+ * Bogus: Adding basic EMV support [ryanbalsdon]
1883
+ * PayBox Direct: Refunds and working test credentials [ivanfer]
1884
+ * Vanco: Handle case of no billing_address [duff]
1885
+ * BluePay: Add support for CUSTOM_ID2 field [ajporterfield]
1886
+ * Creditcall: Handle no verification_value [duff]
1887
+
1888
+ == Version 1.54.0 (October 2, 2015)
1889
+ * Beanstream: Add Network Tokenization support [girasquid]
1890
+ * CenPOS: Allow order_id on void [duff]
1891
+ * Provide better insight to CVV usage in requests [davidsantoso]
1892
+ * Ogone: Add verify [duff]
1893
+ * Beanstream: Add verify [mrezentes]
1894
+ * PayPal: Map standard error codes [JakeCataford]
1895
+ * Checkout.com: Fix an issue with empty phone numbers. [anotherjosmith]
1896
+ * Quickpay: Edit store and add ability to purchase with stored card [anellis]
1897
+ * Stripe: Set `receipt_email` to Stripe request if receipt delivery is requested [miccheng]
1898
+ * Worldpay US: Add eCheck support [mrezentes]
1899
+ * FirstData_e4: add level_3 data [mrezentes]
1900
+ * Vanco: Support passing ip address [duff]
1901
+ * Paybox Direct: Currency parsing fix [ivanfer]
1902
+ * QuickpayV10: Remove currency requirement from store. [anellis]
1903
+ * Raven: Use TLS 1.2 endpoint [bslobodin]
1904
+
1905
+ == Version 1.53.0 (September 1, 2015)
1906
+
1907
+ * Redsys: Add a number of currencies [agseco]
1908
+ * Raven: update description, test url, and routing; fix tests [bslobodin]
1909
+ * Raven: do not pass default (incorrect) PaymentType to #void [bslobodin]
1910
+ * Add scrubbing to a number of gateways [anellis]
1911
+ * BluePay: Add scrubbing [anellis]
1912
+ * BraintreeBlue: Allow custom logger [duff]
1913
+ * MerchantWareFour: Truncate invoiceNumber [duff]
1914
+ * S5: Pass recurrence_mode in store [duff]
1915
+ * QuickPay: Support 2-letter country codes in V10 API [girasquid]
1916
+ * Stripe: Support validate:false field on store [anellis]
1917
+ * CheckoutV2: Use correct live_url [duff]
1918
+ * QuickPay: strip # from Order IDs before submission [girasquid]
1919
+ * Litle: Use schema version 9.4 rather than 8.18 [anellis]
1920
+ * Litle: Add decrypted apple_pay [anellis]
1921
+ * QuickPay: fix method signature on #void [girasquid]
1922
+ * Forte: Add gateway [davidsantoso]
1923
+ * Stripe: return refund id for refund authorization [anellis]
1924
+ * Paypal: Update api version [anellis]
1925
+ * TNS: Translate countries to alpha3 codes [anellis]
1926
+ * TNS: Handle non existent country [duff]
1927
+ * TNS: Rescue Errors [anellis]
1928
+ * CenPOS: Support avs_result and cvv_result [tjstankus]
1929
+ * Stripe: Add application fee only on non-EMV transactions [bizla]
1930
+ * Stripe: don't send blank, non-nil values [girasquid]
1931
+ * Ogone: Send different auth type for mastercard [anellis]
1932
+ * Cardstream: Add "type" field support [rwdaigle]
1933
+ * Cardstream: 3dsecure transaction option [rwdaigle]
1934
+ * Paystation: Map order_id to non-unique merchant reference field [anellis]
1935
+ * Cardstream: Check for nil street address [anellis]
1936
+ * Checkout.com and CheckoutV2.com: Update country list [duff]
1937
+ * Cardstream: Handle nil addresses [rwdaigle]
1938
+ * MiGS: Allow passing in currency [alovak]
1939
+ * [POSSIBLE BREAKAGE] NMI: No longer use auth.net emulator [rwdaigle]
1940
+ * SecureNet: Add DEVELOPERID if supplied [wedy]
1941
+ * Braintree: Update country list [duff]
1942
+ * NMI: Don't include dup_seconds if nil [rwdaigle]
1943
+ * QuickPay: Make all operations to v10 platform synchronous [ta]
1944
+ * QuickPay: Handle issue where no operations exists on payment [ta]
1945
+ * NMI: Support merchant_defined_fields [duff]
1946
+ * QuickpayV10: Add verify [anellis]
1947
+ * BraintreeBlue: Use wiredump_device for logging only if present [braintreeps]
1948
+ * QuickpayV10: Add scrubbing [anellis]
1949
+ * QuickPayV10: Change tests to point to proper gateway [anellis]
1950
+ * Monei: Add default options argument [davidgf]
1951
+ * Ogone: Add additional 3d-secure parameters [ntalbott]
1952
+ * Ogone: Refactor signature calculation [ntalbott]
1953
+ * Add Creditcall gateway [davidsantoso]
1954
+ * Redsys: Fix scrubbing for failed transactions [davidsantoso]
1955
+ * Micropayment: Support Micropayment gateway [rwdaigle]
1956
+ * USAePay: Use names from the given billing and shipping address [marquisong]
1957
+ * Stripe: Add application fee on EMV authorize calls [bizla]
1958
+
1959
+ == Version 1.52.0 (July 20, 2015)
1960
+
1961
+ * Authorize.Net: Add device type to authorize.net retail requests [abecevello]
1962
+ * Vanco: Change transaction type to WEB for echecks [duff]
1963
+ * PayPal: Allow soft descriptor to be specified [davidsantoso]
1964
+ * Authorize.net: Add disable_partial_auth field [anellis]
1965
+ * SagePay: Add apply_avscv2 field [anellis]
1966
+ * S5: Add Store [anellis]
1967
+ * Merchant Ware v4: Add support for verify [davidsantoso]
1968
+ * Mercury: No longer default to allow partial auth [duff]
1969
+ * PayPal: Fix soft_descriptor and support soft_descriptor_city [duff]
1970
+ * Merchant Ware: Add scrubbing [davidsantoso]
1971
+ * Stripe: Make purchase via vaulted card consistent [duff]
1972
+ * Moneris: Add network tokenization support [andrewpaliga]
1973
+ * Ogone: Allow specifying a timeout value for requests [tomhipkin]
1974
+ * PayU India: Increase allowed txnid to 30 characters [ntalbott]
1975
+ * Authorize.Net: Allow passing device type through options, make wireless POS the default [abecevello]
1976
+ * Authorize.Net: Update to new Akamai URL [taf2]
1977
+ * Braintree: Add hold_in_escrow [anellis]
1978
+ * Stripe: Allow purchases with tokens without customer specification [bizla]
1979
+
1980
+ == Version 1.51.0 (July 2, 2015)
1981
+
1982
+ * Garanti: Illegal character '&' parsing response [masaruhoshi]
1983
+ * Stripe: Revert force USD for verify [duff]
1984
+ * Litle: Surface XML validation errors in the response [jasonbosco]
1985
+ * Litle: Pass the credit card verification value for tokenization (#store) requests, if one is set. [jasonbosco]
1986
+ * S5: Make scrubbing regex less greedy [duff]
1987
+ * CardStream: Add support for verify [anellis]
1988
+ * Authorize.net: UTF-8 encode requests [duff]
1989
+ * Banwire: Add default email [anellis]
1990
+ * PayU India: Handle bad JSON [ntalbott]
1991
+ * Dibs: Pass CVC param only if there's a value [bruno]
1992
+ * Sage: Credit really is credit not refund [duff]
1993
+ * Sage: Add ability to refund [duff]
1994
+ * Cardstream: Add scrubbing [anellis]
1995
+ * Litle: Add debt_repayment_flag [duff]
1996
+ * iATS: Support ACH [rwdaigle]
1997
+ * CheckoutV2: Add Gateway [anellis]
1998
+ * CenPOS: Fix refund amount issue [duff]
1999
+ * Add error_code mapping and error_code_from to gateway generator [jnormore]
2000
+ * Stripe: Parse EMV ARC from error response [bizla]
2001
+ * Redsys: Add MYR currency [agseco]
2002
+ * Add "contactless" flag to credit card model [davidseal]
2003
+ * Stripe: Add "contactless" flag support to gateway [davidseal]
2004
+ * Add encrypted_pin data to credit card model [ryanbalsdon]
2005
+ * Stripe: Add encrypted_pin support to gateway [ryanbalsdon]
2006
+ * Stripe: Support mapping advanced decline codes to standard codes [abecevello]
2007
+ * Epay: filter out invalid characters in returned URLs [dwradcliffe]
2008
+ * Redsys: Strip leading zeroes from currency codes [agseco]
2009
+ * Authorize.net: Add invoice information to refund [marquisong]
2010
+ * Authorize.net: Add store ability [duff]
2011
+ * Paystation: Add refund [mrezentes]
2012
+ * Paystation: No longer require order_id everywhere [duff]
2013
+ * Checkout: Support descriptor_name and descriptor_city [duff]
2014
+ * Add supports_network_tokenization? to gateways [jnormore]
2015
+ * Bpoint: Handle message for invalid login [anellis]
2016
+ * TransFirst: Add scrubbing [davidsantoso]
2017
+ * TransFirst: Add back a few request fields [davidsantoso]
2018
+
2019
+
2020
+ == Version 1.50.0 (June 1, 2015)
2021
+
2022
+ * Vanco: Add gateway [duff]
2023
+ * Conekta: Move device fingerprint to root [MauricioMurga]
2024
+ * Conekta: Change default language to Spanish [MauricioMurga]
2025
+ * Vanco: Improve authentication handling [duff]
2026
+ * Vanco: Allow specification of fund_id [duff]
2027
+ * S5: Add gateway [davidsantoso]
2028
+ * SecureNet: Truncate order_id [duff]
2029
+ * [POSSIBLE BREAKAGE] Stripe: Be explicit about API version [duff]
2030
+ * Dibs: Add gateway [mrezentes]
2031
+ * Dibs: Rubyize merchant_id and secret_key [mrezentes]
2032
+ * Stripe: Add support for reverse_transfer [duff]
2033
+ * USA ePay: Add support for manual entry indicator [AnotherJoSmith]
2034
+ * Authorize.Net: Add support for manual entry indicator [AnotherJoSmith]
2035
+ * CenPOS: Change description to invoice_detail [mrezentes]
2036
+ * BPoint: Add gateway [tjstankus]
2037
+ * S5: Remove address requirement for purchase and authorize [davidsantoso]
2038
+ * Vanco: Add support for eChecks [duff]
2039
+ * Remove Adyen support [ntalbott]
2040
+ * CenPOS: Use ProcessCreditCard action [duff]
2041
+ * CASHnet: uri encode the merchant gateway name [mrezentes]
2042
+ * S5: Include card brand in request body [davidsantoso]
2043
+ * Vanco: Handle multiple error responses [duff]
2044
+ * Merchant Partners gateway support [rwdaigle]
2045
+ * BPoint: Update params to contain all response data [tjstankus]
2046
+ * BPoint: Support biller_code in options [tjstankus]
2047
+ * Sagepay: Add Verify [anellis]
2048
+ * S5: Build XML with UTF-8 encoding [tjstankus]
2049
+ * Cashnet: Handle unparsable response body [duff]
2050
+ * CenPOS: Allow specification of customer_code [duff]
2051
+ * Allied Wallet: Add gateway [anellis]
2052
+ * S5: set Regex closure on scrubbing method [davidsantoso]
2053
+ * Dibs: Require TLSv1 [duff]
2054
+ * Optimal: Handle case of no billing address [duff]
2055
+ * Omise: Add gateway [zdk]
2056
+ * CenPOS: Simplify currency handling [duff]
2057
+ * Beanstream: Don't treat redirect as success [aprofeit]
2058
+ * Add PayU India gateway [ntalbott]
2059
+ * NetBilling: Require TLSv1 [duff]
2060
+ * S5: Handle recurring transactions without CVV [davidsantoso]
2061
+ * Stripe: Force USD for verify [duff]
2062
+ * PayU India: Prevent shadowing in response parsing [ntalbott]
2063
+ * QuickPay: Add support for v10 API [ta]
2064
+ * Fat Zebra: Fix refund and store signatures [duff]
2065
+ * Fat Zebra: Allow transactions without a CVV [duff]
2066
+
2067
+ == Version 1.49.0 (May 1, 2015)
2068
+
2069
+ * Braintree: Add support for AVS error codes [ivanvfer]
2070
+ * MerchantWarrior: Truncate description field [duff]
2071
+ * Braintree: Add service_fee_amount option [duff]
2072
+ * SecureNet: Allow shipping_address[:name] [duff]
2073
+ * MonerisUS: Add verify [mrezentes]
2074
+ * Ezic: Add gateway [duff]
2075
+ * Stripe: Add destination field [cwise]
2076
+ * SecureNet: Fix ordering of shipping field names [duff]
2077
+ * SecurePayAu: Update API URL [girasquid]
2078
+ * Stripe: Add EMV "chip & sign", "chip & offline PIN" and Maestro support [bizla]
2079
+ * Add Errno::EHOSTUNREACH to NetworkConnectionRetries::DEFAULT_CONNECTION_ERRORS [randito78]
2080
+ * Stripe: Add support for idempotency keys [michaelherold]
2081
+ * WePay: Handle JSON::ParserError exceptions [duff]
2082
+ * Borgun: Update country list and homepage url [mrezentes]
2083
+ * AuthorizeNet: Add cvv to request only if it's valid [tjstankus]
2084
+ * Stripe: Bug fix: add amounts only on non-EMV transactions, temporarily omit EMV testcases [bizla]
2085
+ * Ezic: Add support for void [duff]
2086
+ * iATS: Update supported countries [mrezentes]
2087
+ * Ezic: Update supported countries [duff]
2088
+ * AuthorizeNet: Truncate card number [tjstankus]
2089
+
2090
+ == Version 1.48.0 (April 8, 2015)
2091
+
2092
+ * Clean up `rake gateways:hosts` output [ntalbott]
2093
+ * Add Axcess MS gateway [timtait]
2094
+ * Add PayHub gateway [grepruby]
2095
+ * Orbital: Improve data formatting [boone]
2096
+ * [POSSIBLE BREAKAGE] USAePay Transaction: Make "void release" the default [dppcode]
2097
+ * Redsys: Add rudimentary vaulting [varyonic]
2098
+ * Exact: Handle 401 failures better [jefflaporte]
2099
+ * SagePay: make `VPSProtocol` user-configurable [boxofrad]
2100
+ * Netbilling: Add store support [cshepherd]
2101
+ * Add Qvalent gateway [markabe]
2102
+ * Expose proxy address and port to gateways [arkes]
2103
+ * Remove Ruby 1.9 [j-mutter]
2104
+ * Qvalent: Do not sent order.ipAddress when storing [markabe]
2105
+ * Qvalent: Fix argument name [bruno]
2106
+ * Qvalent: map card storage reference to authorization [markabe]
2107
+ * Qvalent: Fix scrub replacement, it was too greedy [markabe]
2108
+ * PayConex: Add gateway [duff]
2109
+ * AuthorizeNet: Add credit support [duff]
2110
+ * CenPOS: Add gateway [markabe]
2111
+ * Stripe: Update country list [markabe]
2112
+ * Add Monei.net gateway [leolara]
2113
+ * MerchantWarrior: Fix refund and capture signatures [duff]
2114
+ * CenPOS: Add support for capture and refund [markabe]
2115
+ * Authorize.net: Add support for network tokenization credit cards [jnormore]
2116
+ * Stripe: Add support for passing in metadata for auths and purchases [kitt]
2117
+ * Pin: Pass amount param for captures [ab9]
2118
+ * NAB Transact: Improve store functionality [duff]
2119
+ * Add Worldpay Online Payments [ao]
2120
+ * Fat Zebra: Add multi-currency support [nagash]
2121
+ * Fat Zebra: Add auth/capture capability [nagash]
2122
+ * Fat Zebra: Add soft descriptor support [nagash]
2123
+
2124
+ == Version 1.47.0 (February 25, 2015)
2125
+
2126
+ * Authorize.Net: Properly send name in shipping address line, when shipping address is provided [girasquid]
2127
+ * Payflow: Add verify support [ntalbott]
2128
+ * Capture ConnectionError#triggering_exception [ntalbott]
2129
+ * Flo2Cash: Map Reference->:order_id (not :invoice) [ntalbott]
2130
+ * Flo2Cash: Fix card brand handling [ntalbott]
2131
+ * Flo2Cash: Improve error handling & simplify "Simple" gateway [ntalbott]
2132
+ * Remove Vindicia gateway [mutemule]
2133
+ * Firstdata E4: Support other mastercard string [jcbantuelle]
2134
+ * Checkout: Disallow altering endpoint via options [markabe]
2135
+
2136
+ == Version 1.46.0 (January 20, 2015)
2137
+
2138
+ * CHANGE: drop `offsite_payments` and `active_utils` as dependencies. [wvanbergen]
2139
+ * CHANGE: remove `OffsitePaymentShim`. You will have to add offsite_payments as a dependency,
2140
+ and update any mentions of `ActiveSupport::Billing::Integration` to
2141
+ `OffsitePayments::Integrations`. [wvanbergen]
2142
+ * QuickBooks Payments: Add adapter [ivanfer, bizla]
2143
+ * Quickbooks: Remove requirement of oauth gem.
2144
+ * PayGate: Add support for refunds [StephanAtG2]
2145
+ * PayPal: Add #scrub for scrubbing PCI information out of HTTP transcripts [girasquid]
2146
+ * Stripe: Add #scrub for scrubbing PCI information out of HTTP transcripts [girasquid]
2147
+ * Cybersource: Add ability to verify a card [duff]
2148
+ * BraintreeBlue: Expose the error code in the response params [duff]
2149
+ * eWay Rapid: Update supported countries and card types [incarnate]
2150
+ * PayPal: Allow specifying ButtonSource at init [ntalbott]
2151
+ * Payflow: Add fraud_review support [ntalbott]
2152
+ * Add IPP gateway [InfraRuby]
2153
+ * Redsys: Fix order_id truncation [duff]
2154
+ * AuthorizeNet: Improve duplicate_window handling [duff]
2155
+ * PayPal: Fix ButtonSource bug [ntalbott]
2156
+ * Checkout: Prevent multiple trackids from being passed [markabe]
2157
+ * Pin: Handle JSON parsing exception in response [duff]
2158
+ * Improve test suite to test against multiple ActiveSupport versions [wvanbergen]
2159
+ * Misc. code cleanup [wvanbergen]
2160
+ * Add Flo2Cash gateway [markabe]
2161
+ * Litle: Allow order_source override [duff]
2162
+ * Quickpay: Add ability to finalize a capture [askehansen]
2163
+ * AuthorizeNet: Prevent test mode using live gateway [duff]
2164
+ * Add Flo2Cash Simple gateway [markabe]
2165
+
3
2166
  == Version 1.45.0 (December 1, 2014)
4
2167
 
5
2168
  * HPS: Always pass CardHolderData element [SecureSubmit, ntalbott]
@@ -694,6 +2857,8 @@
694
2857
  * Braintree Blue gateway: Always pass CVV on update [shayfrendt]
695
2858
  * eWAY gateway: Update docs. Require address [juggler]
696
2859
  * Cybersource gateway: Add support for subscriptions [fabiokr]
2860
+ * WePay: Use better endpoint for recurring with no CVV [davidsantoso]
2861
+
697
2862
 
698
2863
  == Version 1.24.0 (June 8, 2012)
699
2864
 
@@ -965,7 +3130,7 @@ value [jduff]
965
3130
  * Support default Return class for all Integrations that don't use returns [Soleone]
966
3131
  * Add support for passing additional options when creating a Notification to all Integrations [Soleone]
967
3132
  * Update BraintreeBlue#refund to have consistent method signature [Jonathan Rudenberg]
968
- * Add rails/init.rb for gem campatability in Rails [Rūdolfs Ošiņš]
3133
+ * Add rails/init.rb for gem campatability in Rails [R?dolfs O?i??]
969
3134
  * Fix Paypal Express response parser [Jonathan Rudenberg]
970
3135
  * Braintree/Transax: Add tax field [wisq]
971
3136
 
@@ -1281,7 +3446,7 @@ value [jduff]
1281
3446
  * Update Secure Pay Au to meet specs for MessageInfo elements [cody]
1282
3447
  * Add support for the Australian Secure Pay payment gateway [cody]
1283
3448
  * Allow LinkPoint cancellations for recurring billing. [yanagimoto.shin]
1284
- * Add support for Åland Islands to the country list [cody]
3449
+ * Add support for ?land Islands to the country list [cody]
1285
3450
 
1286
3451
  == Version 1.3.1 (January 28, 2008)
1287
3452