boletosimples 1.0.4 → 2.0.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.
Files changed (66) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +6 -0
  3. data/README.md +6 -7
  4. data/lib/boletosimples/configuration.rb +2 -2
  5. data/lib/boletosimples/response_error.rb +2 -2
  6. data/lib/boletosimples/version.rb +1 -1
  7. data/spec/boletosimples/configuration_spec.rb +3 -3
  8. data/spec/boletosimples/resources/bank_billet_spec.rb +2 -2
  9. data/spec/boletosimples/resources/customer_spec.rb +9 -4
  10. data/spec/boletosimples/resources/customer_subscription_spec.rb +1 -1
  11. data/spec/boletosimples/resources/installment_spec.rb +1 -1
  12. data/spec/fixtures/vcr_cassettes/last_request/bank_billets.yml +386 -520
  13. data/spec/fixtures/vcr_cassettes/resources/bank_billet/all.yml +78 -522
  14. data/spec/fixtures/vcr_cassettes/resources/bank_billet/cancel/success.yml +30 -12
  15. data/spec/fixtures/vcr_cassettes/resources/bank_billet/create/invalid_params.yml +32 -16
  16. data/spec/fixtures/vcr_cassettes/resources/bank_billet/create/invalid_root.yml +31 -15
  17. data/spec/fixtures/vcr_cassettes/resources/bank_billet/create/valid.yml +42 -28
  18. data/spec/fixtures/vcr_cassettes/resources/bank_billet/duplicate/success.yml +41 -27
  19. data/spec/fixtures/vcr_cassettes/resources/bank_billet/find.yml +46 -31
  20. data/spec/fixtures/vcr_cassettes/resources/bank_billet_account/all.yml +47 -103
  21. data/spec/fixtures/vcr_cassettes/resources/bank_billet_account/create/invalid_params.yml +31 -15
  22. data/spec/fixtures/vcr_cassettes/resources/bank_billet_account/create/invalid_root.yml +31 -15
  23. data/spec/fixtures/vcr_cassettes/resources/bank_billet_account/create/valid.yml +35 -19
  24. data/spec/fixtures/vcr_cassettes/resources/bank_billet_account/find.yml +35 -19
  25. data/spec/fixtures/vcr_cassettes/resources/bank_billet_discharge/all.yml +35 -41
  26. data/spec/fixtures/vcr_cassettes/resources/bank_billet_payment/all.yml +73 -72
  27. data/spec/fixtures/vcr_cassettes/resources/bank_billet_remittance/all.yml +39 -70
  28. data/spec/fixtures/vcr_cassettes/resources/customer/all.yml +111 -56
  29. data/spec/fixtures/vcr_cassettes/resources/customer/create/invalid_params.yml +35 -19
  30. data/spec/fixtures/vcr_cassettes/resources/customer/create/invalid_root.yml +35 -16
  31. data/spec/fixtures/vcr_cassettes/resources/customer/create/valid.yml +37 -21
  32. data/spec/fixtures/vcr_cassettes/resources/customer/find.yml +36 -20
  33. data/spec/fixtures/vcr_cassettes/resources/customer_import/all.yml +34 -18
  34. data/spec/fixtures/vcr_cassettes/resources/customer_import/create/invalid_params.yml +31 -15
  35. data/spec/fixtures/vcr_cassettes/resources/customer_import/create/invalid_root.yml +31 -15
  36. data/spec/fixtures/vcr_cassettes/resources/customer_import/create/valid.yml +36 -20
  37. data/spec/fixtures/vcr_cassettes/resources/customer_import/find.yml +34 -18
  38. data/spec/fixtures/vcr_cassettes/resources/customer_subscription/all.yml +35 -71
  39. data/spec/fixtures/vcr_cassettes/resources/customer_subscription/create/invalid_params.yml +32 -16
  40. data/spec/fixtures/vcr_cassettes/resources/customer_subscription/create/invalid_root.yml +31 -15
  41. data/spec/fixtures/vcr_cassettes/resources/customer_subscription/create/valid.yml +35 -19
  42. data/spec/fixtures/vcr_cassettes/resources/customer_subscription/find.yml +36 -20
  43. data/spec/fixtures/vcr_cassettes/resources/customer_subscription/next_charge.yml +36 -20
  44. data/spec/fixtures/vcr_cassettes/resources/customer_subscription_import/all.yml +34 -19
  45. data/spec/fixtures/vcr_cassettes/resources/customer_subscription_import/create/invalid_params.yml +31 -15
  46. data/spec/fixtures/vcr_cassettes/resources/customer_subscription_import/create/invalid_root.yml +31 -15
  47. data/spec/fixtures/vcr_cassettes/resources/customer_subscription_import/create/valid.yml +36 -20
  48. data/spec/fixtures/vcr_cassettes/resources/customer_subscription_import/find.yml +34 -18
  49. data/spec/fixtures/vcr_cassettes/resources/discharge/all.yml +37 -39
  50. data/spec/fixtures/vcr_cassettes/resources/discharge/create/invalid_params.yml +31 -15
  51. data/spec/fixtures/vcr_cassettes/resources/discharge/create/invalid_root.yml +31 -15
  52. data/spec/fixtures/vcr_cassettes/resources/discharge/create/valid.yml +37 -21
  53. data/spec/fixtures/vcr_cassettes/resources/discharge/find.yml +36 -18
  54. data/spec/fixtures/vcr_cassettes/resources/email_delivery/all.yml +1 -1
  55. data/spec/fixtures/vcr_cassettes/resources/event/all.yml +267 -432
  56. data/spec/fixtures/vcr_cassettes/resources/installment/all.yml +71 -375
  57. data/spec/fixtures/vcr_cassettes/resources/installment/create/invalid_params.yml +32 -16
  58. data/spec/fixtures/vcr_cassettes/resources/installment/create/invalid_root.yml +31 -15
  59. data/spec/fixtures/vcr_cassettes/resources/installment/create/valid.yml +35 -19
  60. data/spec/fixtures/vcr_cassettes/resources/installment/find.yml +59 -19
  61. data/spec/fixtures/vcr_cassettes/resources/remittance/all.yml +82 -81
  62. data/spec/fixtures/vcr_cassettes/resources/sns_delivery/all.yml +31 -15
  63. data/spec/fixtures/vcr_cassettes/resources/transaction/all.yml +72 -71
  64. data/spec/fixtures/vcr_cassettes/resources/web_hook/all.yml +33 -17
  65. data/spec/fixtures/vcr_cassettes/resources/webhook_delivery/all.yml +2657 -1206
  66. metadata +5 -186
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 2de0163631488d50f52b8f117fdcbbb1aaaef5c360420e7286a6d587ca4020f1
4
- data.tar.gz: 37c25f948bfd8f782a60b2708f87342d1f29b8653bd454ba5e3ef8bc0ca251ad
3
+ metadata.gz: 45f7d3c3d88c50c61728838d4c3b1e3664c8dd555cadb1d57379220d51aaba9a
4
+ data.tar.gz: ea7d7fc35cb62433fc8fb7da44d01ff29d1a340f26c9f882c1ad91c4e3687b37
5
5
  SHA512:
