activemerchant 1.26.0 → 1.27.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (112) hide show
  1. data/CHANGELOG +17 -0
  2. data/CONTRIBUTORS +20 -0
  3. data/README.md +5 -0
  4. data/lib/active_merchant/billing/base.rb +2 -2
  5. data/lib/active_merchant/billing/gateway.rb +6 -0
  6. data/lib/active_merchant/billing/gateways/authorize_net.rb +1 -1
  7. data/lib/active_merchant/billing/gateways/authorize_net_cim.rb +0 -3
  8. data/lib/active_merchant/billing/gateways/balanced.rb +462 -0
  9. data/lib/active_merchant/billing/gateways/barclays_epdq.rb +3 -3
  10. data/lib/active_merchant/billing/gateways/beanstream.rb +1 -1
  11. data/lib/active_merchant/billing/gateways/beanstream/beanstream_core.rb +3 -2
  12. data/lib/active_merchant/billing/gateways/beanstream_interac.rb +1 -1
  13. data/lib/active_merchant/billing/gateways/braintree.rb +2 -0
  14. data/lib/active_merchant/billing/gateways/braintree_blue.rb +11 -1
  15. data/lib/active_merchant/billing/gateways/braintree_orange.rb +2 -4
  16. data/lib/active_merchant/billing/gateways/card_stream.rb +2 -2
  17. data/lib/active_merchant/billing/gateways/certo_direct.rb +2 -3
  18. data/lib/active_merchant/billing/gateways/cyber_source.rb +3 -3
  19. data/lib/active_merchant/billing/gateways/data_cash.rb +3 -3
  20. data/lib/active_merchant/billing/gateways/efsnet.rb +3 -3
  21. data/lib/active_merchant/billing/gateways/epay.rb +3 -3
  22. data/lib/active_merchant/billing/gateways/eway.rb +8 -7
  23. data/lib/active_merchant/billing/gateways/eway_managed.rb +3 -3
  24. data/lib/active_merchant/billing/gateways/exact.rb +2 -2
  25. data/lib/active_merchant/billing/gateways/fat_zebra.rb +4 -4
  26. data/lib/active_merchant/billing/gateways/federated_canada.rb +2 -2
  27. data/lib/active_merchant/billing/gateways/first_pay.rb +3 -3
  28. data/lib/active_merchant/billing/gateways/garanti.rb +2 -2
  29. data/lib/active_merchant/billing/gateways/ideal/ideal_base.rb +3 -1
  30. data/lib/active_merchant/billing/gateways/inspire.rb +2 -2
  31. data/lib/active_merchant/billing/gateways/instapay.rb +2 -2
  32. data/lib/active_merchant/billing/gateways/iridium.rb +4 -5
  33. data/lib/active_merchant/billing/gateways/itransact.rb +2 -2
  34. data/lib/active_merchant/billing/gateways/jetpay.rb +3 -3
  35. data/lib/active_merchant/billing/gateways/linkpoint.rb +3 -6
  36. data/lib/active_merchant/billing/gateways/litle.rb +50 -34
  37. data/lib/active_merchant/billing/gateways/merchant_e_solutions.rb +3 -3
  38. data/lib/active_merchant/billing/gateways/merchant_ware.rb +2 -2
  39. data/lib/active_merchant/billing/gateways/migs.rb +8 -4
  40. data/lib/active_merchant/billing/gateways/modern_payments.rb +2 -0
  41. data/lib/active_merchant/billing/gateways/modern_payments_cim.rb +4 -4
  42. data/lib/active_merchant/billing/gateways/moneris.rb +3 -3
  43. data/lib/active_merchant/billing/gateways/moneris_us.rb +3 -3
  44. data/lib/active_merchant/billing/gateways/nab_transact.rb +8 -6
  45. data/lib/active_merchant/billing/gateways/net_registry.rb +2 -2
  46. data/lib/active_merchant/billing/gateways/netaxept.rb +4 -4
  47. data/lib/active_merchant/billing/gateways/netbilling.rb +2 -2
  48. data/lib/active_merchant/billing/gateways/ogone.rb +10 -5
  49. data/lib/active_merchant/billing/gateways/optimal_payment.rb +3 -3
  50. data/lib/active_merchant/billing/gateways/orbital.rb +4 -4
  51. data/lib/active_merchant/billing/gateways/pay_gate_xml.rb +2 -2
  52. data/lib/active_merchant/billing/gateways/pay_secure.rb +2 -2
  53. data/lib/active_merchant/billing/gateways/paybox_direct.rb +7 -5
  54. data/lib/active_merchant/billing/gateways/payflow.rb +39 -37
  55. data/lib/active_merchant/billing/gateways/payflow/payflow_common_api.rb +4 -3
  56. data/lib/active_merchant/billing/gateways/payment_express.rb +2 -2
  57. data/lib/active_merchant/billing/gateways/paypal/paypal_common_api.rb +98 -85
  58. data/lib/active_merchant/billing/gateways/paystation.rb +2 -2
  59. data/lib/active_merchant/billing/gateways/payway.rb +3 -2
  60. data/lib/active_merchant/billing/gateways/plugnpay.rb +63 -66
  61. data/lib/active_merchant/billing/gateways/psigate.rb +3 -3
  62. data/lib/active_merchant/billing/gateways/psl_card.rb +3 -3
  63. data/lib/active_merchant/billing/gateways/quantum.rb +2 -2
  64. data/lib/active_merchant/billing/gateways/quickpay.rb +2 -2
  65. data/lib/active_merchant/billing/gateways/realex.rb +7 -7
  66. data/lib/active_merchant/billing/gateways/sage.rb +2 -0
  67. data/lib/active_merchant/billing/gateways/sage/sage_bankcard.rb +1 -1
  68. data/lib/active_merchant/billing/gateways/sage/sage_core.rb +2 -3
  69. data/lib/active_merchant/billing/gateways/sage/sage_virtual_check.rb +1 -1
  70. data/lib/active_merchant/billing/gateways/sage_pay.rb +8 -6
  71. data/lib/active_merchant/billing/gateways/sallie_mae.rb +2 -2
  72. data/lib/active_merchant/billing/gateways/secure_net.rb +4 -4
  73. data/lib/active_merchant/billing/gateways/secure_pay_au.rb +9 -6
  74. data/lib/active_merchant/billing/gateways/secure_pay_tech.rb +2 -2
  75. data/lib/active_merchant/billing/gateways/skip_jack.rb +3 -3
  76. data/lib/active_merchant/billing/gateways/smart_ps.rb +3 -1
  77. data/lib/active_merchant/billing/gateways/stripe.rb +2 -2
  78. data/lib/active_merchant/billing/gateways/trans_first.rb +2 -2
  79. data/lib/active_merchant/billing/gateways/transax.rb +1 -3
  80. data/lib/active_merchant/billing/gateways/trust_commerce.rb +3 -3
  81. data/lib/active_merchant/billing/gateways/usa_epay.rb +2 -0
  82. data/lib/active_merchant/billing/gateways/usa_epay_advanced.rb +3 -2
  83. data/lib/active_merchant/billing/gateways/usa_epay_transaction.rb +6 -6
  84. data/lib/active_merchant/billing/gateways/verifi.rb +2 -2
  85. data/lib/active_merchant/billing/gateways/wirecard.rb +4 -4
  86. data/lib/active_merchant/billing/gateways/worldpay.rb +37 -18
  87. data/lib/active_merchant/billing/integrations/action_view_helper.rb +6 -5
  88. data/lib/active_merchant/billing/integrations/first_data.rb +38 -0
  89. data/lib/active_merchant/billing/integrations/first_data/helper.rb +63 -0
  90. data/lib/active_merchant/billing/integrations/first_data/notification.rb +56 -0
  91. data/lib/active_merchant/billing/integrations/helper.rb +4 -0
  92. data/lib/active_merchant/billing/integrations/maksuturva.rb +86 -0
  93. data/lib/active_merchant/billing/integrations/maksuturva/helper.rb +119 -0
  94. data/lib/active_merchant/billing/integrations/maksuturva/notification.rb +48 -0
  95. data/lib/active_merchant/billing/integrations/paxum.rb +44 -0
  96. data/lib/active_merchant/billing/integrations/paxum/common.rb +24 -0
  97. data/lib/active_merchant/billing/integrations/paxum/helper.rb +42 -0
  98. data/lib/active_merchant/billing/integrations/paxum/notification.rb +33 -0
  99. data/lib/active_merchant/billing/integrations/pxpay.rb +31 -0
  100. data/lib/active_merchant/billing/integrations/pxpay/helper.rb +110 -0
  101. data/lib/active_merchant/billing/integrations/pxpay/notification.rb +157 -0
  102. data/lib/active_merchant/billing/integrations/pxpay/return.rb +25 -0
  103. data/lib/active_merchant/billing/integrations/web_pay.rb +45 -0
  104. data/lib/active_merchant/billing/integrations/web_pay/common.rb +50 -0
  105. data/lib/active_merchant/billing/integrations/web_pay/helper.rb +68 -0
  106. data/lib/active_merchant/billing/integrations/web_pay/notification.rb +51 -0
  107. data/lib/active_merchant/version.rb +1 -1
  108. data/lib/support/gateway_support.rb +9 -2
  109. data/lib/support/ssl_verify.rb +93 -0
  110. metadata +45 -71
  111. data.tar.gz.sig +0 -3
  112. 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
