mollie-api-ruby 4.5.0 → 4.6.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/CHANGELOG.md +8 -0
- data/examples/onboarding/get.rb +1 -0
- data/examples/onboarding/submit.rb +20 -0
- data/lib/mollie.rb +1 -0
- data/lib/mollie/onboarding.rb +36 -0
- data/lib/mollie/version.rb +1 -1
- data/test/fixtures/onboarding/me.json +26 -0
- data/test/fixtures/onboarding/submit.json +20 -0
- data/test/mollie/onboarding_test.rb +59 -0
- metadata +11 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a164bb83c73b590aea58762c39d6ec62a24316b606bd80ca94ddcd2203665015
|
4
|
+
data.tar.gz: 8524375f756099e76f1f5b68d6d5761808040fbb3a7c25354e457e09822f71e8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c269f9f2f4dca464de98383145b1e80fe9dea93093b7204c0163dadacde28e5d8707c486b904ba2f7b7b7dfe4a9f0992038c134f6fe040e0a8303daae7787b5e
|
7
|
+
data.tar.gz: 7c96434960a02ecad76f76d404ae64404c39b20aefa144950d73d844f69241744bc6b41e67cdf2c6c4afa8a7c9ebe42c4f4daa42586bca5cb0a0cebf497f6a75
|
data/CHANGELOG.md
CHANGED
@@ -4,6 +4,14 @@
|
|
4
4
|
|
5
5
|
All notable changes to this project will be documented in this file.
|
6
6
|
|
7
|
+
## 4.6.0 - 2019-10-01
|
8
|
+
|
9
|
+
- Add Onboarding APIs (Get onboarding status, Submit onboarding data)
|
10
|
+
|
11
|
+
## 4.5.0 - 2019-09-16
|
12
|
+
|
13
|
+
- Add helper method to retrieve payments for subscription.
|
14
|
+
|
7
15
|
## 4.4.1 - 2019-08-12
|
8
16
|
|
9
17
|
- Payment: Require customer_id when retrieving a mandate.
|
@@ -0,0 +1 @@
|
|
1
|
+
Mollie::Onboarding.me
|
@@ -0,0 +1,20 @@
|
|
1
|
+
Mollie::Onboarding.submit(
|
2
|
+
organization: {
|
3
|
+
name: "Mollie B.V.",
|
4
|
+
address: {
|
5
|
+
streetAndNumber: "Keizersgracht 313",
|
6
|
+
postalCode: "1018 EE",
|
7
|
+
city: "Amsterdam",
|
8
|
+
country: "NL"
|
9
|
+
},
|
10
|
+
registrationNumber: "30204462",
|
11
|
+
vatNumber: "NL815839091B01"
|
12
|
+
},
|
13
|
+
profile: {
|
14
|
+
name: "Mollie",
|
15
|
+
url: "https://www.mollie.com",
|
16
|
+
email: "info@mollie.com",
|
17
|
+
phone: "+31208202070",
|
18
|
+
categoryCode: 6012
|
19
|
+
}
|
20
|
+
)
|
data/lib/mollie.rb
CHANGED
@@ -0,0 +1,36 @@
|
|
1
|
+
module Mollie
|
2
|
+
class Onboarding < Base
|
3
|
+
attr_accessor :name,
|
4
|
+
:signed_up_at,
|
5
|
+
:status,
|
6
|
+
:can_receive_payments,
|
7
|
+
:can_receive_settlements,
|
8
|
+
:_links
|
9
|
+
|
10
|
+
alias links _links
|
11
|
+
|
12
|
+
def self.me(options = {})
|
13
|
+
response = Client.instance.perform_http_call('GET', 'onboarding', 'me', {}, options)
|
14
|
+
new(response)
|
15
|
+
end
|
16
|
+
|
17
|
+
def self.submit(data = {}, options = {})
|
18
|
+
Client.instance.perform_http_call('POST', 'onboarding', 'me', data, options)
|
19
|
+
nil
|
20
|
+
end
|
21
|
+
|
22
|
+
def dashboard
|
23
|
+
Util.extract_url(links, 'onboarding')
|
24
|
+
end
|
25
|
+
|
26
|
+
def organization(options = {})
|
27
|
+
resource_url = Util.extract_url(links, 'organization')
|
28
|
+
response = Client.instance.perform_http_call('GET', resource_url, nil, {}, options)
|
29
|
+
Organization.new(response)
|
30
|
+
end
|
31
|
+
|
32
|
+
def signed_up_at=(signed_up_at)
|
33
|
+
@signed_up_at = Time.parse(signed_up_at.to_s)
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
data/lib/mollie/version.rb
CHANGED
@@ -0,0 +1,26 @@
|
|
1
|
+
{
|
2
|
+
"resource": "onboarding",
|
3
|
+
"name": "Mollie B.V.",
|
4
|
+
"signedUpAt": "2018-12-20T10:49:08+00:00",
|
5
|
+
"status": "completed",
|
6
|
+
"canReceivePayments": true,
|
7
|
+
"canReceiveSettlements": true,
|
8
|
+
"_links": {
|
9
|
+
"self": {
|
10
|
+
"href": "https://api.mollie.com/v2/onboarding/me",
|
11
|
+
"type": "application/hal+json"
|
12
|
+
},
|
13
|
+
"onboarding": {
|
14
|
+
"href": "https://www.mollie.com/dashboard/onboarding",
|
15
|
+
"type": "text/html"
|
16
|
+
},
|
17
|
+
"organization": {
|
18
|
+
"href": "https://api.mollie.com/v2/organization/org_12345",
|
19
|
+
"type": "application/hal+json"
|
20
|
+
},
|
21
|
+
"documentation": {
|
22
|
+
"href": "https://docs.mollie.com/reference/v2/onboarding-api/get-onboarding-status",
|
23
|
+
"type": "text/html"
|
24
|
+
}
|
25
|
+
}
|
26
|
+
}
|
@@ -0,0 +1,20 @@
|
|
1
|
+
{
|
2
|
+
"organization": {
|
3
|
+
"name": "Mollie B.V.",
|
4
|
+
"address": {
|
5
|
+
"streetAndNumber": "Keizersgracht 313",
|
6
|
+
"postalCode": "1018 EE",
|
7
|
+
"city": "Amsterdam",
|
8
|
+
"country": "NL"
|
9
|
+
},
|
10
|
+
"registrationNumber": "30204462",
|
11
|
+
"vatNumber": "NL815839091B01"
|
12
|
+
},
|
13
|
+
"profile": {
|
14
|
+
"name": "Mollie",
|
15
|
+
"url": "https://www.mollie.com",
|
16
|
+
"email": "info@mollie.com",
|
17
|
+
"phone": "+31208202070",
|
18
|
+
"categoryCode": 6012
|
19
|
+
}
|
20
|
+
}
|
@@ -0,0 +1,59 @@
|
|
1
|
+
require 'helper'
|
2
|
+
|
3
|
+
module Mollie
|
4
|
+
class OnboardingTest < Test::Unit::TestCase
|
5
|
+
def test_get_onboarding
|
6
|
+
stub_request(:get, 'https://api.mollie.com/v2/onboarding/me')
|
7
|
+
.to_return(status: 200, body: read_fixture('onboarding/me.json'), headers: {})
|
8
|
+
|
9
|
+
onboarding = Onboarding.me
|
10
|
+
assert_equal 'Mollie B.V.', onboarding.name
|
11
|
+
assert_equal 'completed', onboarding.status
|
12
|
+
assert_equal true, onboarding.can_receive_payments
|
13
|
+
assert_equal true, onboarding.can_receive_settlements
|
14
|
+
assert_equal Time.parse('2018-12-20T10:49:08+00:00'), onboarding.signed_up_at
|
15
|
+
assert_equal 'https://www.mollie.com/dashboard/onboarding', onboarding.dashboard
|
16
|
+
end
|
17
|
+
|
18
|
+
def test_submit_onboarding_data
|
19
|
+
minified_body = JSON.parse(read_fixture('onboarding/submit.json')).to_json
|
20
|
+
|
21
|
+
stub_request(:post, 'https://api.mollie.com/v2/onboarding/me')
|
22
|
+
.with(body: minified_body).to_return(status: 204)
|
23
|
+
|
24
|
+
assert_nil Onboarding.submit(
|
25
|
+
organization: {
|
26
|
+
name: "Mollie B.V.",
|
27
|
+
address: {
|
28
|
+
streetAndNumber: "Keizersgracht 313",
|
29
|
+
postalCode: "1018 EE",
|
30
|
+
city: "Amsterdam",
|
31
|
+
country: "NL"
|
32
|
+
},
|
33
|
+
registrationNumber: "30204462",
|
34
|
+
vatNumber: "NL815839091B01"
|
35
|
+
},
|
36
|
+
profile: {
|
37
|
+
name: "Mollie",
|
38
|
+
url: "https://www.mollie.com",
|
39
|
+
email: "info@mollie.com",
|
40
|
+
phone: "+31208202070",
|
41
|
+
categoryCode: 6012
|
42
|
+
}
|
43
|
+
)
|
44
|
+
end
|
45
|
+
|
46
|
+
def test_get_organization
|
47
|
+
stub_request(:get, 'https://api.mollie.com/v2/onboarding/me')
|
48
|
+
.to_return(status: 200, body: read_fixture('onboarding/me.json'), headers: {})
|
49
|
+
|
50
|
+
stub_request(:get, 'https://api.mollie.com/v2/organization/org_12345')
|
51
|
+
.to_return(status: 200, body: %({"id": "org_12345"}), headers: {})
|
52
|
+
|
53
|
+
onboarding = Onboarding.me
|
54
|
+
organization = onboarding.organization
|
55
|
+
|
56
|
+
assert_equal 'org_12345', organization.id
|
57
|
+
end
|
58
|
+
end
|
59
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mollie-api-ruby
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 4.
|
4
|
+
version: 4.6.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Mollie B.V.
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2019-
|
11
|
+
date: 2019-10-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rake
|
@@ -117,6 +117,8 @@ files:
|
|
117
117
|
- examples/mandates/list.rb
|
118
118
|
- examples/methods/get.rb
|
119
119
|
- examples/methods/list.rb
|
120
|
+
- examples/onboarding/get.rb
|
121
|
+
- examples/onboarding/submit.rb
|
120
122
|
- examples/orders/cancel-lines.rb
|
121
123
|
- examples/orders/cancel.rb
|
122
124
|
- examples/orders/create-refund.rb
|
@@ -186,6 +188,7 @@ files:
|
|
186
188
|
- lib/mollie/invoice.rb
|
187
189
|
- lib/mollie/list.rb
|
188
190
|
- lib/mollie/method.rb
|
191
|
+
- lib/mollie/onboarding.rb
|
189
192
|
- lib/mollie/order.rb
|
190
193
|
- lib/mollie/order/line.rb
|
191
194
|
- lib/mollie/order/refund.rb
|
@@ -207,6 +210,8 @@ files:
|
|
207
210
|
- mollie-api-ruby.gemspec
|
208
211
|
- test/fixtures/captures/get.json
|
209
212
|
- test/fixtures/captures/list.json
|
213
|
+
- test/fixtures/onboarding/me.json
|
214
|
+
- test/fixtures/onboarding/submit.json
|
210
215
|
- test/fixtures/orders/cancel_line.json
|
211
216
|
- test/fixtures/orders/cancel_line_qty.json
|
212
217
|
- test/fixtures/orders/create.json
|
@@ -236,6 +241,7 @@ files:
|
|
236
241
|
- test/mollie/invoice_test.rb
|
237
242
|
- test/mollie/list_test.rb
|
238
243
|
- test/mollie/method_test.rb
|
244
|
+
- test/mollie/onboarding_test.rb
|
239
245
|
- test/mollie/order/line_test.rb
|
240
246
|
- test/mollie/order/shipment_test.rb
|
241
247
|
- test/mollie/order_test.rb
|
@@ -282,6 +288,8 @@ test_files:
|
|
282
288
|
- test/fixtures/captures/list.json
|
283
289
|
- test/fixtures/subscriptions/get.json
|
284
290
|
- test/fixtures/subscriptions/get_payments.json
|
291
|
+
- test/fixtures/onboarding/submit.json
|
292
|
+
- test/fixtures/onboarding/me.json
|
285
293
|
- test/fixtures/shipments/get.json
|
286
294
|
- test/fixtures/shipments/create.json
|
287
295
|
- test/fixtures/shipments/update.json
|
@@ -306,6 +314,7 @@ test_files:
|
|
306
314
|
- test/mollie/payment_test.rb
|
307
315
|
- test/mollie/amount_test.rb
|
308
316
|
- test/mollie/refund_test.rb
|
317
|
+
- test/mollie/onboarding_test.rb
|
309
318
|
- test/mollie/util_test.rb
|
310
319
|
- test/mollie/settlement_test.rb
|
311
320
|
- test/mollie/payment/refund_test.rb
|