activemerchant 1.108.0 → 1.109.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG +28 -0
- data/lib/active_merchant/billing/base.rb +0 -13
- data/lib/active_merchant/billing/check.rb +1 -1
- data/lib/active_merchant/billing/credit_card.rb +2 -0
- data/lib/active_merchant/billing/credit_card_methods.rb +9 -6
- data/lib/active_merchant/billing/gateways/adyen.rb +8 -8
- data/lib/active_merchant/billing/gateways/allied_wallet.rb +2 -2
- data/lib/active_merchant/billing/gateways/authorize_net.rb +7 -7
- data/lib/active_merchant/billing/gateways/authorize_net_arb.rb +3 -3
- data/lib/active_merchant/billing/gateways/authorize_net_cim.rb +3 -3
- data/lib/active_merchant/billing/gateways/axcessms.rb +1 -1
- data/lib/active_merchant/billing/gateways/balanced.rb +1 -1
- data/lib/active_merchant/billing/gateways/bambora_apac.rb +2 -2
- data/lib/active_merchant/billing/gateways/bank_frick.rb +2 -2
- data/lib/active_merchant/billing/gateways/banwire.rb +2 -2
- data/lib/active_merchant/billing/gateways/barclaycard_smartpay.rb +2 -2
- data/lib/active_merchant/billing/gateways/barclays_epdq_extra_plus.rb +1 -1
- data/lib/active_merchant/billing/gateways/be2bill.rb +1 -1
- data/lib/active_merchant/billing/gateways/beanstream/beanstream_core.rb +4 -4
- data/lib/active_merchant/billing/gateways/blue_pay.rb +2 -2
- data/lib/active_merchant/billing/gateways/blue_snap.rb +1 -1
- data/lib/active_merchant/billing/gateways/borgun.rb +3 -3
- data/lib/active_merchant/billing/gateways/bpoint.rb +1 -1
- data/lib/active_merchant/billing/gateways/braintree/braintree_common.rb +1 -1
- data/lib/active_merchant/billing/gateways/braintree_blue.rb +78 -28
- data/lib/active_merchant/billing/gateways/bridge_pay.rb +2 -2
- data/lib/active_merchant/billing/gateways/cams.rb +2 -2
- data/lib/active_merchant/billing/gateways/card_connect.rb +1 -1
- data/lib/active_merchant/billing/gateways/card_save.rb +1 -1
- data/lib/active_merchant/billing/gateways/card_stream.rb +4 -4
- data/lib/active_merchant/billing/gateways/cardknox.rb +4 -4
- data/lib/active_merchant/billing/gateways/cardprocess.rb +1 -1
- data/lib/active_merchant/billing/gateways/cashnet.rb +1 -1
- data/lib/active_merchant/billing/gateways/cecabank.rb +1 -1
- data/lib/active_merchant/billing/gateways/cenpos.rb +12 -12
- data/lib/active_merchant/billing/gateways/checkout.rb +3 -3
- data/lib/active_merchant/billing/gateways/checkout_v2.rb +2 -2
- data/lib/active_merchant/billing/gateways/citrus_pay.rb +1 -1
- data/lib/active_merchant/billing/gateways/clearhaus.rb +3 -3
- data/lib/active_merchant/billing/gateways/commercegate.rb +1 -1
- data/lib/active_merchant/billing/gateways/conekta.rb +1 -1
- data/lib/active_merchant/billing/gateways/creditcall.rb +1 -1
- data/lib/active_merchant/billing/gateways/credorax.rb +6 -2
- data/lib/active_merchant/billing/gateways/ct_payment.rb +2 -2
- data/lib/active_merchant/billing/gateways/culqi.rb +1 -1
- data/lib/active_merchant/billing/gateways/cyber_source.rb +13 -4
- data/lib/active_merchant/billing/gateways/d_local.rb +7 -3
- data/lib/active_merchant/billing/gateways/data_cash.rb +1 -1
- data/lib/active_merchant/billing/gateways/dibs.rb +2 -2
- data/lib/active_merchant/billing/gateways/digitzs.rb +2 -2
- data/lib/active_merchant/billing/gateways/ebanx.rb +4 -4
- data/lib/active_merchant/billing/gateways/efsnet.rb +2 -2
- data/lib/active_merchant/billing/gateways/elavon.rb +1 -1
- data/lib/active_merchant/billing/gateways/element.rb +3 -3
- data/lib/active_merchant/billing/gateways/epay.rb +3 -3
- data/lib/active_merchant/billing/gateways/evo_ca.rb +1 -1
- data/lib/active_merchant/billing/gateways/eway.rb +1 -1
- data/lib/active_merchant/billing/gateways/eway_managed.rb +1 -1
- data/lib/active_merchant/billing/gateways/eway_rapid.rb +2 -2
- data/lib/active_merchant/billing/gateways/exact.rb +3 -3
- data/lib/active_merchant/billing/gateways/ezic.rb +1 -1
- data/lib/active_merchant/billing/gateways/fat_zebra.rb +4 -4
- data/lib/active_merchant/billing/gateways/federated_canada.rb +1 -1
- data/lib/active_merchant/billing/gateways/finansbank.rb +2 -2
- data/lib/active_merchant/billing/gateways/first_giving.rb +1 -1
- data/lib/active_merchant/billing/gateways/first_pay.rb +1 -1
- data/lib/active_merchant/billing/gateways/firstdata_e4.rb +4 -4
- data/lib/active_merchant/billing/gateways/firstdata_e4_v27.rb +3 -3
- data/lib/active_merchant/billing/gateways/flo2cash.rb +10 -10
- data/lib/active_merchant/billing/gateways/forte.rb +2 -2
- data/lib/active_merchant/billing/gateways/garanti.rb +2 -2
- data/lib/active_merchant/billing/gateways/global_collect.rb +5 -5
- data/lib/active_merchant/billing/gateways/global_transport.rb +1 -1
- data/lib/active_merchant/billing/gateways/hdfc.rb +9 -9
- data/lib/active_merchant/billing/gateways/hps.rb +1 -1
- data/lib/active_merchant/billing/gateways/iats_payments.rb +2 -2
- data/lib/active_merchant/billing/gateways/inspire.rb +1 -1
- data/lib/active_merchant/billing/gateways/instapay.rb +1 -1
- data/lib/active_merchant/billing/gateways/ipp.rb +1 -1
- data/lib/active_merchant/billing/gateways/iridium.rb +3 -3
- data/lib/active_merchant/billing/gateways/itransact.rb +1 -1
- data/lib/active_merchant/billing/gateways/iveri.rb +2 -2
- data/lib/active_merchant/billing/gateways/ixopay.rb +1 -1
- data/lib/active_merchant/billing/gateways/jetpay.rb +2 -2
- data/lib/active_merchant/billing/gateways/jetpay_v2.rb +2 -2
- data/lib/active_merchant/billing/gateways/komoju.rb +1 -1
- data/lib/active_merchant/billing/gateways/kushki.rb +4 -4
- data/lib/active_merchant/billing/gateways/latitude19.rb +2 -2
- data/lib/active_merchant/billing/gateways/linkpoint.rb +2 -2
- data/lib/active_merchant/billing/gateways/litle.rb +4 -4
- data/lib/active_merchant/billing/gateways/maxipago.rb +2 -2
- data/lib/active_merchant/billing/gateways/mercado_pago.rb +11 -6
- data/lib/active_merchant/billing/gateways/merchant_e_solutions.rb +1 -1
- data/lib/active_merchant/billing/gateways/merchant_one.rb +2 -2
- data/lib/active_merchant/billing/gateways/merchant_partners.rb +1 -1
- data/lib/active_merchant/billing/gateways/merchant_ware.rb +1 -1
- data/lib/active_merchant/billing/gateways/merchant_ware_version_four.rb +1 -1
- data/lib/active_merchant/billing/gateways/merchant_warrior.rb +2 -2
- data/lib/active_merchant/billing/gateways/mercury.rb +4 -4
- data/lib/active_merchant/billing/gateways/metrics_global.rb +1 -1
- data/lib/active_merchant/billing/gateways/micropayment.rb +2 -2
- data/lib/active_merchant/billing/gateways/migs.rb +1 -1
- data/lib/active_merchant/billing/gateways/modern_payments_cim.rb +1 -1
- data/lib/active_merchant/billing/gateways/monei.rb +2 -2
- data/lib/active_merchant/billing/gateways/moneris.rb +17 -17
- data/lib/active_merchant/billing/gateways/money_movers.rb +1 -1
- data/lib/active_merchant/billing/gateways/mundipagg.rb +1 -1
- data/lib/active_merchant/billing/gateways/nab_transact.rb +2 -2
- data/lib/active_merchant/billing/gateways/ncr_secure_pay.rb +1 -1
- data/lib/active_merchant/billing/gateways/net_registry.rb +2 -2
- data/lib/active_merchant/billing/gateways/netaxept.rb +2 -2
- data/lib/active_merchant/billing/gateways/netbanx.rb +46 -22
- data/lib/active_merchant/billing/gateways/netbilling.rb +2 -2
- data/lib/active_merchant/billing/gateways/netpay.rb +2 -2
- data/lib/active_merchant/billing/gateways/network_merchants.rb +1 -1
- data/lib/active_merchant/billing/gateways/nmi.rb +4 -4
- data/lib/active_merchant/billing/gateways/ogone.rb +2 -2
- data/lib/active_merchant/billing/gateways/omise.rb +1 -1
- data/lib/active_merchant/billing/gateways/openpay.rb +1 -1
- data/lib/active_merchant/billing/gateways/opp.rb +1 -1
- data/lib/active_merchant/billing/gateways/optimal_payment.rb +4 -4
- data/lib/active_merchant/billing/gateways/orbital.rb +6 -6
- data/lib/active_merchant/billing/gateways/orbital/orbital_soft_descriptors.rb +1 -1
- data/lib/active_merchant/billing/gateways/pac_net_raven.rb +1 -1
- data/lib/active_merchant/billing/gateways/pagarme.rb +2 -2
- data/lib/active_merchant/billing/gateways/pago_facil.rb +1 -1
- data/lib/active_merchant/billing/gateways/pay_conex.rb +1 -1
- data/lib/active_merchant/billing/gateways/pay_gate_xml.rb +2 -2
- data/lib/active_merchant/billing/gateways/pay_hub.rb +1 -1
- data/lib/active_merchant/billing/gateways/pay_junction.rb +3 -3
- data/lib/active_merchant/billing/gateways/pay_junction_v2.rb +2 -2
- data/lib/active_merchant/billing/gateways/pay_secure.rb +1 -1
- data/lib/active_merchant/billing/gateways/paybox_direct.rb +3 -3
- data/lib/active_merchant/billing/gateways/payeezy.rb +2 -2
- data/lib/active_merchant/billing/gateways/payex.rb +13 -13
- data/lib/active_merchant/billing/gateways/payflow.rb +5 -5
- data/lib/active_merchant/billing/gateways/payflow/payflow_common_api.rb +1 -1
- data/lib/active_merchant/billing/gateways/payflow_uk.rb +1 -1
- data/lib/active_merchant/billing/gateways/payment_express.rb +1 -1
- data/lib/active_merchant/billing/gateways/paymentez.rb +1 -1
- data/lib/active_merchant/billing/gateways/paymill.rb +1 -1
- data/lib/active_merchant/billing/gateways/paypal.rb +2 -2
- data/lib/active_merchant/billing/gateways/paypal_ca.rb +1 -1
- data/lib/active_merchant/billing/gateways/payscout.rb +1 -1
- data/lib/active_merchant/billing/gateways/paystation.rb +1 -1
- data/lib/active_merchant/billing/gateways/payu_in.rb +1 -1
- data/lib/active_merchant/billing/gateways/payu_latam.rb +6 -7
- data/lib/active_merchant/billing/gateways/payway.rb +1 -1
- data/lib/active_merchant/billing/gateways/pin.rb +1 -1
- data/lib/active_merchant/billing/gateways/plugnpay.rb +5 -5
- data/lib/active_merchant/billing/gateways/pro_pay.rb +2 -2
- data/lib/active_merchant/billing/gateways/psigate.rb +1 -1
- data/lib/active_merchant/billing/gateways/psl_card.rb +2 -2
- data/lib/active_merchant/billing/gateways/qbms.rb +1 -1
- data/lib/active_merchant/billing/gateways/quantum.rb +3 -3
- data/lib/active_merchant/billing/gateways/quickbooks.rb +6 -6
- data/lib/active_merchant/billing/gateways/quickpay/quickpay_common.rb +3 -3
- data/lib/active_merchant/billing/gateways/quickpay/quickpay_v10.rb +4 -4
- data/lib/active_merchant/billing/gateways/qvalent.rb +1 -1
- data/lib/active_merchant/billing/gateways/realex.rb +1 -1
- data/lib/active_merchant/billing/gateways/redsys.rb +4 -4
- data/lib/active_merchant/billing/gateways/s5.rb +1 -1
- data/lib/active_merchant/billing/gateways/safe_charge.rb +2 -2
- data/lib/active_merchant/billing/gateways/sage.rb +3 -3
- data/lib/active_merchant/billing/gateways/sage_pay.rb +3 -3
- data/lib/active_merchant/billing/gateways/sallie_mae.rb +1 -1
- data/lib/active_merchant/billing/gateways/secure_net.rb +1 -1
- data/lib/active_merchant/billing/gateways/secure_pay.rb +1 -1
- data/lib/active_merchant/billing/gateways/secure_pay_au.rb +2 -2
- data/lib/active_merchant/billing/gateways/secure_pay_tech.rb +2 -2
- data/lib/active_merchant/billing/gateways/securion_pay.rb +1 -1
- data/lib/active_merchant/billing/gateways/skip_jack.rb +5 -5
- data/lib/active_merchant/billing/gateways/so_easy_pay.rb +6 -6
- data/lib/active_merchant/billing/gateways/spreedly_core.rb +1 -1
- data/lib/active_merchant/billing/gateways/stripe.rb +6 -6
- data/lib/active_merchant/billing/gateways/stripe_payment_intents.rb +20 -1
- data/lib/active_merchant/billing/gateways/swipe_checkout.rb +1 -1
- data/lib/active_merchant/billing/gateways/telr.rb +4 -4
- data/lib/active_merchant/billing/gateways/tns.rb +1 -1
- data/lib/active_merchant/billing/gateways/trans_first.rb +2 -2
- data/lib/active_merchant/billing/gateways/trans_first_transaction_express.rb +1 -1
- data/lib/active_merchant/billing/gateways/transact_pro.rb +1 -1
- data/lib/active_merchant/billing/gateways/transax.rb +1 -1
- data/lib/active_merchant/billing/gateways/trexle.rb +1 -1
- data/lib/active_merchant/billing/gateways/trust_commerce.rb +5 -5
- data/lib/active_merchant/billing/gateways/usa_epay_advanced.rb +6 -6
- data/lib/active_merchant/billing/gateways/usa_epay_transaction.rb +1 -1
- data/lib/active_merchant/billing/gateways/vanco.rb +1 -1
- data/lib/active_merchant/billing/gateways/verifi.rb +3 -3
- data/lib/active_merchant/billing/gateways/viaklix.rb +1 -1
- data/lib/active_merchant/billing/gateways/visanet_peru.rb +3 -3
- data/lib/active_merchant/billing/gateways/webpay.rb +1 -1
- data/lib/active_merchant/billing/gateways/wepay.rb +2 -2
- data/lib/active_merchant/billing/gateways/wirecard.rb +1 -1
- data/lib/active_merchant/billing/gateways/world_net.rb +35 -35
- data/lib/active_merchant/billing/gateways/worldpay.rb +6 -6
- data/lib/active_merchant/billing/gateways/worldpay_online_payments.rb +1 -1
- data/lib/active_merchant/billing/gateways/worldpay_us.rb +1 -1
- data/lib/active_merchant/version.rb +1 -1
- data/lib/support/gateway_support.rb +1 -1
- metadata +35 -35
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7c4b380a0488ea2f5e78175b1dfa65fee57051b7015f0b890da0bbc38d720b19
|
4
|
+
data.tar.gz: 0067c05edeb3396266fdeb63366e56fe4b2c96e9ded24957405798a36d2f4f73
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 789d158841099fcb4fab1873328480657352a44febdcc938bb86897cedd1db568fc5139082272ba4415dde7a8f07dc9f75f93eaea95dab6cc7bc26a01698b091
|
7
|
+
data.tar.gz: 4d64a064ffa8d589780a785da3e1eabb2d3633db5c2ce6bbf0cf0998944f7c1bc25e4a09b557f9922bc1fe8b68f2ab2d3ef4a56dd441b9a50646911fdd5075d4
|
data/CHANGELOG
CHANGED
@@ -2,6 +2,34 @@
|
|
2
2
|
|
3
3
|
== HEAD
|
4
4
|
|
5
|
+
== Version 1.109.0
|
6
|
+
* Remove reference to `Billing::Integrations` [pi3r] #3692
|
7
|
+
* DLocal: Handle nil address1 [molbrown] #3661
|
8
|
+
* Braintree: Add travel and lodging fields [leila-alderman] #3668
|
9
|
+
* Stripe: strict_encode64 api key [britth] #3672
|
10
|
+
* Stripe PI: Implement verify action [leila-alderman] #3662
|
11
|
+
* Stripe, Stripe Payment Intents: Update supported countries [britth] #3684
|
12
|
+
* Forte: Use underscore for unused arguments in test [wsmoak] #3605
|
13
|
+
* Add Alia card type [therufs] #3673
|
14
|
+
* Element: Fix unit tests [leila-alderman] #3676
|
15
|
+
* PayU Latam: Fix store method [ccarruitero] #2590
|
16
|
+
* Adyen: Allow for executeThreeD to be passed as false [naashton] #3681
|
17
|
+
* WorldPay: Fix handling of `state` field for 3DS transactions [chinhle23] #3687
|
18
|
+
* Alia: Skip Luhn validation [therufs] #3673
|
19
|
+
* Diners Club: support 16 digit card numbers [therufs] #3682
|
20
|
+
* Cybersource: Update supported countries [britth] #3683
|
21
|
+
* Cybersource: pass reconciliation_id [therufs] #3688
|
22
|
+
* RuboCop: Fix Style/SpecialGlobalVars [leila-alderman] #3669
|
23
|
+
* RuboCop: Fix Style/StringLiteralsInInterpolation [leila-alderman] #3670
|
24
|
+
* RuboCop: Fix Layout/HeredocIndentation [leila-alderman] #3685
|
25
|
+
* RuboCop: Fix Gemspec/OrderedDependencies [leila-alderman] #3679
|
26
|
+
* RuboCop: Fix Style/TrailingUnderscoreVariable [leila-alderman] #3663
|
27
|
+
* RuboCop: Fix Style/WordArray [leila-alderman] #3664
|
28
|
+
* RuboCop: Fix Style/SymbolArray [leila-alderman] #3665
|
29
|
+
|
30
|
+
* Mercado-Pago: Notification url GSF [cdmackeyfree] #3678
|
31
|
+
* Credorax: Update logic for setting 3ds_homephonecountry [britth] #3691
|
32
|
+
|
5
33
|
== Version 1.108.0 (Jun 9, 2020)
|
6
34
|
* Cybersource: Send cavv as xid is xid is missing [pi3r] #3658
|
7
35
|
* Forte: Change default sec_code value to PPD [molbrown] #3653
|
@@ -39,19 +39,6 @@ module ActiveMerchant #:nodoc:
|
|
39
39
|
end
|
40
40
|
end
|
41
41
|
|
42
|
-
# Return the matching integration module
|
43
|
-
# You can then get the notification from the module
|
44
|
-
# * <tt>bogus</tt>: Bogus - Does nothing (for testing)
|
45
|
-
# * <tt>chronopay</tt>: Chronopay
|
46
|
-
# * <tt>paypal</tt>: Paypal
|
47
|
-
#
|
48
|
-
# chronopay = ActiveMerchant::Billing::Base.integration('chronopay')
|
49
|
-
# notification = chronopay.notification(raw_post)
|
50
|
-
#
|
51
|
-
def self.integration(name)
|
52
|
-
Billing::Integrations.const_get(name.to_s.downcase.camelize)
|
53
|
-
end
|
54
|
-
|
55
42
|
# A check to see if we're in test mode
|
56
43
|
def self.test?
|
57
44
|
mode == :test
|
@@ -23,6 +23,7 @@ module ActiveMerchant #:nodoc:
|
|
23
23
|
# * Cabal
|
24
24
|
# * Naranja
|
25
25
|
# * UnionPay
|
26
|
+
# * Alia
|
26
27
|
#
|
27
28
|
# For testing purposes, use the 'bogus' credit card brand. This skips the vast majority of
|
28
29
|
# validations, allowing you to focus on your core concerns until you're ready to be more concerned
|
@@ -98,6 +99,7 @@ module ActiveMerchant #:nodoc:
|
|
98
99
|
# * +'cabal'+
|
99
100
|
# * +'naranja'+
|
100
101
|
# * +'union_pay'+
|
102
|
+
# * +'alia'+
|
101
103
|
#
|
102
104
|
# Or, if you wish to test your implementation, +'bogus'+.
|
103
105
|
#
|
@@ -10,7 +10,7 @@ module ActiveMerchant #:nodoc:
|
|
10
10
|
'discover' => ->(num) { num =~ /^(6011|65\d{2}|64[4-9]\d)\d{12,15}|(62\d{14,17})$/ },
|
11
11
|
'american_express' => ->(num) { num =~ /^3[47]\d{13}$/ },
|
12
12
|
'naranja' => ->(num) { num&.size == 16 && in_bin_range?(num.slice(0, 6), NARANJA_RANGES) },
|
13
|
-
'diners_club' => ->(num) { num =~ /^3(0[0-5]|[68]\d)\d{11}$/ },
|
13
|
+
'diners_club' => ->(num) { num =~ /^3(0[0-5]|[68]\d)\d{11,16}$/ },
|
14
14
|
'jcb' => ->(num) { num =~ /^35(28|29|[3-8]\d)\d{12}$/ },
|
15
15
|
'dankort' => ->(num) { num =~ /^5019\d{12}$/ },
|
16
16
|
'maestro' => lambda { |num|
|
@@ -21,6 +21,7 @@ module ActiveMerchant #:nodoc:
|
|
21
21
|
},
|
22
22
|
'forbrugsforeningen' => ->(num) { num =~ /^600722\d{10}$/ },
|
23
23
|
'sodexo' => ->(num) { num =~ /^(606071|603389|606070|606069|606068|600818)\d{10}$/ },
|
24
|
+
'alia' => ->(num) { num =~ /^(504997|505878|601030|601073|505874)\d{10}$/ },
|
24
25
|
'vr' => ->(num) { num =~ /^(627416|637036)\d{10}$/ },
|
25
26
|
'cabal' => ->(num) { num&.size == 16 && in_bin_range?(num.slice(0, 8), CABAL_RANGES) },
|
26
27
|
'unionpay' => ->(num) { (16..19).cover?(num&.size) && in_bin_range?(num.slice(0, 8), UNIONPAY_RANGES) },
|
@@ -57,10 +58,10 @@ module ActiveMerchant #:nodoc:
|
|
57
58
|
]
|
58
59
|
|
59
60
|
CARNET_BINS = Set.new(
|
60
|
-
[
|
61
|
-
|
62
|
-
|
63
|
-
|
61
|
+
%w[
|
62
|
+
286900 502275 606333 627535 636318 636379 639388
|
63
|
+
639484 639559 50633601 50633606 58877274 62753500
|
64
|
+
60462203 60462204 588772
|
64
65
|
]
|
65
66
|
)
|
66
67
|
|
@@ -71,7 +72,7 @@ module ActiveMerchant #:nodoc:
|
|
71
72
|
]
|
72
73
|
|
73
74
|
MAESTRO_BINS = Set.new(
|
74
|
-
[
|
75
|
+
%w[500033 581149]
|
75
76
|
)
|
76
77
|
|
77
78
|
# https://www.mastercard.us/content/dam/mccom/global/documents/mastercard-rules.pdf, page 73
|
@@ -297,6 +298,8 @@ module ActiveMerchant #:nodoc:
|
|
297
298
|
case brand
|
298
299
|
when 'naranja'
|
299
300
|
valid_naranja_algo?(numbers)
|
301
|
+
when 'alia'
|
302
|
+
true
|
300
303
|
else
|
301
304
|
valid_luhn?(numbers)
|
302
305
|
end
|
@@ -9,7 +9,7 @@ module ActiveMerchant #:nodoc:
|
|
9
9
|
self.supported_countries = %w(AT AU BE BG BR CH CY CZ DE DK EE ES FI FR GB GI GR HK HU IE IS IT LI LT LU LV MC MT MX NL NO PL PT RO SE SG SK SI US)
|
10
10
|
self.default_currency = 'USD'
|
11
11
|
self.currencies_without_fractions = %w(CVE DJF GNF IDR JPY KMF KRW PYG RWF UGX VND VUV XAF XOF XPF)
|
12
|
-
self.supported_cardtypes = [
|
12
|
+
self.supported_cardtypes = %i[visa master american_express diners_club jcb dankort maestro discover elo naranja cabal unionpay]
|
13
13
|
|
14
14
|
self.money_format = :cents
|
15
15
|
|
@@ -366,12 +366,12 @@ module ActiveMerchant #:nodoc:
|
|
366
366
|
end
|
367
367
|
|
368
368
|
def add_reference(post, authorization, options = {})
|
369
|
-
_, psp_reference,
|
369
|
+
_, psp_reference, = authorization.split('#')
|
370
370
|
post[:originalReference] = single_reference(authorization) || psp_reference
|
371
371
|
end
|
372
372
|
|
373
373
|
def add_original_reference(post, authorization, options = {})
|
374
|
-
original_psp_reference,
|
374
|
+
original_psp_reference, = authorization.split('#')
|
375
375
|
post[:originalReference] = single_reference(authorization) || original_psp_reference
|
376
376
|
end
|
377
377
|
|
@@ -418,10 +418,10 @@ module ActiveMerchant #:nodoc:
|
|
418
418
|
post[:additionalData][:scaExemption] = options[:sca_exemption] if options[:sca_exemption]
|
419
419
|
end
|
420
420
|
else
|
421
|
-
return unless options[:execute_threed] || options[:threed_dynamic]
|
421
|
+
return unless !options[:execute_threed].nil? || !options[:threed_dynamic].nil?
|
422
422
|
|
423
|
-
post[:browserInfo] = { userAgent: options[:user_agent], acceptHeader: options[:accept_header] }
|
424
|
-
post[:additionalData] = { executeThreeD:
|
423
|
+
post[:browserInfo] = { userAgent: options[:user_agent], acceptHeader: options[:accept_header] } if options[:execute_threed] || options[:threed_dynamic]
|
424
|
+
post[:additionalData] = { executeThreeD: options[:execute_threed] } if !options[:execute_threed].nil?
|
425
425
|
end
|
426
426
|
end
|
427
427
|
|
@@ -527,14 +527,14 @@ module ActiveMerchant #:nodoc:
|
|
527
527
|
end
|
528
528
|
|
529
529
|
def success_from(action, response, options)
|
530
|
-
if [
|
530
|
+
if %w[RedirectShopper ChallengeShopper].include?(response.dig('resultCode')) && !options[:execute_threed] && !options[:threed_dynamic]
|
531
531
|
response['refusalReason'] = 'Received unexpected 3DS authentication response. Use the execute_threed and/or threed_dynamic options to initiate a proper 3DS flow.'
|
532
532
|
return false
|
533
533
|
end
|
534
534
|
|
535
535
|
case action.to_s
|
536
536
|
when 'authorise', 'authorise3d'
|
537
|
-
[
|
537
|
+
%w[Authorised Received RedirectShopper].include?(response['resultCode'])
|
538
538
|
when 'capture', 'refund', 'cancel'
|
539
539
|
response['response'] == "[#{action}-received]"
|
540
540
|
when 'adjustAuthorisation'
|
@@ -9,8 +9,8 @@ module ActiveMerchant #:nodoc:
|
|
9
9
|
self.supported_countries = ['US']
|
10
10
|
self.default_currency = 'USD'
|
11
11
|
self.money_format = :dollars
|
12
|
-
self.supported_cardtypes = [
|
13
|
-
|
12
|
+
self.supported_cardtypes = %i[visa master american_express discover
|
13
|
+
diners_club jcb maestro]
|
14
14
|
|
15
15
|
def initialize(options={})
|
16
16
|
requires!(options, :site_id, :merchant_id, :token)
|
@@ -11,7 +11,7 @@ module ActiveMerchant
|
|
11
11
|
self.supported_countries = %w(AU CA US)
|
12
12
|
self.default_currency = 'USD'
|
13
13
|
self.money_format = :dollars
|
14
|
-
self.supported_cardtypes = [
|
14
|
+
self.supported_cardtypes = %i[visa master american_express discover diners_club jcb maestro]
|
15
15
|
|
16
16
|
self.homepage_url = 'http://www.authorize.net/'
|
17
17
|
self.display_name = 'Authorize.Net'
|
@@ -192,7 +192,7 @@ module ActiveMerchant
|
|
192
192
|
end
|
193
193
|
|
194
194
|
def unstore(authorization)
|
195
|
-
customer_profile_id,
|
195
|
+
customer_profile_id, = split_authorization(authorization)
|
196
196
|
|
197
197
|
delete_customer_profile(customer_profile_id)
|
198
198
|
end
|
@@ -311,7 +311,7 @@ module ActiveMerchant
|
|
311
311
|
end
|
312
312
|
|
313
313
|
def cim_refund(amount, authorization, options)
|
314
|
-
transaction_id, card_number,
|
314
|
+
transaction_id, card_number, = split_authorization(authorization)
|
315
315
|
|
316
316
|
commit(:cim_refund, options) do |xml|
|
317
317
|
add_order_id(xml, options)
|
@@ -331,7 +331,7 @@ module ActiveMerchant
|
|
331
331
|
end
|
332
332
|
|
333
333
|
def normal_refund(amount, authorization, options)
|
334
|
-
transaction_id, card_number,
|
334
|
+
transaction_id, card_number, = split_authorization(authorization)
|
335
335
|
|
336
336
|
commit(:refund) do |xml|
|
337
337
|
xml.transactionRequest do
|
@@ -500,7 +500,7 @@ module ActiveMerchant
|
|
500
500
|
end
|
501
501
|
|
502
502
|
def add_token_payment_method(xml, token, options)
|
503
|
-
customer_profile_id, customer_payment_profile_id,
|
503
|
+
customer_profile_id, customer_payment_profile_id, = split_authorization(token)
|
504
504
|
customer_profile_id = options[:customer_profile_id] if options[:customer_profile_id]
|
505
505
|
customer_payment_profile_id = options[:customer_payment_profile_id] if options[:customer_payment_profile_id]
|
506
506
|
xml.customerProfileId(customer_profile_id)
|
@@ -755,7 +755,7 @@ module ActiveMerchant
|
|
755
755
|
end
|
756
756
|
|
757
757
|
def state_from(address, options)
|
758
|
-
if [
|
758
|
+
if %w[US CA].include?(address[:country])
|
759
759
|
address[:state] || 'NC'
|
760
760
|
else
|
761
761
|
address[:state] || 'n/a'
|
@@ -988,7 +988,7 @@ module ActiveMerchant
|
|
988
988
|
end
|
989
989
|
|
990
990
|
def transaction_id_from(authorization)
|
991
|
-
transaction_id,
|
991
|
+
transaction_id, = split_authorization(authorization)
|
992
992
|
transaction_id
|
993
993
|
end
|
994
994
|
|
@@ -31,8 +31,8 @@ module ActiveMerchant #:nodoc:
|
|
31
31
|
|
32
32
|
self.default_currency = 'USD'
|
33
33
|
|
34
|
-
self.supported_countries = [
|
35
|
-
self.supported_cardtypes = [
|
34
|
+
self.supported_countries = %w[US CA GB]
|
35
|
+
self.supported_cardtypes = %i[visa master american_express discover diners_club jcb]
|
36
36
|
self.homepage_url = 'http://www.authorize.net/'
|
37
37
|
self.display_name = 'Authorize.Net'
|
38
38
|
|
@@ -84,7 +84,7 @@ module ActiveMerchant #:nodoc:
|
|
84
84
|
# initial billing occurs) and the total number of billing <tt>:occurrences</tt> or payments for the subscription. (REQUIRED)
|
85
85
|
def recurring(money, creditcard, options={})
|
86
86
|
requires!(options, :interval, :duration, :billing_address)
|
87
|
-
requires!(options[:interval], :length, [
|
87
|
+
requires!(options[:interval], :length, %i[unit days months])
|
88
88
|
requires!(options[:duration], :start_date, :occurrences)
|
89
89
|
requires!(options[:billing_address], :first_name, :last_name)
|
90
90
|
|
@@ -81,7 +81,7 @@ module ActiveMerchant #:nodoc:
|
|
81
81
|
self.homepage_url = 'http://www.authorize.net/'
|
82
82
|
self.display_name = 'Authorize.Net CIM'
|
83
83
|
self.supported_countries = ['US']
|
84
|
-
self.supported_cardtypes = [
|
84
|
+
self.supported_cardtypes = %i[visa master american_express discover]
|
85
85
|
|
86
86
|
# Creates a new AuthorizeNetCimGateway
|
87
87
|
#
|
@@ -691,10 +691,10 @@ module ActiveMerchant #:nodoc:
|
|
691
691
|
add_order(xml, transaction[:order]) if transaction[:order].present?
|
692
692
|
|
693
693
|
end
|
694
|
-
if [
|
694
|
+
if %i[auth_capture auth_only capture_only].include?(transaction[:type])
|
695
695
|
xml.tag!('recurringBilling', transaction[:recurring_billing]) if transaction.has_key?(:recurring_billing)
|
696
696
|
end
|
697
|
-
tag_unless_blank(xml, 'cardCode', transaction[:card_code]) unless [
|
697
|
+
tag_unless_blank(xml, 'cardCode', transaction[:card_code]) unless %i[void refund prior_auth_capture].include?(transaction[:type])
|
698
698
|
end
|
699
699
|
end
|
700
700
|
end
|
@@ -8,7 +8,7 @@ module ActiveMerchant #:nodoc:
|
|
8
8
|
GI GR HR HU IE IL IM IS IT LI LT LU LV MC MT MX NL
|
9
9
|
NO PL PT RO RU SE SI SK TR US VA)
|
10
10
|
|
11
|
-
self.supported_cardtypes = [
|
11
|
+
self.supported_cardtypes = %i[visa master american_express discover jcb maestro]
|
12
12
|
|
13
13
|
self.homepage_url = 'http://www.axcessms.com/'
|
14
14
|
self.display_name = 'Axcess MS'
|
@@ -22,7 +22,7 @@ module ActiveMerchant #:nodoc:
|
|
22
22
|
self.live_url = 'https://api.balancedpayments.com'
|
23
23
|
|
24
24
|
self.supported_countries = ['US']
|
25
|
-
self.supported_cardtypes = [
|
25
|
+
self.supported_cardtypes = %i[visa master american_express discover]
|
26
26
|
self.homepage_url = 'https://www.balancedpayments.com/'
|
27
27
|
self.display_name = 'Balanced'
|
28
28
|
self.money_format = :cents
|
@@ -6,8 +6,8 @@ module ActiveMerchant #:nodoc:
|
|
6
6
|
self.live_url = 'https://www.bambora.co.nz/interface/api'
|
7
7
|
self.test_url = 'https://demo.bambora.co.nz/interface/api'
|
8
8
|
|
9
|
-
self.supported_countries = [
|
10
|
-
self.supported_cardtypes = [
|
9
|
+
self.supported_countries = %w[AU NZ]
|
10
|
+
self.supported_cardtypes = %i[visa master american_express diners_club jcb]
|
11
11
|
|
12
12
|
self.homepage_url = 'http://www.bambora.com/'
|
13
13
|
self.display_name = 'Bambora Asia-Pacific'
|
@@ -9,9 +9,9 @@ module ActiveMerchant #:nodoc:
|
|
9
9
|
self.test_url = 'https://test.ctpe.io/payment/ctpe'
|
10
10
|
self.live_url = 'https://ctpe.io/payment/ctpe'
|
11
11
|
|
12
|
-
self.supported_countries = [
|
12
|
+
self.supported_countries = %w[LI US]
|
13
13
|
self.default_currency = 'EUR'
|
14
|
-
self.supported_cardtypes = [
|
14
|
+
self.supported_cardtypes = %i[visa master american_express discover]
|
15
15
|
|
16
16
|
self.homepage_url = 'http://www.bankfrickacquiring.com/'
|
17
17
|
self.display_name = 'Bank Frick'
|
@@ -4,7 +4,7 @@ module ActiveMerchant #:nodoc:
|
|
4
4
|
URL = 'https://banwire.com/api.pago_pro'
|
5
5
|
|
6
6
|
self.supported_countries = ['MX']
|
7
|
-
self.supported_cardtypes = [
|
7
|
+
self.supported_cardtypes = %i[visa master american_express]
|
8
8
|
self.homepage_url = 'http://www.banwire.com/'
|
9
9
|
self.display_name = 'Banwire'
|
10
10
|
|
@@ -63,7 +63,7 @@ module ActiveMerchant #:nodoc:
|
|
63
63
|
post[:card_num] = creditcard.number
|
64
64
|
post[:card_name] = creditcard.name
|
65
65
|
post[:card_type] = card_brand(creditcard)
|
66
|
-
post[:card_exp] = "#{sprintf(
|
66
|
+
post[:card_exp] = "#{sprintf('%02d', creditcard.month)}/#{creditcard.year.to_s[-2, 2]}"
|
67
67
|
post[:card_ccv2] = creditcard.verification_value
|
68
68
|
end
|
69
69
|
|
@@ -4,11 +4,11 @@ module ActiveMerchant #:nodoc:
|
|
4
4
|
self.test_url = 'https://pal-test.barclaycardsmartpay.com/pal/servlet'
|
5
5
|
self.live_url = 'https://pal-live.barclaycardsmartpay.com/pal/servlet'
|
6
6
|
|
7
|
-
self.supported_countries = [
|
7
|
+
self.supported_countries = %w[AL AD AM AT AZ BY BE BA BG HR CY CZ DK EE FI FR DE GR HU IS IE IT KZ LV LI LT LU MK MT MD MC ME NL NO PL PT RO RU SM RS SK SI ES SE CH TR UA GB VA]
|
8
8
|
self.default_currency = 'EUR'
|
9
9
|
self.currencies_with_three_decimal_places = %w(BHD KWD OMR RSD TND)
|
10
10
|
self.money_format = :cents
|
11
|
-
self.supported_cardtypes = [
|
11
|
+
self.supported_cardtypes = %i[visa master american_express discover diners_club jcb dankort maestro]
|
12
12
|
|
13
13
|
self.homepage_url = 'https://www.barclaycardsmartpay.com/'
|
14
14
|
self.display_name = 'Barclaycard Smartpay'
|
@@ -8,7 +8,7 @@ module ActiveMerchant #:nodoc:
|
|
8
8
|
self.homepage_url = 'http://www.barclaycard.co.uk/business/accepting-payments/epdq-ecomm/'
|
9
9
|
|
10
10
|
self.supported_countries = ['GB']
|
11
|
-
self.supported_cardtypes = [
|
11
|
+
self.supported_cardtypes = %i[visa master american_express diners_club discover jcb maestro]
|
12
12
|
self.default_currency = 'GBP'
|
13
13
|
end
|
14
14
|
end
|
@@ -9,7 +9,7 @@ module ActiveMerchant #:nodoc:
|
|
9
9
|
self.display_name = 'Be2Bill'
|
10
10
|
self.homepage_url = 'http://www.be2bill.com/'
|
11
11
|
self.supported_countries = ['FR']
|
12
|
-
self.supported_cardtypes = [
|
12
|
+
self.supported_cardtypes = %i[visa master american_express]
|
13
13
|
self.default_currency = 'EUR'
|
14
14
|
self.money_format = :cents
|
15
15
|
|
@@ -131,10 +131,10 @@ module ActiveMerchant #:nodoc:
|
|
131
131
|
base.default_currency = 'CAD'
|
132
132
|
|
133
133
|
# The countries the gateway supports merchants from as 2 digit ISO country codes
|
134
|
-
base.supported_countries = [
|
134
|
+
base.supported_countries = %w[CA US]
|
135
135
|
|
136
136
|
# The card types supported by the payment gateway
|
137
|
-
base.supported_cardtypes = [
|
137
|
+
base.supported_cardtypes = %i[visa master american_express discover diners_club jcb]
|
138
138
|
|
139
139
|
# The homepage URL of the gateway
|
140
140
|
base.homepage_url = 'http://www.beanstream.com/'
|
@@ -155,7 +155,7 @@ module ActiveMerchant #:nodoc:
|
|
155
155
|
end
|
156
156
|
|
157
157
|
def capture(money, authorization, options = {})
|
158
|
-
reference,
|
158
|
+
reference, = split_auth(authorization)
|
159
159
|
post = {}
|
160
160
|
add_amount(post, money)
|
161
161
|
add_reference(post, reference)
|
@@ -259,7 +259,7 @@ module ActiveMerchant #:nodoc:
|
|
259
259
|
[options[:billing_address], options[:shipping_address]].compact.each do |address|
|
260
260
|
next if empty?(address[:country])
|
261
261
|
|
262
|
-
unless [
|
262
|
+
unless %w[US CA].include?(address[:country])
|
263
263
|
address[:state] = '--'
|
264
264
|
address[:zip] = '000000' unless address[:zip]
|
265
265
|
end
|
@@ -44,8 +44,8 @@ module ActiveMerchant #:nodoc:
|
|
44
44
|
'CUST_TOKEN' => :cust_token
|
45
45
|
}
|
46
46
|
|
47
|
-
self.supported_countries = [
|
48
|
-
self.supported_cardtypes = [
|
47
|
+
self.supported_countries = %w[US CA]
|
48
|
+
self.supported_cardtypes = %i[visa master american_express discover diners_club jcb]
|
49
49
|
self.homepage_url = 'http://www.bluepay.com/'
|
50
50
|
self.display_name = 'BluePay'
|
51
51
|
self.money_format = :dollars
|