belvo 0.7.0 → 0.8.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8eec099b22dbcb9dbac55982ac84c447bdae2f69c5f06bb310ea8a1be8889b1d
4
- data.tar.gz: dfe77adac6722c395f8b31c867a2a803dabd226fcbda6452ffb29dbe6310e412
3
+ metadata.gz: 53c6172de053ccd0f9028de57bcbf117bf70203d145d43683aa2bb9ea655ff07
4
+ data.tar.gz: 68252e440ba5aad457873c11e4006e07498af01a339b807d8d5a2620e29e2d63
5
5
  SHA512:
6
- metadata.gz: 71f7405acc9de362147b1182644c0af7bfe358160d070eaaae59b41d95caec18800d9bb589e61ef7dd0ae6ef2c22418cda0dfcd636d1f5165ae430d01b5dd0be
7
- data.tar.gz: 90c3ce711c21df50880301629d3555f8dff981441e1dc30e1065e5182550dfd1e1bf43e282d47e58da05cd8131669eb00974f48aa7879ca22c06cf11b94d46a7
6
+ metadata.gz: 92b08d1c008377e9bffd4ca66fc6b7fa680bda7a2856a0eda10c62045eddf1e51c24e55074b34cf066d8f94c3412817c514f6a7a92bb23cab4c192c5a15f3b23
7
+ data.tar.gz: 814a61e039b60718acb159e33e4724eb59468857769363ec1746e4fbd14ebcccab4ff38ba462f145031dc647851cd15f454bfe165c66ff779b87f8bbe585d5d5
data/.travis.yml CHANGED
@@ -14,4 +14,5 @@ deploy:
14
14
  on:
15
15
  tags: true
16
16
  repo: belvo-finance/belvo-ruby
17
+ branch: master
17
18
  skip_cleanup: 'true'
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.co. All
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
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- belvo (0.7.0)
4
+ belvo (0.8.0)
5
5
  faraday
6
6
  faraday_middleware
7
7
  typhoeus
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.co
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.co'
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.co']
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
@@ -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
@@ -2,5 +2,5 @@
2
2
 
3
3
  module Belvo
4
4
  # belvo-ruby current version
5
- VERSION = '0.7.0'
5
+ VERSION = '0.8.0'
6
6
  end
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.7.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: 2020-11-25 00:00:00.000000000 Z
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.co
144
+ - sdks@belvo.com
145
145
  executables: []
146
146
  extensions: []
147
147
  extra_rdoc_files: []