activemerchant 1.56.0 → 1.66.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG +331 -0
- data/README.md +9 -9
- data/lib/active_merchant/billing/check.rb +3 -0
- data/lib/active_merchant/billing/credit_card.rb +8 -3
- data/lib/active_merchant/billing/credit_card_methods.rb +41 -1
- data/lib/active_merchant/billing/gateway.rb +14 -6
- data/lib/active_merchant/billing/gateways/adyen.rb +228 -0
- data/lib/active_merchant/billing/gateways/authorize_net.rb +157 -44
- data/lib/active_merchant/billing/gateways/authorize_net_cim.rb +7 -4
- data/lib/active_merchant/billing/gateways/barclaycard_smartpay.rb +283 -0
- data/lib/active_merchant/billing/gateways/beanstream/beanstream_core.rb +68 -2
- data/lib/active_merchant/billing/gateways/blue_pay.rb +2 -2
- data/lib/active_merchant/billing/gateways/blue_snap.rb +348 -0
- data/lib/active_merchant/billing/gateways/bpoint.rb +1 -1
- data/lib/active_merchant/billing/gateways/braintree_blue.rb +58 -20
- data/lib/active_merchant/billing/gateways/bridge_pay.rb +37 -8
- data/lib/active_merchant/billing/gateways/card_stream.rb +161 -40
- data/lib/active_merchant/billing/gateways/cashnet.rb +1 -0
- data/lib/active_merchant/billing/gateways/checkout_v2.rb +5 -2
- data/lib/active_merchant/billing/gateways/citrus_pay.rb +24 -0
- data/lib/active_merchant/billing/gateways/clearhaus.rb +24 -40
- data/lib/active_merchant/billing/gateways/conekta.rb +6 -1
- data/lib/active_merchant/billing/gateways/creditcall.rb +1 -1
- data/lib/active_merchant/billing/gateways/credorax.rb +310 -0
- data/lib/active_merchant/billing/gateways/culqi.rb +279 -0
- data/lib/active_merchant/billing/gateways/cyber_source.rb +80 -64
- data/lib/active_merchant/billing/gateways/data_cash.rb +10 -304
- data/lib/active_merchant/billing/gateways/digitzs.rb +292 -0
- data/lib/active_merchant/billing/gateways/elavon.rb +40 -26
- data/lib/active_merchant/billing/gateways/element.rb +356 -0
- data/lib/active_merchant/billing/gateways/fat_zebra.rb +16 -2
- data/lib/active_merchant/billing/gateways/firstdata_e4.rb +6 -1
- data/lib/active_merchant/billing/gateways/forte.rb +10 -2
- data/lib/active_merchant/billing/gateways/global_collect.rb +311 -0
- data/lib/active_merchant/billing/gateways/global_transport.rb +1 -0
- data/lib/active_merchant/billing/gateways/iats_payments.rb +13 -0
- data/lib/active_merchant/billing/gateways/in_context_paypal_express.rb +15 -0
- data/lib/active_merchant/billing/gateways/iveri.rb +251 -0
- data/lib/active_merchant/billing/gateways/jetpay.rb +33 -19
- data/lib/active_merchant/billing/gateways/kushki.rb +217 -0
- data/lib/active_merchant/billing/gateways/latitude19.rb +416 -0
- data/lib/active_merchant/billing/gateways/linkpoint.rb +2 -0
- data/lib/active_merchant/billing/gateways/litle.rb +29 -13
- data/lib/active_merchant/billing/gateways/mastercard.rb +268 -0
- data/lib/active_merchant/billing/gateways/maxipago.rb +145 -122
- data/lib/active_merchant/billing/gateways/merchant_e_solutions.rb +15 -1
- data/lib/active_merchant/billing/gateways/merchant_warrior.rb +10 -7
- data/lib/active_merchant/billing/gateways/mercury.rb +13 -5
- data/lib/active_merchant/billing/gateways/metrics_global.rb +1 -1
- data/lib/active_merchant/billing/gateways/migs.rb +23 -1
- data/lib/active_merchant/billing/gateways/monei.rb +1 -1
- data/lib/active_merchant/billing/gateways/moneris.rb +21 -1
- data/lib/active_merchant/billing/gateways/nab_transact.rb +12 -0
- data/lib/active_merchant/billing/gateways/ncr_secure_pay.rb +165 -0
- data/lib/active_merchant/billing/gateways/netbanx.rb +245 -0
- data/lib/active_merchant/billing/gateways/nmi.rb +30 -9
- data/lib/active_merchant/billing/gateways/omise.rb +9 -5
- data/lib/active_merchant/billing/gateways/openpay.rb +10 -1
- data/lib/active_merchant/billing/gateways/opp.rb +362 -0
- data/lib/active_merchant/billing/gateways/orbital.rb +28 -7
- data/lib/active_merchant/billing/gateways/pagarme.rb +248 -0
- data/lib/active_merchant/billing/gateways/pay_junction_v2.rb +190 -0
- data/lib/active_merchant/billing/gateways/payeezy.rb +61 -12
- data/lib/active_merchant/billing/gateways/payflow/payflow_common_api.rb +1 -1
- data/lib/active_merchant/billing/gateways/payflow.rb +6 -0
- data/lib/active_merchant/billing/gateways/payment_express.rb +1 -1
- data/lib/active_merchant/billing/gateways/paymill.rb +29 -11
- data/lib/active_merchant/billing/gateways/paypal/paypal_common_api.rb +1 -1
- data/lib/active_merchant/billing/gateways/paypal_express.rb +1 -6
- data/lib/active_merchant/billing/gateways/payu_in.rb +3 -2
- data/lib/active_merchant/billing/gateways/payu_latam.rb +402 -0
- data/lib/active_merchant/billing/gateways/pin.rb +6 -3
- data/lib/active_merchant/billing/gateways/pro_pay.rb +326 -0
- data/lib/active_merchant/billing/gateways/psl_card.rb +3 -3
- data/lib/active_merchant/billing/gateways/quickpay/quickpay_common.rb +1 -1
- data/lib/active_merchant/billing/gateways/quickpay/quickpay_v10.rb +0 -2
- data/lib/active_merchant/billing/gateways/quickpay/quickpay_v4to7.rb +1 -1
- data/lib/active_merchant/billing/gateways/quickpay.rb +3 -3
- data/lib/active_merchant/billing/gateways/qvalent.rb +44 -1
- data/lib/active_merchant/billing/gateways/redsys.rb +3 -0
- data/lib/active_merchant/billing/gateways/s5.rb +8 -5
- data/lib/active_merchant/billing/gateways/safe_charge.rb +220 -0
- data/lib/active_merchant/billing/gateways/sage.rb +397 -128
- data/lib/active_merchant/billing/gateways/sage_pay.rb +45 -20
- data/lib/active_merchant/billing/gateways/secure_net.rb +0 -5
- data/lib/active_merchant/billing/gateways/secure_pay.rb +1 -1
- data/lib/active_merchant/billing/gateways/secure_pay_au.rb +12 -0
- data/lib/active_merchant/billing/gateways/securion_pay.rb +46 -17
- data/lib/active_merchant/billing/gateways/stripe.rb +125 -29
- data/lib/active_merchant/billing/gateways/telr.rb +275 -0
- data/lib/active_merchant/billing/gateways/tns.rb +13 -222
- data/lib/active_merchant/billing/gateways/trans_first.rb +40 -16
- data/lib/active_merchant/billing/gateways/trans_first_transaction_express.rb +606 -0
- data/lib/active_merchant/billing/gateways/usa_epay_advanced.rb +114 -9
- data/lib/active_merchant/billing/gateways/vanco.rb +14 -10
- data/lib/active_merchant/billing/gateways/visanet_peru.rb +209 -0
- data/lib/active_merchant/billing/gateways/wepay.rb +73 -38
- data/lib/active_merchant/billing/gateways/wirecard.rb +1 -0
- data/lib/active_merchant/billing/gateways/world_net.rb +344 -0
- data/lib/active_merchant/billing/gateways/worldpay.rb +48 -16
- data/lib/active_merchant/billing/network_tokenization_credit_card.rb +15 -0
- data/lib/active_merchant/country.rb +6 -4
- data/lib/active_merchant/posts_data.rb +1 -1
- data/lib/active_merchant/version.rb +1 -1
- metadata +32 -13
- data/lib/active_merchant/billing/gateways/app55.rb +0 -176
- data/lib/active_merchant/billing/gateways/barclays_epdq.rb +0 -314
- data/lib/active_merchant/billing/gateways/certo_direct.rb +0 -278
- data/lib/active_merchant/billing/gateways/sage/sage_bankcard.rb +0 -89
- data/lib/active_merchant/billing/gateways/sage/sage_core.rb +0 -115
- data/lib/active_merchant/billing/gateways/sage/sage_vault.rb +0 -149
- data/lib/active_merchant/billing/gateways/sage/sage_virtual_check.rb +0 -97
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5c4bbd0ee52bf39713dad270b4e4b923d24d193c
|
4
|
+
data.tar.gz: 304ee11c40f4c5c68d108ccbab8a6eceaddb0315
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 69f9b2b2082147a44ec23c987b1f6ffaf139b44a2773e84c4c30e70b18812e02677c37714f36de005db44ebe66237b1617ddce74f58fae8731544d990accf216
|
7
|
+
data.tar.gz: 394bc190204e8e3cb01b1b1b5f5a27c6af430672c51767a760b2f816d0c07e29ef5cb0d9bb3346a616a0ba3083d954d43034d7d8333b721a5ce44bb06ef5e940
|
data/CHANGELOG
CHANGED
@@ -1,5 +1,333 @@
|
|
1
1
|
= ActiveMerchant CHANGELOG
|
2
2
|
|
3
|
+
== HEAD
|
4
|
+
|
5
|
+
== Version 1.66.0 (May 4, 2017)
|
6
|
+
* Support Rails 5.1 [jhawthorn] #2407
|
7
|
+
* ProPay: Add Canada as supported country [davidsantoso]
|
8
|
+
* ProPay: Add gateway support [davidsantoso] #2405
|
9
|
+
* SafeCharge: Support credit transactions [shasum] #2404
|
10
|
+
* WePay: Add scrub method [shasum] #2406
|
11
|
+
* iVeri: Add gateway support [curiousepic] #2400
|
12
|
+
* iVeri: Support 3DSecure data fields [davidsantoso] #2412
|
13
|
+
|
14
|
+
== Version 1.65.0 (April 26, 2017)
|
15
|
+
* Adyen: Add Adyen v18 gateway [adyenpayments] #2272
|
16
|
+
* Authorize.Net: Force refund of unsettled payments via void [bizla] #2399
|
17
|
+
* Barclays ePDQ: removed because it has been replaced by a new API [bdewater] #2331
|
18
|
+
* Beanstream: Map ISO province codes for US and CA [shasum] #2396
|
19
|
+
* Braintree Blue: Change :full_refund option to :force_full_refund_if_unsettled [bizla] #2403
|
20
|
+
* Braintree Blue: Force refund of unsettled payments via void [bizla] #2398
|
21
|
+
* Checkout V2: Fix sandbox URL [nicolas-maalouf-cko] #2391
|
22
|
+
* Checkout V2: Fix success_from not properly checking two possible success codes [davidsantoso]
|
23
|
+
* Cybersource: Rescue XML parse exception [shasum] #2380
|
24
|
+
* GlobalCollect: Make message and error reporting more robust [curiousepic] #2370
|
25
|
+
* GlobalCollect: Set REJECTED refunds as unsuccessful transactions [davidsantoso] #2365
|
26
|
+
* GlobalCollect: Truncate firstName field to 15 characters [davidsantoso]
|
27
|
+
* JetPay: Pass down authorization payment method token to refund a capture [davidsantoso]
|
28
|
+
* Openpay: Support card points [shasum] #2401
|
29
|
+
* Orbital: Don't send CVV indicator if CVV is not present [curiousepic] #2368
|
30
|
+
* PayU LATAM: Fix incorrect capture method definition [davidsantoso]
|
31
|
+
* Payeezy: Support dynamic soft descriptors [shasum] #2384
|
32
|
+
* Pin: Add metadata optional field [shasum] #2363
|
33
|
+
* Qvalent: Add soft descriptor fields. Add authorize, capture, and void [davidsantoso]
|
34
|
+
* SafeCharge: Add gateway [davidsantoso]
|
35
|
+
* SagePay: Support Repeat transactions [curiousepic] #2395
|
36
|
+
* Stripe: Support custom application in X-Stripe-Client-User-Agent header [davidsantoso]
|
37
|
+
* TransFirst Transaction Express: Support ACH [curiousepic] #2389
|
38
|
+
* WePay: Support unique_id for idempotent transactions [shasum] #2367
|
39
|
+
* Worldpay: Force refund of unsettled payments via void [bizla] #2402
|
40
|
+
|
41
|
+
== Version 1.64.0 (March 6, 2017)
|
42
|
+
* Authorize.net: Allow settings to be passed for CIM purchases [fwilkins] #2300
|
43
|
+
* Authorize.net: Use new `unsupported_feature` standard error code [jasonwebster] #2322
|
44
|
+
* Base Gateway: Add new `unsupported_feature` standard error code [jasonwebster] #2322
|
45
|
+
* Braintree Blue: Pass cardholder_name with card [curiousepic] #2324
|
46
|
+
* Braintree: Add Android Pay meta data fields [jknipp] #2347
|
47
|
+
* CardStream: Add additional of currencies [shasum] #2337
|
48
|
+
* Credorax: Return failure response reason [shasum] #2341
|
49
|
+
* Digitzs: Add gateway [davidsantoso]
|
50
|
+
* Digitzs: Remove merchant_id from gateway credentials [davidsantoso]
|
51
|
+
* GlobalCollect: Pass options to Refund [curiousepic] #2330
|
52
|
+
* Kushki: Add new gateway [shasum] #2326
|
53
|
+
* Kushki: Remove body from void call [shasum] #2348
|
54
|
+
* Linkpoint: Raise ArgumentError when trying to instantiate without `:pem` [jasonwebster] #2329
|
55
|
+
* Omise: Enable Japan, JPY and JCB support [zdk] #2284
|
56
|
+
* PayU LATAM: Count pending refunds as succeeded [curiousepic] #2336
|
57
|
+
* PayU LATAM: Let Refund take amount value [curiousepic] #2334
|
58
|
+
* Paymill: Send new required fields on tokenization requests [tschelabaumann] #2279
|
59
|
+
* Revert "Authorize.net: Allow settings to be passed for CIM purchases" [curiousepic] #2339
|
60
|
+
* Sage: Default billing state when outside US [shasum] #2340
|
61
|
+
* Stripe: Remove idempotency key from verify [shasum] #2335
|
62
|
+
* TransFirst Transaction Express: Don't send order_id with refunds [curiousepic] #2350
|
63
|
+
* TransFirst Transaction Express: Fix improper AVS and CVV response code mapping [shasum] #2342
|
64
|
+
* WePay: Update API version [shasum] #2349
|
65
|
+
* USA ePay Advanced: Add quick_update_customer action [joshreeves] #2229
|
66
|
+
|
67
|
+
== Version 1.63.0 (February 2, 2017)
|
68
|
+
* Authorize.net: Add #unstore support [jimryan] #2293
|
69
|
+
* AuthorizeNet: Fix line items quirk [shasum]
|
70
|
+
* CardStream: Add dynamic descriptor option fields [curiousepic]
|
71
|
+
* CardStream: Support PEN currency [shasum]
|
72
|
+
* Culqi: Add new gateway [shasum]
|
73
|
+
* CyberSource: Add Lebanon to supported countries [shasum]
|
74
|
+
* Element: Add AVS and CVV codes to response [shasum]
|
75
|
+
* Firstdata E4 (Payeezy): Set correct ECI value for card present swipes [jasonwebster] #2318
|
76
|
+
* GlobalCollect: On purchase skip capture if not required [davidsantoso]
|
77
|
+
* PaymentExpress: Update supported countries [shasum]
|
78
|
+
* Remove leading or trailing whitespace from credit card name [davidsantoso]
|
79
|
+
* Remove support for Ruby 2.0 [jasonwebster]
|
80
|
+
* Secure Pay AU: Add scrubbing support to Secure Pay AU [bruno] #2253
|
81
|
+
* Stripe: Fix error in handling of track-only contactless EMV data [jasonwebster]
|
82
|
+
* Vanco: Update test URL [davidsantoso]
|
83
|
+
* WePay: Build fee structure correctly [curiousepic]
|
84
|
+
* WePay: Remove null address fields from request [davidsantoso]
|
85
|
+
* WePay: Update WePay to API version 2016-12-07 [davidsantoso]
|
86
|
+
* Wirecard: Send customer data in requests [davidsantoso]
|
87
|
+
* Worldpay: Add session id attribute [shasum]
|
88
|
+
* Worldpay: Do not default address when not provided [shasum]
|
89
|
+
|
90
|
+
== Version 1.62.0 (December 5, 2016)
|
91
|
+
* AuthorizeNet: Map to standard AVSResult codes [shasum]
|
92
|
+
* CitrusPay: Add 3DSecureId field [davidsantoso]
|
93
|
+
* CyberSource: Only get alpha2 country code when it's a known country [bruno] #2238
|
94
|
+
* Fat Zebra: Add scrubbing to Fat Zebra gateway [bruno] #2037
|
95
|
+
* Monei: Add US and CA as new supported countries [davidgf] #2209
|
96
|
+
* NAB Transact: Add scrubbing to NAB Transact [bruno] #2038
|
97
|
+
* iATS: Add scrubbing support to iATS [bruno] #2228
|
98
|
+
* Stripe: Ensure ECI values for tokenized cards are padded [jasonwebster] #2250
|
99
|
+
* Forte: Fix incorrect authorization_code response mapping [davidsantoso]
|
100
|
+
* maxiPago: Send currency with request [curiousepic]
|
101
|
+
* Credorax: Map order_id to field H9 [curiousepic]
|
102
|
+
* Authorize.net: Remove duplicate country GB [shasum]
|
103
|
+
* PayU Latam: Add processWithoutCvv2 field [shasum]
|
104
|
+
* Fat Zebra: De-nest soft descriptor fields [curiousepic]
|
105
|
+
* Credorax: Only pass c5 field for billing address1 [davidsantoso]
|
106
|
+
* Orbital: Add support for CLP currency [curiousepic]
|
107
|
+
* Authorize.net: Add line item fields and additional transaction settings [shasum]
|
108
|
+
* Authorize.net: Pass through `header_email_receipt` [shasum]
|
109
|
+
* Stripe: Scrub additional network tokenization related sensitive data [jasonwebster] #2251
|
110
|
+
* Applying: Worldpay: Format non-fractional currency amounts correctly [jasonwebster] #2267
|
111
|
+
|
112
|
+
== Version 1.61.0 (November 7, 2016)
|
113
|
+
* Add codes AQ, BQ, SX, and SS to list of countries and update SD numeric code [zxlin]
|
114
|
+
* AuthorizeNet: Update supported countries list [shasum]
|
115
|
+
* Barclay SmartPay: Add support for credit [shasum]
|
116
|
+
* Barclaycard SmartPay: Update supported countries [shasum]
|
117
|
+
* BluePay: Add Canada to supported countries list [shasum]
|
118
|
+
* BlueSnap: Update countries list [shasum]
|
119
|
+
* Braintree Blue: Add Android Pay support [mrezentes]
|
120
|
+
* Braintree Blue: Add remote test to verify card token [shasum]
|
121
|
+
* Braintree Blue: Get Android Pay tx id from payment method, not options [mrezentes]
|
122
|
+
* CardStream: Add MXN currency code [curiousepic]
|
123
|
+
* CardStream: Set captureDelay to zero on purchase [davidsantoso]
|
124
|
+
* CitrusPay: Add gateway [duff]
|
125
|
+
* CitrusPay: Update URL to current API version [davidsantoso]
|
126
|
+
* Clearhaus: Fix refund of captures [duff]
|
127
|
+
* Clearhaus: Update list of non fractal currencies [curiousepic]
|
128
|
+
* Clearhaus: Use localized amount [curiouspic]
|
129
|
+
* Conekta: Add void action [MauricioMurga]
|
130
|
+
* Credorax: Add gateway support [davidsantoso]
|
131
|
+
* CyberSource, Paymill, Payflow: Add verify_credentials [duff]
|
132
|
+
* CyberSource: Combine auth_reversal with Void [curiousepic]
|
133
|
+
* CyberSource: Increase merchant defined data fields [davidsantoso]
|
134
|
+
* CyberSource: Look up alpha2 country code [curiousepic]
|
135
|
+
* CyberSource: Use localized_amount [curiousepic]
|
136
|
+
* Element: Pass order_id and shipping address [curiousepic]
|
137
|
+
* Fat Zebra: Add cavv, xid, and sli fields [curiousepic]
|
138
|
+
* Fat Zebra: Fix improper descriptor nesting [curiousepic]
|
139
|
+
* Find countries if they are differently cased [curiousepic]
|
140
|
+
* GlobalCollect: Update credit card brand list [curiousepic]
|
141
|
+
* Jetpay: Support endpoint for Canada [shasum]
|
142
|
+
* Linkpoint: Clean whitespace from PEM [curiousepic]
|
143
|
+
* Litle: Retain amount to send in auth reversals [curiousepic]
|
144
|
+
* Litle: add scrubbing support [bruno]
|
145
|
+
* MONEI: Update supported countries list [davidgf]
|
146
|
+
* MiGS: Handle IDR currency [curiousepic]
|
147
|
+
* Migs: Add support for void [mohsenottello]
|
148
|
+
* Migs: Support some additional fields [duff]
|
149
|
+
* Moneris: Fix unit test stubs [shasum]
|
150
|
+
* Moneris: add scrubbing support [bruno]
|
151
|
+
* NMI, FirstData: Support verify_credentials [curiousepic]
|
152
|
+
* Openpay: Add support for verify [duff]
|
153
|
+
* PayJunctionV2: Add gateway support [shasum]
|
154
|
+
* PayU Latam: Add new gateway [shasum]
|
155
|
+
* PayU Latam: Update supported countries list [shasum]
|
156
|
+
* Payflow: Update supported countries list [shasum]
|
157
|
+
* PaypalExpress: Add SoftDescriptor field [talyssonoc]
|
158
|
+
* Redsys: Added DOP and CRC currency [davidsantoso]
|
159
|
+
* Sage: Add support for scrubbing [bruno]
|
160
|
+
* SagePay: Fix truncation [duff]
|
161
|
+
* SecurionPay: Update supported countries list [shasum]
|
162
|
+
* Stripe: Increase authorize amount during verify [davidsantoso]
|
163
|
+
* Stripe: Set minimum authorize amount depending on currency [davidsantoso]
|
164
|
+
* Stripe: Support new network tokenization API params [methodmissing]
|
165
|
+
* Stripe: Update supported countries list [shasum]
|
166
|
+
* TNS and CitrusPay: Support scrub and verify_credentials [duff]
|
167
|
+
* TNS and CitrusPay: Update to version 36 of the API [duff]
|
168
|
+
* TNS: Try TLS v1 [duff]
|
169
|
+
* Telr: Add gateway support [curiousepic]
|
170
|
+
* TransFirsTransactionExpress: Remove blank cvv element [davidsantoso]
|
171
|
+
* TransFirsTransactionExpress: Take into account blank string CVV [davidsantoso]
|
172
|
+
* Vanco: Improve handling of success determination [duff]
|
173
|
+
* Worldpay: Add hcgAdditionalData element [davidsantoso]
|
174
|
+
* Worldpay: Report error code [curiousepic]
|
175
|
+
|
176
|
+
== Version 1.60.0 (July 4, 2016)
|
177
|
+
* Orbital: Fix CC num leak on profile calls [drewblas]
|
178
|
+
* VisaNetPeru: Add ability to refund [duff]
|
179
|
+
* AuthorizeNet: Fix store using new profile [duff]
|
180
|
+
* Clearhaus: Support private key for signature [curiousepic]
|
181
|
+
* Clearhaus: Copy private_key when stripping [curiousepic]
|
182
|
+
* CertoDirect: Remove gateway [shiroginne]
|
183
|
+
* Braintree: Extra error messaging [jordan-brough]
|
184
|
+
* AuthorizeNetCim: Set error code for AuthorizeNetCimGateway response [ka8725]
|
185
|
+
* Quickpay v10: Remove amount requirement for store [curiousepic]
|
186
|
+
* PSLCards: correct namespace in doc for Response object from ActiveRecord::Billing to ActiveMerchant::Billing [CJ Keeney]
|
187
|
+
* Pagar.me: Add pagar.me [chrisenytc]
|
188
|
+
* Stripe: Update Readme to show stripe support [rhlrjv]
|
189
|
+
* Orbital: Add support for the BRL currency [duff]
|
190
|
+
* GlobalTransport: Require TLSv1 [duff]
|
191
|
+
* Openpay: Allow currency to be specified [darkaz]
|
192
|
+
* DataCash: Use API version 2 [curiousepic]
|
193
|
+
* Stripe: Support verify_credentials [duff]
|
194
|
+
* AuthorizeNet: Support verify_credentials [duff]
|
195
|
+
* BraintreeBlue: Support verify_credentials [duff]
|
196
|
+
* Redsys: Added SAR currency [agseco]
|
197
|
+
* QuickPay: Adding customer_ip for authorize action in quickpay [dinesh]
|
198
|
+
* MaxiPago: add void and refund [shasum]
|
199
|
+
* MaxiPago: Allow processor_id override [duff]
|
200
|
+
* Stripe: Interpret string input to store method as token identifier [bizla]
|
201
|
+
* MaxiPago: Add verify and scrub [shasum]
|
202
|
+
* Stripe: Remove metadata restriction from EMV transactions [bizla]
|
203
|
+
* SagePay: Add optional fields to SagePay requests [cristianstanescu]
|
204
|
+
* CyberSource: Assign default with override for billing address and email [shasum]
|
205
|
+
* CyberSource: Assign default order_id [duff]
|
206
|
+
* TNS: Support asia_pacific endpoint [curiousepic]
|
207
|
+
* TransFirsTransactionExpress: Fix exception [duff]
|
208
|
+
* CyberSource: Add decision manager optional fields [shasum]
|
209
|
+
* CyberSource: Add decision manager optional fields [shasum]
|
210
|
+
* TNS: Add support for TLS v1.2 [curiousepic]
|
211
|
+
* QuickpayV7: Default description field for store operation [duff]
|
212
|
+
* Elavon: Support customer_number field [duff]
|
213
|
+
* Map test_mode_live_card code to new standard error code [berkcaputcu]
|
214
|
+
* Elavon: Pass customer_number correctly [duff]
|
215
|
+
* Stripe: add SG to supported_countries attribute [timbeiko]
|
216
|
+
|
217
|
+
== Version 1.59.0 (May 18, 2016)
|
218
|
+
* Orbital: Allow AVS parts to be sent sans country [duff]
|
219
|
+
* SecureNet: Return the right error message for declines [duff]
|
220
|
+
* Moneris: Add verify [anellis]
|
221
|
+
* Moneris: Add verify [anellis]
|
222
|
+
* Jetpay: Add support for origin field[anellis]
|
223
|
+
* Jetpay: Don't default origin field [duff]
|
224
|
+
* GlobalCollect: New gateway support [curiousepic]
|
225
|
+
* Openpay: Use strict_encode64 [duff]
|
226
|
+
* Sage: Always pass along the billing state [duff]
|
227
|
+
* VisaNet Peru: New gateway support [shasum]
|
228
|
+
* Worldpay: Allow installationId to be specified at transaction time [duff]
|
229
|
+
* SecurionPay: Support store [shasum]
|
230
|
+
* Barclaycard Smartpay: Proper AVS return codes [curiousepic]
|
231
|
+
* VisaNetPeru: Pass through CVV [duff]
|
232
|
+
* Barclaycard Smartpay: Use strict_encode64 [duff]
|
233
|
+
* VisaNetPeru: Fix error when billing address empty [shasum]
|
234
|
+
* Vanco: Update live_url [duff]
|
235
|
+
* Cardstream: Reference purchase [curiousepic]
|
236
|
+
* Paymill: Fix error handling [methodmissing]
|
237
|
+
* Latitude19: New gateway support [shasum]
|
238
|
+
* BraintreeBlue: remove invalid test assertions [prburke]
|
239
|
+
* Merchant e-Solutions: Pass order_id with capture [curiousepic]
|
240
|
+
* CyberSource: Add rescue for ResponseErrors [curiousepic]
|
241
|
+
* AuthorizeNet: Always pass recurringBilling flag if present [curiousepic]
|
242
|
+
* S5: Pass order_id to TransactionID [curiousepic]
|
243
|
+
* NMI: Set ACH sec_code from options if present [curiousepic]
|
244
|
+
* VisaNet Peru: Refactor merchant_id and purchase_number handling [shasum]
|
245
|
+
* Braintree Blue: Pass descriptor_url field [curiousepic]
|
246
|
+
* VisaNet Peru: Add merchant_define_data option [duff]
|
247
|
+
* Merchant e-Solutions: pass optional 3Dsecure params [curiousepic]
|
248
|
+
* NMI: Fix refunds and voids of echecks [duff]
|
249
|
+
* VisaNet Peru: Pass dummy email when not present [curiousepic]
|
250
|
+
* PayU India: Add Maestro as supported card [curiousepic]
|
251
|
+
* Cashnet: Don't retry [duff]
|
252
|
+
* CardStream: Make Void call Cancel instead of Refund [curiousepic]
|
253
|
+
* Remove AN and KV country codes as they're not recognized by ISO-3166-1 [apdunston]
|
254
|
+
* Worldpay: Pass unchanged amount with correct currency exponent [curiousepic]
|
255
|
+
* Improve our handling of currencies sans fractions [duff]
|
256
|
+
* Stripe: Added support for the contactless magstripe entry mode option [rbalsdon]
|
257
|
+
* VisaNet Peru: Change money format to dollars [shasum]
|
258
|
+
* BlueSnap: Add gateway [duff]
|
259
|
+
* VisaNet Peru: Select the most meaningful gateway error message [shasum]
|
260
|
+
* SecurionPay: Update country list [duff]
|
261
|
+
* Support for BIN 2 MasterCard brand detection [rbalsdon]
|
262
|
+
* CardStream: Fix signature calculation [duff]
|
263
|
+
* CyberSource: Update test and live URL [marquisong]
|
264
|
+
* AuthorizeNet: Truncate nameOnAccount field [duff]
|
265
|
+
* Tns: Fix ipAddress field [duff]
|
266
|
+
* WorldNet: New gateway support [varyonic]
|
267
|
+
* BraintreeBlue: Allow channel override [duff]
|
268
|
+
* MerchantWarrior: Use Truncated Order Id [ThereExistsX]
|
269
|
+
|
270
|
+
|
271
|
+
== Version 1.58.0 (March 1, 2016)
|
272
|
+
* Move Electron check out of CreditCard into CreditCardMethods [ThereExistsX]
|
273
|
+
* CardStream: Add AED and NZD currencies [sdball]
|
274
|
+
* App55: Remove Gateway [ThereExistsX]
|
275
|
+
* Mercury: Stripping the start and end sentinels on card-present track data for max-length track1 requests [ryanbalsdon]
|
276
|
+
* SagePay: Update VISA Electron ranges [sdball]
|
277
|
+
* Clearhaus: Make request signing more transparent & robust [sdball]
|
278
|
+
* NCRSecurePay: Fix production URL [rwdaigle]
|
279
|
+
* Add ACH support to Stripe [sdball]
|
280
|
+
* PayPal Express: Fixing list of currencies without fractions [Krystosterone]
|
281
|
+
* Cashnet: Default custcode option and proper redirect handling [rwdaigle]
|
282
|
+
* TransFirst: Fix missing address and remove CC only fields for ACH [davidsantoso]
|
283
|
+
* More prominent links to contribution docs [rwdaigle]
|
284
|
+
|
285
|
+
|
286
|
+
== Version 1.57.0 (February 1, 2016)
|
287
|
+
* AuthorizeNetCim: Add unmaskExpirationDate option [RamilGilmanov]
|
288
|
+
* Element: Add gateway support [davidsantoso]
|
289
|
+
* Cardstream: 3D-secure capture fix [duff]
|
290
|
+
* Auth.net: Update store to create payment profiles [davidsantoso]
|
291
|
+
* CyberSource: Add support for mdd_fields [duff]
|
292
|
+
* Worldpay: Add support for verify [davidsantoso]
|
293
|
+
* Element: Add guard clause to handle undocumented errors [davidsantoso]
|
294
|
+
* Clearhaus: Add tests for signed requests [anellis]
|
295
|
+
* Stripe: Support adding cards to account [anellis]
|
296
|
+
* Clearhaus: Add text_on_statement option [anellis]
|
297
|
+
* Payeezy: Void and verify support [davidsantoso]
|
298
|
+
* Creditcall: Use ecommerce rather than cnp [duff]
|
299
|
+
* Payeezy: Add support for echecks [davidsantoso]
|
300
|
+
* Bridgepay: Add ability to store cards and pay with token [anellis]
|
301
|
+
* Initial support for Android Pay network tokenization cards [mrezentes]
|
302
|
+
* Transfirst: Fix exception when not all eCheck information is present [davidsantoso]
|
303
|
+
* Auth.net: Add tests for echeck refunds [davidsantoso]
|
304
|
+
* Transfirst: use default values for some eCheck data [davidsantoso]
|
305
|
+
* Element: Update the live URL endpoint [davidsantoso]
|
306
|
+
* Element: Parse responses from unexpected API errors [davidsantoso]
|
307
|
+
* Transfirst: Remove unused fields for echeck [davidsantoso]
|
308
|
+
* Sage: Internal refactoring into a single gateway class w/ common http conn [anellis]
|
309
|
+
* Cardstream: Adjust authorize and capture transactions [anellis]
|
310
|
+
* NCRSecurePay: New gateway support (Monetra white-label) [rwdaigle]
|
311
|
+
* Element: Map ReferenceNumber to order_id [duff]
|
312
|
+
* Element: Use a better MotoECICode default [duff]
|
313
|
+
* BraintreeBlue: Return transaction id for failed transactions when available [prburke]
|
314
|
+
* PayPal: Add InContextPaypalExpressGateway [xuorig]
|
315
|
+
* TransFirst: CVV is a required tag [duff]
|
316
|
+
* Checkout V2: Add Descriptor Name and City Options [anellis]
|
317
|
+
* Forte: Pass order_id [anellis]
|
318
|
+
* Merchant ESolutioins: Truncate order_id [anellis]
|
319
|
+
* Transfirst Transaction Express: New gateway support [sdball]
|
320
|
+
* Stripe: Add `stripe_account` header option [anellis]
|
321
|
+
* Cardstream: Add AVS code and message [anellis]
|
322
|
+
* Barclaycard Smartpay: New gateway support [curiousepic]
|
323
|
+
* Transfirst: Fix missing address and remove CC only fields for ACH [davidsantoso]
|
324
|
+
* Stripe: Support ACH payments [sdball]
|
325
|
+
* NCRSecurePay: Fix production URL [rwdaigle]
|
326
|
+
* Clearhaus: Make request signing more transparent & robust [sdball]
|
327
|
+
* SagePay: Properly detect Electron brand [sdball]
|
328
|
+
* Mercury: Fix for max-length track 1 [ryanbalsdon]
|
329
|
+
|
330
|
+
|
3
331
|
== Version 1.56.0 (December 1, 2015)
|
4
332
|
* Add Cardknox gateway [dlehren]
|
5
333
|
* Mercury: Add support for card present track 2 [ryanbalsdon]
|
@@ -201,6 +529,9 @@
|
|
201
529
|
* Paystation: No longer require order_id everywhere [duff]
|
202
530
|
* Checkout: Support descriptor_name and descriptor_city [duff]
|
203
531
|
* Add supports_network_tokenization? to gateways [jnormore]
|
532
|
+
* Bpoint: Handle message for invalid login [anellis]
|
533
|
+
* TransFirst: Add scrubbing [davidsantoso]
|
534
|
+
* TransFirst: Add back a few request fields [davidsantoso]
|
204
535
|
|
205
536
|
|
206
537
|
== Version 1.50.0 (June 1, 2015)
|
data/README.md
CHANGED
@@ -17,6 +17,8 @@ from an ever-growing set of contributors.
|
|
17
17
|
See [GettingStarted.md](GettingStarted.md) if you want to learn more about using Active Merchant in your
|
18
18
|
applications.
|
19
19
|
|
20
|
+
If you'd like to contribute to Active Merchant, please start with our [contribution guide](CONTRIBUTING.md).
|
21
|
+
|
20
22
|
## Installation
|
21
23
|
|
22
24
|
### From Git
|
@@ -82,7 +84,6 @@ For more in-depth documentation and tutorials, see [GettingStarted.md](GettingSt
|
|
82
84
|
|
83
85
|
The [ActiveMerchant Wiki](http://github.com/activemerchant/active_merchant/wikis) contains a [table of features supported by each gateway](http://github.com/activemerchant/active_merchant/wikis/gatewayfeaturematrix).
|
84
86
|
|
85
|
-
* [App55](https://www.app55.com/) - AU, BR, CA, CH, CL, CN, CO, CZ, DK, EU, GB, HK, HU, ID, IS, JP, KE, KR, MX, MY, NO, NZ, PH, PL, TH, TW, US, VN, ZA
|
86
87
|
* [Authorize.Net CIM](http://www.authorize.net/) - US
|
87
88
|
* [Authorize.Net](http://www.authorize.net/) - AD, AT, AU, BE, BG, CA, CH, CY, CZ, DE, DK, ES, FI, FR, GB, GB, GI, GR, HU, IE, IT, LI, LU, MC, MT, NL, NO, PL, PT, RO, SE, SI, SK, SM, TR, US, VA
|
88
89
|
* [Axcess MS](http://www.axcessms.com/) - AD, AT, BE, BG, BR, CA, CH, CY, CZ, DE, DK, EE, ES, FI, FO, FR, GB, GI, GR, HR, HU, IE, IL, IM, IS, IT, LI, LT, LU, LV, MC, MT, MX, NL, NO, PL, PT, RO, RU, SE, SI, SK, TR, US, VA
|
@@ -90,12 +91,11 @@ The [ActiveMerchant Wiki](http://github.com/activemerchant/active_merchant/wikis
|
|
90
91
|
* [Bank Frick](http://www.bankfrickacquiring.com/) - LI, US
|
91
92
|
* [Banwire](http://www.banwire.com/) - MX
|
92
93
|
* [Barclays ePDQ Extra Plus](http://www.barclaycard.co.uk/business/accepting-payments/epdq-ecomm/) - GB
|
93
|
-
* [Barclays ePDQ MPI](http://www.barclaycard.co.uk/business/accepting-payments/epdq-mpi/) - GB
|
94
94
|
* [Be2Bill](http://www.be2bill.com/) - FR
|
95
95
|
* [Beanstream.com](http://www.beanstream.com/) - CA, US
|
96
96
|
* [BluePay](http://www.bluepay.com/) - US
|
97
97
|
* [Borgun](https://www.borgun.is/) - IS
|
98
|
-
* [Braintree](
|
98
|
+
* [Braintree](https://www.braintreepayments.com) - US, CA, AU, AD, AT, BE, BG, CY, CZ, DK, EE, FI, FR, GI, DE, GR, HU, IS, IM, IE, IT, LV, LI, LT, LU, MT, MC, NL, NO, PL, PT, RO, SM, SK, SI, ES, SE, CH, TR, GB
|
99
99
|
* [BridgePay](http://www.bridgepaynetwork.com/) - CA, US
|
100
100
|
* [Cardknox](https://www.cardknox.com/) - US, CA, GB
|
101
101
|
* [CardSave](http://www.cardsave.net/) - GB
|
@@ -104,7 +104,6 @@ The [ActiveMerchant Wiki](http://github.com/activemerchant/active_merchant/wikis
|
|
104
104
|
* [Cecabank](http://www.ceca.es/es/) - ES
|
105
105
|
* [Cenpos](https://www.cenpos.com/) - AD, AI, AG, AR, AU, AT, BS, BB, BE, BZ, BM, BR, BN, BG, CA, HR, CY, CZ, DK, DM, EE, FI, FR, DE, GR, GD, GY, HK, HU, IS, IN, IL, IT, JP, LV, LI, LT, LU, MY, MT, MX, MC, MS, NL, PA, PL, PT, KN, LC, MF, VC, SM, SG, SK, SI, ZA, ES, SR, SE, CH, TR, GB, US, UY
|
106
106
|
* [CAMS: Central Account Management System](https://www.centralams.com/) - US
|
107
|
-
* [CertoDirect](http://www.certodirect.com/) - BE, BG, CZ, DK, DE, EE, IE, EL, ES, FR, IT, CY, LV, LT, LU, HU, MT, NL, AT, PL, PT, RO, SI, SK, FI, SE, GB
|
108
107
|
* [Checkout.com](https://www.checkout.com/) - AT, BE, BG, CY, CZ, DE, DK, EE, ES, FI, FR, GR, HR, HU, IE, IS, IT, LI, LT, LU, LV, MT, MU, NL, NO, PL, PT, RO, SE, SI, SK, US
|
109
108
|
* [Clearhaus](https://www.clearhaus.com) - AD, AT, BE, BG, CH, CY, CZ, DE, DK, EE, ES, FI, FO, FR, GB, GL, GR, HR, HU, IE, IS, IT, LI, LT, LU, LV, MT, NL, NO, PL, PT, RO, SE, SI, SK
|
110
109
|
* [Commercegate](http://www.commercegate.com/) - AD, AT, AX, BE, BG, CH, CY, CZ, DE, DK, ES, FI, FR, GB, GG, GI, GR, HR, HU, IE, IM, IS, IT, JE, LI, LT, LU, LV, MC, MT, NL, NO, PL, PT, RO, SE, SI, SK, VA
|
@@ -150,7 +149,7 @@ The [ActiveMerchant Wiki](http://github.com/activemerchant/active_merchant/wikis
|
|
150
149
|
* [Metrics Global](http://www.metricsglobal.com) - US
|
151
150
|
* [MasterCard Internet Gateway Service (MiGS)](http://mastercard.com/mastercardsps) - AU, AE, BD, BN, EG, HK, ID, IN, JO, KW, LB, LK, MU, MV, MY, NZ, OM, PH, QA, SA, SG, TT, VN
|
152
151
|
* [Modern Payments](http://www.modpay.com) - US
|
153
|
-
* [MONEI](http://www.monei.net/) - ES
|
152
|
+
* [MONEI](http://www.monei.net/) - AD, AT, BE, BG, CA, CH, CY, CZ, DE, DK, EE, ES, FI, FO, FR, GB, GI, GR, HU, IE, IL, IS, IT, LI, LT, LU, LV, MT, NL, NO, PL, PT, RO, SE, SI, SK, TR, US, VA
|
154
153
|
* [Moneris](http://www.moneris.com/) - CA
|
155
154
|
* [Moneris (US)](http://www.monerisusa.com/) - US
|
156
155
|
* [MoneyMovers](http://mmoa.us/) - US
|
@@ -162,10 +161,11 @@ The [ActiveMerchant Wiki](http://github.com/activemerchant/active_merchant/wikis
|
|
162
161
|
* [NETPAY Gateway](http://www.netpay.com.mx) - MX
|
163
162
|
* [NMI](http://nmi.com/) - US
|
164
163
|
* [Ogone](http://www.ogone.com/) - BE, DE, FR, NL, AT, CH
|
165
|
-
* [Omise](https://www.omise.co/) - TH
|
164
|
+
* [Omise](https://www.omise.co/) - TH, JP
|
166
165
|
* [Openpay](Openpay) - MX
|
167
166
|
* [Optimal Payments](http://www.optimalpayments.com/) - CA, US, GB
|
168
167
|
* [Orbital Paymentech](http://chasepaymentech.com/) - US, CA
|
168
|
+
* [Pagar.me](https://pagar.me/) - BR
|
169
169
|
* [PagoFacil](http://www.pagofacil.net/) - MX
|
170
170
|
* [PayConex](http://www.bluefincommerce.com/) - US, CA
|
171
171
|
* [PayGate PayXML](http://paygate.co.za/) - US, ZA
|
@@ -207,11 +207,11 @@ The [ActiveMerchant Wiki](http://github.com/activemerchant/active_merchant/wikis
|
|
207
207
|
* [SecureNet](http://www.securenet.com/) - US
|
208
208
|
* [SecurePay](http://www.securepay.com/) - US, CA, GB, AU
|
209
209
|
* [SecurePayTech](http://www.securepaytech.com/) - NZ
|
210
|
-
* [SecurionPay](https://securionpay.com/) - AD, AE, AF, AG, AI, AL, AM,
|
210
|
+
* [SecurionPay](https://securionpay.com/) - AD, AE, AF, AG, AI, AL, AM, AO, AR, AS, AT, AU, AW, AX, AZ, BA, BB, BD, BE, BF, BG, BH, BI, BJ, BL, BM, BN, BO, BR, BS, BT, BV, BW, BY, BZ, CA, CC, CD, CF, CG, CH, CI, CK, CL, CM, CN, CO, CR, CU, CV, CW, CX, CY, CZ, DE, DJ, DK, DM, DO, DZ, EC, EE, EG, EH, ER, ES, ET, FI, FJ, FK, FM, FO, FR, GA, GB, GD, GE, GF, GG, GH, GI, GL, GM, GN, GP, GQ, GR, GS, GT, GU, GW, GY, HK, HM, HN, HR, HT, HU, ID, IE, IL, IM, IN, IO, IQ, IR, IS, IT, JE, JM, JO, JP, KE, KG, KH, KI, KM, KN, KP, KR, KW, KY, KZ, LA, LB, LC, LI, LK, LR, LS, LT, LU, LV, LY, MA, MC, MD, ME, MF, MG, MH, MK, ML, MM, MN, MO, MP, MQ, MR, MS, MT, MU, MV, MW, MX, MY, MZ, NA, NC, NE, NF, NG, NI, NL, NO, NP, NR, NU, NZ, OM, PA, PE, PF, PG, PH, PK, PL, PM, PN, PR, PS, PT, PW, PY, QA, RE, RO, RS, RU, RW, SA, SB, SC, SD, SE, SG, SH, SI, SJ, SK, SL, SM, SN, SO, SR, ST, SV, SY, SZ, TC, TD, TF, TG, TH, TJ, TK, TL, TM, TN, TO, TR, TT, TV, TW, TZ, UA, UG, UM, US, UY, UZ, VA, VC, VE, VG, VI, VN, VU, WF, WS, YE, YT, ZA, ZM, ZW
|
211
211
|
* [SkipJack](http://www.skipjack.com/) - US, CA
|
212
212
|
* [SoEasyPay](http://www.soeasypay.com/) - US, CA, AT, BE, BG, HR, CY, CZ, DK, EE, FI, FR, DE, GR, HU, IE, IT, LV, LT, LU, MT, NL, PL, PT, RO, SK, SI, ES, SE, GB, IS, NO, CH
|
213
213
|
* [Spreedly](https://spreedly.com) - AD, AE, AT, AU, BD, BE, BG, BN, CA, CH, CY, CZ, DE, DK, EE, EG, ES, FI, FR, GB, GI, GR, HK, HU, ID, IE, IL, IM, IN, IS, IT, JO, KW, LB, LI, LK, LT, LU, LV, MC, MT, MU, MV, MX, MY, NL, NO, NZ, OM, PH, PL, PT, QA, RO, SA, SE, SG, SI, SK, SM, TR, TT, UM, US, VA, VN, ZA
|
214
|
-
* [Stripe](https://stripe.com/) - AT, AU, BE, CA, CH, DE, DK, ES, FI, FR, GB, IE, IT, LU, NL, NO, SE, US
|
214
|
+
* [Stripe](https://stripe.com/) - AT, AU, BE, CA, CH, DE, DK, ES, FI, FR, GB, IE, IT, LU, NL, NO, SE, SG, US
|
215
215
|
* [Swipe](https://www.swipehq.com/checkout) - CA, NZ
|
216
216
|
* [TNS](http://www.tnsi.com/) - AR, AU, BR, FR, DE, HK, MX, NZ, SG, GB, US
|
217
217
|
* [Transact Pro](https://www.transactpro.lv/business/online-payments-acceptance) - US
|
@@ -226,7 +226,7 @@ The [ActiveMerchant Wiki](http://github.com/activemerchant/active_merchant/wikis
|
|
226
226
|
* [WePay](https://www.wepay.com/) - US
|
227
227
|
* [Wirecard](http://www.wirecard.com) - AD, CY, GI, IM, MT, RO, CH, AT, DK, GR, IT, MC, SM, TR, BE, EE, HU, LV, NL, SK, GB, BG, FI, IS, LI, NO, SI, VA, FR, IL, LT, PL, ES, CZ, DE, IE, LU, PT, SE
|
228
228
|
* [Worldpay Global](http://www.worldpay.com/) - HK, GB, AU, AD, BE, CH, CY, CZ, DE, DK, ES, FI, FR, GI, GR, HU, IE, IL, IT, LI, LU, MC, MT, NL, NO, NZ, PL, PT, SE, SG, SI, SM, TR, UM, VA
|
229
|
-
* [
|
229
|
+
* [Worldpay Online](https://online.worldpay.com/) - HK, US, GB, AU, AD, BE, CH, CY, CZ, DE, DK, ES, FI, FR, GI, GR, HU, IE, IL, IT, LI, LU, MC, MT, NL, NO, NZ, PL, PT, SE, SG, SI, SM, TR, UM, VA
|
230
230
|
* [Worldpay US](http://www.worldpay.com/us) - US
|
231
231
|
|
232
232
|
## API stability policy
|
@@ -50,6 +50,9 @@ module ActiveMerchant #:nodoc:
|
|
50
50
|
'check'
|
51
51
|
end
|
52
52
|
|
53
|
+
def credit_card?
|
54
|
+
false
|
55
|
+
end
|
53
56
|
# Routing numbers may be validated by calculating a checksum and dividing it by 10. The
|
54
57
|
# formula is:
|
55
58
|
# (3(d1 + d4 + d7) + 7(d2 + d5 + d8) + 1(d3 + d6 + d9))mod 10 = 0
|
@@ -182,10 +182,15 @@ module ActiveMerchant #:nodoc:
|
|
182
182
|
# @return [String]
|
183
183
|
attr_accessor :fallback_reason
|
184
184
|
|
185
|
-
# Returns or sets whether card-present
|
185
|
+
# Returns or sets whether card-present EMV data has been read contactlessly.
|
186
186
|
#
|
187
187
|
# @return [true, false]
|
188
|
-
attr_accessor :
|
188
|
+
attr_accessor :contactless_emv
|
189
|
+
|
190
|
+
# Returns or sets whether card-present magstripe data has been read contactlessly.
|
191
|
+
#
|
192
|
+
# @return [true, false]
|
193
|
+
attr_accessor :contactless_magstripe
|
189
194
|
|
190
195
|
# Returns the ciphertext of the card's encrypted PIN.
|
191
196
|
#
|
@@ -240,7 +245,7 @@ module ActiveMerchant #:nodoc:
|
|
240
245
|
#
|
241
246
|
# @return [String] the full name of the card holder
|
242
247
|
def name
|
243
|
-
|
248
|
+
"#{first_name} #{last_name}".strip
|
244
249
|
end
|
245
250
|
|
246
251
|
def name=(full_name)
|
@@ -4,7 +4,7 @@ module ActiveMerchant #:nodoc:
|
|
4
4
|
module CreditCardMethods
|
5
5
|
CARD_COMPANIES = {
|
6
6
|
'visa' => /^4\d{12}(\d{3})?(\d{3})?$/,
|
7
|
-
'master' => /^(5[1-5]\d{4}|677189)\d{10}$/,
|
7
|
+
'master' => /^(5[1-5]\d{4}|677189|222[1-9]\d{2}|22[3-9]\d{3}|2[3-6]\d{4}|27[01]\d{3}|2720\d{2})\d{10}$/,
|
8
8
|
'discover' => /^(6011|65\d{2}|64[4-9]\d)\d{12}|(62\d{14})$/,
|
9
9
|
'american_express' => /^3[47]\d{13}$/,
|
10
10
|
'diners_club' => /^3(0[0-5]|[68]\d)\d{11}$/,
|
@@ -17,6 +17,26 @@ module ActiveMerchant #:nodoc:
|
|
17
17
|
'laser' => /^(6304|6706|6709|6771(?!89))\d{8}(\d{4}|\d{6,7})?$/
|
18
18
|
}
|
19
19
|
|
20
|
+
# http://www.barclaycard.co.uk/business/files/bin_rules.pdf
|
21
|
+
ELECTRON_RANGES = [
|
22
|
+
[400115],
|
23
|
+
(400837..400839),
|
24
|
+
(412921..412923),
|
25
|
+
[417935],
|
26
|
+
(419740..419741),
|
27
|
+
(419773..419775),
|
28
|
+
[424519],
|
29
|
+
(424962..424963),
|
30
|
+
[437860],
|
31
|
+
[444000],
|
32
|
+
[459472],
|
33
|
+
(484406..484411),
|
34
|
+
(484413..484414),
|
35
|
+
(484418..484418),
|
36
|
+
(484428..484455),
|
37
|
+
(491730..491759),
|
38
|
+
]
|
39
|
+
|
20
40
|
def self.included(base)
|
21
41
|
base.extend(ClassMethods)
|
22
42
|
end
|
@@ -25,6 +45,10 @@ module ActiveMerchant #:nodoc:
|
|
25
45
|
(1..12).include?(month.to_i)
|
26
46
|
end
|
27
47
|
|
48
|
+
def credit_card?
|
49
|
+
true
|
50
|
+
end
|
51
|
+
|
28
52
|
def valid_expiry_year?(year)
|
29
53
|
(Time.now.year..Time.now.year + 20).include?(year.to_i)
|
30
54
|
end
|
@@ -58,6 +82,11 @@ module ActiveMerchant #:nodoc:
|
|
58
82
|
(number.to_s =~ /^\d{1,2}$/)
|
59
83
|
end
|
60
84
|
|
85
|
+
# Returns if the card matches known Electron BINs
|
86
|
+
def electron?
|
87
|
+
self.class.electron?(number)
|
88
|
+
end
|
89
|
+
|
61
90
|
module ClassMethods
|
62
91
|
# Returns true if it validates. Optionally, you can pass a card brand as an argument and
|
63
92
|
# make sure it is of the correct brand.
|
@@ -106,6 +135,17 @@ module ActiveMerchant #:nodoc:
|
|
106
135
|
return nil
|
107
136
|
end
|
108
137
|
|
138
|
+
def electron?(number)
|
139
|
+
return false unless [16, 19].include?(number.length)
|
140
|
+
|
141
|
+
# don't recalculate for each range
|
142
|
+
bank_identification_number = first_digits(number).to_i
|
143
|
+
|
144
|
+
ELECTRON_RANGES.any? do |range|
|
145
|
+
range.include?(bank_identification_number)
|
146
|
+
end
|
147
|
+
end
|
148
|
+
|
109
149
|
def type?(number)
|
110
150
|
ActiveMerchant.deprecated "CreditCard#type? is deprecated and will be removed from a future release of ActiveMerchant. Please use CreditCard#brand? instead."
|
111
151
|
brand?(number)
|
@@ -57,7 +57,6 @@ module ActiveMerchant #:nodoc:
|
|
57
57
|
include CreditCardFormatting
|
58
58
|
|
59
59
|
DEBIT_CARDS = [ :switch, :solo ]
|
60
|
-
CURRENCIES_WITHOUT_FRACTIONS = %w(BIF BYR CLP CVE DJF GNF HUF ISK JPY KMF KRW PYG RWF UGX VND VUV XAF XOF XPF)
|
61
60
|
|
62
61
|
CREDIT_DEPRECATION_MESSAGE = "Support for using credit to refund existing transactions is deprecated and will be removed from a future release of ActiveMerchant. Please use the refund method instead."
|
63
62
|
RECURRING_DEPRECATION_MESSAGE = "Recurring functionality in ActiveMerchant is deprecated and will be removed in a future version. Please contact the ActiveMerchant maintainers if you have an interest in taking ownership of a separate gem that continues support for it."
|
@@ -66,10 +65,10 @@ module ActiveMerchant #:nodoc:
|
|
66
65
|
#
|
67
66
|
# :incorrect_number - Card number does not comply with ISO/IEC 7812 numbering standard
|
68
67
|
# :invalid_number - Card number was not matched by processor
|
69
|
-
# :invalid_expiry_date - Expiry date
|
68
|
+
# :invalid_expiry_date - Expiry date does not match correct formatting
|
70
69
|
# :invalid_cvc - Security codes does not match correct format (3-4 digits)
|
71
70
|
# :expired_card - Card number is expired
|
72
|
-
# :incorrect_cvc -
|
71
|
+
# :incorrect_cvc - Security code was not matched by the processor
|
73
72
|
# :incorrect_zip - Zip code is not in correct format
|
74
73
|
# :incorrect_address - Billing address info was not matched by the processor
|
75
74
|
# :incorrect_pin - Card PIN is incorrect
|
@@ -77,6 +76,10 @@ module ActiveMerchant #:nodoc:
|
|
77
76
|
# :processing_error - Processor error
|
78
77
|
# :call_issuer - Transaction requires voice authentication, call issuer
|
79
78
|
# :pickup_card - Issuer requests that you pickup the card from merchant
|
79
|
+
# :test_mode_live_card - Card was declined. Request was in test mode, but used a non test card.
|
80
|
+
# :unsupported_feature - Transaction failed due to gateway or merchant
|
81
|
+
# configuration not supporting a feature used, such
|
82
|
+
# as network tokenization.
|
80
83
|
|
81
84
|
STANDARD_ERROR_CODE = {
|
82
85
|
:incorrect_number => 'incorrect_number',
|
@@ -92,7 +95,9 @@ module ActiveMerchant #:nodoc:
|
|
92
95
|
:processing_error => 'processing_error',
|
93
96
|
:call_issuer => 'call_issuer',
|
94
97
|
:pickup_card => 'pick_up_card',
|
95
|
-
:config_error => 'config_error'
|
98
|
+
:config_error => 'config_error',
|
99
|
+
:test_mode_live_card => 'test_mode_live_card',
|
100
|
+
:unsupported_feature => 'unsupported_feature',
|
96
101
|
}
|
97
102
|
|
98
103
|
cattr_reader :implementations
|
@@ -120,6 +125,9 @@ module ActiveMerchant #:nodoc:
|
|
120
125
|
class_attribute :supported_cardtypes
|
121
126
|
self.supported_cardtypes = []
|
122
127
|
|
128
|
+
class_attribute :currencies_without_fractions
|
129
|
+
self.currencies_without_fractions = %w(BIF BYR CLP CVE DJF GNF HUF ISK JPY KMF KRW PYG RWF UGX VND VUV XAF XOF XPF)
|
130
|
+
|
123
131
|
class_attribute :homepage_url
|
124
132
|
class_attribute :display_name
|
125
133
|
|
@@ -132,7 +140,7 @@ module ActiveMerchant #:nodoc:
|
|
132
140
|
# The application making the calls to the gateway
|
133
141
|
# Useful for things like the PayPal build notation (BN) id fields
|
134
142
|
class_attribute :application_id, instance_writer: false
|
135
|
-
self.application_id =
|
143
|
+
self.application_id = nil
|
136
144
|
|
137
145
|
attr_reader :options
|
138
146
|
|
@@ -252,7 +260,7 @@ module ActiveMerchant #:nodoc:
|
|
252
260
|
end
|
253
261
|
|
254
262
|
def non_fractional_currency?(currency)
|
255
|
-
|
263
|
+
self.currencies_without_fractions.include?(currency.to_s)
|
256
264
|
end
|
257
265
|
|
258
266
|
def localized_amount(money, currency)
|