belvo 0.7.0 → 0.8.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/.travis.yml +1 -0
- data/CODE_OF_CONDUCT.md +1 -1
- data/Gemfile.lock +1 -1
- data/README.md +4 -2
- data/belvo.gemspec +1 -1
- data/lib/belvo.rb +6 -0
- data/lib/belvo/options.rb +24 -0
- data/lib/belvo/resources.rb +36 -2
- data/lib/belvo/version.rb +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 53c6172de053ccd0f9028de57bcbf117bf70203d145d43683aa2bb9ea655ff07
|
4
|
+
data.tar.gz: 68252e440ba5aad457873c11e4006e07498af01a339b807d8d5a2620e29e2d63
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 92b08d1c008377e9bffd4ca66fc6b7fa680bda7a2856a0eda10c62045eddf1e51c24e55074b34cf066d8f94c3412817c514f6a7a92bb23cab4c192c5a15f3b23
|
7
|
+
data.tar.gz: 814a61e039b60718acb159e33e4724eb59468857769363ec1746e4fbd14ebcccab4ff38ba462f145031dc647851cd15f454bfe165c66ff779b87f8bbe585d5d5
|
data/.travis.yml
CHANGED
data/CODE_OF_CONDUCT.md
CHANGED
@@ -55,7 +55,7 @@ further defined and clarified by project maintainers.
|
|
55
55
|
## Enforcement
|
56
56
|
|
57
57
|
Instances of abusive, harassing, or otherwise unacceptable behavior may be
|
58
|
-
reported by contacting the project team at hello@belvo.
|
58
|
+
reported by contacting the project team at hello@belvo.com. All
|
59
59
|
complaints will be reviewed and investigated and will result in a response that
|
60
60
|
is deemed necessary and appropriate to the circumstances. The project team is
|
61
61
|
obligated to maintain confidentiality with regard to the reporter of an incident.
|
data/Gemfile.lock
CHANGED
data/README.md
CHANGED
@@ -9,7 +9,7 @@
|
|
9
9
|
## 📕 Documentation
|
10
10
|
How to use `belvo-ruby`: https://belvo-finance.github.io/belvo-ruby/
|
11
11
|
|
12
|
-
If you want to check the full documentation about Belvo API: https://docs.belvo.
|
12
|
+
If you want to check the full documentation about Belvo API: https://docs.belvo.com
|
13
13
|
|
14
14
|
Or if you want to more information about:
|
15
15
|
* [Getting Belvo API keys](https://developers.belvo.com/docs/get-your-belvo-api-keys)
|
@@ -41,7 +41,7 @@ require 'belvo'
|
|
41
41
|
belvo = Belvo::Client.new(
|
42
42
|
'af6e69ff-43fa-4e10-8d90-3d217309a1e5',
|
43
43
|
'gdi64m68Lc6xUjIKN3aJF2fZd51wD36lTjGVyJO5xQBfL7PRsgFef-ADXBxIhUnd',
|
44
|
-
'https://sandbox.belvo.
|
44
|
+
'https://sandbox.belvo.com'
|
45
45
|
)
|
46
46
|
|
47
47
|
begin
|
@@ -61,6 +61,8 @@ rescue Belvo::RequestError => e
|
|
61
61
|
end
|
62
62
|
```
|
63
63
|
|
64
|
+
**Note:** If you create a `Link` without specifying [access_mode](https://docs.belvo.com/#operation/RegisterLink), the SDK will respect the default value from the API.
|
65
|
+
|
64
66
|
## Development
|
65
67
|
|
66
68
|
After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
|
data/belvo.gemspec
CHANGED
@@ -6,7 +6,7 @@ Gem::Specification.new do |spec|
|
|
6
6
|
spec.name = 'belvo'
|
7
7
|
spec.version = Belvo::VERSION
|
8
8
|
spec.authors = ['Belvo Finance S.L.']
|
9
|
-
spec.email = ['sdks@belvo.
|
9
|
+
spec.email = ['sdks@belvo.com']
|
10
10
|
spec.license = 'MIT'
|
11
11
|
spec.summary = 'The Ruby gem for the Belvo API'
|
12
12
|
spec.description = %(Belvo is the leading Open Banking API platform in Latin
|
data/lib/belvo.rb
CHANGED
@@ -75,6 +75,12 @@ module Belvo
|
|
75
75
|
@invoices = Invoice.new @session
|
76
76
|
end
|
77
77
|
|
78
|
+
# Provides access to TaxComplianceStatus resource
|
79
|
+
# @return [TaxComplianceStatus]
|
80
|
+
def tax_compliance_status
|
81
|
+
@tax_compliance_status = TaxComplianceStatus.new @session
|
82
|
+
end
|
83
|
+
|
78
84
|
# Provides access to TaxReturns resource
|
79
85
|
# @return [TaxReturn]
|
80
86
|
def tax_returns
|
data/lib/belvo/options.rb
CHANGED
@@ -117,6 +117,21 @@ module Belvo
|
|
117
117
|
)
|
118
118
|
end
|
119
119
|
|
120
|
+
# @!class TaxComplianceStatusOptions < Faraday::Options
|
121
|
+
# Contains configurable properties of a TaxComplianceStatus
|
122
|
+
# @!attribute save_data [rw] Should data be persisted or not.
|
123
|
+
# @!attribute token [rw] OTP token required by the institution
|
124
|
+
# @!attribute encryption_key [rw] Custom encryption key
|
125
|
+
# @!attribute attach_pdf [rw] Should the PDF file be included in the
|
126
|
+
# response or not.
|
127
|
+
class TaxComplianceStatusOptions < Faraday::Options.new(
|
128
|
+
:token,
|
129
|
+
:encryption_key,
|
130
|
+
:save_data,
|
131
|
+
:attach_pdf
|
132
|
+
)
|
133
|
+
end
|
134
|
+
|
120
135
|
# @!class TaxReturnOptions < Faraday::Options
|
121
136
|
# Contains configurable properties of a TaxReturn
|
122
137
|
# @!attribute save_data [rw] Should data be persisted or not.
|
@@ -146,4 +161,13 @@ module Belvo
|
|
146
161
|
:attach_pdf
|
147
162
|
)
|
148
163
|
end
|
164
|
+
# @!class WidgetTokenOptions < Faraday::Options
|
165
|
+
# Contains configurable properties of a WidgetToken
|
166
|
+
# @!attribute scopes [rw] Should have WidgetToken's permssions.
|
167
|
+
# @!attribute link_id [rw] Should the WidgetToken be tied to a specific link.
|
168
|
+
class WidgetTokenOptions < Faraday::Options.new(
|
169
|
+
:scopes,
|
170
|
+
:link_id
|
171
|
+
)
|
172
|
+
end
|
149
173
|
end
|
data/lib/belvo/resources.rb
CHANGED
@@ -337,6 +337,38 @@ module Belvo
|
|
337
337
|
end
|
338
338
|
end
|
339
339
|
|
340
|
+
# A Tax compliance status is the representation of the tax situation
|
341
|
+
# of a person or a business to the tax authority in the country.
|
342
|
+
class TaxComplianceStatus < Resource
|
343
|
+
def initialize(session)
|
344
|
+
super(session)
|
345
|
+
@endpoint = 'tax-compliance-status/'
|
346
|
+
end
|
347
|
+
|
348
|
+
# Retrieve tax compliance status information from a specific fiscal link.
|
349
|
+
# @param link [String] Link UUID
|
350
|
+
# @param options [TaxComplianceStatusOptions] Configurable properties
|
351
|
+
# @return [Hash] created tax compliance status details
|
352
|
+
# @raise [RequestError] If response code is different than 2XX
|
353
|
+
def retrieve(link:, options: nil)
|
354
|
+
options = TaxComplianceStatusOptions.from(options)
|
355
|
+
body = {
|
356
|
+
link: link,
|
357
|
+
token: options.token,
|
358
|
+
encryption_key: options.encryption_key,
|
359
|
+
save_data: options.save_data || true,
|
360
|
+
attach_pdf: options.attach_pdf
|
361
|
+
}.merge(options)
|
362
|
+
body = clean body: body
|
363
|
+
@session.post(@endpoint, body)
|
364
|
+
end
|
365
|
+
|
366
|
+
def resume(_session_id, _token, _link: nil)
|
367
|
+
raise NotImplementedError 'TaxComplianceStatus does not support'\
|
368
|
+
' resuming a session'
|
369
|
+
end
|
370
|
+
end
|
371
|
+
|
340
372
|
# A Tax return is the representation of the tax return document sent every
|
341
373
|
# year by a person or a business to the tax authority in the country.
|
342
374
|
class TaxReturn < Resource
|
@@ -421,12 +453,14 @@ module Belvo
|
|
421
453
|
@endpoint = 'token/'
|
422
454
|
end
|
423
455
|
|
424
|
-
def create
|
456
|
+
def create(options: nil)
|
457
|
+
options = WidgetTokenOptions.from(options)
|
425
458
|
body = {
|
426
459
|
id: @session.key_id,
|
427
460
|
password: @session.key_password,
|
428
461
|
scopes: 'read_institutions,write_links,read_links,delete_links'
|
429
|
-
}
|
462
|
+
}.merge(options)
|
463
|
+
body = clean body: body
|
430
464
|
@session.post(@endpoint, body)
|
431
465
|
end
|
432
466
|
end
|
data/lib/belvo/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: belvo
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.8.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Belvo Finance S.L.
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-02-03 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: faraday
|
@@ -141,7 +141,7 @@ description: |-
|
|
141
141
|
America and the easiest way for users to connect their
|
142
142
|
account to an app
|
143
143
|
email:
|
144
|
-
- sdks@belvo.
|
144
|
+
- sdks@belvo.com
|
145
145
|
executables: []
|
146
146
|
extensions: []
|
147
147
|
extra_rdoc_files: []
|