processout 1.1.0 → 1.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/processout.rb +12 -0
- data/lib/processout/card.rb +68 -0
- data/lib/processout/card_information.rb +140 -0
- data/lib/processout/discount.rb +10 -0
- data/lib/processout/invoice.rb +23 -24
- data/lib/processout/invoice_detail.rb +82 -0
- data/lib/processout/plan.rb +10 -0
- data/lib/processout/transaction.rb +20 -0
- data/lib/processout/version.rb +1 -1
- metadata +4 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1e1ba190f4190702ba5e558a6f8ab4cd0c56be4a
|
4
|
+
data.tar.gz: 9640c25a700233c8ada87f41165609bc8758af14
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: b09760c70439f6d2b51c6076490b0659de75d10af5c00c60830566c6e5e1eab4302ccaf897f59f10da5ceee4f3ac2411da1fdc516fa02c946d0e7317db9ed09b
|
7
|
+
data.tar.gz: ae613d8d3e19c635b04b12ceb8f8a8982c9827f135aef0aca9549214b826efa1df5892049a5e7451a049a80b093ef314e00f5688643f7b6e9eb3842340377a21
|
data/lib/processout.rb
CHANGED
@@ -2,6 +2,7 @@ require "processout/version"
|
|
2
2
|
require "processout/activity"
|
3
3
|
require "processout/authorization_request"
|
4
4
|
require "processout/card"
|
5
|
+
require "processout/card_information"
|
5
6
|
require "processout/coupon"
|
6
7
|
require "processout/customer"
|
7
8
|
require "processout/token"
|
@@ -10,6 +11,7 @@ require "processout/event"
|
|
10
11
|
require "processout/gateway"
|
11
12
|
require "processout/gateway_configuration"
|
12
13
|
require "processout/invoice"
|
14
|
+
require "processout/invoice_detail"
|
13
15
|
require "processout/customer_action"
|
14
16
|
require "processout/plan"
|
15
17
|
require "processout/product"
|
@@ -45,6 +47,11 @@ module ProcessOut
|
|
45
47
|
obj = Card.new(self, data)
|
46
48
|
end
|
47
49
|
|
50
|
+
# Create a new CardInformation instance
|
51
|
+
def card_information(data = {})
|
52
|
+
obj = CardInformation.new(self, data)
|
53
|
+
end
|
54
|
+
|
48
55
|
# Create a new Coupon instance
|
49
56
|
def coupon(data = {})
|
50
57
|
obj = Coupon.new(self, data)
|
@@ -85,6 +92,11 @@ module ProcessOut
|
|
85
92
|
obj = Invoice.new(self, data)
|
86
93
|
end
|
87
94
|
|
95
|
+
# Create a new InvoiceDetail instance
|
96
|
+
def invoice_detail(data = {})
|
97
|
+
obj = InvoiceDetail.new(self, data)
|
98
|
+
end
|
99
|
+
|
88
100
|
# Create a new CustomerAction instance
|
89
101
|
def customer_action(data = {})
|
90
102
|
obj = CustomerAction.new(self, data)
|
data/lib/processout/card.rb
CHANGED
@@ -13,6 +13,7 @@ module ProcessOut
|
|
13
13
|
attr_reader :type
|
14
14
|
attr_reader :bank_name
|
15
15
|
attr_reader :brand
|
16
|
+
attr_reader :country
|
16
17
|
attr_reader :iin
|
17
18
|
attr_reader :last_4_digits
|
18
19
|
attr_reader :exp_month
|
@@ -53,6 +54,10 @@ module ProcessOut
|
|
53
54
|
@brand = val
|
54
55
|
end
|
55
56
|
|
57
|
+
def country=(val)
|
58
|
+
@country = val
|
59
|
+
end
|
60
|
+
|
56
61
|
def iin=(val)
|
57
62
|
@iin = val
|
58
63
|
end
|
@@ -95,6 +100,7 @@ module ProcessOut
|
|
95
100
|
self.type = data.fetch(:type, nil)
|
96
101
|
self.bank_name = data.fetch(:bank_name, nil)
|
97
102
|
self.brand = data.fetch(:brand, nil)
|
103
|
+
self.country = data.fetch(:country, nil)
|
98
104
|
self.iin = data.fetch(:iin, nil)
|
99
105
|
self.last_4_digits = data.fetch(:last_4_digits, nil)
|
100
106
|
self.exp_month = data.fetch(:exp_month, nil)
|
@@ -135,6 +141,9 @@ module ProcessOut
|
|
135
141
|
if data.include? "brand"
|
136
142
|
self.brand = data["brand"]
|
137
143
|
end
|
144
|
+
if data.include? "country"
|
145
|
+
self.country = data["country"]
|
146
|
+
end
|
138
147
|
if data.include? "iin"
|
139
148
|
self.iin = data["iin"]
|
140
149
|
end
|
@@ -173,6 +182,7 @@ module ProcessOut
|
|
173
182
|
self.type = data.fetch(:type, self.type)
|
174
183
|
self.bank_name = data.fetch(:bank_name, self.bank_name)
|
175
184
|
self.brand = data.fetch(:brand, self.brand)
|
185
|
+
self.country = data.fetch(:country, self.country)
|
176
186
|
self.iin = data.fetch(:iin, self.iin)
|
177
187
|
self.last_4_digits = data.fetch(:last_4_digits, self.last_4_digits)
|
178
188
|
self.exp_month = data.fetch(:exp_month, self.exp_month)
|
@@ -184,6 +194,64 @@ module ProcessOut
|
|
184
194
|
self
|
185
195
|
end
|
186
196
|
|
197
|
+
# Get all the cards.
|
198
|
+
# Params:
|
199
|
+
# +options+:: +Hash+ of options
|
200
|
+
def all(options = {})
|
201
|
+
self.prefill(options)
|
202
|
+
|
203
|
+
request = Request.new(@client)
|
204
|
+
path = "/cards"
|
205
|
+
data = {
|
206
|
+
|
207
|
+
}
|
208
|
+
|
209
|
+
response = Response.new(request.get(path, data, options))
|
210
|
+
return_values = Array.new
|
211
|
+
|
212
|
+
a = Array.new
|
213
|
+
body = response.body
|
214
|
+
for v in body['cards']
|
215
|
+
tmp = Card.new(@client)
|
216
|
+
tmp.fill_with_data(v)
|
217
|
+
a.push(tmp)
|
218
|
+
end
|
219
|
+
|
220
|
+
return_values.push(a)
|
221
|
+
|
222
|
+
|
223
|
+
|
224
|
+
return_values[0]
|
225
|
+
end
|
226
|
+
|
227
|
+
# Find a card by its ID.
|
228
|
+
# Params:
|
229
|
+
# +card_id+:: ID of the card
|
230
|
+
# +options+:: +Hash+ of options
|
231
|
+
def find(card_id, options = {})
|
232
|
+
self.prefill(options)
|
233
|
+
|
234
|
+
request = Request.new(@client)
|
235
|
+
path = "/cards/" + CGI.escape(card_id) + ""
|
236
|
+
data = {
|
237
|
+
|
238
|
+
}
|
239
|
+
|
240
|
+
response = Response.new(request.get(path, data, options))
|
241
|
+
return_values = Array.new
|
242
|
+
|
243
|
+
body = response.body
|
244
|
+
body = body["card_information"]
|
245
|
+
|
246
|
+
|
247
|
+
obj = Card.new(@client)
|
248
|
+
return_values.push(obj.fill_with_data(body))
|
249
|
+
|
250
|
+
|
251
|
+
|
252
|
+
return_values[0]
|
253
|
+
end
|
254
|
+
|
187
255
|
|
188
256
|
end
|
189
257
|
end
|
@@ -0,0 +1,140 @@
|
|
1
|
+
# The content of this file was automatically generated
|
2
|
+
|
3
|
+
require "cgi"
|
4
|
+
require "processout/networking/request"
|
5
|
+
require "processout/networking/response"
|
6
|
+
|
7
|
+
module ProcessOut
|
8
|
+
class CardInformation
|
9
|
+
|
10
|
+
attr_reader :iin
|
11
|
+
attr_reader :scheme
|
12
|
+
attr_reader :type
|
13
|
+
attr_reader :bank_name
|
14
|
+
attr_reader :brand
|
15
|
+
attr_reader :country
|
16
|
+
|
17
|
+
|
18
|
+
def iin=(val)
|
19
|
+
@iin = val
|
20
|
+
end
|
21
|
+
|
22
|
+
def scheme=(val)
|
23
|
+
@scheme = val
|
24
|
+
end
|
25
|
+
|
26
|
+
def type=(val)
|
27
|
+
@type = val
|
28
|
+
end
|
29
|
+
|
30
|
+
def bank_name=(val)
|
31
|
+
@bank_name = val
|
32
|
+
end
|
33
|
+
|
34
|
+
def brand=(val)
|
35
|
+
@brand = val
|
36
|
+
end
|
37
|
+
|
38
|
+
def country=(val)
|
39
|
+
@country = val
|
40
|
+
end
|
41
|
+
|
42
|
+
|
43
|
+
# Initializes the CardInformation object
|
44
|
+
# Params:
|
45
|
+
# +client+:: +ProcessOut+ client instance
|
46
|
+
# +data+:: data that can be used to fill the object
|
47
|
+
def initialize(client, data = {})
|
48
|
+
@client = client
|
49
|
+
|
50
|
+
self.iin = data.fetch(:iin, nil)
|
51
|
+
self.scheme = data.fetch(:scheme, nil)
|
52
|
+
self.type = data.fetch(:type, nil)
|
53
|
+
self.bank_name = data.fetch(:bank_name, nil)
|
54
|
+
self.brand = data.fetch(:brand, nil)
|
55
|
+
self.country = data.fetch(:country, nil)
|
56
|
+
|
57
|
+
end
|
58
|
+
|
59
|
+
# Create a new CardInformation using the current client
|
60
|
+
def new(data = {})
|
61
|
+
CardInformation.new(@client, data)
|
62
|
+
end
|
63
|
+
|
64
|
+
# Fills the object with data coming from the API
|
65
|
+
# Params:
|
66
|
+
# +data+:: +Hash+ of data coming from the API
|
67
|
+
def fill_with_data(data)
|
68
|
+
if data.nil?
|
69
|
+
return self
|
70
|
+
end
|
71
|
+
if data.include? "iin"
|
72
|
+
self.iin = data["iin"]
|
73
|
+
end
|
74
|
+
if data.include? "scheme"
|
75
|
+
self.scheme = data["scheme"]
|
76
|
+
end
|
77
|
+
if data.include? "type"
|
78
|
+
self.type = data["type"]
|
79
|
+
end
|
80
|
+
if data.include? "bank_name"
|
81
|
+
self.bank_name = data["bank_name"]
|
82
|
+
end
|
83
|
+
if data.include? "brand"
|
84
|
+
self.brand = data["brand"]
|
85
|
+
end
|
86
|
+
if data.include? "country"
|
87
|
+
self.country = data["country"]
|
88
|
+
end
|
89
|
+
|
90
|
+
self
|
91
|
+
end
|
92
|
+
|
93
|
+
# Prefills the object with the data passed as parameters
|
94
|
+
# Params:
|
95
|
+
# +data+:: +Hash+ of data
|
96
|
+
def prefill(data)
|
97
|
+
if data.nil?
|
98
|
+
return self
|
99
|
+
end
|
100
|
+
self.iin = data.fetch(:iin, self.iin)
|
101
|
+
self.scheme = data.fetch(:scheme, self.scheme)
|
102
|
+
self.type = data.fetch(:type, self.type)
|
103
|
+
self.bank_name = data.fetch(:bank_name, self.bank_name)
|
104
|
+
self.brand = data.fetch(:brand, self.brand)
|
105
|
+
self.country = data.fetch(:country, self.country)
|
106
|
+
|
107
|
+
self
|
108
|
+
end
|
109
|
+
|
110
|
+
# Fetch card information from the IIN.
|
111
|
+
# Params:
|
112
|
+
# +iin+:: IIN of the card (first 6 digits)
|
113
|
+
# +options+:: +Hash+ of options
|
114
|
+
def fetch(iin, options = {})
|
115
|
+
self.prefill(options)
|
116
|
+
|
117
|
+
request = Request.new(@client)
|
118
|
+
path = "/iins/" + CGI.escape(iin) + ""
|
119
|
+
data = {
|
120
|
+
|
121
|
+
}
|
122
|
+
|
123
|
+
response = Response.new(request.get(path, data, options))
|
124
|
+
return_values = Array.new
|
125
|
+
|
126
|
+
body = response.body
|
127
|
+
body = body["coupon"]
|
128
|
+
|
129
|
+
|
130
|
+
obj = CardInformation.new(@client)
|
131
|
+
return_values.push(obj.fill_with_data(body))
|
132
|
+
|
133
|
+
|
134
|
+
|
135
|
+
return_values[0]
|
136
|
+
end
|
137
|
+
|
138
|
+
|
139
|
+
end
|
140
|
+
end
|
data/lib/processout/discount.rb
CHANGED
@@ -12,6 +12,7 @@ module ProcessOut
|
|
12
12
|
attr_reader :subscription
|
13
13
|
attr_reader :coupon
|
14
14
|
attr_reader :amount
|
15
|
+
attr_reader :percent
|
15
16
|
attr_reader :expires_at
|
16
17
|
attr_reader :metadata
|
17
18
|
attr_reader :sandbox
|
@@ -59,6 +60,10 @@ module ProcessOut
|
|
59
60
|
@amount = val
|
60
61
|
end
|
61
62
|
|
63
|
+
def percent=(val)
|
64
|
+
@percent = val
|
65
|
+
end
|
66
|
+
|
62
67
|
def expires_at=(val)
|
63
68
|
@expires_at = val
|
64
69
|
end
|
@@ -88,6 +93,7 @@ module ProcessOut
|
|
88
93
|
self.subscription = data.fetch(:subscription, nil)
|
89
94
|
self.coupon = data.fetch(:coupon, nil)
|
90
95
|
self.amount = data.fetch(:amount, nil)
|
96
|
+
self.percent = data.fetch(:percent, nil)
|
91
97
|
self.expires_at = data.fetch(:expires_at, nil)
|
92
98
|
self.metadata = data.fetch(:metadata, nil)
|
93
99
|
self.sandbox = data.fetch(:sandbox, nil)
|
@@ -122,6 +128,9 @@ module ProcessOut
|
|
122
128
|
if data.include? "amount"
|
123
129
|
self.amount = data["amount"]
|
124
130
|
end
|
131
|
+
if data.include? "percent"
|
132
|
+
self.percent = data["percent"]
|
133
|
+
end
|
125
134
|
if data.include? "expires_at"
|
126
135
|
self.expires_at = data["expires_at"]
|
127
136
|
end
|
@@ -150,6 +159,7 @@ module ProcessOut
|
|
150
159
|
self.subscription = data.fetch(:subscription, self.subscription)
|
151
160
|
self.coupon = data.fetch(:coupon, self.coupon)
|
152
161
|
self.amount = data.fetch(:amount, self.amount)
|
162
|
+
self.percent = data.fetch(:percent, self.percent)
|
153
163
|
self.expires_at = data.fetch(:expires_at, self.expires_at)
|
154
164
|
self.metadata = data.fetch(:metadata, self.metadata)
|
155
165
|
self.sandbox = data.fetch(:sandbox, self.sandbox)
|
data/lib/processout/invoice.rb
CHANGED
@@ -12,6 +12,7 @@ module ProcessOut
|
|
12
12
|
attr_reader :transaction
|
13
13
|
attr_reader :customer
|
14
14
|
attr_reader :subscription
|
15
|
+
attr_reader :details
|
15
16
|
attr_reader :url
|
16
17
|
attr_reader :name
|
17
18
|
attr_reader :statement_descriptor
|
@@ -22,8 +23,6 @@ module ProcessOut
|
|
22
23
|
attr_reader :amount
|
23
24
|
attr_reader :currency
|
24
25
|
attr_reader :metadata
|
25
|
-
attr_reader :request_email
|
26
|
-
attr_reader :request_shipping
|
27
26
|
attr_reader :return_url
|
28
27
|
attr_reader :cancel_url
|
29
28
|
attr_reader :sandbox
|
@@ -78,6 +77,21 @@ module ProcessOut
|
|
78
77
|
|
79
78
|
end
|
80
79
|
|
80
|
+
def details=(val)
|
81
|
+
if val.length > 0 and val[0].instance_of? InvoiceDetail
|
82
|
+
@details = val
|
83
|
+
else
|
84
|
+
l = Array.new
|
85
|
+
for v in val
|
86
|
+
obj = InvoiceDetail.new(@client)
|
87
|
+
obj.fill_with_data(v)
|
88
|
+
l.push(obj)
|
89
|
+
end
|
90
|
+
@details = l
|
91
|
+
end
|
92
|
+
|
93
|
+
end
|
94
|
+
|
81
95
|
def url=(val)
|
82
96
|
@url = val
|
83
97
|
end
|
@@ -118,14 +132,6 @@ module ProcessOut
|
|
118
132
|
@metadata = val
|
119
133
|
end
|
120
134
|
|
121
|
-
def request_email=(val)
|
122
|
-
@request_email = val
|
123
|
-
end
|
124
|
-
|
125
|
-
def request_shipping=(val)
|
126
|
-
@request_shipping = val
|
127
|
-
end
|
128
|
-
|
129
135
|
def return_url=(val)
|
130
136
|
@return_url = val
|
131
137
|
end
|
@@ -155,6 +161,7 @@ module ProcessOut
|
|
155
161
|
self.transaction = data.fetch(:transaction, nil)
|
156
162
|
self.customer = data.fetch(:customer, nil)
|
157
163
|
self.subscription = data.fetch(:subscription, nil)
|
164
|
+
self.details = data.fetch(:details, nil)
|
158
165
|
self.url = data.fetch(:url, nil)
|
159
166
|
self.name = data.fetch(:name, nil)
|
160
167
|
self.statement_descriptor = data.fetch(:statement_descriptor, nil)
|
@@ -165,8 +172,6 @@ module ProcessOut
|
|
165
172
|
self.amount = data.fetch(:amount, nil)
|
166
173
|
self.currency = data.fetch(:currency, nil)
|
167
174
|
self.metadata = data.fetch(:metadata, nil)
|
168
|
-
self.request_email = data.fetch(:request_email, nil)
|
169
|
-
self.request_shipping = data.fetch(:request_shipping, nil)
|
170
175
|
self.return_url = data.fetch(:return_url, nil)
|
171
176
|
self.cancel_url = data.fetch(:cancel_url, nil)
|
172
177
|
self.sandbox = data.fetch(:sandbox, nil)
|
@@ -201,6 +206,9 @@ module ProcessOut
|
|
201
206
|
if data.include? "subscription"
|
202
207
|
self.subscription = data["subscription"]
|
203
208
|
end
|
209
|
+
if data.include? "details"
|
210
|
+
self.details = data["details"]
|
211
|
+
end
|
204
212
|
if data.include? "url"
|
205
213
|
self.url = data["url"]
|
206
214
|
end
|
@@ -231,12 +239,6 @@ module ProcessOut
|
|
231
239
|
if data.include? "metadata"
|
232
240
|
self.metadata = data["metadata"]
|
233
241
|
end
|
234
|
-
if data.include? "request_email"
|
235
|
-
self.request_email = data["request_email"]
|
236
|
-
end
|
237
|
-
if data.include? "request_shipping"
|
238
|
-
self.request_shipping = data["request_shipping"]
|
239
|
-
end
|
240
242
|
if data.include? "return_url"
|
241
243
|
self.return_url = data["return_url"]
|
242
244
|
end
|
@@ -265,6 +267,7 @@ module ProcessOut
|
|
265
267
|
self.transaction = data.fetch(:transaction, self.transaction)
|
266
268
|
self.customer = data.fetch(:customer, self.customer)
|
267
269
|
self.subscription = data.fetch(:subscription, self.subscription)
|
270
|
+
self.details = data.fetch(:details, self.details)
|
268
271
|
self.url = data.fetch(:url, self.url)
|
269
272
|
self.name = data.fetch(:name, self.name)
|
270
273
|
self.statement_descriptor = data.fetch(:statement_descriptor, self.statement_descriptor)
|
@@ -275,8 +278,6 @@ module ProcessOut
|
|
275
278
|
self.amount = data.fetch(:amount, self.amount)
|
276
279
|
self.currency = data.fetch(:currency, self.currency)
|
277
280
|
self.metadata = data.fetch(:metadata, self.metadata)
|
278
|
-
self.request_email = data.fetch(:request_email, self.request_email)
|
279
|
-
self.request_shipping = data.fetch(:request_shipping, self.request_shipping)
|
280
281
|
self.return_url = data.fetch(:return_url, self.return_url)
|
281
282
|
self.cancel_url = data.fetch(:cancel_url, self.cancel_url)
|
282
283
|
self.sandbox = data.fetch(:sandbox, self.sandbox)
|
@@ -479,13 +480,12 @@ module ProcessOut
|
|
479
480
|
"amount" => @amount,
|
480
481
|
"currency" => @currency,
|
481
482
|
"metadata" => @metadata,
|
483
|
+
"details" => @details,
|
482
484
|
"statement_descriptor" => @statement_descriptor,
|
483
485
|
"statement_descriptor_phone" => @statement_descriptor_phone,
|
484
486
|
"statement_descriptor_city" => @statement_descriptor_city,
|
485
487
|
"statement_descriptor_company" => @statement_descriptor_company,
|
486
488
|
"statement_descriptor_url" => @statement_descriptor_url,
|
487
|
-
"request_email" => @request_email,
|
488
|
-
"request_shipping" => @request_shipping,
|
489
489
|
"return_url" => @return_url,
|
490
490
|
"cancel_url" => @cancel_url,
|
491
491
|
"customer_id" => options.fetch(:customer_id, nil)
|
@@ -519,13 +519,12 @@ module ProcessOut
|
|
519
519
|
"amount" => @amount,
|
520
520
|
"currency" => @currency,
|
521
521
|
"metadata" => @metadata,
|
522
|
+
"details" => @details,
|
522
523
|
"statement_descriptor" => @statement_descriptor,
|
523
524
|
"statement_descriptor_phone" => @statement_descriptor_phone,
|
524
525
|
"statement_descriptor_city" => @statement_descriptor_city,
|
525
526
|
"statement_descriptor_company" => @statement_descriptor_company,
|
526
527
|
"statement_descriptor_url" => @statement_descriptor_url,
|
527
|
-
"request_email" => @request_email,
|
528
|
-
"request_shipping" => @request_shipping,
|
529
528
|
"return_url" => @return_url,
|
530
529
|
"cancel_url" => @cancel_url,
|
531
530
|
"customer_id" => customer_id
|
@@ -0,0 +1,82 @@
|
|
1
|
+
# The content of this file was automatically generated
|
2
|
+
|
3
|
+
require "cgi"
|
4
|
+
require "processout/networking/request"
|
5
|
+
require "processout/networking/response"
|
6
|
+
|
7
|
+
module ProcessOut
|
8
|
+
class InvoiceDetail
|
9
|
+
|
10
|
+
attr_reader :type
|
11
|
+
attr_reader :amount
|
12
|
+
attr_reader :metadata
|
13
|
+
|
14
|
+
|
15
|
+
def type=(val)
|
16
|
+
@type = val
|
17
|
+
end
|
18
|
+
|
19
|
+
def amount=(val)
|
20
|
+
@amount = val
|
21
|
+
end
|
22
|
+
|
23
|
+
def metadata=(val)
|
24
|
+
@metadata = val
|
25
|
+
end
|
26
|
+
|
27
|
+
|
28
|
+
# Initializes the InvoiceDetail object
|
29
|
+
# Params:
|
30
|
+
# +client+:: +ProcessOut+ client instance
|
31
|
+
# +data+:: data that can be used to fill the object
|
32
|
+
def initialize(client, data = {})
|
33
|
+
@client = client
|
34
|
+
|
35
|
+
self.type = data.fetch(:type, nil)
|
36
|
+
self.amount = data.fetch(:amount, nil)
|
37
|
+
self.metadata = data.fetch(:metadata, nil)
|
38
|
+
|
39
|
+
end
|
40
|
+
|
41
|
+
# Create a new InvoiceDetail using the current client
|
42
|
+
def new(data = {})
|
43
|
+
InvoiceDetail.new(@client, data)
|
44
|
+
end
|
45
|
+
|
46
|
+
# Fills the object with data coming from the API
|
47
|
+
# Params:
|
48
|
+
# +data+:: +Hash+ of data coming from the API
|
49
|
+
def fill_with_data(data)
|
50
|
+
if data.nil?
|
51
|
+
return self
|
52
|
+
end
|
53
|
+
if data.include? "type"
|
54
|
+
self.type = data["type"]
|
55
|
+
end
|
56
|
+
if data.include? "amount"
|
57
|
+
self.amount = data["amount"]
|
58
|
+
end
|
59
|
+
if data.include? "metadata"
|
60
|
+
self.metadata = data["metadata"]
|
61
|
+
end
|
62
|
+
|
63
|
+
self
|
64
|
+
end
|
65
|
+
|
66
|
+
# Prefills the object with the data passed as parameters
|
67
|
+
# Params:
|
68
|
+
# +data+:: +Hash+ of data
|
69
|
+
def prefill(data)
|
70
|
+
if data.nil?
|
71
|
+
return self
|
72
|
+
end
|
73
|
+
self.type = data.fetch(:type, self.type)
|
74
|
+
self.amount = data.fetch(:amount, self.amount)
|
75
|
+
self.metadata = data.fetch(:metadata, self.metadata)
|
76
|
+
|
77
|
+
self
|
78
|
+
end
|
79
|
+
|
80
|
+
|
81
|
+
end
|
82
|
+
end
|
data/lib/processout/plan.rb
CHANGED
@@ -9,6 +9,7 @@ module ProcessOut
|
|
9
9
|
|
10
10
|
attr_reader :id
|
11
11
|
attr_reader :project
|
12
|
+
attr_reader :url
|
12
13
|
attr_reader :name
|
13
14
|
attr_reader :amount
|
14
15
|
attr_reader :currency
|
@@ -36,6 +37,10 @@ module ProcessOut
|
|
36
37
|
|
37
38
|
end
|
38
39
|
|
40
|
+
def url=(val)
|
41
|
+
@url = val
|
42
|
+
end
|
43
|
+
|
39
44
|
def name=(val)
|
40
45
|
@name = val
|
41
46
|
end
|
@@ -86,6 +91,7 @@ module ProcessOut
|
|
86
91
|
|
87
92
|
self.id = data.fetch(:id, nil)
|
88
93
|
self.project = data.fetch(:project, nil)
|
94
|
+
self.url = data.fetch(:url, nil)
|
89
95
|
self.name = data.fetch(:name, nil)
|
90
96
|
self.amount = data.fetch(:amount, nil)
|
91
97
|
self.currency = data.fetch(:currency, nil)
|
@@ -117,6 +123,9 @@ module ProcessOut
|
|
117
123
|
if data.include? "project"
|
118
124
|
self.project = data["project"]
|
119
125
|
end
|
126
|
+
if data.include? "url"
|
127
|
+
self.url = data["url"]
|
128
|
+
end
|
120
129
|
if data.include? "name"
|
121
130
|
self.name = data["name"]
|
122
131
|
end
|
@@ -160,6 +169,7 @@ module ProcessOut
|
|
160
169
|
end
|
161
170
|
self.id = data.fetch(:id, self.id)
|
162
171
|
self.project = data.fetch(:project, self.project)
|
172
|
+
self.url = data.fetch(:url, self.url)
|
163
173
|
self.name = data.fetch(:name, self.name)
|
164
174
|
self.amount = data.fetch(:amount, self.amount)
|
165
175
|
self.currency = data.fetch(:currency, self.currency)
|
@@ -21,6 +21,8 @@ module ProcessOut
|
|
21
21
|
attr_reader :authorized
|
22
22
|
attr_reader :captured
|
23
23
|
attr_reader :processout_fee
|
24
|
+
attr_reader :estimated_fee
|
25
|
+
attr_reader :gateway_fee
|
24
26
|
attr_reader :metadata
|
25
27
|
attr_reader :sandbox
|
26
28
|
attr_reader :created_at
|
@@ -117,6 +119,14 @@ module ProcessOut
|
|
117
119
|
@processout_fee = val
|
118
120
|
end
|
119
121
|
|
122
|
+
def estimated_fee=(val)
|
123
|
+
@estimated_fee = val
|
124
|
+
end
|
125
|
+
|
126
|
+
def gateway_fee=(val)
|
127
|
+
@gateway_fee = val
|
128
|
+
end
|
129
|
+
|
120
130
|
def metadata=(val)
|
121
131
|
@metadata = val
|
122
132
|
end
|
@@ -151,6 +161,8 @@ module ProcessOut
|
|
151
161
|
self.authorized = data.fetch(:authorized, nil)
|
152
162
|
self.captured = data.fetch(:captured, nil)
|
153
163
|
self.processout_fee = data.fetch(:processout_fee, nil)
|
164
|
+
self.estimated_fee = data.fetch(:estimated_fee, nil)
|
165
|
+
self.gateway_fee = data.fetch(:gateway_fee, nil)
|
154
166
|
self.metadata = data.fetch(:metadata, nil)
|
155
167
|
self.sandbox = data.fetch(:sandbox, nil)
|
156
168
|
self.created_at = data.fetch(:created_at, nil)
|
@@ -211,6 +223,12 @@ module ProcessOut
|
|
211
223
|
if data.include? "processout_fee"
|
212
224
|
self.processout_fee = data["processout_fee"]
|
213
225
|
end
|
226
|
+
if data.include? "estimated_fee"
|
227
|
+
self.estimated_fee = data["estimated_fee"]
|
228
|
+
end
|
229
|
+
if data.include? "gateway_fee"
|
230
|
+
self.gateway_fee = data["gateway_fee"]
|
231
|
+
end
|
214
232
|
if data.include? "metadata"
|
215
233
|
self.metadata = data["metadata"]
|
216
234
|
end
|
@@ -245,6 +263,8 @@ module ProcessOut
|
|
245
263
|
self.authorized = data.fetch(:authorized, self.authorized)
|
246
264
|
self.captured = data.fetch(:captured, self.captured)
|
247
265
|
self.processout_fee = data.fetch(:processout_fee, self.processout_fee)
|
266
|
+
self.estimated_fee = data.fetch(:estimated_fee, self.estimated_fee)
|
267
|
+
self.gateway_fee = data.fetch(:gateway_fee, self.gateway_fee)
|
248
268
|
self.metadata = data.fetch(:metadata, self.metadata)
|
249
269
|
self.sandbox = data.fetch(:sandbox, self.sandbox)
|
250
270
|
self.created_at = data.fetch(:created_at, self.created_at)
|
data/lib/processout/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: processout
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Manuel HUEZ
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2017-02-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -72,6 +72,7 @@ files:
|
|
72
72
|
- lib/processout/activity.rb
|
73
73
|
- lib/processout/authorization_request.rb
|
74
74
|
- lib/processout/card.rb
|
75
|
+
- lib/processout/card_information.rb
|
75
76
|
- lib/processout/coupon.rb
|
76
77
|
- lib/processout/customer.rb
|
77
78
|
- lib/processout/customer_action.rb
|
@@ -85,6 +86,7 @@ files:
|
|
85
86
|
- lib/processout/gateway.rb
|
86
87
|
- lib/processout/gateway_configuration.rb
|
87
88
|
- lib/processout/invoice.rb
|
89
|
+
- lib/processout/invoice_detail.rb
|
88
90
|
- lib/processout/networking/request.rb
|
89
91
|
- lib/processout/networking/response.rb
|
90
92
|
- lib/processout/plan.rb
|