6
- metadata.gz: d305923267fc9b0099fabf49cde858b8876000e6881ae84a8c314c7573a44a3c6edf76633df4ca1ca2aea120c093d26c3b9908010155101552b40bf5183866a7
7
- data.tar.gz: 8f83e33d1bbb00c6ac965119207f8704587b440bbd5868be0ad260a9e436e105fcc2d5165e8c06c0fa3821c31f830a5aaa841fc8d4e86d0c75a1e36ecb03205a
6
+ metadata.gz: 3d22dd9edf36f28e3e0caf282a7ce20fc75a4652cdbe1270f66708912f17b35b6a6e17c18c9aac1f3c38f7c8e8de08b4951f9338e5828a158664731ce4a49c35
7
+ data.tar.gz: 3b3f5acf48399f3bf6964d1bd91c3208900fbc295f00b1755bf38435b4f6a1630e9247c84340eead8adef2b75ccc527bfccb57b8b8ea561d3a3337fa4a4ad1fe
data/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # Changelog
2
2
 
3
+ ## 2.0.0
4
+
5
+ ### Changes
6
+
7
+ - Update URLs based on new API: https://developers.kobana.com.br/reference/endpoints-1
8
+
3
9
  ## 1.0.4
4
10
 
5
11
  ### Changes
data/README.md CHANGED
@@ -5,7 +5,7 @@
5
5
 
6
6
  [gem]: https://rubygems.org/gems/boletosimples
7
7
 