@@ -1,3 +1,3 @@
1
1
  module ActiveMerchant
2
- VERSION = "1.26.0"
2
+ VERSION = "1.27.0"
3
3
  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.26.0
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
- - ! '-----BEGIN CERTIFICATE-----
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: &70187310316020 !ruby/object:Gem::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: *70187310316020
25
+ version_requirements: *70278479544420
66
26
  - !ruby/object:Gem::Dependency
67
27
  name: i18n
68
- requirement: &70187310315600 !ruby/object:Gem::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: *70187310315600
36
+ version_requirements: *70278479593100
77
37
  - !ruby/object:Gem::Dependency
78
38
  name: money
79
- requirement: &70187310315080 !ruby/object:Gem::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: *70187310315080
47
+ version_requirements: *70278479592640
88
48
  - !ruby/object:Gem::Dependency
89
49
  name: builder
90
- requirement: &70187310314540 !ruby/object:Gem::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: *70187310314540
58
+ version_requirements: *70278479592140
99
59
  - !ruby/object:Gem::Dependency
100
60
  name: json
101
- requirement: &70187310314040 !ruby/object:Gem::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: *70187310314040
69
+ version_requirements: *70278479591640
110
70
  - !ruby/object:Gem::Dependency
111
71
  name: active_utils
112
- requirement: &70187310313420 !ruby/object:Gem::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: *70187310313420
80
+ version_requirements: *70278479591180
121
81
  - !ruby/object:Gem::Dependency
122
82
  name: nokogiri
123
- requirement: &70187310313040 !ruby/object:Gem::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: *70187310313040
91
+ version_requirements: *70278479590800
132
92
  - !ruby/object:Gem::Dependency
133
93
  name: rake
134
- requirement: &70187310312580 !ruby/object:Gem::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: *70187310312580
102
+ version_requirements: *70278479590340
143
103
  - !ruby/object:Gem::Dependency
144
104
  name: mocha
145
- requirement: &70187310311940 !ruby/object:Gem::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: *70187310311940
113
+ version_requirements: *70278479589840
154
114
  - !ruby/object:Gem::Dependency
155
115
  name: rails
156
- requirement: &70187310311420 !ruby/object:Gem::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: *70187310311420
124
+ version_requirements: *70278479589340
165
125
  - !ruby/object:Gem::Dependency
166
126
  name: rubigen
167
- requirement: &70187310311040 !ruby/object:Gem::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: *70187310311040
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