activemerchant-argus 0.1.0 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 303662197f4e5ae3ba0105a92799d5cd25c001e4346db0725a78d3a9624bdb64
4
- data.tar.gz: 9a716dd825911e415451b3d6884cf536c55403ceb08fda6ef305f04b8e4d63f5
3
+ metadata.gz: 66e5755776db2a474e3355eee467443d973c8eeec6a0b45027364bf32120f00f
4
+ data.tar.gz: 49cd673ef854bd2891fb60b62e0d08ed29c7b0d09f1477dd91309c1cb2fcffb0
5
5
  SHA512:
6
- metadata.gz: fbc9838e285f6e39e713a1f3e75c2dcd2406e6744be50c4c8da599dc7f01c22984d6ea5d3daae108077061cacbfce847cc6bdc9e9b32cc360d6973f2974d553b
7
- data.tar.gz: 0dab2033c37073f8429ba5fdbade13e0a58472d65087f25e6e489dce50a9aba39fd08b35a8b0f09037035655a00998af64a7e8c137267b1b74b9935100db97f0
6
+ metadata.gz: 3a91a1572f79cdb11d886dbc7063f749fbf4faab257cb1d919d99d614f422d4a6439f0916f8204bfd7074e5951fb29e1faab520c3882b4d4d870b733999873ab
7
+ data.tar.gz: 42ce6ad9811ad39e875e1780f31cc003556bb04afaf08ff274022ff2f2c3cc48b007e7db6914a567a12b4455de1019a9cc73432ffce9f2037717804e8aeba255
@@ -0,0 +1,21 @@
1
+ ---
2
+
3
+ name: ci
4
+
5
+ on: [push]
6
+
7
+ jobs:
8
+ test:
9
+ name: test
10
+ runs-on: ubuntu-latest
11
+
12
+ steps:
13
+ - uses: actions/checkout@v2
14
+
15
+ - uses: ruby/setup-ruby@v1
16
+ with:
17
+ ruby-version: 2.7.2
18
+ bundler-cache: true
19
+
20
+ - name: Run tests
21
+ run: bundle exec rake test:units
@@ -0,0 +1,23 @@
1
+ ---
2
+
3
+ name: ci
4
+
5
+ on:
6
+ schedule:
7
+ - cron: '1 1 * * *'
8
+
9
+ jobs:
10
+ test:
11
+ name: test
12
+ runs-on: ubuntu-latest
13
+
14
+ steps:
15
+ - uses: actions/checkout@v2
16
+
17
+ - uses: ruby/setup-ruby@v1
18
+ with:
19
+ ruby-version: 2.7.2
20
+ bundler-cache: true
21
+
22
+ - name: Run tests
23
+ run: bundle exec rake test:units
data/README.md CHANGED
@@ -19,7 +19,7 @@ And then execute:
19
19
 
20
20
  ## Usage
21
21
 
