lago-ruby-client 0.19.4.pre.alpha → 0.20.0.pre.beta

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: bba17cbcde5dd53840a5ab6156de8fd0e1cfd17b23af92574fe0d7b3d75d4679
4
- data.tar.gz: 9f91e539fc00235670f26b17e1f9b0defd8b8eb0c9c99dc81616e2c7af6d55e1
3
+ metadata.gz: c0cf426548c5d0e497ead0620d30c4456919c9b57a5d9dbf55ebc17efcb98c96
4
+ data.tar.gz: '0584c626189a813c260488e1f967f4028cd2c416968ad621dbe81f134a4c5049'
5
5
  SHA512:
6
- metadata.gz: eb2fdf084cd5b9c5b77b665d657ad591e731de67cee9d9b1b45db4654c2740d9a8a62c7fc0dea7f740a9901ddc1ef2821396b1df43a938c8b94cd6f695898d97
7
- data.tar.gz: 32521bc8a13639476edb51acfb72fe400279fead9ebe61e6cdfb5cf4d9dfbc8a3f72612096c539bbcfd89ad6ac6dd016c8979f7253a6dd5655d9733f0e4b4675
6
+ metadata.gz: b4581532927ded6bf68e17797a6b8645c6b0eaf5880d7d1390dc9e508cedc61d0f10c08703f551c960173a571dcd529d77a77482e2ea2ba372cfada516373d17
7
+ data.tar.gz: 31f79a39df9b5a92d38a528b3ba018e8ab8623582769d9d87eba33d8464bc721d688bd8c1d78098055b860315765f6ccbd3d7d79aaac0dea8760270611a70311
@@ -40,7 +40,7 @@ module Lago
40
40
  path = "/api/v1/credit_notes/#{credit_note_id}/download"
41
41
  response = connection.post({}, path)
42
42
 
43
- JSON.parse(response.to_json, object_class: OpenStruct)
43
+ JSON.parse(response.to_json, object_class: OpenStruct).credit_note
44
44
  end
45
45
 
46
46
  def void(credit_note_id)
@@ -51,7 +51,7 @@ module Lago
51
51
  body: {}
52
52
  )
53
53
 
54
- JSON.parse(response.to_json, object_class: OpenStruct)
54
+ JSON.parse(response.to_json, object_class: OpenStruct).credit_note
55
55
  end
56
56
  end
57
57
  end
@@ -48,6 +48,7 @@ module Lago
48
48
 
49
49
  def whitelist_billing_configuration(billing_params)
50
50
  (billing_params || {}).slice(
51
+ :invoice_grace_period,
51
52
  :payment_provider,
52
53
  :provider_customer_id,
53
54
  :sync,
@@ -16,6 +16,27 @@ module Lago
16
16
  path = "/api/v1/invoices/#{invoice_id}/download"
17
17
  response = connection.post({}, path)
18
18
 
19
+ JSON.parse(response.to_json, object_class: OpenStruct).invoice
20
+ end
21
+
22
+ def refresh(invoice_id)
23
+ path = "/api/v1/invoices/#{invoice_id}/refresh"
24
+ response = connection.put(path, identifier: nil, body: {})
25
+
26
+ JSON.parse(response.to_json, object_class: OpenStruct).invoice
27
+ end
28
+
29
+ def finalize(invoice_id)
30
+ path = "/api/v1/invoices/#{invoice_id}/finalize"
31
+ response = connection.put(path, identifier: nil, body: {})
32
+
33
+ JSON.parse(response.to_json, object_class: OpenStruct).invoice
34
+ end
35
+
36
+ def retry_payment(invoice_id)
37
+ path = "/api/v1/invoices/#{invoice_id}/retry_payment"
38
+ response = connection.post({}, path)
39
+
19
40
  JSON.parse(response.to_json, object_class: OpenStruct)
20
41
  end
21
42
 
@@ -37,6 +37,7 @@ module Lago
37
37
  def whitelist_billing_configuration(billing_params)
38
38
  (billing_params || {}).slice(
39
39
  :invoice_footer,
40
+ :invoice_grace_period,
40
41
  :vat_rate,
41
42
  )
42
43
  end
@@ -8,11 +8,18 @@ module Lago
8
8
  'webhooks'
9
9
  end
10
10
 
11
+ def root_name
12
+ 'webhook'
13
+ end
14
+
11
15
  def public_key
12
- path = '/api/v1/webhooks/public_key'
16
+ path = '/api/v1/webhooks/json_public_key'
17
+
18
+ response = connection.get(path, identifier: nil)[root_name]
19
+
20
+ webhook_details = JSON.parse(response.to_json, object_class: OpenStruct)
13
21
 
14
- webhooks_public_key = connection.get(path, identifier: nil)
15
- OpenSSL::PKey::RSA.new(Base64.decode64(webhooks_public_key))
22
+ OpenSSL::PKey::RSA.new(Base64.decode64(webhook_details.public_key))
16
23
  end
17
24
 
18
25
  def valid_signature?(signature, webhook_payload, cached_key = public_key)
data/lib/lago/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Lago
4
- VERSION = '0.19.4-alpha'
4
+ VERSION = '0.20.0-beta'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lago-ruby-client
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.19.4.pre.alpha
4
+ version: 0.20.0.pre.beta
5
5
  platform: ruby
6
6
  authors:
7
7
  - Lovro Colic
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-01-05 00:00:00.000000000 Z
11
+ date: 2023-01-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: jwt