killbill-orbital 0.1.10 → 0.1.11
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/orbital/api.rb +8 -6
- data/lib/orbital/ext/active_merchant/active_merchant.rb +13 -3
- data/lib/orbital/models/response.rb +9 -0
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8efed2b0601af3cbb14301f68d36ba9f50cc4af9
|
4
|
+
data.tar.gz: ff6ca75f4ec26f2c859962db2212cb3a48d0a5d5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c51ae342210515154d0a8bc87c4173323c36e3acf437cd1c0402d643cb96ac900fd0319b58e95370baf1cbdd51e377070bc541efdc4a3a426b383f0697a5ffe6
|
7
|
+
data.tar.gz: c3c80535bc7375ee4a40885498a841dc271e4b571f96cdc5d252de75f3677c8b875fb34c01b86cc15f9dfcecdf3e7a2c5663dd2e19554e5c2c3eeeb31c1fe142
|
data/lib/orbital/api.rb
CHANGED
@@ -28,9 +28,8 @@ module Killbill #:nodoc:
|
|
28
28
|
end
|
29
29
|
|
30
30
|
def authorize_payment(kb_account_id, kb_payment_id, kb_payment_transaction_id, kb_payment_method_id, amount, currency, properties, context)
|
31
|
-
|
32
|
-
|
33
|
-
|
31
|
+
options = {:mit_reference_trx_id => find_mit_ref_trx_id_if_needed(find_value_from_properties(properties, :mit_ref_trx_id),
|
32
|
+
context.tenant_id)}
|
34
33
|
properties = merge_properties(properties, options)
|
35
34
|
super(kb_account_id, kb_payment_id, kb_payment_transaction_id, kb_payment_method_id, amount, currency, properties, context, with_trace_num_and_order_id(properties))
|
36
35
|
end
|
@@ -51,9 +50,8 @@ module Killbill #:nodoc:
|
|
51
50
|
end
|
52
51
|
|
53
52
|
def purchase_payment(kb_account_id, kb_payment_id, kb_payment_transaction_id, kb_payment_method_id, amount, currency, properties, context)
|
54
|
-
|
55
|
-
|
56
|
-
|
53
|
+
options = {:mit_reference_trx_id => find_mit_ref_trx_id_if_needed(find_value_from_properties(properties, :mit_ref_trx_id),
|
54
|
+
context.tenant_id)}
|
57
55
|
properties = merge_properties(properties, options)
|
58
56
|
super(kb_account_id, kb_payment_id, kb_payment_transaction_id, kb_payment_method_id, amount, currency, properties, context, with_trace_num_and_order_id(properties))
|
59
57
|
end
|
@@ -221,6 +219,10 @@ module Killbill #:nodoc:
|
|
221
219
|
:params_order_id => find_value_from_properties(properties, :order_id)}.delete_if{|_, value| value.blank?}
|
222
220
|
end
|
223
221
|
|
222
|
+
def find_mit_ref_trx_id_if_needed(ref_trx_id, tenant_id)
|
223
|
+
return nil if ref_trx_id.nil?
|
224
|
+
return @response_model.send('find_mit_transaction_ref_id', ref_trx_id, tenant_id)
|
225
|
+
end
|
224
226
|
end
|
225
227
|
end
|
226
228
|
end
|
@@ -5,7 +5,7 @@ module ActiveMerchant
|
|
5
5
|
|
6
6
|
class OrbitalGateway
|
7
7
|
|
8
|
-
API_VERSION = '7.
|
8
|
+
API_VERSION = '7.5'
|
9
9
|
|
10
10
|
def store(creditcard, options = {})
|
11
11
|
response = add_customer_profile(creditcard, options)
|
@@ -39,7 +39,7 @@ module ActiveMerchant
|
|
39
39
|
headers = POST_HEADERS.merge('Content-length' => order.size.to_s,
|
40
40
|
'User-Agent' => user_agent,
|
41
41
|
'Interface-Version' => 'Ruby|KillBill|Open-Source Gateway',
|
42
|
-
'Content-Type' => 'application/
|
42
|
+
'Content-Type' => 'application/PTI74')
|
43
43
|
headers['X-Request-Id'] = x_r_id unless x_r_id.blank?
|
44
44
|
headers.merge!('Trace-number' => trace_number.to_s,
|
45
45
|
'Merchant-Id' => @options[:merchant_id]) if trace_number
|
@@ -102,11 +102,13 @@ module ActiveMerchant
|
|
102
102
|
|
103
103
|
set_recurring_ind(xml, parameters)
|
104
104
|
|
105
|
-
# Append Transaction Reference Number
|
105
|
+
# Append Transaction Reference Number for Refund transactions
|
106
106
|
if action == REFUND && !parameters[:authorization].nil?
|
107
107
|
tx_ref_num, _ = split_authorization(parameters[:authorization])
|
108
108
|
xml.tag! :TxRefNum, tx_ref_num
|
109
109
|
end
|
110
|
+
|
111
|
+
add_mit_cit_params(xml, parameters)
|
110
112
|
end
|
111
113
|
end
|
112
114
|
xml.target!
|
@@ -169,6 +171,14 @@ module ActiveMerchant
|
|
169
171
|
end
|
170
172
|
end
|
171
173
|
|
174
|
+
def add_mit_cit_params(xml, options)
|
175
|
+
xml.tag! :MITMsgType, options[:mit_cit_type] unless options[:mit_cit_type].nil?
|
176
|
+
unless options[:credential_on_file].nil?
|
177
|
+
xml.tag! :MITStoredCredentialInd, (options[:credential_on_file] ? 'Y' : 'N')
|
178
|
+
end
|
179
|
+
xml.tag! :MITSubmittedTransactionID, options[:mit_reference_trx_id] unless options[:mit_reference_trx_id].nil?
|
180
|
+
end
|
181
|
+
|
172
182
|
def add_creditcard(xml, creditcard, options = {})
|
173
183
|
currency = options[:currency]
|
174
184
|
cvv_indicator_visa_discover = options[:cvv_indicator_visa_discover]
|
@@ -77,6 +77,7 @@ module Killbill #:nodoc:
|
|
77
77
|
:params_terminal_id => extract(response, 'terminal_id'),
|
78
78
|
:params_tx_ref_idx => extract(response, 'tx_ref_idx'),
|
79
79
|
:params_tx_ref_num => extract(response, 'tx_ref_num'),
|
80
|
+
:params_mit_received_transaction_id => extract(response, 'mit_received_transaction_id')
|
80
81
|
}
|
81
82
|
end
|
82
83
|
|
@@ -155,6 +156,13 @@ module Killbill #:nodoc:
|
|
155
156
|
where(:kb_payment_id => kb_payment_id, :kb_tenant_id => kb_tenant_id, :api_call => 'authorize').order(:created_at)
|
156
157
|
end
|
157
158
|
|
159
|
+
def self.find_mit_transaction_ref_id(kb_transaction_id, kb_tenant_id)
|
160
|
+
last_response = where(:kb_payment_transaction_id => kb_transaction_id, :kb_tenant_id => kb_tenant_id).order(:created_at).last
|
161
|
+
return nil if last_response.nil?
|
162
|
+
|
163
|
+
return last_response.params_mit_received_transaction_id
|
164
|
+
end
|
165
|
+
|
158
166
|
def gateway_error_code
|
159
167
|
params_resp_code
|
160
168
|
end
|
@@ -164,6 +172,7 @@ module Killbill #:nodoc:
|
|
164
172
|
t_info_plugin.properties << create_plugin_property('processorResponse', params_host_resp_code)
|
165
173
|
t_info_plugin.properties << create_plugin_property('orbital_response_id', id)
|
166
174
|
t_info_plugin.properties << create_plugin_property('trace_number', params_trace_number)
|
175
|
+
t_info_plugin.properties << create_plugin_property('mit_received_transaction_id', params_mit_received_transaction_id)
|
167
176
|
t_info_plugin
|
168
177
|
end
|
169
178
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: killbill-orbital
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.11
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Kill Bill core team
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-
|
11
|
+
date: 2018-07-20 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
requirement: !ruby/object:Gem::Requirement
|