22
- TODO: Write usage instructions here
22
+ See [ActiveMerchant](https://github.com/activemerchant/active_merchant#usage).
23
23
 
24
24
  ## Development
25
25
 
@@ -25,7 +25,7 @@ Gem::Specification.new do |spec|
25
25
  spec.add_dependency 'activemerchant'
26
26
 
27
27
  spec.add_development_dependency "bundler", "~> 2.0"
28
- spec.add_development_dependency "rake", "~> 10.0"
28
+ spec.add_development_dependency "rake"
29
29
  spec.add_development_dependency('test-unit', '~> 3')
30
30
  spec.add_development_dependency('mocha', '~> 1')
31
31
  end
@@ -1,5 +1,5 @@
1
1
  module ActiveMerchant
2
2
  module Argus
3
- VERSION = "0.1.0"
3
+ VERSION = "0.4.0"
4
4
  end
5
5
  end
@@ -6,8 +6,8 @@ module ActiveMerchant #:nodoc:
6
6
  class ArgusGateway < Gateway
7
7
  include Empty
8
8
 
9
- self.test_url = 'https://svc.arguspayments.com/payment/pmt_service.cfm'
10
- self.live_url = 'https://svc.arguspayments.com/payment/pmt_service.cfm'
9
+ self.test_url = 'https://api.inoviopay.com/payment/pmt_service.cfm'
10
+ self.live_url = 'https://api.inoviopay.com/payment/pmt_service.cfm'
11
11
 
12
12
  self.supported_countries = ['US']
13
13
  self.default_currency = 'USD'
@@ -38,6 +38,8 @@ module ActiveMerchant #:nodoc:
38
38
  add_payment(post, payment)
39
39
  add_address(post, payment, options)
40
40
  add_customer_data(post, options)
41
+ add_3ds_auth(post, options)
42
+ add_stored_credential_options(post, options)
41
43
 
42
44
  commit('CCAUTHCAP', post)
43
45
  end
@@ -48,6 +50,8 @@ module ActiveMerchant #:nodoc:
48
50
  add_payment(post, payment)
49
51
  add_address(post, payment, options)
50
52
  add_customer_data(post, options)
53
+ add_3ds_auth(post, options)
54
+ add_stored_credential_options(post, options)
51
55
 
52
56
  commit('CCAUTHORIZE', post)
53
57
  end
@@ -91,6 +95,14 @@ module ActiveMerchant #:nodoc:
91
95
 
92
96
  private
93
97
 
98
+ def add_3ds_auth(post, options)
99
+ if options[:three_d_secure]
100
+ post[:p3ds_eci] = options.dig(:three_d_secure, :eci)
101
+ post[:p3ds_cavv] = options.dig(:three_d_secure, :cavv)
102
+ post[:p3ds_xid] = options.dig(:three_d_secure, :xid)
103
+ end
104
+ end
105
+
94
106
  def add_customer_data(post, options)
95
107
  post[:cust_email] = options[:email] unless empty?(options[:email])
96
108
  post[:cust_fname] = options[:first_name]
@@ -134,6 +146,21 @@ module ActiveMerchant #:nodoc:
134
146
  post[:merch_acct_id] = @options[:merch_acct_id]
135
147
  end
136
148
 
149
+ def add_stored_credential_options(post, options)
150
+ return unless options[:stored_credential]
151
+
152
+ post[:mbshp_id_xtl] = options[:stored_credential][:network_transaction_id] if options[:stored_credential][:network_transaction_id]
153
+
154
+ post[:trans_rebill_type] = options[:stored_credential][:initial_transaction] ? 'INITIAL' : 'REBILL'
155
+
156
+ case options[:stored_credential][:reason_type]
157
+ when 'trial'
158
+ post[:trans_rebill_type] = 'TRIAL'
159
+ when 'unscheduled'
160
+ post[:trans_rebill_type] = 'NONE'
161
+ end
162
+ end
163
+
137
164
  def parse(body)
138
165
  JSON.parse(body)
139
166
  rescue JSON::ParserError
@@ -189,8 +216,8 @@ module ActiveMerchant #:nodoc:
189
216
 
190
217
  def post_data(action, parameters = {})
191
218
  parameters[:request_action] = action
192
- parameters[:request_api_version] = 3.6,
193
- parameters[:request_response_format] = 'JSON'
219
+ parameters[:request_api_version] = 4.4
220
+ parameters[:request_response_format] = 'JSON'
194
221
  parameters.merge!(credentials).to_post_data
195
222
  end
196
223
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: activemerchant-argus
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Piers Chambers
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-09-16 00:00:00.000000000 Z
11
+ date: 2022-08-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activemerchant
@@ -42,16 +42,16 @@ dependencies:
42
42
  name: rake
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - "~>"
45
+ - - ">="
46
46
  - !ruby/object:Gem::Version
47
- version: '10.0'
47
+ version: '0'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - "~>"
52
+ - - ">="
53
53
  - !ruby/object:Gem::Version
54
- version: '10.0'
54
+ version: '0'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: test-unit
57
57
  requirement: !ruby/object:Gem::Requirement
@@ -80,15 +80,16 @@ dependencies:
80
80
  - - "~>"
81
81
  - !ruby/object:Gem::Version
82
82
  version: '1'
83
- description:
83
+ description:
84
84
  email:
85
85
  - piers@varyonic.com
86
86
  executables: []
87
87
  extensions: []
88
88
  extra_rdoc_files: []
89
89
  files:
90
+ - ".github/workflows/ci.yaml"
91
+ - ".github/workflows/daily.yaml"
90
92
  - ".gitignore"
91
- - ".travis"
92
93
  - ".travis.yml"
93
94
  - Gemfile
94
95
  - LICENSE.txt
@@ -105,7 +106,7 @@ homepage: https://github.com/varyonic/activemerchant-argus
105
106
  licenses:
106
107
  - MIT
107
108
  metadata: {}
108
- post_install_message:
109
+ post_install_message:
109
110
  rdoc_options: []
110
111
  require_paths:
111
112
  - lib
@@ -120,8 +121,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
120
121
  - !ruby/object:Gem::Version
121
122
  version: '0'
122
123
  requirements: []
123
- rubygems_version: 3.0.3
124
- signing_key:
124
+ rubygems_version: 3.3.7
125
+ signing_key:
125
126
  specification_version: 4
126
127
  summary: Active Merchant extension to support Inovio payment gateway (f.k.a. Argus)
127
128
  test_files: []
data/.travis DELETED
File without changes