activemerchant 1.43.3 → 1.44.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data.tar.gz.sig +0 -0
- data/CHANGELOG +133 -3
- data/CONTRIBUTORS +25 -0
- data/README.md +14 -39
- data/lib/active_merchant.rb +43 -2
- data/lib/active_merchant/billing.rb +3 -1
- data/lib/active_merchant/billing/base.rb +10 -2
- data/lib/active_merchant/billing/check.rb +29 -22
- data/lib/active_merchant/billing/compatibility.rb +120 -0
- data/lib/active_merchant/billing/credit_card.rb +129 -60
- data/lib/active_merchant/billing/credit_card_formatting.rb +4 -1
- data/lib/active_merchant/billing/credit_card_methods.rb +60 -43
- data/lib/active_merchant/billing/cvv_result.rb +15 -15
- data/lib/active_merchant/billing/gateway.rb +46 -11
- data/lib/active_merchant/billing/gateways/adyen.rb +205 -0
- data/lib/active_merchant/billing/gateways/app55.rb +1 -9
- data/lib/active_merchant/billing/gateways/authorize_net.rb +7 -391
- data/lib/active_merchant/billing/gateways/authorize_net_arb.rb +417 -0
- data/lib/active_merchant/billing/gateways/authorize_net_cim.rb +20 -4
- data/lib/active_merchant/billing/gateways/balanced.rb +127 -367
- data/lib/active_merchant/billing/gateways/barclays_epdq.rb +1 -1
- data/lib/active_merchant/billing/gateways/beanstream.rb +25 -6
- data/lib/active_merchant/billing/gateways/beanstream/beanstream_core.rb +3 -3
- data/lib/active_merchant/billing/gateways/blue_pay.rb +11 -3
- data/lib/active_merchant/billing/gateways/bogus.rb +1 -13
- data/lib/active_merchant/billing/gateways/borgun.rb +211 -0
- data/lib/active_merchant/billing/gateways/braintree_blue.rb +31 -13
- data/lib/active_merchant/billing/gateways/bridge_pay.rb +7 -0
- data/lib/active_merchant/billing/gateways/cashnet.rb +184 -0
- data/lib/active_merchant/billing/gateways/cc5.rb +45 -0
- data/lib/active_merchant/billing/gateways/certo_direct.rb +3 -2
- data/lib/active_merchant/billing/gateways/commercegate.rb +143 -0
- data/lib/active_merchant/billing/gateways/conekta.rb +56 -81
- data/lib/active_merchant/billing/gateways/cyber_source.rb +1 -0
- data/lib/active_merchant/billing/gateways/data_cash.rb +3 -1
- data/lib/active_merchant/billing/gateways/efsnet.rb +3 -14
- data/lib/active_merchant/billing/gateways/elavon.rb +45 -9
- data/lib/active_merchant/billing/gateways/epay.rb +2 -2
- data/lib/active_merchant/billing/gateways/eway.rb +1 -12
- data/lib/active_merchant/billing/gateways/eway_managed.rb +1 -1
- data/lib/active_merchant/billing/gateways/eway_rapid.rb +233 -202
- data/lib/active_merchant/billing/gateways/exact.rb +1 -1
- data/lib/active_merchant/billing/gateways/fat_zebra.rb +1 -1
- data/lib/active_merchant/billing/gateways/federated_canada.rb +1 -8
- data/lib/active_merchant/billing/gateways/finansbank.rb +2 -1
- data/lib/active_merchant/billing/gateways/first_pay.rb +108 -124
- data/lib/active_merchant/billing/gateways/firstdata_e4.rb +43 -13
- data/lib/active_merchant/billing/gateways/garanti.rb +2 -2
- data/lib/active_merchant/billing/gateways/hps.rb +281 -0
- data/lib/active_merchant/billing/gateways/iats_payments.rb +2 -2
- data/lib/active_merchant/billing/gateways/ideal/ideal_base.rb +1 -4
- data/lib/active_merchant/billing/gateways/inspire.rb +0 -8
- data/lib/active_merchant/billing/gateways/iridium.rb +25 -3
- data/lib/active_merchant/billing/gateways/jetpay.rb +1 -1
- data/lib/active_merchant/billing/gateways/linkpoint.rb +4 -13
- data/lib/active_merchant/billing/gateways/litle.rb +10 -4
- data/lib/active_merchant/billing/gateways/maxipago.rb +7 -0
- data/lib/active_merchant/billing/gateways/merchant_e_solutions.rb +0 -6
- data/lib/active_merchant/billing/gateways/merchant_ware.rb +4 -11
- data/lib/active_merchant/billing/gateways/merchant_ware_version_four.rb +3 -10
- data/lib/active_merchant/billing/gateways/mercury.rb +0 -7
- data/lib/active_merchant/billing/gateways/metrics_global.rb +1 -20
- data/lib/active_merchant/billing/gateways/migs.rb +1 -1
- data/lib/active_merchant/billing/gateways/moneris.rb +29 -21
- data/lib/active_merchant/billing/gateways/moneris_us.rb +1 -11
- data/lib/active_merchant/billing/gateways/money_movers.rb +1 -8
- data/lib/active_merchant/billing/gateways/nab_transact.rb +16 -15
- data/lib/active_merchant/billing/gateways/net_registry.rb +1 -1
- data/lib/active_merchant/billing/gateways/netbilling.rb +0 -7
- data/lib/active_merchant/billing/gateways/network_merchants.rb +21 -18
- data/lib/active_merchant/billing/gateways/ogone.rb +3 -3
- data/lib/active_merchant/billing/gateways/openpay.rb +1 -8
- data/lib/active_merchant/billing/gateways/optimal_payment.rb +34 -23
- data/lib/active_merchant/billing/gateways/orbital.rb +121 -4
- data/lib/active_merchant/billing/gateways/orbital/orbital_soft_descriptors.rb +22 -21
- data/lib/active_merchant/billing/gateways/pac_net_raven.rb +2 -9
- data/lib/active_merchant/billing/gateways/pago_facil.rb +122 -0
- data/lib/active_merchant/billing/gateways/pay_junction.rb +3 -13
- data/lib/active_merchant/billing/gateways/pay_secure.rb +0 -7
- data/lib/active_merchant/billing/gateways/paybox_direct.rb +1 -9
- data/lib/active_merchant/billing/gateways/payex.rb +1 -1
- data/lib/active_merchant/billing/gateways/payflow.rb +7 -1
- data/lib/active_merchant/billing/gateways/payflow/payflow_common_api.rb +15 -15
- data/lib/active_merchant/billing/gateways/payflow_express.rb +19 -19
- data/lib/active_merchant/billing/gateways/payment_express.rb +1 -1
- data/lib/active_merchant/billing/gateways/paymill.rb +7 -2
- data/lib/active_merchant/billing/gateways/paypal.rb +25 -14
- data/lib/active_merchant/billing/gateways/paypal/paypal_common_api.rb +1 -1
- data/lib/active_merchant/billing/gateways/paypal/paypal_recurring_api.rb +16 -2
- data/lib/active_merchant/billing/gateways/paypal_digital_goods.rb +3 -2
- data/lib/active_merchant/billing/gateways/paypal_express.rb +25 -0
- data/lib/active_merchant/billing/gateways/payscout.rb +1 -8
- data/lib/active_merchant/billing/gateways/pin.rb +39 -7
- data/lib/active_merchant/billing/gateways/plugnpay.rb +1 -12
- data/lib/active_merchant/billing/gateways/psigate.rb +1 -12
- data/lib/active_merchant/billing/gateways/qbms.rb +1 -1
- data/lib/active_merchant/billing/gateways/quantum.rb +2 -2
- data/lib/active_merchant/billing/gateways/quickpay.rb +17 -15
- data/lib/active_merchant/billing/gateways/realex.rb +3 -12
- data/lib/active_merchant/billing/gateways/sage.rb +1 -1
- data/lib/active_merchant/billing/gateways/sage/sage_bankcard.rb +2 -8
- data/lib/active_merchant/billing/gateways/sage/sage_core.rb +1 -1
- data/lib/active_merchant/billing/gateways/sage/sage_virtual_check.rb +1 -1
- data/lib/active_merchant/billing/gateways/sage_pay.rb +93 -28
- data/lib/active_merchant/billing/gateways/secure_net.rb +1 -8
- data/lib/active_merchant/billing/gateways/secure_pay_au.rb +3 -3
- data/lib/active_merchant/billing/gateways/secure_pay_tech.rb +0 -7
- data/lib/active_merchant/billing/gateways/skip_jack.rb +1 -2
- data/lib/active_merchant/billing/gateways/smart_ps.rb +8 -2
- data/lib/active_merchant/billing/gateways/spreedly_core.rb +2 -1
- data/lib/active_merchant/billing/gateways/stripe.rb +14 -15
- data/lib/active_merchant/billing/gateways/swipe_checkout.rb +0 -1
- data/lib/active_merchant/billing/gateways/trust_commerce.rb +4 -9
- data/lib/active_merchant/billing/gateways/usa_epay_advanced.rb +46 -43
- data/lib/active_merchant/billing/gateways/usa_epay_transaction.rb +7 -0
- data/lib/active_merchant/billing/gateways/verifi.rb +1 -8
- data/lib/active_merchant/billing/gateways/viaklix.rb +0 -6
- data/lib/active_merchant/billing/gateways/vindicia.rb +68 -44
- data/lib/active_merchant/billing/gateways/webpay.rb +1 -9
- data/lib/active_merchant/billing/gateways/wirecard.rb +117 -11
- data/lib/active_merchant/billing/gateways/worldpay.rb +50 -22
- data/lib/active_merchant/billing/gateways/worldpay_us.rb +181 -0
- data/lib/active_merchant/billing/model.rb +30 -0
- data/lib/active_merchant/billing/rails.rb +3 -0
- data/lib/active_merchant/billing/response.rb +20 -15
- data/lib/active_merchant/country.rb +327 -0
- data/lib/active_merchant/empty.rb +20 -0
- data/lib/active_merchant/errors.rb +29 -0
- data/lib/active_merchant/offsite_payments_shim.rb +19 -0
- data/lib/active_merchant/version.rb +1 -1
- metadata +60 -243
- metadata.gz.sig +0 -0
- data/gem-public_cert.pem +0 -21
- data/lib/active_merchant/billing/expiry_date.rb +0 -34
- data/lib/active_merchant/billing/gateways/orbital/avs_result.rb +0 -93
- data/lib/active_merchant/billing/gateways/orbital/cvv_result.rb +0 -34
- data/lib/active_merchant/billing/integrations.rb +0 -17
- data/lib/active_merchant/billing/integrations/a1agregator.rb +0 -26
- data/lib/active_merchant/billing/integrations/a1agregator/helper.rb +0 -31
- data/lib/active_merchant/billing/integrations/a1agregator/notification.rb +0 -186
- data/lib/active_merchant/billing/integrations/a1agregator/status.rb +0 -38
- data/lib/active_merchant/billing/integrations/action_view_helper.rb +0 -78
- data/lib/active_merchant/billing/integrations/authorize_net_sim.rb +0 -38
- data/lib/active_merchant/billing/integrations/authorize_net_sim/helper.rb +0 -229
- data/lib/active_merchant/billing/integrations/authorize_net_sim/notification.rb +0 -340
- data/lib/active_merchant/billing/integrations/bit_pay.rb +0 -30
- data/lib/active_merchant/billing/integrations/bit_pay/helper.rb +0 -66
- data/lib/active_merchant/billing/integrations/bit_pay/notification.rb +0 -74
- data/lib/active_merchant/billing/integrations/bit_pay/return.rb +0 -10
- data/lib/active_merchant/billing/integrations/bogus.rb +0 -23
- data/lib/active_merchant/billing/integrations/bogus/helper.rb +0 -17
- data/lib/active_merchant/billing/integrations/bogus/notification.rb +0 -11
- data/lib/active_merchant/billing/integrations/bogus/return.rb +0 -10
- data/lib/active_merchant/billing/integrations/chronopay.rb +0 -23
- data/lib/active_merchant/billing/integrations/chronopay/helper.rb +0 -120
- data/lib/active_merchant/billing/integrations/chronopay/notification.rb +0 -158
- data/lib/active_merchant/billing/integrations/chronopay/return.rb +0 -10
- data/lib/active_merchant/billing/integrations/citrus.rb +0 -28
- data/lib/active_merchant/billing/integrations/citrus/helper.rb +0 -57
- data/lib/active_merchant/billing/integrations/citrus/notification.rb +0 -133
- data/lib/active_merchant/billing/integrations/citrus/return.rb +0 -40
- data/lib/active_merchant/billing/integrations/direc_pay.rb +0 -41
- data/lib/active_merchant/billing/integrations/direc_pay/helper.rb +0 -200
- data/lib/active_merchant/billing/integrations/direc_pay/notification.rb +0 -76
- data/lib/active_merchant/billing/integrations/direc_pay/return.rb +0 -32
- data/lib/active_merchant/billing/integrations/direc_pay/status.rb +0 -37
- data/lib/active_merchant/billing/integrations/directebanking.rb +0 -47
- data/lib/active_merchant/billing/integrations/directebanking/helper.rb +0 -90
- data/lib/active_merchant/billing/integrations/directebanking/notification.rb +0 -120
- data/lib/active_merchant/billing/integrations/directebanking/return.rb +0 -11
- data/lib/active_merchant/billing/integrations/doku.rb +0 -24
- data/lib/active_merchant/billing/integrations/doku/helper.rb +0 -102
- data/lib/active_merchant/billing/integrations/doku/notification.rb +0 -69
- data/lib/active_merchant/billing/integrations/doku/return.rb +0 -10
- data/lib/active_merchant/billing/integrations/dotpay.rb +0 -22
- data/lib/active_merchant/billing/integrations/dotpay/helper.rb +0 -77
- data/lib/active_merchant/billing/integrations/dotpay/notification.rb +0 -86
- data/lib/active_merchant/billing/integrations/dotpay/return.rb +0 -11
- data/lib/active_merchant/billing/integrations/dwolla.rb +0 -23
- data/lib/active_merchant/billing/integrations/dwolla/common.rb +0 -23
- data/lib/active_merchant/billing/integrations/dwolla/helper.rb +0 -43
- data/lib/active_merchant/billing/integrations/dwolla/notification.rb +0 -64
- data/lib/active_merchant/billing/integrations/dwolla/return.rb +0 -49
- data/lib/active_merchant/billing/integrations/e_payment_plans.rb +0 -48
- data/lib/active_merchant/billing/integrations/e_payment_plans/helper.rb +0 -34
- data/lib/active_merchant/billing/integrations/e_payment_plans/notification.rb +0 -84
- data/lib/active_merchant/billing/integrations/easy_pay.rb +0 -30
- data/lib/active_merchant/billing/integrations/easy_pay/common.rb +0 -40
- data/lib/active_merchant/billing/integrations/easy_pay/helper.rb +0 -36
- data/lib/active_merchant/billing/integrations/easy_pay/notification.rb +0 -59
- data/lib/active_merchant/billing/integrations/epay.rb +0 -21
- data/lib/active_merchant/billing/integrations/epay/helper.rb +0 -55
- data/lib/active_merchant/billing/integrations/epay/notification.rb +0 -110
- data/lib/active_merchant/billing/integrations/first_data.rb +0 -38
- data/lib/active_merchant/billing/integrations/first_data/helper.rb +0 -61
- data/lib/active_merchant/billing/integrations/first_data/notification.rb +0 -56
- data/lib/active_merchant/billing/integrations/gestpay.rb +0 -25
- data/lib/active_merchant/billing/integrations/gestpay/common.rb +0 -42
- data/lib/active_merchant/billing/integrations/gestpay/helper.rb +0 -70
- data/lib/active_merchant/billing/integrations/gestpay/notification.rb +0 -85
- data/lib/active_merchant/billing/integrations/gestpay/return.rb +0 -10
- data/lib/active_merchant/billing/integrations/helper.rb +0 -123
- data/lib/active_merchant/billing/integrations/hi_trust.rb +0 -27
- data/lib/active_merchant/billing/integrations/hi_trust/helper.rb +0 -58
- data/lib/active_merchant/billing/integrations/hi_trust/notification.rb +0 -59
- data/lib/active_merchant/billing/integrations/hi_trust/return.rb +0 -68
- data/lib/active_merchant/billing/integrations/ipay88.rb +0 -23
- data/lib/active_merchant/billing/integrations/ipay88/helper.rb +0 -118
- data/lib/active_merchant/billing/integrations/ipay88/notification.rb +0 -103
- data/lib/active_merchant/billing/integrations/ipay88/return.rb +0 -29
- data/lib/active_merchant/billing/integrations/klarna.rb +0 -71
- data/lib/active_merchant/billing/integrations/klarna/helper.rb +0 -123
- data/lib/active_merchant/billing/integrations/klarna/notification.rb +0 -103
- data/lib/active_merchant/billing/integrations/liqpay.rb +0 -30
- data/lib/active_merchant/billing/integrations/liqpay/helper.rb +0 -43
- data/lib/active_merchant/billing/integrations/liqpay/notification.rb +0 -89
- data/lib/active_merchant/billing/integrations/liqpay/return.rb +0 -83
- data/lib/active_merchant/billing/integrations/maksuturva.rb +0 -86
- data/lib/active_merchant/billing/integrations/maksuturva/helper.rb +0 -119
- data/lib/active_merchant/billing/integrations/maksuturva/notification.rb +0 -48
- data/lib/active_merchant/billing/integrations/mollie_ideal.rb +0 -98
- data/lib/active_merchant/billing/integrations/mollie_ideal/helper.rb +0 -67
- data/lib/active_merchant/billing/integrations/mollie_ideal/notification.rb +0 -69
- data/lib/active_merchant/billing/integrations/mollie_ideal/return.rb +0 -10
- data/lib/active_merchant/billing/integrations/moneybookers.rb +0 -26
- data/lib/active_merchant/billing/integrations/moneybookers/helper.rb +0 -75
- data/lib/active_merchant/billing/integrations/moneybookers/notification.rb +0 -123
- data/lib/active_merchant/billing/integrations/nochex.rb +0 -88
- data/lib/active_merchant/billing/integrations/nochex/helper.rb +0 -68
- data/lib/active_merchant/billing/integrations/nochex/notification.rb +0 -94
- data/lib/active_merchant/billing/integrations/nochex/return.rb +0 -10
- data/lib/active_merchant/billing/integrations/notification.rb +0 -71
- data/lib/active_merchant/billing/integrations/pag_seguro.rb +0 -53
- data/lib/active_merchant/billing/integrations/pag_seguro/helper.rb +0 -121
- data/lib/active_merchant/billing/integrations/pag_seguro/notification.rb +0 -104
- data/lib/active_merchant/billing/integrations/paxum.rb +0 -44
- data/lib/active_merchant/billing/integrations/paxum/common.rb +0 -24
- data/lib/active_merchant/billing/integrations/paxum/helper.rb +0 -42
- data/lib/active_merchant/billing/integrations/paxum/notification.rb +0 -33
- data/lib/active_merchant/billing/integrations/pay_fast.rb +0 -70
- data/lib/active_merchant/billing/integrations/pay_fast/common.rb +0 -42
- data/lib/active_merchant/billing/integrations/pay_fast/helper.rb +0 -50
- data/lib/active_merchant/billing/integrations/pay_fast/notification.rb +0 -134
- data/lib/active_merchant/billing/integrations/pay_fast/return.rb +0 -10
- data/lib/active_merchant/billing/integrations/paydollar.rb +0 -59
- data/lib/active_merchant/billing/integrations/paydollar/helper.rb +0 -41
- data/lib/active_merchant/billing/integrations/paydollar/notification.rb +0 -64
- data/lib/active_merchant/billing/integrations/paydollar/return.rb +0 -15
- data/lib/active_merchant/billing/integrations/payflow_link.rb +0 -21
- data/lib/active_merchant/billing/integrations/payflow_link/helper.rb +0 -116
- data/lib/active_merchant/billing/integrations/payflow_link/notification.rb +0 -78
- data/lib/active_merchant/billing/integrations/paypal.rb +0 -39
- data/lib/active_merchant/billing/integrations/paypal/helper.rb +0 -119
- data/lib/active_merchant/billing/integrations/paypal/notification.rb +0 -227
- data/lib/active_merchant/billing/integrations/paypal/return.rb +0 -10
- data/lib/active_merchant/billing/integrations/paypal_payments_advanced.rb +0 -20
- data/lib/active_merchant/billing/integrations/paypal_payments_advanced/helper.rb +0 -15
- data/lib/active_merchant/billing/integrations/paysbuy.rb +0 -36
- data/lib/active_merchant/billing/integrations/paysbuy/helper.rb +0 -15
- data/lib/active_merchant/billing/integrations/paysbuy/notification.rb +0 -39
- data/lib/active_merchant/billing/integrations/payu_in.rb +0 -36
- data/lib/active_merchant/billing/integrations/payu_in/helper.rb +0 -76
- data/lib/active_merchant/billing/integrations/payu_in/notification.rb +0 -154
- data/lib/active_merchant/billing/integrations/payu_in/return.rb +0 -36
- data/lib/active_merchant/billing/integrations/payu_in_paisa.rb +0 -30
- data/lib/active_merchant/billing/integrations/payu_in_paisa/helper.rb +0 -19
- data/lib/active_merchant/billing/integrations/payu_in_paisa/notification.rb +0 -13
- data/lib/active_merchant/billing/integrations/payu_in_paisa/return.rb +0 -16
- data/lib/active_merchant/billing/integrations/platron.rb +0 -28
- data/lib/active_merchant/billing/integrations/platron/helper.rb +0 -32
- data/lib/active_merchant/billing/integrations/platron/notification.rb +0 -113
- data/lib/active_merchant/billing/integrations/pxpay.rb +0 -31
- data/lib/active_merchant/billing/integrations/pxpay/helper.rb +0 -113
- data/lib/active_merchant/billing/integrations/pxpay/notification.rb +0 -157
- data/lib/active_merchant/billing/integrations/pxpay/return.rb +0 -25
- data/lib/active_merchant/billing/integrations/quickpay.rb +0 -21
- data/lib/active_merchant/billing/integrations/quickpay/helper.rb +0 -96
- data/lib/active_merchant/billing/integrations/quickpay/notification.rb +0 -137
- data/lib/active_merchant/billing/integrations/rbkmoney.rb +0 -17
- data/lib/active_merchant/billing/integrations/rbkmoney/helper.rb +0 -23
- data/lib/active_merchant/billing/integrations/rbkmoney/notification.rb +0 -91
- data/lib/active_merchant/billing/integrations/return.rb +0 -42
- data/lib/active_merchant/billing/integrations/robokassa.rb +0 -49
- data/lib/active_merchant/billing/integrations/robokassa/common.rb +0 -19
- data/lib/active_merchant/billing/integrations/robokassa/helper.rb +0 -50
- data/lib/active_merchant/billing/integrations/robokassa/notification.rb +0 -55
- data/lib/active_merchant/billing/integrations/robokassa/return.rb +0 -17
- data/lib/active_merchant/billing/integrations/sage_pay_form.rb +0 -37
- data/lib/active_merchant/billing/integrations/sage_pay_form/encryption.rb +0 -33
- data/lib/active_merchant/billing/integrations/sage_pay_form/helper.rb +0 -136
- data/lib/active_merchant/billing/integrations/sage_pay_form/notification.rb +0 -210
- data/lib/active_merchant/billing/integrations/sage_pay_form/return.rb +0 -31
- data/lib/active_merchant/billing/integrations/two_checkout.rb +0 -44
- data/lib/active_merchant/billing/integrations/two_checkout/helper.rb +0 -107
- data/lib/active_merchant/billing/integrations/two_checkout/notification.rb +0 -171
- data/lib/active_merchant/billing/integrations/two_checkout/return.rb +0 -58
- data/lib/active_merchant/billing/integrations/universal.rb +0 -23
- data/lib/active_merchant/billing/integrations/universal/helper.rb +0 -76
- data/lib/active_merchant/billing/integrations/universal/notification.rb +0 -52
- data/lib/active_merchant/billing/integrations/universal/return.rb +0 -18
- data/lib/active_merchant/billing/integrations/valitor.rb +0 -33
- data/lib/active_merchant/billing/integrations/valitor/helper.rb +0 -86
- data/lib/active_merchant/billing/integrations/valitor/notification.rb +0 -13
- data/lib/active_merchant/billing/integrations/valitor/response_fields.rb +0 -97
- data/lib/active_merchant/billing/integrations/valitor/return.rb +0 -13
- data/lib/active_merchant/billing/integrations/verkkomaksut.rb +0 -20
- data/lib/active_merchant/billing/integrations/verkkomaksut/helper.rb +0 -88
- data/lib/active_merchant/billing/integrations/verkkomaksut/notification.rb +0 -59
- data/lib/active_merchant/billing/integrations/web_pay.rb +0 -45
- data/lib/active_merchant/billing/integrations/web_pay/common.rb +0 -50
- data/lib/active_merchant/billing/integrations/web_pay/helper.rb +0 -68
- data/lib/active_merchant/billing/integrations/web_pay/notification.rb +0 -51
- data/lib/active_merchant/billing/integrations/webmoney.rb +0 -43
- data/lib/active_merchant/billing/integrations/webmoney/common.rb +0 -17
- data/lib/active_merchant/billing/integrations/webmoney/helper.rb +0 -40
- data/lib/active_merchant/billing/integrations/webmoney/notification.rb +0 -47
- data/lib/active_merchant/billing/integrations/wirecard_checkout_page.rb +0 -39
- data/lib/active_merchant/billing/integrations/wirecard_checkout_page/common.rb +0 -104
- data/lib/active_merchant/billing/integrations/wirecard_checkout_page/helper.rb +0 -145
- data/lib/active_merchant/billing/integrations/wirecard_checkout_page/notification.rb +0 -101
- data/lib/active_merchant/billing/integrations/wirecard_checkout_page/return.rb +0 -35
- data/lib/active_merchant/billing/integrations/world_pay.rb +0 -34
- data/lib/active_merchant/billing/integrations/world_pay/helper.rb +0 -101
- data/lib/active_merchant/billing/integrations/world_pay/notification.rb +0 -160
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
module ActiveMerchant #:nodoc:
|
|
2
|
-
module Billing #:nodoc:
|
|
3
|
-
module Integrations #:nodoc:
|
|
4
|
-
|
|
5
|
-
# Documentation: You will get it after registration steps here:
|
|
6
|
-
# http://reg.webpay.by/registration-form.php
|
|
7
|
-
module WebPay
|
|
8
|
-
autoload :Helper, File.dirname(__FILE__) + '/web_pay/helper.rb'
|
|
9
|
-
autoload :Notification, File.dirname(__FILE__) + '/web_pay/notification.rb'
|
|
10
|
-
autoload :Common, File.dirname(__FILE__) + '/web_pay/common.rb'
|
|
11
|
-
|
|
12
|
-
# Overwrite this if you want to change the WebPay sandbox url
|
|
13
|
-
mattr_accessor :test_url
|
|
14
|
-
self.test_url = 'https://secure.sandbox.webpay.by:8843'
|
|
15
|
-
|
|
16
|
-
# Overwrite this if you want to change the WebPay production url
|
|
17
|
-
mattr_accessor :production_url
|
|
18
|
-
self.production_url = 'https://secure.webpay.by'
|
|
19
|
-
|
|
20
|
-
mattr_accessor :signature_parameter_name
|
|
21
|
-
self.signature_parameter_name = 'wsb_signature'
|
|
22
|
-
|
|
23
|
-
def self.service_url
|
|
24
|
-
mode = ActiveMerchant::Billing::Base.integration_mode
|
|
25
|
-
case mode
|
|
26
|
-
when :production
|
|
27
|
-
self.production_url
|
|
28
|
-
when :test
|
|
29
|
-
self.test_url
|
|
30
|
-
else
|
|
31
|
-
raise StandardError, "Integration mode set to an invalid value: #{mode}"
|
|
32
|
-
end
|
|
33
|
-
end
|
|
34
|
-
|
|
35
|
-
def self.helper(order, account, options = {})
|
|
36
|
-
Helper.new(order, account, options)
|
|
37
|
-
end
|
|
38
|
-
|
|
39
|
-
def self.notification(query_string, options = {})
|
|
40
|
-
Notification.new(query_string, options)
|
|
41
|
-
end
|
|
42
|
-
end
|
|
43
|
-
end
|
|
44
|
-
end
|
|
45
|
-
end
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
module ActiveMerchant #:nodoc:
|
|
2
|
-
module Billing #:nodoc:
|
|
3
|
-
module Integrations #:nodoc:
|
|
4
|
-
module WebPay
|
|
5
|
-
module Common
|
|
6
|
-
def generate_signature(type)
|
|
7
|
-
string = case type
|
|
8
|
-
when :request
|
|
9
|
-
request_signature_string
|
|
10
|
-
when :notify
|
|
11
|
-
notify_signature_string
|
|
12
|
-
end
|
|
13
|
-
if type != :notify && @fields[mappings[:version]] == '2'
|
|
14
|
-
Digest::SHA1.hexdigest(string)
|
|
15
|
-
else
|
|
16
|
-
Digest::MD5.hexdigest(string)
|
|
17
|
-
end
|
|
18
|
-
end
|
|
19
|
-
|
|
20
|
-
def request_signature_string
|
|
21
|
-
[
|
|
22
|
-
@fields[mappings[:seed]],
|
|
23
|
-
@fields[mappings[:account]],
|
|
24
|
-
@fields[mappings[:order]],
|
|
25
|
-
@fields[mappings[:test]],
|
|
26
|
-
@fields[mappings[:currency]],
|
|
27
|
-
@fields[mappings[:amount]],
|
|
28
|
-
secret
|
|
29
|
-
].join
|
|
30
|
-
end
|
|
31
|
-
|
|
32
|
-
def notify_signature_string
|
|
33
|
-
[
|
|
34
|
-
params['batch_timestamp'],
|
|
35
|
-
params['currency_id'],
|
|
36
|
-
params['amount'],
|
|
37
|
-
params['payment_method'],
|
|
38
|
-
params['order_id'],
|
|
39
|
-
params['site_order_id'],
|
|
40
|
-
params['transaction_id'],
|
|
41
|
-
params['payment_type'],
|
|
42
|
-
params['rrn'],
|
|
43
|
-
secret
|
|
44
|
-
].join
|
|
45
|
-
end
|
|
46
|
-
end
|
|
47
|
-
end
|
|
48
|
-
end
|
|
49
|
-
end
|
|
50
|
-
end
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
module ActiveMerchant #:nodoc:
|
|
2
|
-
module Billing #:nodoc:
|
|
3
|
-
module Integrations #:nodoc:
|
|
4
|
-
module WebPay
|
|
5
|
-
class Helper < ActiveMerchant::Billing::Integrations::Helper
|
|
6
|
-
include Common
|
|
7
|
-
|
|
8
|
-
def initialize(order, account, options = {})
|
|
9
|
-
@md5secret = options.delete(:secret)
|
|
10
|
-
@line_item_count = 0
|
|
11
|
-
super
|
|
12
|
-
end
|
|
13
|
-
|
|
14
|
-
def form_fields
|
|
15
|
-
@fields.merge(ActiveMerchant::Billing::Integrations::WebPay.signature_parameter_name => generate_signature(:request))
|
|
16
|
-
end
|
|
17
|
-
|
|
18
|
-
def params
|
|
19
|
-
@fields
|
|
20
|
-
end
|
|
21
|
-
|
|
22
|
-
def secret
|
|
23
|
-
@md5secret
|
|
24
|
-
end
|
|
25
|
-
|
|
26
|
-
def add_line_item(options)
|
|
27
|
-
options.each do |key, value|
|
|
28
|
-
add_field("wsb_invoice_item_#{key}[#{@line_item_count}]", value)
|
|
29
|
-
end
|
|
30
|
-
|
|
31
|
-
@line_item_count += 1
|
|
32
|
-
end
|
|
33
|
-
|
|
34
|
-
def calculate_total
|
|
35
|
-
sum = 0
|
|
36
|
-
|
|
37
|
-
@line_item_count.times do |i|
|
|
38
|
-
sum += @fields["wsb_invoice_item_quantity[#{i}]"].to_i * @fields["wsb_invoice_item_price[#{i}]"].to_i
|
|
39
|
-
end
|
|
40
|
-
|
|
41
|
-
sum + @fields[mappings[:tax]].to_i + @fields[mappings[:shipping_price]].to_i - @fields[mappings[:discount_price]].to_i
|
|
42
|
-
end
|
|
43
|
-
|
|
44
|
-
mapping :scart, '*scart'
|
|
45
|
-
mapping :account, 'wsb_storeid'
|
|
46
|
-
mapping :store, 'wsb_store'
|
|
47
|
-
mapping :order, 'wsb_order_num'
|
|
48
|
-
mapping :currency, 'wsb_currency_id'
|
|
49
|
-
mapping :version, 'wsb_version'
|
|
50
|
-
mapping :language, 'wsb_language_id'
|
|
51
|
-
mapping :seed, 'wsb_seed'
|
|
52
|
-
mapping :success_url, 'wsb_return_url'
|
|
53
|
-
mapping :cancel_url, 'wsb_cancel_return_url'
|
|
54
|
-
mapping :notify_url, 'wsb_notify_url'
|
|
55
|
-
mapping :test, 'wsb_test'
|
|
56
|
-
mapping :tax, 'wsb_tax'
|
|
57
|
-
mapping :shipping_name, 'wsb_shipping_name'
|
|
58
|
-
mapping :shipping_price, 'wsb_shipping_price'
|
|
59
|
-
mapping :discount_name, 'wsb_discount_name'
|
|
60
|
-
mapping :discount_price, 'wsb_discount_price'
|
|
61
|
-
mapping :amount, 'wsb_total'
|
|
62
|
-
mapping :email, 'wsb_email'
|
|
63
|
-
mapping :phone, 'wsb_phone'
|
|
64
|
-
end
|
|
65
|
-
end
|
|
66
|
-
end
|
|
67
|
-
end
|
|
68
|
-
end
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
module ActiveMerchant #:nodoc:
|
|
2
|
-
module Billing #:nodoc:
|
|
3
|
-
module Integrations #:nodoc:
|
|
4
|
-
module WebPay
|
|
5
|
-
class Notification < ActiveMerchant::Billing::Integrations::Notification
|
|
6
|
-
include Common
|
|
7
|
-
|
|
8
|
-
def self.recognizes?(params)
|
|
9
|
-
params.has_key?('site_order_id') && params.has_key?('amount')
|
|
10
|
-
end
|
|
11
|
-
|
|
12
|
-
def complete?
|
|
13
|
-
true
|
|
14
|
-
end
|
|
15
|
-
|
|
16
|
-
def amount
|
|
17
|
-
BigDecimal.new(gross)
|
|
18
|
-
end
|
|
19
|
-
|
|
20
|
-
def item_id
|
|
21
|
-
params['site_order_id']
|
|
22
|
-
end
|
|
23
|
-
|
|
24
|
-
def security_key
|
|
25
|
-
params[ActiveMerchant::Billing::Integrations::WebPay.signature_parameter_name]
|
|
26
|
-
end
|
|
27
|
-
|
|
28
|
-
def gross
|
|
29
|
-
params['amount']
|
|
30
|
-
end
|
|
31
|
-
|
|
32
|
-
def status
|
|
33
|
-
'success'
|
|
34
|
-
end
|
|
35
|
-
|
|
36
|
-
def secret
|
|
37
|
-
@options[:secret]
|
|
38
|
-
end
|
|
39
|
-
|
|
40
|
-
def acknowledge(authcode = nil)
|
|
41
|
-
(security_key == generate_signature(:notify))
|
|
42
|
-
end
|
|
43
|
-
|
|
44
|
-
def success_response(*args)
|
|
45
|
-
{:nothing => true}
|
|
46
|
-
end
|
|
47
|
-
end
|
|
48
|
-
end
|
|
49
|
-
end
|
|
50
|
-
end
|
|
51
|
-
end
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
module ActiveMerchant #:nodoc:
|
|
2
|
-
module Billing #:nodoc:
|
|
3
|
-
module Integrations #:nodoc:
|
|
4
|
-
# Documentation:
|
|
5
|
-
# http://wiki.webmoney.ru/projects/webmoney/wiki/Web_Merchant_Interface
|
|
6
|
-
module Webmoney
|
|
7
|
-
autoload :Helper, File.dirname(__FILE__) + '/webmoney/helper.rb'
|
|
8
|
-
autoload :Notification, File.dirname(__FILE__) + '/webmoney/notification.rb'
|
|
9
|
-
autoload :Return, File.dirname(__FILE__) + '/webmoney/return.rb'
|
|
10
|
-
autoload :Common, File.dirname(__FILE__) + '/webmoney/common.rb'
|
|
11
|
-
|
|
12
|
-
mattr_accessor :test_url
|
|
13
|
-
self.test_url = "https://merchant.webmoney.ru/lmi/payment.asp"
|
|
14
|
-
|
|
15
|
-
mattr_accessor :production_url
|
|
16
|
-
self.production_url = "https://merchant.webmoney.ru/lmi/payment.asp"
|
|
17
|
-
|
|
18
|
-
mattr_accessor :signature_parameter_name
|
|
19
|
-
self.signature_parameter_name = 'LMI_HASH'
|
|
20
|
-
|
|
21
|
-
def self.service_url
|
|
22
|
-
mode = ActiveMerchant::Billing::Base.integration_mode
|
|
23
|
-
case mode
|
|
24
|
-
when :production
|
|
25
|
-
self.production_url
|
|
26
|
-
when :test
|
|
27
|
-
self.test_url
|
|
28
|
-
else
|
|
29
|
-
raise StandardError, "Integration mode set to an invalid value: #{mode}"
|
|
30
|
-
end
|
|
31
|
-
end
|
|
32
|
-
|
|
33
|
-
def self.helper(order, account, options = {})
|
|
34
|
-
Helper.new(order, account, options)
|
|
35
|
-
end
|
|
36
|
-
|
|
37
|
-
def self.notification(query_string, options = {})
|
|
38
|
-
Notification.new(query_string, options)
|
|
39
|
-
end
|
|
40
|
-
end
|
|
41
|
-
end
|
|
42
|
-
end
|
|
43
|
-
end
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
module ActiveMerchant #:nodoc:
|
|
2
|
-
module Billing #:nodoc:
|
|
3
|
-
module Integrations #:nodoc:
|
|
4
|
-
module Webmoney
|
|
5
|
-
module Common
|
|
6
|
-
def generate_signature_string
|
|
7
|
-
"#{params['LMI_PAYEE_PURSE']}#{params['LMI_PAYMENT_AMOUNT']}#{params['LMI_PAYMENT_NO']}#{params['LMI_MODE']}#{params['LMI_SYS_INVS_NO']}#{params['LMI_SYS_TRANS_NO']}#{params['LMI_SYS_TRANS_DATE']}#{secret}#{params['LMI_PAYER_PURSE']}#{params['LMI_PAYER_WM']}"
|
|
8
|
-
end
|
|
9
|
-
|
|
10
|
-
def generate_signature
|
|
11
|
-
Digest::MD5.hexdigest(generate_signature_string).upcase
|
|
12
|
-
end
|
|
13
|
-
end
|
|
14
|
-
end
|
|
15
|
-
end
|
|
16
|
-
end
|
|
17
|
-
end
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
module ActiveMerchant #:nodoc:
|
|
2
|
-
module Billing #:nodoc:
|
|
3
|
-
module Integrations #:nodoc:
|
|
4
|
-
module Webmoney
|
|
5
|
-
class Helper < ActiveMerchant::Billing::Integrations::Helper
|
|
6
|
-
include Common
|
|
7
|
-
|
|
8
|
-
def initialize(order, account, options = {})
|
|
9
|
-
@webmoney_options = options.dup
|
|
10
|
-
options.delete(:description)
|
|
11
|
-
options.delete(:fail_url)
|
|
12
|
-
options.delete(:success_url)
|
|
13
|
-
options.delete(:result_url)
|
|
14
|
-
super
|
|
15
|
-
@webmoney_options.each do |key, value|
|
|
16
|
-
add_field mappings[key], value
|
|
17
|
-
end
|
|
18
|
-
end
|
|
19
|
-
|
|
20
|
-
def form_fields
|
|
21
|
-
@fields
|
|
22
|
-
end
|
|
23
|
-
|
|
24
|
-
def params
|
|
25
|
-
@fields
|
|
26
|
-
end
|
|
27
|
-
|
|
28
|
-
mapping :account, 'LMI_PAYEE_PURSE'
|
|
29
|
-
mapping :amount, 'LMI_PAYMENT_AMOUNT'
|
|
30
|
-
mapping :order, 'LMI_PAYMENT_NO'
|
|
31
|
-
mapping :description, 'LMI_PAYMENT_DESC'
|
|
32
|
-
mapping :fail_url, 'LMI_FAIL_URL'
|
|
33
|
-
mapping :success_url, 'LMI_SUCCESS_URL'
|
|
34
|
-
mapping :result_url, 'LMI_RESULT_URL'
|
|
35
|
-
mapping :debug, 'LMI_SIM_MODE'
|
|
36
|
-
end
|
|
37
|
-
end
|
|
38
|
-
end
|
|
39
|
-
end
|
|
40
|
-
end
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
module ActiveMerchant #:nodoc:
|
|
2
|
-
module Billing #:nodoc:
|
|
3
|
-
module Integrations #:nodoc:
|
|
4
|
-
module Webmoney
|
|
5
|
-
class Notification < ActiveMerchant::Billing::Integrations::Notification
|
|
6
|
-
include Common
|
|
7
|
-
|
|
8
|
-
def recognizes?
|
|
9
|
-
(params.has_key?('LMI_PAYMENT_NO') && params.has_key?('LMI_PAYMENT_AMOUNT'))
|
|
10
|
-
end
|
|
11
|
-
|
|
12
|
-
def amount
|
|
13
|
-
BigDecimal.new(gross)
|
|
14
|
-
end
|
|
15
|
-
|
|
16
|
-
def key_present?
|
|
17
|
-
params["LMI_HASH"].present?
|
|
18
|
-
end
|
|
19
|
-
|
|
20
|
-
def item_id
|
|
21
|
-
params['LMI_PAYMENT_NO']
|
|
22
|
-
end
|
|
23
|
-
|
|
24
|
-
def gross
|
|
25
|
-
params['LMI_PAYMENT_AMOUNT']
|
|
26
|
-
end
|
|
27
|
-
|
|
28
|
-
def security_key
|
|
29
|
-
params["LMI_HASH"]
|
|
30
|
-
end
|
|
31
|
-
|
|
32
|
-
def secret
|
|
33
|
-
@options[:secret]
|
|
34
|
-
end
|
|
35
|
-
|
|
36
|
-
def acknowledge(authcode = nil)
|
|
37
|
-
(security_key == generate_signature)
|
|
38
|
-
end
|
|
39
|
-
|
|
40
|
-
def success_response(*args)
|
|
41
|
-
{:nothing => true}
|
|
42
|
-
end
|
|
43
|
-
end
|
|
44
|
-
end
|
|
45
|
-
end
|
|
46
|
-
end
|
|
47
|
-
end
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
=begin
|
|
2
|
-
* Shop System Plugins - Terms of use
|
|
3
|
-
*
|
|
4
|
-
* This terms of use regulates warranty and liability between Wirecard Central Eastern Europe (subsequently referred to as WDCEE) and it's
|
|
5
|
-
* contractual partners (subsequently referred to as customer or customers) which are related to the use of plugins provided by WDCEE.
|
|
6
|
-
*
|
|
7
|
-
* The Plugin is provided by WDCEE free of charge for it's customers and must be used for the purpose of WDCEE's payment platform
|
|
8
|
-
* integration only. It explicitly is not part of the general contract between WDCEE and it's customer. The plugin has successfully been tested
|
|
9
|
-
* under specific circumstances which are defined as the shopsystem's standard configuration (vendor's delivery state). The Customer is
|
|
10
|
-
* responsible for testing the plugin's functionality before putting it into production environment.
|
|
11
|
-
* The customer uses the plugin at own risk. WDCEE does not guarantee it's full functionality neither does WDCEE assume liability for any
|
|
12
|
-
* disadvantage related to the use of this plugin. By installing the plugin into the shopsystem the customer agrees to the terms of use.
|
|
13
|
-
* Please do not use this plugin if you do not agree to the terms of use!
|
|
14
|
-
=end
|
|
15
|
-
|
|
16
|
-
module ActiveMerchant #:nodoc:
|
|
17
|
-
module Billing #:nodoc:
|
|
18
|
-
module Integrations #:nodoc:
|
|
19
|
-
module WirecardCheckoutPage
|
|
20
|
-
autoload :Common, File.dirname(__FILE__) + '/wirecard_checkout_page/common.rb'
|
|
21
|
-
autoload :Helper, File.dirname(__FILE__) + '/wirecard_checkout_page/helper.rb'
|
|
22
|
-
autoload :Notification, File.dirname(__FILE__) + '/wirecard_checkout_page/notification.rb'
|
|
23
|
-
autoload :Return, File.dirname(__FILE__) + '/wirecard_checkout_page/return.rb'
|
|
24
|
-
|
|
25
|
-
mattr_accessor :service_url
|
|
26
|
-
self.service_url = 'https://checkout.wirecard.com/page/init.php'
|
|
27
|
-
|
|
28
|
-
def self.notification(post, options)
|
|
29
|
-
Notification.new(post, options)
|
|
30
|
-
end
|
|
31
|
-
|
|
32
|
-
def self.return(postdata, options)
|
|
33
|
-
Return.new(postdata, options)
|
|
34
|
-
end
|
|
35
|
-
|
|
36
|
-
end
|
|
37
|
-
end
|
|
38
|
-
end
|
|
39
|
-
end
|
|
@@ -1,104 +0,0 @@
|
|
|
1
|
-
=begin
|
|
2
|
-
* Shop System Plugins - Terms of use
|
|
3
|
-
*
|
|
4
|
-
* This terms of use regulates warranty and liability between Wirecard Central Eastern Europe (subsequently referred to as WDCEE) and it's
|
|
5
|
-
* contractual partners (subsequently referred to as customer or customers) which are related to the use of plugins provided by WDCEE.
|
|
6
|
-
*
|
|
7
|
-
* The Plugin is provided by WDCEE free of charge for it's customers and must be used for the purpose of WDCEE's payment platform
|
|
8
|
-
* integration only. It explicitly is not part of the general contract between WDCEE and it's customer. The plugin has successfully been tested
|
|
9
|
-
* under specific circumstances which are defined as the shopsystem's standard configuration (vendor's delivery state). The Customer is
|
|
10
|
-
* responsible for testing the plugin's functionality before putting it into production enviroment.
|
|
11
|
-
* The customer uses the plugin at own risk. WDCEE does not guarantee it's full functionality neither does WDCEE assume liability for any
|
|
12
|
-
* disadvantage related to the use of this plugin. By installing the plugin into the shopsystem the customer agrees to the terms of use.
|
|
13
|
-
* Please do not use this plugin if you do not agree to the terms of use!
|
|
14
|
-
=end
|
|
15
|
-
|
|
16
|
-
module ActiveMerchant #:nodoc:
|
|
17
|
-
module Billing #:nodoc:
|
|
18
|
-
module Integrations #:nodoc:
|
|
19
|
-
module WirecardCheckoutPage
|
|
20
|
-
module Common
|
|
21
|
-
|
|
22
|
-
mattr_accessor :paymenttypes
|
|
23
|
-
self.paymenttypes = %w(
|
|
24
|
-
SELECT
|
|
25
|
-
CCARD
|
|
26
|
-
BANCONTACT_MISTERCASH
|
|
27
|
-
C2P
|
|
28
|
-
CCARD-MOTO
|
|
29
|
-
EKONTO
|
|
30
|
-
ELV
|
|
31
|
-
EPS
|
|
32
|
-
GIROPAY
|
|
33
|
-
IDL
|
|
34
|
-
INSTALLMENT
|
|
35
|
-
INSTANTBANK
|
|
36
|
-
INVOICE
|
|
37
|
-
MAESTRO
|
|
38
|
-
MONETA
|
|
39
|
-
MPASS
|
|
40
|
-
PRZELEWY24
|
|
41
|
-
PAYPAL
|
|
42
|
-
PBX
|
|
43
|
-
POLI
|
|
44
|
-
PSC
|
|
45
|
-
QUICK
|
|
46
|
-
SKRILLDIRECT
|
|
47
|
-
SKRILLWALLET
|
|
48
|
-
SOFORTUEBERWEISUNG)
|
|
49
|
-
|
|
50
|
-
def message
|
|
51
|
-
@message
|
|
52
|
-
end
|
|
53
|
-
|
|
54
|
-
def verify_response(params, secret)
|
|
55
|
-
|
|
56
|
-
logstr = ''
|
|
57
|
-
params.each { |key, value|
|
|
58
|
-
logstr += "#{key} #{value}\n"
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
@paymentstate = 'FAILURE'
|
|
62
|
-
|
|
63
|
-
unless params.has_key?('paymentState')
|
|
64
|
-
@message = "paymentState is missing"
|
|
65
|
-
return false
|
|
66
|
-
end
|
|
67
|
-
|
|
68
|
-
if params['paymentState'] == 'SUCCESS' || params['paymentState'] == 'PENDING'
|
|
69
|
-
unless params.has_key?('responseFingerprint')
|
|
70
|
-
@message = "responseFingerprint is missing"
|
|
71
|
-
return false
|
|
72
|
-
end
|
|
73
|
-
|
|
74
|
-
unless params.has_key?('responseFingerprintOrder')
|
|
75
|
-
@message = "responseFingerprintOrder is missing"
|
|
76
|
-
return false
|
|
77
|
-
end
|
|
78
|
-
|
|
79
|
-
end
|
|
80
|
-
|
|
81
|
-
if params['paymentState'] == 'SUCCESS' || params['paymentState'] == 'PENDING'
|
|
82
|
-
fields = params['responseFingerprintOrder'].split(",")
|
|
83
|
-
values = ''
|
|
84
|
-
fields.each { |f|
|
|
85
|
-
values += f == 'secret' ? secret : params[f]
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
if Digest::MD5.hexdigest(values) != params['responseFingerprint']
|
|
90
|
-
@message = "responseFingerprint verification failed"
|
|
91
|
-
return false
|
|
92
|
-
end
|
|
93
|
-
end
|
|
94
|
-
|
|
95
|
-
@paymentstate = params['paymentState']
|
|
96
|
-
true
|
|
97
|
-
end
|
|
98
|
-
|
|
99
|
-
end
|
|
100
|
-
|
|
101
|
-
end
|
|
102
|
-
end
|
|
103
|
-
end
|
|
104
|
-
end
|