processout 2.13.0 → 2.14.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
- data/lib/processout/activity.rb +14 -0
- data/lib/processout/addon.rb +21 -0
- data/lib/processout/api_request.rb +21 -0
- data/lib/processout/api_version.rb +10 -0
- data/lib/processout/card.rb +36 -0
- data/lib/processout/card_information.rb +14 -0
- data/lib/processout/coupon.rb +20 -0
- data/lib/processout/customer.rb +34 -22
- data/lib/processout/customer_action.rb +9 -0
- data/lib/processout/discount.rb +21 -0
- data/lib/processout/dunning_action.rb +9 -0
- data/lib/processout/event.rb +14 -0
- data/lib/processout/gateway.rb +18 -0
- data/lib/processout/gateway_configuration.rb +18 -0
- data/lib/processout/invoice.rb +43 -1
- data/lib/processout/invoice_detail.rb +22 -0
- data/lib/processout/invoice_device.rb +9 -0
- data/lib/processout/invoice_risk.rb +9 -0
- data/lib/processout/invoice_shipping.rb +19 -0
- data/lib/processout/networking/request.rb +1 -1
- data/lib/processout/payment_data_network_authentication.rb +8 -0
- data/lib/processout/payment_data_three_ds_authentication.rb +8 -0
- data/lib/processout/payment_data_three_ds_request.rb +11 -0
- data/lib/processout/payout.rb +27 -0
- data/lib/processout/payout_item.rb +20 -0
- data/lib/processout/plan.rb +21 -0
- data/lib/processout/product.rb +19 -0
- data/lib/processout/project.rb +18 -27
- data/lib/processout/refund.rb +17 -0
- data/lib/processout/subscription.rb +42 -0
- data/lib/processout/token.rb +39 -33
- data/lib/processout/transaction.rb +57 -0
- data/lib/processout/transaction_operation.rb +52 -0
- data/lib/processout/version.rb +1 -1
- data/lib/processout/webhook.rb +21 -0
- data/lib/processout/webhook_endpoint.rb +14 -0
- metadata +2 -2
data/lib/processout/project.rb
CHANGED
@@ -1,6 +1,7 @@
|
|
1
1
|
# The content of this file was automatically generated
|
2
2
|
|
3
3
|
require "cgi"
|
4
|
+
require "json"
|
4
5
|
require "processout/networking/request"
|
5
6
|
require "processout/networking/response"
|
6
7
|
|
@@ -131,6 +132,23 @@ module ProcessOut
|
|
131
132
|
Project.new(@client, data)
|
132
133
|
end
|
133
134
|
|
135
|
+
# Overrides the JSON marshaller to only send the fields we want
|
136
|
+
def to_json(options)
|
137
|
+
{
|
138
|
+
"id": self.id,
|
139
|
+
"supervisor_project": self.supervisor_project,
|
140
|
+
"supervisor_project_id": self.supervisor_project_id,
|
141
|
+
"api_version": self.api_version,
|
142
|
+
"name": self.name,
|
143
|
+
"logo_url": self.logo_url,
|
144
|
+
"email": self.email,
|
145
|
+
"default_currency": self.default_currency,
|
146
|
+
"private_key": self.private_key,
|
147
|
+
"dunning_configuration": self.dunning_configuration,
|
148
|
+
"created_at": self.created_at,
|
149
|
+
}.to_json
|
150
|
+
end
|
151
|
+
|
134
152
|
# Fills the object with data coming from the API
|
135
153
|
# Params:
|
136
154
|
# +data+:: +Hash+ of data coming from the API
|
@@ -197,33 +215,6 @@ module ProcessOut
|
|
197
215
|
self
|
198
216
|
end
|
199
217
|
|
200
|
-
# Regenerate the project private key. Make sure to store the new private key and use it in any future request.
|
201
|
-
# Params:
|
202
|
-
# +options+:: +Hash+ of options
|
203
|
-
def regenerate_private_key(options = {})
|
204
|
-
self.prefill(options)
|
205
|
-
|
206
|
-
request = Request.new(@client)
|
207
|
-
path = "/private-keys"
|
208
|
-
data = {
|
209
|
-
|
210
|
-
}
|
211
|
-
|
212
|
-
response = Response.new(request.post(path, data, options))
|
213
|
-
return_values = Array.new
|
214
|
-
|
215
|
-
body = response.body
|
216
|
-
body = body["project"]
|
217
|
-
|
218
|
-
|
219
|
-
obj = Project.new(@client)
|
220
|
-
return_values.push(obj.fill_with_data(body))
|
221
|
-
|
222
|
-
|
223
|
-
|
224
|
-
return_values[0]
|
225
|
-
end
|
226
|
-
|
227
218
|
# Fetch the current project information.
|
228
219
|
# Params:
|
229
220
|
# +options+:: +Hash+ of options
|
data/lib/processout/refund.rb
CHANGED
@@ -1,6 +1,7 @@
|
|
1
1
|
# The content of this file was automatically generated
|
2
2
|
|
3
3
|
require "cgi"
|
4
|
+
require "json"
|
4
5
|
require "processout/networking/request"
|
5
6
|
require "processout/networking/response"
|
6
7
|
|
@@ -97,6 +98,22 @@ module ProcessOut
|
|
97
98
|
Refund.new(@client, data)
|
98
99
|
end
|
99
100
|
|
101
|
+
# Overrides the JSON marshaller to only send the fields we want
|
102
|
+
def to_json(options)
|
103
|
+
{
|
104
|
+
"id": self.id,
|
105
|
+
"transaction": self.transaction,
|
106
|
+
"transaction_id": self.transaction_id,
|
107
|
+
"amount": self.amount,
|
108
|
+
"reason": self.reason,
|
109
|
+
"information": self.information,
|
110
|
+
"has_failed": self.has_failed,
|
111
|
+
"metadata": self.metadata,
|
112
|
+
"sandbox": self.sandbox,
|
113
|
+
"created_at": self.created_at,
|
114
|
+
}.to_json
|
115
|
+
end
|
116
|
+
|
100
117
|
# Fills the object with data coming from the API
|
101
118
|
# Params:
|
102
119
|
# +data+:: +Hash+ of data coming from the API
|
@@ -1,6 +1,7 @@
|
|
1
1
|
# The content of this file was automatically generated
|
2
2
|
|
3
3
|
require "cgi"
|
4
|
+
require "json"
|
4
5
|
require "processout/networking/request"
|
5
6
|
require "processout/networking/response"
|
6
7
|
|
@@ -331,6 +332,47 @@ module ProcessOut
|
|
331
332
|
Subscription.new(@client, data)
|
332
333
|
end
|
333
334
|
|
335
|
+
# Overrides the JSON marshaller to only send the fields we want
|
336
|
+
def to_json(options)
|
337
|
+
{
|
338
|
+
"id": self.id,
|
339
|
+
"project": self.project,
|
340
|
+
"project_id": self.project_id,
|
341
|
+
"plan": self.plan,
|
342
|
+
"plan_id": self.plan_id,
|
343
|
+
"discounts": self.discounts,
|
344
|
+
"addons": self.addons,
|
345
|
+
"transactions": self.transactions,
|
346
|
+
"customer": self.customer,
|
347
|
+
"customer_id": self.customer_id,
|
348
|
+
"token": self.token,
|
349
|
+
"token_id": self.token_id,
|
350
|
+
"url": self.url,
|
351
|
+
"name": self.name,
|
352
|
+
"amount": self.amount,
|
353
|
+
"billable_amount": self.billable_amount,
|
354
|
+
"discounted_amount": self.discounted_amount,
|
355
|
+
"addons_amount": self.addons_amount,
|
356
|
+
"currency": self.currency,
|
357
|
+
"metadata": self.metadata,
|
358
|
+
"interval": self.interval,
|
359
|
+
"trial_end_at": self.trial_end_at,
|
360
|
+
"activated": self.activated,
|
361
|
+
"active": self.active,
|
362
|
+
"cancel_at": self.cancel_at,
|
363
|
+
"canceled": self.canceled,
|
364
|
+
"cancellation_reason": self.cancellation_reason,
|
365
|
+
"pending_cancellation": self.pending_cancellation,
|
366
|
+
"return_url": self.return_url,
|
367
|
+
"cancel_url": self.cancel_url,
|
368
|
+
"unpaid_state": self.unpaid_state,
|
369
|
+
"sandbox": self.sandbox,
|
370
|
+
"created_at": self.created_at,
|
371
|
+
"activated_at": self.activated_at,
|
372
|
+
"iterate_at": self.iterate_at,
|
373
|
+
}.to_json
|
374
|
+
end
|
375
|
+
|
334
376
|
# Fills the object with data coming from the API
|
335
377
|
# Params:
|
336
378
|
# +data+:: +Hash+ of data coming from the API
|
data/lib/processout/token.rb
CHANGED
@@ -1,6 +1,7 @@
|
|
1
1
|
# The content of this file was automatically generated
|
2
2
|
|
3
3
|
require "cgi"
|
4
|
+
require "json"
|
4
5
|
require "processout/networking/request"
|
5
6
|
require "processout/networking/response"
|
6
7
|
|
@@ -17,9 +18,9 @@ module ProcessOut
|
|
17
18
|
attr_reader :type
|
18
19
|
attr_reader :metadata
|
19
20
|
attr_reader :is_subscription_only
|
21
|
+
attr_reader :is_default
|
20
22
|
attr_reader :return_url
|
21
23
|
attr_reader :cancel_url
|
22
|
-
attr_reader :is_default
|
23
24
|
attr_reader :is_chargeable
|
24
25
|
attr_reader :created_at
|
25
26
|
|
@@ -100,6 +101,10 @@ module ProcessOut
|
|
100
101
|
@is_subscription_only = val
|
101
102
|
end
|
102
103
|
|
104
|
+
def is_default=(val)
|
105
|
+
@is_default = val
|
106
|
+
end
|
107
|
+
|
103
108
|
def return_url=(val)
|
104
109
|
@return_url = val
|
105
110
|
end
|
@@ -108,10 +113,6 @@ module ProcessOut
|
|
108
113
|
@cancel_url = val
|
109
114
|
end
|
110
115
|
|
111
|
-
def is_default=(val)
|
112
|
-
@is_default = val
|
113
|
-
end
|
114
|
-
|
115
116
|
def is_chargeable=(val)
|
116
117
|
@is_chargeable = val
|
117
118
|
end
|
@@ -138,9 +139,9 @@ module ProcessOut
|
|
138
139
|
self.type = data.fetch(:type, nil)
|
139
140
|
self.metadata = data.fetch(:metadata, nil)
|
140
141
|
self.is_subscription_only = data.fetch(:is_subscription_only, nil)
|
142
|
+
self.is_default = data.fetch(:is_default, nil)
|
141
143
|
self.return_url = data.fetch(:return_url, nil)
|
142
144
|
self.cancel_url = data.fetch(:cancel_url, nil)
|
143
|
-
self.is_default = data.fetch(:is_default, nil)
|
144
145
|
self.is_chargeable = data.fetch(:is_chargeable, nil)
|
145
146
|
self.created_at = data.fetch(:created_at, nil)
|
146
147
|
|
@@ -151,6 +152,27 @@ module ProcessOut
|
|
151
152
|
Token.new(@client, data)
|
152
153
|
end
|
153
154
|
|
155
|
+
# Overrides the JSON marshaller to only send the fields we want
|
156
|
+
def to_json(options)
|
157
|
+
{
|
158
|
+
"id": self.id,
|
159
|
+
"customer": self.customer,
|
160
|
+
"customer_id": self.customer_id,
|
161
|
+
"gateway_configuration": self.gateway_configuration,
|
162
|
+
"gateway_configuration_id": self.gateway_configuration_id,
|
163
|
+
"card": self.card,
|
164
|
+
"card_id": self.card_id,
|
165
|
+
"type": self.type,
|
166
|
+
"metadata": self.metadata,
|
167
|
+
"is_subscription_only": self.is_subscription_only,
|
168
|
+
"is_default": self.is_default,
|
169
|
+
"return_url": self.return_url,
|
170
|
+
"cancel_url": self.cancel_url,
|
171
|
+
"is_chargeable": self.is_chargeable,
|
172
|
+
"created_at": self.created_at,
|
173
|
+
}.to_json
|
174
|
+
end
|
175
|
+
|
154
176
|
# Fills the object with data coming from the API
|
155
177
|
# Params:
|
156
178
|
# +data+:: +Hash+ of data coming from the API
|
@@ -188,15 +210,15 @@ module ProcessOut
|
|
188
210
|
if data.include? "is_subscription_only"
|
189
211
|
self.is_subscription_only = data["is_subscription_only"]
|
190
212
|
end
|
213
|
+
if data.include? "is_default"
|
214
|
+
self.is_default = data["is_default"]
|
215
|
+
end
|
191
216
|
if data.include? "return_url"
|
192
217
|
self.return_url = data["return_url"]
|
193
218
|
end
|
194
219
|
if data.include? "cancel_url"
|
195
220
|
self.cancel_url = data["cancel_url"]
|
196
221
|
end
|
197
|
-
if data.include? "is_default"
|
198
|
-
self.is_default = data["is_default"]
|
199
|
-
end
|
200
222
|
if data.include? "is_chargeable"
|
201
223
|
self.is_chargeable = data["is_chargeable"]
|
202
224
|
end
|
@@ -224,36 +246,15 @@ module ProcessOut
|
|
224
246
|
self.type = data.fetch(:type, self.type)
|
225
247
|
self.metadata = data.fetch(:metadata, self.metadata)
|
226
248
|
self.is_subscription_only = data.fetch(:is_subscription_only, self.is_subscription_only)
|
249
|
+
self.is_default = data.fetch(:is_default, self.is_default)
|
227
250
|
self.return_url = data.fetch(:return_url, self.return_url)
|
228
251
|
self.cancel_url = data.fetch(:cancel_url, self.cancel_url)
|
229
|
-
self.is_default = data.fetch(:is_default, self.is_default)
|
230
252
|
self.is_chargeable = data.fetch(:is_chargeable, self.is_chargeable)
|
231
253
|
self.created_at = data.fetch(:created_at, self.created_at)
|
232
254
|
|
233
255
|
self
|
234
256
|
end
|
235
257
|
|
236
|
-
# Verify a customer token's card is valid.
|
237
|
-
# Params:
|
238
|
-
# +options+:: +Hash+ of options
|
239
|
-
def verify(options = {})
|
240
|
-
self.prefill(options)
|
241
|
-
|
242
|
-
request = Request.new(@client)
|
243
|
-
path = "/customers/" + CGI.escape(@customer_id) + "/tokens/" + CGI.escape(@id) + "/verify"
|
244
|
-
data = {
|
245
|
-
|
246
|
-
}
|
247
|
-
|
248
|
-
response = Response.new(request.post(path, data, options))
|
249
|
-
return_values = Array.new
|
250
|
-
|
251
|
-
return_values.push(response.success)
|
252
|
-
|
253
|
-
|
254
|
-
return_values[0]
|
255
|
-
end
|
256
|
-
|
257
258
|
# Get the customer's tokens.
|
258
259
|
# Params:
|
259
260
|
# +customer_id+:: ID of the customer
|
@@ -328,7 +329,7 @@ module ProcessOut
|
|
328
329
|
"cancel_url" => @cancel_url,
|
329
330
|
"source" => options.fetch(:source, nil),
|
330
331
|
"settings" => options.fetch(:settings, nil),
|
331
|
-
"
|
332
|
+
"device" => options.fetch(:device, nil),
|
332
333
|
"verify" => options.fetch(:verify, nil),
|
333
334
|
"verify_metadata" => options.fetch(:verify_metadata, nil),
|
334
335
|
"set_default" => options.fetch(:set_default, nil)
|
@@ -357,7 +358,12 @@ module ProcessOut
|
|
357
358
|
request = Request.new(@client)
|
358
359
|
path = "/customers/" + CGI.escape(@customer_id) + "/tokens/" + CGI.escape(@id) + ""
|
359
360
|
data = {
|
360
|
-
|
361
|
+
"source" => options.fetch(:source, nil),
|
362
|
+
"settings" => options.fetch(:settings, nil),
|
363
|
+
"device" => options.fetch(:device, nil),
|
364
|
+
"verify" => options.fetch(:verify, nil),
|
365
|
+
"verify_metadata" => options.fetch(:verify_metadata, nil),
|
366
|
+
"set_default" => options.fetch(:set_default, nil)
|
361
367
|
}
|
362
368
|
|
363
369
|
response = Response.new(request.put(path, data, options))
|
@@ -1,6 +1,7 @@
|
|
1
1
|
# The content of this file was automatically generated
|
2
2
|
|
3
3
|
require "cgi"
|
4
|
+
require "json"
|
4
5
|
require "processout/networking/request"
|
5
6
|
require "processout/networking/response"
|
6
7
|
|
@@ -441,6 +442,62 @@ module ProcessOut
|
|
441
442
|
Transaction.new(@client, data)
|
442
443
|
end
|
443
444
|
|
445
|
+
# Overrides the JSON marshaller to only send the fields we want
|
446
|
+
def to_json(options)
|
447
|
+
{
|
448
|
+
"id": self.id,
|
449
|
+
"project": self.project,
|
450
|
+
"project_id": self.project_id,
|
451
|
+
"invoice": self.invoice,
|
452
|
+
"invoice_id": self.invoice_id,
|
453
|
+
"customer": self.customer,
|
454
|
+
"customer_id": self.customer_id,
|
455
|
+
"subscription": self.subscription,
|
456
|
+
"subscription_id": self.subscription_id,
|
457
|
+
"token": self.token,
|
458
|
+
"token_id": self.token_id,
|
459
|
+
"card": self.card,
|
460
|
+
"card_id": self.card_id,
|
461
|
+
"gateway_configuration": self.gateway_configuration,
|
462
|
+
"gateway_configuration_id": self.gateway_configuration_id,
|
463
|
+
"operations": self.operations,
|
464
|
+
"refunds": self.refunds,
|
465
|
+
"name": self.name,
|
466
|
+
"amount": self.amount,
|
467
|
+
"amount_local": self.amount_local,
|
468
|
+
"authorized_amount": self.authorized_amount,
|
469
|
+
"authorized_amount_local": self.authorized_amount_local,
|
470
|
+
"captured_amount": self.captured_amount,
|
471
|
+
"captured_amount_local": self.captured_amount_local,
|
472
|
+
"refunded_amount": self.refunded_amount,
|
473
|
+
"refunded_amount_local": self.refunded_amount_local,
|
474
|
+
"available_amount": self.available_amount,
|
475
|
+
"available_amount_local": self.available_amount_local,
|
476
|
+
"currency": self.currency,
|
477
|
+
"error_code": self.error_code,
|
478
|
+
"gateway_name": self.gateway_name,
|
479
|
+
"three_d_s_status": self.three_d_s_status,
|
480
|
+
"status": self.status,
|
481
|
+
"authorized": self.authorized,
|
482
|
+
"captured": self.captured,
|
483
|
+
"voided": self.voided,
|
484
|
+
"refunded": self.refunded,
|
485
|
+
"chargedback": self.chargedback,
|
486
|
+
"received_fraud_notification": self.received_fraud_notification,
|
487
|
+
"received_retrieval_request": self.received_retrieval_request,
|
488
|
+
"processout_fee": self.processout_fee,
|
489
|
+
"estimated_fee": self.estimated_fee,
|
490
|
+
"gateway_fee": self.gateway_fee,
|
491
|
+
"gateway_fee_local": self.gateway_fee_local,
|
492
|
+
"currency_fee": self.currency_fee,
|
493
|
+
"metadata": self.metadata,
|
494
|
+
"sandbox": self.sandbox,
|
495
|
+
"created_at": self.created_at,
|
496
|
+
"chargedback_at": self.chargedback_at,
|
497
|
+
"refunded_at": self.refunded_at,
|
498
|
+
}.to_json
|
499
|
+
end
|
500
|
+
|
444
501
|
# Fills the object with data coming from the API
|
445
502
|
# Params:
|
446
503
|
# +data+:: +Hash+ of data coming from the API
|
@@ -1,6 +1,7 @@
|
|
1
1
|
# The content of this file was automatically generated
|
2
2
|
|
3
3
|
require "cgi"
|
4
|
+
require "json"
|
4
5
|
require "processout/networking/request"
|
5
6
|
require "processout/networking/response"
|
6
7
|
|
@@ -17,11 +18,13 @@ module ProcessOut
|
|
17
18
|
attr_reader :gateway_configuration
|
18
19
|
attr_reader :gateway_configuration_id
|
19
20
|
attr_reader :amount
|
21
|
+
attr_reader :currency
|
20
22
|
attr_reader :is_attempt
|
21
23
|
attr_reader :has_failed
|
22
24
|
attr_reader :is_accountable
|
23
25
|
attr_reader :type
|
24
26
|
attr_reader :gateway_operation_id
|
27
|
+
attr_reader :arn
|
25
28
|
attr_reader :error_code
|
26
29
|
attr_reader :gateway_data
|
27
30
|
attr_reader :payment_data_three_d_s_request
|
@@ -120,6 +123,10 @@ module ProcessOut
|
|
120
123
|
@amount = val
|
121
124
|
end
|
122
125
|
|
126
|
+
def currency=(val)
|
127
|
+
@currency = val
|
128
|
+
end
|
129
|
+
|
123
130
|
def is_attempt=(val)
|
124
131
|
@is_attempt = val
|
125
132
|
end
|
@@ -140,6 +147,10 @@ module ProcessOut
|
|
140
147
|
@gateway_operation_id = val
|
141
148
|
end
|
142
149
|
|
150
|
+
def arn=(val)
|
151
|
+
@arn = val
|
152
|
+
end
|
153
|
+
|
143
154
|
def error_code=(val)
|
144
155
|
@error_code = val
|
145
156
|
end
|
@@ -226,11 +237,13 @@ module ProcessOut
|
|
226
237
|
self.gateway_configuration = data.fetch(:gateway_configuration, nil)
|
227
238
|
self.gateway_configuration_id = data.fetch(:gateway_configuration_id, nil)
|
228
239
|
self.amount = data.fetch(:amount, nil)
|
240
|
+
self.currency = data.fetch(:currency, nil)
|
229
241
|
self.is_attempt = data.fetch(:is_attempt, nil)
|
230
242
|
self.has_failed = data.fetch(:has_failed, nil)
|
231
243
|
self.is_accountable = data.fetch(:is_accountable, nil)
|
232
244
|
self.type = data.fetch(:type, nil)
|
233
245
|
self.gateway_operation_id = data.fetch(:gateway_operation_id, nil)
|
246
|
+
self.arn = data.fetch(:arn, nil)
|
234
247
|
self.error_code = data.fetch(:error_code, nil)
|
235
248
|
self.gateway_data = data.fetch(:gateway_data, nil)
|
236
249
|
self.payment_data_three_d_s_request = data.fetch(:payment_data_three_d_s_request, nil)
|
@@ -247,6 +260,37 @@ module ProcessOut
|
|
247
260
|
TransactionOperation.new(@client, data)
|
248
261
|
end
|
249
262
|
|
263
|
+
# Overrides the JSON marshaller to only send the fields we want
|
264
|
+
def to_json(options)
|
265
|
+
{
|
266
|
+
"id": self.id,
|
267
|
+
"transaction": self.transaction,
|
268
|
+
"transaction_id": self.transaction_id,
|
269
|
+
"token": self.token,
|
270
|
+
"token_id": self.token_id,
|
271
|
+
"card": self.card,
|
272
|
+
"card_id": self.card_id,
|
273
|
+
"gateway_configuration": self.gateway_configuration,
|
274
|
+
"gateway_configuration_id": self.gateway_configuration_id,
|
275
|
+
"amount": self.amount,
|
276
|
+
"currency": self.currency,
|
277
|
+
"is_attempt": self.is_attempt,
|
278
|
+
"has_failed": self.has_failed,
|
279
|
+
"is_accountable": self.is_accountable,
|
280
|
+
"type": self.type,
|
281
|
+
"gateway_operation_id": self.gateway_operation_id,
|
282
|
+
"arn": self.arn,
|
283
|
+
"error_code": self.error_code,
|
284
|
+
"gateway_data": self.gateway_data,
|
285
|
+
"payment_data_three_d_s_request": self.payment_data_three_d_s_request,
|
286
|
+
"payment_data_three_d_s_authentication": self.payment_data_three_d_s_authentication,
|
287
|
+
"payment_data_network_authentication": self.payment_data_network_authentication,
|
288
|
+
"metadata": self.metadata,
|
289
|
+
"gateway_fee": self.gateway_fee,
|
290
|
+
"created_at": self.created_at,
|
291
|
+
}.to_json
|
292
|
+
end
|
293
|
+
|
250
294
|
# Fills the object with data coming from the API
|
251
295
|
# Params:
|
252
296
|
# +data+:: +Hash+ of data coming from the API
|
@@ -284,6 +328,9 @@ module ProcessOut
|
|
284
328
|
if data.include? "amount"
|
285
329
|
self.amount = data["amount"]
|
286
330
|
end
|
331
|
+
if data.include? "currency"
|
332
|
+
self.currency = data["currency"]
|
333
|
+
end
|
287
334
|
if data.include? "is_attempt"
|
288
335
|
self.is_attempt = data["is_attempt"]
|
289
336
|
end
|
@@ -299,6 +346,9 @@ module ProcessOut
|
|
299
346
|
if data.include? "gateway_operation_id"
|
300
347
|
self.gateway_operation_id = data["gateway_operation_id"]
|
301
348
|
end
|
349
|
+
if data.include? "arn"
|
350
|
+
self.arn = data["arn"]
|
351
|
+
end
|
302
352
|
if data.include? "error_code"
|
303
353
|
self.error_code = data["error_code"]
|
304
354
|
end
|
@@ -344,11 +394,13 @@ module ProcessOut
|
|
344
394
|
self.gateway_configuration = data.fetch(:gateway_configuration, self.gateway_configuration)
|
345
395
|
self.gateway_configuration_id = data.fetch(:gateway_configuration_id, self.gateway_configuration_id)
|
346
396
|
self.amount = data.fetch(:amount, self.amount)
|
397
|
+
self.currency = data.fetch(:currency, self.currency)
|
347
398
|
self.is_attempt = data.fetch(:is_attempt, self.is_attempt)
|
348
399
|
self.has_failed = data.fetch(:has_failed, self.has_failed)
|
349
400
|
self.is_accountable = data.fetch(:is_accountable, self.is_accountable)
|
350
401
|
self.type = data.fetch(:type, self.type)
|
351
402
|
self.gateway_operation_id = data.fetch(:gateway_operation_id, self.gateway_operation_id)
|
403
|
+
self.arn = data.fetch(:arn, self.arn)
|
352
404
|
self.error_code = data.fetch(:error_code, self.error_code)
|
353
405
|
self.gateway_data = data.fetch(:gateway_data, self.gateway_data)
|
354
406
|
self.payment_data_three_d_s_request = data.fetch(:payment_data_three_d_s_request, self.payment_data_three_d_s_request)
|