activemerchant 1.26.0 → 1.27.0
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG +17 -0
- data/CONTRIBUTORS +20 -0
- data/README.md +5 -0
- data/lib/active_merchant/billing/base.rb +2 -2
- data/lib/active_merchant/billing/gateway.rb +6 -0
- data/lib/active_merchant/billing/gateways/authorize_net.rb +1 -1
- data/lib/active_merchant/billing/gateways/authorize_net_cim.rb +0 -3
- data/lib/active_merchant/billing/gateways/balanced.rb +462 -0
- data/lib/active_merchant/billing/gateways/barclays_epdq.rb +3 -3
- data/lib/active_merchant/billing/gateways/beanstream.rb +1 -1
- data/lib/active_merchant/billing/gateways/beanstream/beanstream_core.rb +3 -2
- data/lib/active_merchant/billing/gateways/beanstream_interac.rb +1 -1
- data/lib/active_merchant/billing/gateways/braintree.rb +2 -0
- data/lib/active_merchant/billing/gateways/braintree_blue.rb +11 -1
- data/lib/active_merchant/billing/gateways/braintree_orange.rb +2 -4
- data/lib/active_merchant/billing/gateways/card_stream.rb +2 -2
- data/lib/active_merchant/billing/gateways/certo_direct.rb +2 -3
- data/lib/active_merchant/billing/gateways/cyber_source.rb +3 -3
- data/lib/active_merchant/billing/gateways/data_cash.rb +3 -3
- data/lib/active_merchant/billing/gateways/efsnet.rb +3 -3
- data/lib/active_merchant/billing/gateways/epay.rb +3 -3
- data/lib/active_merchant/billing/gateways/eway.rb +8 -7
- data/lib/active_merchant/billing/gateways/eway_managed.rb +3 -3
- data/lib/active_merchant/billing/gateways/exact.rb +2 -2
- data/lib/active_merchant/billing/gateways/fat_zebra.rb +4 -4
- data/lib/active_merchant/billing/gateways/federated_canada.rb +2 -2
- data/lib/active_merchant/billing/gateways/first_pay.rb +3 -3
- data/lib/active_merchant/billing/gateways/garanti.rb +2 -2
- data/lib/active_merchant/billing/gateways/ideal/ideal_base.rb +3 -1
- data/lib/active_merchant/billing/gateways/inspire.rb +2 -2
- data/lib/active_merchant/billing/gateways/instapay.rb +2 -2
- data/lib/active_merchant/billing/gateways/iridium.rb +4 -5
- data/lib/active_merchant/billing/gateways/itransact.rb +2 -2
- data/lib/active_merchant/billing/gateways/jetpay.rb +3 -3
- data/lib/active_merchant/billing/gateways/linkpoint.rb +3 -6
- data/lib/active_merchant/billing/gateways/litle.rb +50 -34
- data/lib/active_merchant/billing/gateways/merchant_e_solutions.rb +3 -3
- data/lib/active_merchant/billing/gateways/merchant_ware.rb +2 -2
- data/lib/active_merchant/billing/gateways/migs.rb +8 -4
- data/lib/active_merchant/billing/gateways/modern_payments.rb +2 -0
- data/lib/active_merchant/billing/gateways/modern_payments_cim.rb +4 -4
- data/lib/active_merchant/billing/gateways/moneris.rb +3 -3
- data/lib/active_merchant/billing/gateways/moneris_us.rb +3 -3
- data/lib/active_merchant/billing/gateways/nab_transact.rb +8 -6
- data/lib/active_merchant/billing/gateways/net_registry.rb +2 -2
- data/lib/active_merchant/billing/gateways/netaxept.rb +4 -4
- data/lib/active_merchant/billing/gateways/netbilling.rb +2 -2
- data/lib/active_merchant/billing/gateways/ogone.rb +10 -5
- data/lib/active_merchant/billing/gateways/optimal_payment.rb +3 -3
- data/lib/active_merchant/billing/gateways/orbital.rb +4 -4
- data/lib/active_merchant/billing/gateways/pay_gate_xml.rb +2 -2
- data/lib/active_merchant/billing/gateways/pay_secure.rb +2 -2
- data/lib/active_merchant/billing/gateways/paybox_direct.rb +7 -5
- data/lib/active_merchant/billing/gateways/payflow.rb +39 -37
- data/lib/active_merchant/billing/gateways/payflow/payflow_common_api.rb +4 -3
- data/lib/active_merchant/billing/gateways/payment_express.rb +2 -2
- data/lib/active_merchant/billing/gateways/paypal/paypal_common_api.rb +98 -85
- data/lib/active_merchant/billing/gateways/paystation.rb +2 -2
- data/lib/active_merchant/billing/gateways/payway.rb +3 -2
- data/lib/active_merchant/billing/gateways/plugnpay.rb +63 -66
- data/lib/active_merchant/billing/gateways/psigate.rb +3 -3
- data/lib/active_merchant/billing/gateways/psl_card.rb +3 -3
- data/lib/active_merchant/billing/gateways/quantum.rb +2 -2
- data/lib/active_merchant/billing/gateways/quickpay.rb +2 -2
- data/lib/active_merchant/billing/gateways/realex.rb +7 -7
- data/lib/active_merchant/billing/gateways/sage.rb +2 -0
- data/lib/active_merchant/billing/gateways/sage/sage_bankcard.rb +1 -1
- data/lib/active_merchant/billing/gateways/sage/sage_core.rb +2 -3
- data/lib/active_merchant/billing/gateways/sage/sage_virtual_check.rb +1 -1
- data/lib/active_merchant/billing/gateways/sage_pay.rb +8 -6
- data/lib/active_merchant/billing/gateways/sallie_mae.rb +2 -2
- data/lib/active_merchant/billing/gateways/secure_net.rb +4 -4
- data/lib/active_merchant/billing/gateways/secure_pay_au.rb +9 -6
- data/lib/active_merchant/billing/gateways/secure_pay_tech.rb +2 -2
- data/lib/active_merchant/billing/gateways/skip_jack.rb +3 -3
- data/lib/active_merchant/billing/gateways/smart_ps.rb +3 -1
- data/lib/active_merchant/billing/gateways/stripe.rb +2 -2
- data/lib/active_merchant/billing/gateways/trans_first.rb +2 -2
- data/lib/active_merchant/billing/gateways/transax.rb +1 -3
- data/lib/active_merchant/billing/gateways/trust_commerce.rb +3 -3
- data/lib/active_merchant/billing/gateways/usa_epay.rb +2 -0
- data/lib/active_merchant/billing/gateways/usa_epay_advanced.rb +3 -2
- data/lib/active_merchant/billing/gateways/usa_epay_transaction.rb +6 -6
- data/lib/active_merchant/billing/gateways/verifi.rb +2 -2
- data/lib/active_merchant/billing/gateways/wirecard.rb +4 -4
- data/lib/active_merchant/billing/gateways/worldpay.rb +37 -18
- data/lib/active_merchant/billing/integrations/action_view_helper.rb +6 -5
- data/lib/active_merchant/billing/integrations/first_data.rb +38 -0
- data/lib/active_merchant/billing/integrations/first_data/helper.rb +63 -0
- data/lib/active_merchant/billing/integrations/first_data/notification.rb +56 -0
- data/lib/active_merchant/billing/integrations/helper.rb +4 -0
- data/lib/active_merchant/billing/integrations/maksuturva.rb +86 -0
- data/lib/active_merchant/billing/integrations/maksuturva/helper.rb +119 -0
- data/lib/active_merchant/billing/integrations/maksuturva/notification.rb +48 -0
- data/lib/active_merchant/billing/integrations/paxum.rb +44 -0
- data/lib/active_merchant/billing/integrations/paxum/common.rb +24 -0
- data/lib/active_merchant/billing/integrations/paxum/helper.rb +42 -0
- data/lib/active_merchant/billing/integrations/paxum/notification.rb +33 -0
- data/lib/active_merchant/billing/integrations/pxpay.rb +31 -0
- data/lib/active_merchant/billing/integrations/pxpay/helper.rb +110 -0
- data/lib/active_merchant/billing/integrations/pxpay/notification.rb +157 -0
- data/lib/active_merchant/billing/integrations/pxpay/return.rb +25 -0
- data/lib/active_merchant/billing/integrations/web_pay.rb +45 -0
- data/lib/active_merchant/billing/integrations/web_pay/common.rb +50 -0
- data/lib/active_merchant/billing/integrations/web_pay/helper.rb +68 -0
- data/lib/active_merchant/billing/integrations/web_pay/notification.rb +51 -0
- data/lib/active_merchant/version.rb +1 -1
- data/lib/support/gateway_support.rb +9 -2
- data/lib/support/ssl_verify.rb +93 -0
- metadata +45 -71
- data.tar.gz.sig +0 -3
- metadata.gz.sig +0 -0
@@ -0,0 +1,25 @@
|
|
1
|
+
module ActiveMerchant #:nodoc:
|
2
|
+
module Billing #:nodoc:
|
3
|
+
module Integrations #:nodoc:
|
4
|
+
module Pxpay
|
5
|
+
class Return < ActiveMerchant::Billing::Integrations::Return
|
6
|
+
def initialize(query_string, options={})
|
7
|
+
@notification = Notification.new(query_string, options)
|
8
|
+
end
|
9
|
+
|
10
|
+
def success?
|
11
|
+
@notification && @notification.complete?
|
12
|
+
end
|
13
|
+
|
14
|
+
def cancelled?
|
15
|
+
@notification && @notification.cancelled?
|
16
|
+
end
|
17
|
+
|
18
|
+
def message
|
19
|
+
@notification.message
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
@@ -0,0 +1,45 @@
|
|
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
|
@@ -0,0 +1,50 @@
|
|
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
|
@@ -0,0 +1,68 @@
|
|
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
|
@@ -0,0 +1,51 @@
|
|
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
|
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
|
@@ -11,6 +11,15 @@ class GatewaySupport #:nodoc:
|
|
11
11
|
attr_reader :gateways
|
12
12
|
|
13
13
|
def initialize
|
14
|
+
Dir[File.expand_path(File.dirname(__FILE__) + '/../active_merchant/billing/gateways/*.rb')].each do |f|
|
15
|
+
filename = File.basename(f, '.rb')
|
16
|
+
gateway_name = filename + '_gateway'
|
17
|
+
begin
|
18
|
+
gateway_class = ('ActiveMerchant::Billing::' + gateway_name.camelize).constantize
|
19
|
+
rescue NameError
|
20
|
+
puts "Could not load gateway " + gateway_name.camelize + " from " + f + "."
|
21
|
+
end
|
22
|
+
end
|
14
23
|
@gateways = Gateway.implementations.sort_by(&:name)
|
15
24
|
@gateways.delete(ActiveMerchant::Billing::BogusGateway)
|
16
25
|
end
|
@@ -54,5 +63,3 @@ class GatewaySupport #:nodoc:
|
|
54
63
|
end
|
55
64
|
end
|
56
65
|
|
57
|
-
|
58
|
-
|
@@ -0,0 +1,93 @@
|
|
1
|
+
require 'active_merchant'
|
2
|
+
require 'support/gateway_support'
|
3
|
+
|
4
|
+
class SSLVerify
|
5
|
+
|
6
|
+
def initialize
|
7
|
+
@gateways = GatewaySupport.new.gateways
|
8
|
+
end
|
9
|
+
|
10
|
+
def test_gateways
|
11
|
+
success, failed, missing, errored, disabled = [], [], [], [], []
|
12
|
+
|
13
|
+
puts "Verifying #{@gateways.count} SSL certificates\n\n"
|
14
|
+
|
15
|
+
@gateways.each do |g|
|
16
|
+
if !g.live_url
|
17
|
+
missing << g unless g.abstract_class
|
18
|
+
next
|
19
|
+
end
|
20
|
+
|
21
|
+
if !g.ssl_strict
|
22
|
+
disabled << g
|
23
|
+
end
|
24
|
+
|
25
|
+
uri = URI.parse(g.live_url)
|
26
|
+
result,message = ssl_verify_peer?(uri)
|
27
|
+
case result
|
28
|
+
when :success
|
29
|
+
print "."
|
30
|
+
success << g
|
31
|
+
when :fail
|
32
|
+
print "F"
|
33
|
+
failed << {:gateway => g, :message => message}
|
34
|
+
when :error
|
35
|
+
print "E"
|
36
|
+
errored << {:gateway => g, :message => message}
|
37
|
+
end
|
38
|
+
end
|
39
|
+
|
40
|
+
puts "\n\n\nFailed Gateways:"
|
41
|
+
failed.each do |f|
|
42
|
+
puts "#{f[:gateway].name} - #{f[:message]}"
|
43
|
+
end
|
44
|
+
|
45
|
+
puts "\n\nError Gateways:"
|
46
|
+
errored.each do |e|
|
47
|
+
puts "#{e[:gateway].name} - #{e[:message]}"
|
48
|
+
end
|
49
|
+
|
50
|
+
if missing.size > 0
|
51
|
+
puts "\n\nGateways missing live_url:"
|
52
|
+
missing.each do |m|
|
53
|
+
puts m.name
|
54
|
+
end
|
55
|
+
end
|
56
|
+
|
57
|
+
if disabled.size > 0
|
58
|
+
puts "\n\nGateways with ssl_strict=false:"
|
59
|
+
disabled.each do |d|
|
60
|
+
puts d.name
|
61
|
+
end
|
62
|
+
end
|
63
|
+
|
64
|
+
end
|
65
|
+
|
66
|
+
def try_host(http, path)
|
67
|
+
http.get(path)
|
68
|
+
rescue Net::HTTPBadResponse, EOFError, SocketError
|
69
|
+
http.post(path, "")
|
70
|
+
end
|
71
|
+
|
72
|
+
def ssl_verify_peer?(uri)
|
73
|
+
http = Net::HTTP.new(uri.host, uri.port)
|
74
|
+
http.use_ssl = true
|
75
|
+
http.ca_file = File.dirname(__FILE__) + '/certs/cacert.pem'
|
76
|
+
http.verify_mode = OpenSSL::SSL::VERIFY_PEER
|
77
|
+
http.open_timeout = 60
|
78
|
+
http.read_timeout = 60
|
79
|
+
|
80
|
+
if uri.path.blank?
|
81
|
+
try_host(http, "/")
|
82
|
+
else
|
83
|
+
try_host(http, uri.path)
|
84
|
+
end
|
85
|
+
|
86
|
+
return :success
|
87
|
+
rescue OpenSSL::SSL::SSLError => ex
|
88
|
+
return :fail, ex.inspect
|
89
|
+
rescue Net::HTTPBadResponse, Errno::ETIMEDOUT, EOFError, SocketError, Errno::ECONNREFUSED, Timeout::Error => ex
|
90
|
+
return :error, ex.inspect
|
91
|
+
end
|
92
|
+
|
93
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: activemerchant
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.27.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,52 +9,12 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain:
|
12
|
-
-
|
13
|
-
|
14
|
-
MIIDNjCCAh6gAwIBAgIBADANBgkqhkiG9w0BAQUFADBBMRMwEQYDVQQDDApjb2R5
|
15
|
-
|
16
|
-
ZmF1c2VyMRUwEwYKCZImiZPyLGQBGRYFZ21haWwxEzARBgoJkiaJk/IsZAEZFgNj
|
17
|
-
|
18
|
-
b20wHhcNMDcwMjIyMTcyMTI3WhcNMDgwMjIyMTcyMTI3WjBBMRMwEQYDVQQDDApj
|
19
|
-
|
20
|
-
b2R5ZmF1c2VyMRUwEwYKCZImiZPyLGQBGRYFZ21haWwxEzARBgoJkiaJk/IsZAEZ
|
21
|
-
|
22
|
-
FgNjb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC6T4Iqt5iWvAlU
|
23
|
-
|
24
|
-
iXI6L8UO0URQhIC65X/gJ9hL/x4lwSl/ckVm/R/bPrJGmifT+YooFv824N3y/TIX
|
25
|
-
|
26
|
-
25o/lZtRj1TUZJK4OCb0aVzosQVxBHSe6rLmxO8cItNTMOM9wn3thaITFrTa1DOQ
|
27
|
-
|
28
|
-
O3wqEjvW2L6VMozVfK1MfjL9IGgy0rCnl+2g4Gh4jDDpkLfnMG5CWI6cTCf3C1ye
|
29
|
-
|
30
|
-
ytOpWgi0XpOEy8nQWcFmt/KCQ/kFfzBo4QxqJi54b80842EyvzWT9OB7Oew/CXZG
|
31
|
-
|
32
|
-
F2yIHtiYxonz6N09vvSzq4CvEuisoUFLKZnktndxMEBKwJU3XeSHAbuS7ix40OKO
|
33
|
-
|
34
|
-
WKuI54fHAgMBAAGjOTA3MAkGA1UdEwQCMAAwCwYDVR0PBAQDAgSwMB0GA1UdDgQW
|
35
|
-
|
36
|
-
BBR9QQpefI3oDCAxiqJW/3Gg6jI6qjANBgkqhkiG9w0BAQUFAAOCAQEAs0lX26O+
|
37
|
-
|
38
|
-
HpyMp7WL+SgZuM8k76AjfOHuKajl2GEn3S8pWYGpsa0xu07HtehJhKLiavrfUYeE
|
39
|
-
|
40
|
-
qlFtyYMUyOh6/1S2vfkH6VqjX7mWjoi7XKHW/99fkMS40B5SbN+ypAUst+6c5R84
|
41
|
-
|
42
|
-
w390mjtLHpdDE6WQYhS6bFvBN53vK6jG3DLyCJc0K9uMQ7gdHWoxq7RnG92ncQpT
|
43
|
-
|
44
|
-
ThpRA+fky5Xt2Q63YJDnJpkYAz79QIama1enSnd4jslKzSl89JS2luq/zioPe/Us
|
45
|
-
|
46
|
-
hbyalWR1+HrhgPoSPq7nk+s2FQUBJ9UZFK1lgMzho/4fZgzJwbu+cO8SNuaLS/bj
|
47
|
-
|
48
|
-
hPaSTyVU0yCSnw==
|
49
|
-
|
50
|
-
-----END CERTIFICATE-----
|
51
|
-
|
52
|
-
'
|
53
|
-
date: 2012-07-06 00:00:00.000000000 Z
|
12
|
+
- gem-public_cert.pem
|
13
|
+
date: 2012-08-10 00:00:00.000000000 Z
|
54
14
|
dependencies:
|
55
15
|
- !ruby/object:Gem::Dependency
|
56
16
|
name: activesupport
|
57
|
-
requirement: &
|
17
|
+
requirement: &70278479544420 !ruby/object:Gem::Requirement
|
58
18
|
none: false
|
59
19
|
requirements:
|
60
20
|
- - ! '>='
|
@@ -62,10 +22,10 @@ dependencies:
|
|
62
22
|
version: 2.3.11
|
63
23
|
type: :runtime
|
64
24
|
prerelease: false
|
65
|
-
version_requirements: *
|
25
|
+
version_requirements: *70278479544420
|
66
26
|
- !ruby/object:Gem::Dependency
|
67
27
|
name: i18n
|
68
|
-
requirement: &
|
28
|
+
requirement: &70278479593100 !ruby/object:Gem::Requirement
|
69
29
|
none: false
|
70
30
|
requirements:
|
71
31
|
- - ! '>='
|
@@ -73,10 +33,10 @@ dependencies:
|
|
73
33
|
version: '0'
|
74
34
|
type: :runtime
|
75
35
|
prerelease: false
|
76
|
-
version_requirements: *
|
36
|
+
version_requirements: *70278479593100
|
77
37
|
- !ruby/object:Gem::Dependency
|
78
38
|
name: money
|
79
|
-
requirement: &
|
39
|
+
requirement: &70278479592640 !ruby/object:Gem::Requirement
|
80
40
|
none: false
|
81
41
|
requirements:
|
82
42
|
- - ! '>='
|
@@ -84,10 +44,10 @@ dependencies:
|
|
84
44
|
version: '0'
|
85
45
|
type: :runtime
|
86
46
|
prerelease: false
|
87
|
-
version_requirements: *
|
47
|
+
version_requirements: *70278479592640
|
88
48
|
- !ruby/object:Gem::Dependency
|
89
49
|
name: builder
|
90
|
-
requirement: &
|
50
|
+
requirement: &70278479592140 !ruby/object:Gem::Requirement
|
91
51
|
none: false
|
92
52
|
requirements:
|
93
53
|
- - ! '>='
|
@@ -95,10 +55,10 @@ dependencies:
|
|
95
55
|
version: 2.0.0
|
96
56
|
type: :runtime
|
97
57
|
prerelease: false
|
98
|
-
version_requirements: *
|
58
|
+
version_requirements: *70278479592140
|
99
59
|
- !ruby/object:Gem::Dependency
|
100
60
|
name: json
|
101
|
-
requirement: &
|
61
|
+
requirement: &70278479591640 !ruby/object:Gem::Requirement
|
102
62
|
none: false
|
103
63
|
requirements:
|
104
64
|
- - ! '>='
|
@@ -106,10 +66,10 @@ dependencies:
|
|
106
66
|
version: 1.5.1
|
107
67
|
type: :runtime
|
108
68
|
prerelease: false
|
109
|
-
version_requirements: *
|
69
|
+
version_requirements: *70278479591640
|
110
70
|
- !ruby/object:Gem::Dependency
|
111
71
|
name: active_utils
|
112
|
-
requirement: &
|
72
|
+
requirement: &70278479591180 !ruby/object:Gem::Requirement
|
113
73
|
none: false
|
114
74
|
requirements:
|
115
75
|
- - ! '>='
|
@@ -117,10 +77,10 @@ dependencies:
|
|
117
77
|
version: 1.0.2
|
118
78
|
type: :runtime
|
119
79
|
prerelease: false
|
120
|
-
version_requirements: *
|
80
|
+
version_requirements: *70278479591180
|
121
81
|
- !ruby/object:Gem::Dependency
|
122
82
|
name: nokogiri
|
123
|
-
requirement: &
|
83
|
+
requirement: &70278479590800 !ruby/object:Gem::Requirement
|
124
84
|
none: false
|
125
85
|
requirements:
|
126
86
|
- - ! '>='
|
@@ -128,10 +88,10 @@ dependencies:
|
|
128
88
|
version: '0'
|
129
89
|
type: :runtime
|
130
90
|
prerelease: false
|
131
|
-
version_requirements: *
|
91
|
+
version_requirements: *70278479590800
|
132
92
|
- !ruby/object:Gem::Dependency
|
133
93
|
name: rake
|
134
|
-
requirement: &
|
94
|
+
requirement: &70278479590340 !ruby/object:Gem::Requirement
|
135
95
|
none: false
|
136
96
|
requirements:
|
137
97
|
- - ! '>='
|
@@ -139,10 +99,10 @@ dependencies:
|
|
139
99
|
version: '0'
|
140
100
|
type: :development
|
141
101
|
prerelease: false
|
142
|
-
version_requirements: *
|
102
|
+
version_requirements: *70278479590340
|
143
103
|
- !ruby/object:Gem::Dependency
|
144
104
|
name: mocha
|
145
|
-
requirement: &
|
105
|
+
requirement: &70278479589840 !ruby/object:Gem::Requirement
|
146
106
|
none: false
|
147
107
|
requirements:
|
148
108
|
- - ~>
|
@@ -150,10 +110,10 @@ dependencies:
|
|
150
110
|
version: 0.11.3
|
151
111
|
type: :development
|
152
112
|
prerelease: false
|
153
|
-
version_requirements: *
|
113
|
+
version_requirements: *70278479589840
|
154
114
|
- !ruby/object:Gem::Dependency
|
155
115
|
name: rails
|
156
|
-
requirement: &
|
116
|
+
requirement: &70278479589340 !ruby/object:Gem::Requirement
|
157
117
|
none: false
|
158
118
|
requirements:
|
159
119
|
- - ! '>='
|
@@ -161,10 +121,10 @@ dependencies:
|
|
161
121
|
version: 2.3.11
|
162
122
|
type: :development
|
163
123
|
prerelease: false
|
164
|
-
version_requirements: *
|
124
|
+
version_requirements: *70278479589340
|
165
125
|
- !ruby/object:Gem::Dependency
|
166
126
|
name: rubigen
|
167
|
-
requirement: &
|
127
|
+
requirement: &70278479588960 !ruby/object:Gem::Requirement
|
168
128
|
none: false
|
169
129
|
requirements:
|
170
130
|
- - ! '>='
|
@@ -172,7 +132,7 @@ dependencies:
|
|
172
132
|
version: '0'
|
173
133
|
type: :development
|
174
134
|
prerelease: false
|
175
|
-
version_requirements: *
|
135
|
+
version_requirements: *70278479588960
|
176
136
|
description: Active Merchant is a simple payment abstraction library used in and sponsored
|
177
137
|
by Shopify. It is written by Tobias Luetke, Cody Fauser, and contributors. The aim
|
178
138
|
of the project is to feel natural to Ruby users and to abstract as many parts as
|
@@ -199,6 +159,7 @@ files:
|
|
199
159
|
- lib/active_merchant/billing/gateway.rb
|
200
160
|
- lib/active_merchant/billing/gateways/authorize_net.rb
|
201
161
|
- lib/active_merchant/billing/gateways/authorize_net_cim.rb
|
162
|
+
- lib/active_merchant/billing/gateways/balanced.rb
|
202
163
|
- lib/active_merchant/billing/gateways/barclays_epdq.rb
|
203
164
|
- lib/active_merchant/billing/gateways/beanstream/beanstream_core.rb
|
204
165
|
- lib/active_merchant/billing/gateways/beanstream.rb
|
@@ -347,6 +308,9 @@ files:
|
|
347
308
|
- lib/active_merchant/billing/integrations/epay/helper.rb
|
348
309
|
- lib/active_merchant/billing/integrations/epay/notification.rb
|
349
310
|
- lib/active_merchant/billing/integrations/epay.rb
|
311
|
+
- lib/active_merchant/billing/integrations/first_data/helper.rb
|
312
|
+
- lib/active_merchant/billing/integrations/first_data/notification.rb
|
313
|
+
- lib/active_merchant/billing/integrations/first_data.rb
|
350
314
|
- lib/active_merchant/billing/integrations/gestpay/common.rb
|
351
315
|
- lib/active_merchant/billing/integrations/gestpay/helper.rb
|
352
316
|
- lib/active_merchant/billing/integrations/gestpay/notification.rb
|
@@ -357,6 +321,9 @@ files:
|
|
357
321
|
- lib/active_merchant/billing/integrations/hi_trust/notification.rb
|
358
322
|
- lib/active_merchant/billing/integrations/hi_trust/return.rb
|
359
323
|
- lib/active_merchant/billing/integrations/hi_trust.rb
|
324
|
+
- lib/active_merchant/billing/integrations/maksuturva/helper.rb
|
325
|
+
- lib/active_merchant/billing/integrations/maksuturva/notification.rb
|
326
|
+
- lib/active_merchant/billing/integrations/maksuturva.rb
|
360
327
|
- lib/active_merchant/billing/integrations/moneybookers/helper.rb
|
361
328
|
- lib/active_merchant/billing/integrations/moneybookers/notification.rb
|
362
329
|
- lib/active_merchant/billing/integrations/moneybookers.rb
|
@@ -365,6 +332,10 @@ files:
|
|
365
332
|
- lib/active_merchant/billing/integrations/nochex/return.rb
|
366
333
|
- lib/active_merchant/billing/integrations/nochex.rb
|
367
334
|
- lib/active_merchant/billing/integrations/notification.rb
|
335
|
+
- lib/active_merchant/billing/integrations/paxum/common.rb
|
336
|
+
- lib/active_merchant/billing/integrations/paxum/helper.rb
|
337
|
+
- lib/active_merchant/billing/integrations/paxum/notification.rb
|
338
|
+
- lib/active_merchant/billing/integrations/paxum.rb
|
368
339
|
- lib/active_merchant/billing/integrations/payflow_link/helper.rb
|
369
340
|
- lib/active_merchant/billing/integrations/payflow_link/notification.rb
|
370
341
|
- lib/active_merchant/billing/integrations/payflow_link.rb
|
@@ -374,6 +345,10 @@ files:
|
|
374
345
|
- lib/active_merchant/billing/integrations/paypal.rb
|
375
346
|
- lib/active_merchant/billing/integrations/paypal_payments_advanced/helper.rb
|
376
347
|
- lib/active_merchant/billing/integrations/paypal_payments_advanced.rb
|
348
|
+
- lib/active_merchant/billing/integrations/pxpay/helper.rb
|
349
|
+
- lib/active_merchant/billing/integrations/pxpay/notification.rb
|
350
|
+
- lib/active_merchant/billing/integrations/pxpay/return.rb
|
351
|
+
- lib/active_merchant/billing/integrations/pxpay.rb
|
377
352
|
- lib/active_merchant/billing/integrations/quickpay/helper.rb
|
378
353
|
- lib/active_merchant/billing/integrations/quickpay/notification.rb
|
379
354
|
- lib/active_merchant/billing/integrations/quickpay.rb
|
@@ -400,6 +375,10 @@ files:
|
|
400
375
|
- lib/active_merchant/billing/integrations/verkkomaksut/helper.rb
|
401
376
|
- lib/active_merchant/billing/integrations/verkkomaksut/notification.rb
|
402
377
|
- lib/active_merchant/billing/integrations/verkkomaksut.rb
|
378
|
+
- lib/active_merchant/billing/integrations/web_pay/common.rb
|
379
|
+
- lib/active_merchant/billing/integrations/web_pay/helper.rb
|
380
|
+
- lib/active_merchant/billing/integrations/web_pay/notification.rb
|
381
|
+
- lib/active_merchant/billing/integrations/web_pay.rb
|
403
382
|
- lib/active_merchant/billing/integrations/world_pay/helper.rb
|
404
383
|
- lib/active_merchant/billing/integrations/world_pay/notification.rb
|
405
384
|
- lib/active_merchant/billing/integrations/world_pay.rb
|
@@ -411,6 +390,7 @@ files:
|
|
411
390
|
- lib/activemerchant.rb
|
412
391
|
- lib/support/gateway_support.rb
|
413
392
|
- lib/support/outbound_hosts.rb
|
393
|
+
- lib/support/ssl_verify.rb
|
414
394
|
homepage: http://activemerchant.org/
|
415
395
|
licenses: []
|
416
396
|
post_install_message:
|
@@ -423,18 +403,12 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
423
403
|
- - ! '>='
|
424
404
|
- !ruby/object:Gem::Version
|
425
405
|
version: '0'
|
426
|
-
segments:
|
427
|
-
- 0
|
428
|
-
hash: -327085391244042374
|
429
406
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
430
407
|
none: false
|
431
408
|
requirements:
|
432
409
|
- - ! '>='
|
433
410
|
- !ruby/object:Gem::Version
|
434
411
|
version: '0'
|
435
|
-
segments:
|
436
|
-
- 0
|
437
|
-
hash: -327085391244042374
|
438
412
|
requirements: []
|
439
413
|
rubyforge_project: activemerchant
|
440
414
|
rubygems_version: 1.8.11
|