chargebee 2.10.0 → 2.11.2
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 +5 -5
- data/CHANGELOG.md +43 -1
- data/chargebee.gemspec +4 -6
- data/lib/chargebee/environment.rb +6 -2
- data/lib/chargebee/models/addon.rb +1 -1
- data/lib/chargebee/models/item_price.rb +9 -1
- data/lib/chargebee/models/payment_source.rb +5 -1
- data/lib/chargebee/models/plan.rb +1 -1
- data/lib/chargebee/models/tax_withheld.rb +10 -0
- data/lib/chargebee/rest.rb +9 -3
- data/lib/chargebee/result.rb +5 -0
- data/lib/chargebee.rb +8 -1
- metadata +25 -20
- data/lib/.DS_Store +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 0161fb2d18ed430ea6daacbff4d15094aa5a277c99dc7fe26c1e97d6b2090e38
|
4
|
+
data.tar.gz: 52b81f2222f0ab37e676468f1df9b317c8dfa78add2a92a5fdde1e53634b48b3
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 60d4112a05bef4c902e4e64b93ce50c30637922dfc00c32f92af996e7c349e02ec2ce55fc10198cd6a595545627a68ef6229ab0d490223c16a79f2667fbaee96
|
7
|
+
data.tar.gz: ad7310dbc8448c6be60bb36c6054e3d753d3cfe96fd7a79762806b6a85dcba5f4580c4ed2c3322bed84ea1d8e531dea83d023a35077c1f0eee998e570415bc38
|
data/CHANGELOG.md
CHANGED
@@ -1,9 +1,51 @@
|
|
1
|
-
### v2.
|
1
|
+
### v2.11.2 (2021-01-05)
|
2
|
+
* * *
|
3
|
+
|
4
|
+
### Fixes:
|
5
|
+
* Improved error message for Invalid JSON response.
|
6
|
+
|
7
|
+
### v2.11.1 (2021-12-22)
|
8
|
+
* * *
|
9
|
+
|
10
|
+
### Fixes:
|
11
|
+
* Not restricting to use CGI version till 0.1.0 to address security vulnerabilities.
|
12
|
+
|
13
|
+
### v2.11.0 (2021-12-08)
|
14
|
+
* * *
|
15
|
+
|
16
|
+
### Fixes:
|
17
|
+
* Exposed function ChargeBee#update_connect_timeout_secs and ChargeBee#update_read_timeout_secs to set custom connect and read timeout.
|
18
|
+
* Updated default request connect and read timeout to 30s and 80s respectively.
|
19
|
+
|
20
|
+
#### New endpoints:
|
21
|
+
* payment_sources#update_bank_account have been added in payment_sources resource.
|
22
|
+
* item_price#item_price_find_applicable_items and item_price#item_price_find_applicable_item_prices have been added in item_price resource.
|
23
|
+
|
24
|
+
#### New Attributes:
|
25
|
+
* hsn_code have been added to the resource addon, item_price and plan.
|
26
|
+
* first_name, last_name and email have been added to the resource payment_sources.
|
27
|
+
|
28
|
+
#### New Resource:
|
29
|
+
* TaxWithheld has been added.Applicable only for API V2.
|
30
|
+
|
31
|
+
#### New Input parameters:
|
32
|
+
* hsn_code have been added to addons#create_an_addon, addons#update_an_addon, plan#create_an_plan and plan#update_an_plan apis.
|
33
|
+
* bank_account[first_name],bank_account[last_name] and bank_account[email] have been added to payment_sources#update_bank_account api.
|
34
|
+
* charges[hsn_code] have been added in estimate#Create_Invoice, estimate#Create_Invoice_For_Items, hosted_pages#Checkout_One_Time, hosted_pages#Checkout_One_Time_For_Items, invoice#create_an_invoice, invoice#Create_For_Charge_Items_And_Charges and unbilledCharge#create_an_unbilledCharge apis.
|
35
|
+
* tax_detail[hsn_code] have been added in item_price#create_an_itemPrice and item_price#update_an_itemPrice apis.
|
36
|
+
* include_deleted have been added in plan#plan_list and addon#addon_list apis.Applicable only for Product Catalog V1.
|
37
|
+
|
38
|
+
#### New Enum values:
|
39
|
+
* subscription_activated_with_backdating, tax_withheld_recorded, tax_withheld_deleted and tax_withheld_refunded has been added to event_type enum.
|
40
|
+
|
41
|
+
### v2.10.1 (2021-10-18)
|
2
42
|
* * *
|
3
43
|
|
4
44
|
### Fixes:
|
5
45
|
* Fixed .DS_Store file generation issue
|
6
46
|
|
47
|
+
### v2.10.0 (2021-10-14)
|
48
|
+
|
7
49
|
#### New Attributes:
|
8
50
|
* entity_id has been added in order_line_item_discounts resource.
|
9
51
|
|
data/chargebee.gemspec
CHANGED
@@ -4,9 +4,8 @@ Gem::Specification.new do |s|
|
|
4
4
|
s.rubygems_version = '1.3.5'
|
5
5
|
s.required_ruby_version = '>= 1.9.3'
|
6
6
|
s.name = 'chargebee'
|
7
|
-
s.version = '2.
|
8
|
-
s.date = '
|
9
|
-
|
7
|
+
s.version = '2.11.2'
|
8
|
+
s.date = '2022-01-05'
|
10
9
|
s.summary = "Ruby client for Chargebee API."
|
11
10
|
s.description = "Subscription Billing - Simple. Secure. Affordable. More details at www.chargebee.com."
|
12
11
|
|
@@ -22,8 +21,7 @@ Gem::Specification.new do |s|
|
|
22
21
|
|
23
22
|
s.add_dependency('json_pure', '~> 2.1')
|
24
23
|
s.add_dependency('rest-client', '>=1.8', '<=2.0.2')
|
25
|
-
s.add_dependency('cgi', '
|
26
|
-
|
24
|
+
s.add_dependency('cgi', '>=0.1.0', '<1.0.0')
|
27
25
|
s.add_development_dependency('rspec', '~> 3.0.0')
|
28
26
|
s.add_development_dependency('mocha')
|
29
27
|
|
@@ -34,7 +32,6 @@ Gem::Specification.new do |s|
|
|
34
32
|
README.rdoc
|
35
33
|
Rakefile
|
36
34
|
chargebee.gemspec
|
37
|
-
lib/.DS_Store
|
38
35
|
lib/chargebee.rb
|
39
36
|
lib/chargebee/environment.rb
|
40
37
|
lib/chargebee/errors.rb
|
@@ -81,6 +78,7 @@ Gem::Specification.new do |s|
|
|
81
78
|
lib/chargebee/models/site_migration_detail.rb
|
82
79
|
lib/chargebee/models/subscription.rb
|
83
80
|
lib/chargebee/models/subscription_estimate.rb
|
81
|
+
lib/chargebee/models/tax_withheld.rb
|
84
82
|
lib/chargebee/models/third_party_payment_method.rb
|
85
83
|
lib/chargebee/models/time_machine.rb
|
86
84
|
lib/chargebee/models/token.rb
|
@@ -4,14 +4,18 @@ module ChargeBee
|
|
4
4
|
# in seconds
|
5
5
|
TIME_MACHINE_TIMEOUT = 3
|
6
6
|
EXPORT_TIMEOUT = 10
|
7
|
+
CONNECT_TIMEOUT = 30
|
8
|
+
READ_TIMEOUT = 80
|
7
9
|
|
8
|
-
attr_accessor :api_key, :site, :time_machine_sleeptime, :export_sleeptime
|
10
|
+
attr_accessor :api_key, :site, :time_machine_sleeptime, :export_sleeptime, :connect_timeout, :read_timeout
|
9
11
|
attr_reader :api_endpoint
|
10
12
|
|
11
13
|
def initialize(options)
|
12
14
|
options[:time_machine_sleeptime] ||= TIME_MACHINE_TIMEOUT
|
13
15
|
options[:export_sleeptime] ||= EXPORT_TIMEOUT
|
14
|
-
[:
|
16
|
+
options[:connect_timeout] ||= CONNECT_TIMEOUT
|
17
|
+
options[:read_timeout] ||= READ_TIMEOUT
|
18
|
+
[:api_key, :site, :time_machine_sleeptime, :export_sleeptime, :connect_timeout, :read_timeout].each do |attr|
|
15
19
|
instance_variable_set "@#{attr}", options[attr]
|
16
20
|
end
|
17
21
|
if($CHARGEBEE_DOMAIN == nil)
|
@@ -7,7 +7,7 @@ module ChargeBee
|
|
7
7
|
|
8
8
|
attr_accessor :id, :name, :invoice_name, :description, :pricing_model, :type, :charge_type,
|
9
9
|
:price, :currency_code, :period, :period_unit, :unit, :status, :archived_at, :enabled_in_portal,
|
10
|
-
:tax_code, :taxjar_product_code, :avalara_sale_type, :avalara_transaction_type, :avalara_service_type,
|
10
|
+
:tax_code, :hsn_code, :taxjar_product_code, :avalara_sale_type, :avalara_transaction_type, :avalara_service_type,
|
11
11
|
:sku, :accounting_code, :accounting_category1, :accounting_category2, :accounting_category3,
|
12
12
|
:accounting_category4, :is_shippable, :shipping_frequency_period, :shipping_frequency_period_unit,
|
13
13
|
:resource_version, :updated_at, :price_in_decimal, :included_in_mrr, :invoice_notes, :taxable,
|
@@ -6,7 +6,7 @@ module ChargeBee
|
|
6
6
|
end
|
7
7
|
|
8
8
|
class TaxDetail < Model
|
9
|
-
attr_accessor :tax_profile_id, :avalara_sale_type, :avalara_transaction_type, :avalara_service_type, :avalara_tax_code, :taxjar_product_code
|
9
|
+
attr_accessor :tax_profile_id, :avalara_sale_type, :avalara_transaction_type, :avalara_service_type, :avalara_tax_code, :hsn_code, :taxjar_product_code
|
10
10
|
end
|
11
11
|
|
12
12
|
class AccountingDetail < Model
|
@@ -43,5 +43,13 @@ module ChargeBee
|
|
43
43
|
Request.send('post', uri_path("item_prices",id.to_s,"delete"), {}, env, headers)
|
44
44
|
end
|
45
45
|
|
46
|
+
def self.find_applicable_items(id, params={}, env=nil, headers={})
|
47
|
+
Request.send('get', uri_path("item_prices",id.to_s,"applicable_items"), params, env, headers)
|
48
|
+
end
|
49
|
+
|
50
|
+
def self.find_applicable_item_prices(id, params={}, env=nil, headers={})
|
51
|
+
Request.send('get', uri_path("item_prices",id.to_s,"applicable_item_prices"), params, env, headers)
|
52
|
+
end
|
53
|
+
|
46
54
|
end # ~ItemPrice
|
47
55
|
end # ~ChargeBee
|
@@ -6,7 +6,7 @@ module ChargeBee
|
|
6
6
|
end
|
7
7
|
|
8
8
|
class BankAccount < Model
|
9
|
-
attr_accessor :last4, :name_on_account, :bank_name, :mandate_id, :account_type, :echeck_type, :account_holder_type
|
9
|
+
attr_accessor :last4, :name_on_account, :first_name, :last_name, :bank_name, :mandate_id, :account_type, :echeck_type, :account_holder_type, :email
|
10
10
|
end
|
11
11
|
|
12
12
|
class AmazonPayment < Model
|
@@ -52,6 +52,10 @@ module ChargeBee
|
|
52
52
|
Request.send('post', uri_path("payment_sources",id.to_s,"update_card"), params, env, headers)
|
53
53
|
end
|
54
54
|
|
55
|
+
def self.update_bank_account(id, params={}, env=nil, headers={})
|
56
|
+
Request.send('post', uri_path("payment_sources",id.to_s,"update_bank_account"), params, env, headers)
|
57
|
+
end
|
58
|
+
|
55
59
|
def self.verify_bank_account(id, params, env=nil, headers={})
|
56
60
|
Request.send('post', uri_path("payment_sources",id.to_s,"verify_bank_account"), params, env, headers)
|
57
61
|
end
|
@@ -20,7 +20,7 @@ module ChargeBee
|
|
20
20
|
attr_accessor :id, :name, :invoice_name, :description, :price, :currency_code, :period, :period_unit,
|
21
21
|
:trial_period, :trial_period_unit, :trial_end_action, :pricing_model, :charge_model, :free_quantity,
|
22
22
|
:setup_cost, :downgrade_penalty, :status, :archived_at, :billing_cycles, :redirect_url, :enabled_in_hosted_pages,
|
23
|
-
:enabled_in_portal, :addon_applicability, :tax_code, :taxjar_product_code, :avalara_sale_type,
|
23
|
+
:enabled_in_portal, :addon_applicability, :tax_code, :hsn_code, :taxjar_product_code, :avalara_sale_type,
|
24
24
|
:avalara_transaction_type, :avalara_service_type, :sku, :accounting_code, :accounting_category1,
|
25
25
|
:accounting_category2, :accounting_category3, :accounting_category4, :is_shippable, :shipping_frequency_period,
|
26
26
|
:shipping_frequency_period_unit, :resource_version, :updated_at, :giftable, :claim_url, :free_quantity_in_decimal,
|
data/lib/chargebee/rest.rb
CHANGED
@@ -39,8 +39,8 @@ module ChargeBee
|
|
39
39
|
:user => api_key,
|
40
40
|
:headers => headers,
|
41
41
|
:payload => payload,
|
42
|
-
:open_timeout =>
|
43
|
-
:timeout =>
|
42
|
+
:open_timeout => env.connect_timeout,
|
43
|
+
:timeout => env.read_timeout
|
44
44
|
}.merge(ssl_opts)
|
45
45
|
|
46
46
|
begin
|
@@ -59,7 +59,13 @@ module ChargeBee
|
|
59
59
|
begin
|
60
60
|
resp = JSON.parse(rbody)
|
61
61
|
rescue Exception => e
|
62
|
-
|
62
|
+
if rbody.include? "503"
|
63
|
+
raise Error.new("Sorry, the server is currently unable to handle the request due to a temporary overload or scheduled maintenance. Please retry after sometime. \n type: internal_temporary_error, \n http_status_code: 503, \n error_code: internal_temporary_error,\n content: #{rbody.inspect}",e)
|
64
|
+
elsif rbody.include? "504"
|
65
|
+
raise Error.new("The server did not receive a timely response from an upstream server, request aborted. If this problem persists, contact us at support@chargebee.com. \n type: gateway_timeout, \n http_status_code: 504, \n error_code: gateway_timeout,\n content: #{rbody.inspect}",e)
|
66
|
+
else
|
67
|
+
raise Error.new("Sorry, something went wrong when trying to process the request. If this problem persists, contact us at support@chargebee.com. \n type: internal_error, \n http_status_code: 500, \n error_code: internal_error,\n content: #{rbody.inspect}",e)
|
68
|
+
end
|
63
69
|
end
|
64
70
|
resp = Util.symbolize_keys(resp)
|
65
71
|
resp
|
data/lib/chargebee/result.rb
CHANGED
@@ -75,6 +75,11 @@ module ChargeBee
|
|
75
75
|
return invoice;
|
76
76
|
end
|
77
77
|
|
78
|
+
def tax_withheld()
|
79
|
+
tax_withheld = get(:tax_withheld, TaxWithheld);
|
80
|
+
return tax_withheld;
|
81
|
+
end
|
82
|
+
|
78
83
|
def credit_note()
|
79
84
|
credit_note = get(:credit_note, CreditNote,
|
80
85
|
{:line_items => CreditNote::LineItem, :discounts => CreditNote::Discount, :line_item_discounts => CreditNote::LineItemDiscount, :line_item_tiers => CreditNote::LineItemTier, :taxes => CreditNote::Tax, :line_item_taxes => CreditNote::LineItemTax, :linked_refunds => CreditNote::LinkedRefund, :allocations => CreditNote::Allocation});
|
data/lib/chargebee.rb
CHANGED
@@ -53,7 +53,7 @@ require File.dirname(__FILE__) + '/chargebee/models/usage.rb'
|
|
53
53
|
|
54
54
|
module ChargeBee
|
55
55
|
|
56
|
-
VERSION = '2.
|
56
|
+
VERSION = '2.11.2'
|
57
57
|
|
58
58
|
@@default_env = nil
|
59
59
|
@@verify_ca_certs = true
|
@@ -89,5 +89,12 @@ module ChargeBee
|
|
89
89
|
@@user_agent
|
90
90
|
end
|
91
91
|
|
92
|
+
def self.update_connect_timeout_secs(connect_timeout)
|
93
|
+
@@default_env.connect_timeout = connect_timeout
|
94
|
+
end
|
95
|
+
|
96
|
+
def self.update_read_timeout_secs(read_timeout)
|
97
|
+
@@default_env.read_timeout = read_timeout
|
98
|
+
end
|
92
99
|
end
|
93
100
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: chargebee
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.11.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Rajaraman S
|
@@ -9,82 +9,88 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2022-01-05 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: json_pure
|
16
16
|
requirement: !ruby/object:Gem::Requirement
|
17
17
|
requirements:
|
18
|
-
- - ~>
|
18
|
+
- - "~>"
|
19
19
|
- !ruby/object:Gem::Version
|
20
20
|
version: '2.1'
|
21
21
|
type: :runtime
|
22
22
|
prerelease: false
|
23
23
|
version_requirements: !ruby/object:Gem::Requirement
|
24
24
|
requirements:
|
25
|
-
- - ~>
|
25
|
+
- - "~>"
|
26
26
|
- !ruby/object:Gem::Version
|
27
27
|
version: '2.1'
|
28
28
|
- !ruby/object:Gem::Dependency
|
29
29
|
name: rest-client
|
30
30
|
requirement: !ruby/object:Gem::Requirement
|
31
31
|
requirements:
|
32
|
-
- -
|
32
|
+
- - ">="
|
33
33
|
- !ruby/object:Gem::Version
|
34
34
|
version: '1.8'
|
35
|
-
- - <=
|
35
|
+
- - "<="
|
36
36
|
- !ruby/object:Gem::Version
|
37
37
|
version: 2.0.2
|
38
38
|
type: :runtime
|
39
39
|
prerelease: false
|
40
40
|
version_requirements: !ruby/object:Gem::Requirement
|
41
41
|
requirements:
|
42
|
-
- -
|
42
|
+
- - ">="
|
43
43
|
- !ruby/object:Gem::Version
|
44
44
|
version: '1.8'
|
45
|
-
- - <=
|
45
|
+
- - "<="
|
46
46
|
- !ruby/object:Gem::Version
|
47
47
|
version: 2.0.2
|
48
48
|
- !ruby/object:Gem::Dependency
|
49
49
|
name: cgi
|
50
50
|
requirement: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
|
-
- -
|
52
|
+
- - ">="
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: 0.1.0
|
55
|
+
- - "<"
|
56
|
+
- !ruby/object:Gem::Version
|
57
|
+
version: 1.0.0
|
55
58
|
type: :runtime
|
56
59
|
prerelease: false
|
57
60
|
version_requirements: !ruby/object:Gem::Requirement
|
58
61
|
requirements:
|
59
|
-
- -
|
62
|
+
- - ">="
|
60
63
|
- !ruby/object:Gem::Version
|
61
64
|
version: 0.1.0
|
65
|
+
- - "<"
|
66
|
+
- !ruby/object:Gem::Version
|
67
|
+
version: 1.0.0
|
62
68
|
- !ruby/object:Gem::Dependency
|
63
69
|
name: rspec
|
64
70
|
requirement: !ruby/object:Gem::Requirement
|
65
71
|
requirements:
|
66
|
-
- - ~>
|
72
|
+
- - "~>"
|
67
73
|
- !ruby/object:Gem::Version
|
68
74
|
version: 3.0.0
|
69
75
|
type: :development
|
70
76
|
prerelease: false
|
71
77
|
version_requirements: !ruby/object:Gem::Requirement
|
72
78
|
requirements:
|
73
|
-
- - ~>
|
79
|
+
- - "~>"
|
74
80
|
- !ruby/object:Gem::Version
|
75
81
|
version: 3.0.0
|
76
82
|
- !ruby/object:Gem::Dependency
|
77
83
|
name: mocha
|
78
84
|
requirement: !ruby/object:Gem::Requirement
|
79
85
|
requirements:
|
80
|
-
- -
|
86
|
+
- - ">="
|
81
87
|
- !ruby/object:Gem::Version
|
82
88
|
version: '0'
|
83
89
|
type: :development
|
84
90
|
prerelease: false
|
85
91
|
version_requirements: !ruby/object:Gem::Requirement
|
86
92
|
requirements:
|
87
|
-
- -
|
93
|
+
- - ">="
|
88
94
|
- !ruby/object:Gem::Version
|
89
95
|
version: '0'
|
90
96
|
description: Subscription Billing - Simple. Secure. Affordable. More details at www.chargebee.com.
|
@@ -102,7 +108,6 @@ files:
|
|
102
108
|
- README.rdoc
|
103
109
|
- Rakefile
|
104
110
|
- chargebee.gemspec
|
105
|
-
- lib/.DS_Store
|
106
111
|
- lib/chargebee.rb
|
107
112
|
- lib/chargebee/environment.rb
|
108
113
|
- lib/chargebee/errors.rb
|
@@ -149,6 +154,7 @@ files:
|
|
149
154
|
- lib/chargebee/models/site_migration_detail.rb
|
150
155
|
- lib/chargebee/models/subscription.rb
|
151
156
|
- lib/chargebee/models/subscription_estimate.rb
|
157
|
+
- lib/chargebee/models/tax_withheld.rb
|
152
158
|
- lib/chargebee/models/third_party_payment_method.rb
|
153
159
|
- lib/chargebee/models/time_machine.rb
|
154
160
|
- lib/chargebee/models/token.rb
|
@@ -172,22 +178,21 @@ licenses:
|
|
172
178
|
metadata: {}
|
173
179
|
post_install_message:
|
174
180
|
rdoc_options:
|
175
|
-
- --charset=UTF-8
|
181
|
+
- "--charset=UTF-8"
|
176
182
|
require_paths:
|
177
183
|
- lib
|
178
184
|
required_ruby_version: !ruby/object:Gem::Requirement
|
179
185
|
requirements:
|
180
|
-
- -
|
186
|
+
- - ">="
|
181
187
|
- !ruby/object:Gem::Version
|
182
188
|
version: 1.9.3
|
183
189
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
184
190
|
requirements:
|
185
|
-
- -
|
191
|
+
- - ">="
|
186
192
|
- !ruby/object:Gem::Version
|
187
193
|
version: '0'
|
188
194
|
requirements: []
|
189
|
-
|
190
|
-
rubygems_version: 2.4.5
|
195
|
+
rubygems_version: 3.0.3
|
191
196
|
signing_key:
|
192
197
|
specification_version: 2
|
193
198
|
summary: Ruby client for Chargebee API.
|
data/lib/.DS_Store
DELETED
Binary file
|