8
- Biblioteca Ruby para acessar informações do [Boleto Simples](http://boletosimples.com.br) através da [API](http://api.boletosimples.com.br).
8
+ Biblioteca Ruby para acessar informações da [Kobana](https://www.kobana.com.br) através da [API](https://api.kobana.com.br).
9
9
 
10
10
  ## Instalação
11
11
 
@@ -23,15 +23,15 @@ Ou instale você mesmo:
23
23
 
24
24
  ## Configuração
25
25
 
26
- Saiba mais sobre o [Token de API ](https://api.boletosimples.com.br/authentication/token/)
26
+ Saiba mais sobre o [Token de API ](https://developers.kobana.com.br/reference/token-de-acesso)
27
27
 
28
28
  ```ruby
29
29
  require 'boletosimples'
30
30
 
31
31
  BoletoSimples.configure do |c|
32
32
  c.environment = :production # defaut :sandbox
33
- # production - https://boletosimples.com.br/conta/api/tokens
34
- # sandbox - https://sandbox.boletosimples.com.br/conta/api/tokens
33
+ # production - https://app.kobana.com.br/conta/api/tokens
34
+ # sandbox - https://app-sandbox.kobana.com.br/conta/api/tokens
35
35
  c.api_token = 'api-token'
36
36
  c.user_agent = 'email@minhaempresa.com.br' #Colocar um e-mail válido para contatos técnicos relacionado ao uso da API.
37
37
  # c.debug = true
@@ -50,7 +50,7 @@ ENV['BOLETOSIMPLES_DEBUG']
50
50
 
51
51
  ### Configurando cache
52
52
 
53
- É altamente recomendável utilizar o cache para evitar chegar no [limite de requisições](http://api.boletosimples.com.br/#limite-de-requisicoes)
53
+ É altamente recomendável utilizar o cache para evitar chegar no [limite de requisições](https://developers.kobana.com.br/reference/limite-de-requisições)
54
54
 
55
55
  Para isso recomendamos a utilização da gem [Dalli](https://github.com/mperham/dalli)
56
56
 
@@ -113,8 +113,7 @@ Exemplo:
113
113
  end
114
114
 
115
115
  # Cancelar um boleto
116
- @bank_billet = BoletoSimples::BankBillet.find(1)
117
- @bank_billet.cancel
116
+ @bank_billet = BoletoSimples::BankBillet.cancel(id: 1)
118
117
 
119
118
  ```
120
119
 
@@ -5,8 +5,8 @@ module BoletoSimples
5
5
  attr_accessor :environment, :cache, :user_agent, :api_token, :debug
6
6
 
7
7
  BASE_URI = {
8
- sandbox: 'https://sandbox.boletosimples.com.br/api/v1',
9
- production: 'https://boletosimples.com.br/api/v1',
8
+ sandbox: 'https://api-sandbox.kobana.com.br/v1',
9
+ production: 'https://api.kobana.com.br/v1',
10
10
  development: 'http://localhost:5000/api/v1'
11
11
  }.freeze
12
12
 
@@ -9,14 +9,14 @@ module BoletoSimples
9
9
  # Examples:
10
10
  #
11
11
  # BoletoSimples::BankBillet.all
12
- # BoletoSimples::ResponseError: 401 POST https://sandbox.boletosimples.com.br/api/v1/bank_billets
12
+ # BoletoSimples::ResponseError: 401 POST https://api-sandbox.kobana.com.br/v1/bank_billets
13
13
  #
14
14
  # begin
15
15
  # BoletoSimples::BankBillet.all
16
16
  # rescue BoletoSimples::ResponseError => response
17
17
  # response.status # => 401
18
18
  # response.method # => "GET"
19
- # response.url # => "https://sandbox.boletosimples.com.br/api/v1/bank_billets"
19
+ # response.url # => "https://api-sandbox.kobana.com.br/v1/bank_billets"
20
20
  # response.body # => "{"error":"Você precisa se logar ou registrar antes de prosseguir."}"
21
21
  # response.error_message # => "Você precisa se logar ou registrar antes de prosseguir."
22
22
  # end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module BoletoSimples
4
- VERSION = '1.0.4'
4
+ VERSION = '2.0.0'
5
5
  end
@@ -14,7 +14,7 @@
14
14
 
15
15
  # it do
16
16
  # expect(subject.environment).to eq(:sandbox)
17
- # expect(subject.base_uri).to eq('https://sandbox.boletosimples.com.br/api/v1')
17
+ # expect(subject.base_uri).to eq('https://api-sandbox.kobana.com.br/v1')
18
18
  # expect(subject.cache).to be_nil
19
19
  # expect(subject.user_agent).to be_nil
20
20
  # end
@@ -31,7 +31,7 @@
31
31
 
32
32
  # it do
33
33
  # expect(subject.environment).to eq(:production)
34
- # expect(subject.base_uri).to eq('https://boletosimples.com.br/api/v1')
34
+ # expect(subject.base_uri).to eq('https://api.kobana.com.br/v1')
35
35
  # expect(subject.user_agent).to eq('email@minhaempresa.com.br')
36
36
  # end
37
37
 
@@ -59,7 +59,7 @@
59
59
  # it do
60
60
  # expect(subject.environment).to eq(:production)
61
61
  # expect(subject.user_agent).to eq('Meu agent')
62
- # expect(subject.base_uri).to eq('https://boletosimples.com.br/api/v1')
62
+ # expect(subject.base_uri).to eq('https://api.kobana.com.br/v1')
63
63
  # end
64
64
 
65
65
  # describe 'cache' do
@@ -10,7 +10,7 @@ RSpec.describe BoletoSimples::BankBillet do
10
10
  @bank_billet = described_class.create(
11
11
  amount: 9.01,
12
12
  description: 'Despesas do contrato 0012',
13
- expire_at: '2022-01-01',
13
+ expire_at: '2024-01-01',
14
14
  customer_address: 'Rua quinhentos',
15
15
  customer_address_complement: 'Sala 4',
16
16
  customer_address_number: '111',
@@ -60,7 +60,7 @@ RSpec.describe BoletoSimples::BankBillet do
60
60
 
61
61
  it {
62
62
  expect(subject.response_errors).to eq({ customer_person_name: ['não pode ficar em branco'],
63
- customer_cnpj_cpf: ['não pode ficar em branco'],
63
+ customer_cnpj_cpf: ['não é um CNPJ ou CPF válido'],
64
64
  customer_zipcode: ['não pode ficar em branco'],
65
65
  expire_at: ['não pode ficar em branco', 'não é uma data válida'],
66
66
  customer_address: ['não pode ficar em branco'],
@@ -9,7 +9,7 @@ RSpec.describe BoletoSimples::Customer do
9
9
  VCR.use_cassette('resources/customer/create/valid') do
10
10
  @customer = described_class.create(
11
11
  person_name: 'Maria José',
12
- cnpj_cpf: '54.872.822/0001-91',
12
+ cnpj_cpf: '84.232.027/0001-08',
13
13
  email: 'cliente@example.com',
14
14
  address: 'Rua quinhentos',
15
15
  city_name: 'Rio de Janeiro',
@@ -42,8 +42,13 @@ RSpec.describe BoletoSimples::Customer do
42
42
  end
43
43
 
44
44
  it {
45
- expect(subject.response_errors).to eq([{ code: 422, status: 422,
46
- title: 'customer não pode ficar em branco' }])
45
+ expect(subject.response_errors).to eq({ address: ['não pode ficar em branco'],
46
+ city_name: ['não pode ficar em branco'],
47
+ cnpj_cpf: ['não é um CNPJ ou CPF válido'],
48
+ neighborhood: ['não pode ficar em branco'],
49
+ person_name: ['não pode ficar em branco'],
50
+ state: ['não está incluído na lista'],
51
+ zipcode: ['não pode ficar em branco'] })
47
52
  }
48
53
  end
49
54
 
@@ -56,7 +61,7 @@ RSpec.describe BoletoSimples::Customer do
56
61
 
57
62
  it {
58
63
  expect(subject.response_errors).to eq({ person_name: ['não pode ficar em branco'],
59
- cnpj_cpf: ['não pode ficar em branco'], zipcode: ['não pode ficar em branco'],
64
+ cnpj_cpf: ['não é um CNPJ ou CPF válido'], zipcode: ['não pode ficar em branco'],
60
65
  address: ['não pode ficar em branco'], neighborhood: ['não pode ficar em branco'],
61
66
  city_name: ['não pode ficar em branco'], state: ['não está incluído na lista'] })
62
67
  }
@@ -61,7 +61,7 @@ RSpec.describe BoletoSimples::CustomerSubscription do
61
61
 
62
62
  it {
63
63
  expect(subject.response_errors).to eq({ customer_person_name: ['não pode ficar em branco'],
64
- customer_cnpj_cpf: ['não pode ficar em branco'],
64
+ customer_cnpj_cpf: ['não é um CNPJ ou CPF válido'],
65
65
  customer_zipcode: ['não pode ficar em branco'],
66
66
  amount: ['não pode ficar em branco'],
67
67
  customer_address: ['não pode ficar em branco'],
@@ -62,7 +62,7 @@ RSpec.describe BoletoSimples::Installment do
62
62
 
63
63
  it {
64
64
  expect(subject.response_errors).to eq({ customer_person_name: ['não pode ficar em branco'],
65
- customer_cnpj_cpf: ['não pode ficar em branco'],
65
+ customer_cnpj_cpf: ['não é um CNPJ ou CPF válido'],
66
66
  customer_zipcode: ['não pode ficar em branco'],
67
67
  total: ['não pode ficar em branco', 'não é um número'],
68
68
  start_at: ['não pode ficar em branco'],