chargebee 2.14.1 → 2.17.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
- SHA256:
3
- metadata.gz: 652a2ad38e6f59b4b97e7bacd000407205ba0f7a1a959dcece984a652612ab65
4
- data.tar.gz: 27972f0e3175659f948e95994014c4694c2e4c079724b68571c7f75bdfce0b6b
2
+ SHA1:
3
+ metadata.gz: 65e6e95db66864efd299e96eda68304c07b587fb
4
+ data.tar.gz: 2ef8f249d2f102e142f6c4fa7b562b53be51f318
5
5
  SHA512:
6
- metadata.gz: e1b5460e7bcc395e6aab92812af22bce1b6c539a74afe5c7a34df00dd224b6df0e1a6c38e5cab524292f889bf806be07939ec1d5f88e11e4c814168de2311dac
7
- data.tar.gz: a58ad84943e495cd50d8bb0136bf084d3864441f9e3231e7a6c66dfb4891dc2a665d3cdbd2c188f4c1fbb07f9d86dfdbe7695acfee4fe9271f96e1086127e767
6
+ metadata.gz: 40fa38ae24cba51b64b07a3daa2626bc599efbe04c18258ce81c607aeec5205cede94f2094a3e4998dabe2643c4f31954fa7918c32c65e1bf8cd9b5f4a2d10ce
7
+ data.tar.gz: b6c913a7f1c9f42c2c6806ac2164bc6113888501a28edb928b29d220dfbdb2d6e191c36c533ca03a67c82d46ad10db815bcd90bac6a05eb468cce6c9bcf5fe12
data/CHANGELOG.md CHANGED
@@ -1,9 +1,94 @@
1
+ ### v2.17.0 (2022-07-18)
2
+ * * *
3
+
4
+ ### Fixes:
5
+ * Fixed Status Enum related issues
6
+ * Fixed EmbeddedResource related issues
7
+
8
+ #### New endpoints:
9
+ * hostedpage#PreCancel has been added to the hostedpage resource.
10
+
11
+ #### New attributes:
12
+ * business_entity_id have been added to the CreditNote, Customer,HostedPage, Invoice, PaymentIntent, Quote, Subscription and Transaction resources.
13
+ * coupon_set_code have been added to the CreditNote, CreditNoteEstimate, Invoice, InvoiceEstimate, Quote and QuoteLineGroup resources.
14
+ * List of SubscriptionEstimate have been added to Estimate resource.
15
+
16
+ #### New Resource:
17
+ * ImpactedSubscription, ImpactedItem, Purchase have been added.
18
+
19
+ #### New Enum values:
20
+ * direct_debit has been added to payment_method_type enum.
21
+ * bancontact, not_applicable added to payment_source_card_brand enum.
22
+ * business_entity added to entity_type Enum
23
+ * business_entity_created, business_entity_updated, business_entity_deleted, purchase_created added to event_type Enum
24
+ * chargebee_payments added to gateway Enum
25
+
26
+
27
+ ### v2.16.0 (2022-05-23)
28
+ * * *
29
+
30
+ #### New endpoints:
31
+ * invoice#sync_usages and invoice#resend_einvoice have been added to the invoice resource.
32
+ * credit_notes#resend_einvoice has been added to the credit_notes resource.
33
+ * features#list_features, features#create_a_feature, features#update_a_feature, features#retrieve_a_feature, features#delete_a_feature, features#activate_a_feature, features#archive_a_feature and features#reactivate_a_feature have been added to the features resource.
34
+ * subscription_entitlements#subscription_entitlements_for_subscription and subscription_entitlements#set_subscription_entitlement_availability have been added to the subscription_entitlements resource.
35
+ * item_entitlements#item_entitlements_for_an_item, item_entitlements#item_entitlements_for_a_feature, item_entitlements#add_an_item_entitlements and item_entitlements#upsert_or_remove_an_item_entitlements_for_item have been added to the item_entitlements resource.
36
+ * entitlement_overrides#add_entitlement_override_for_a_subscription and entitlement_overrides#list_entitlement_override_for_a_subscription have been added to the entitlement_overrides resource.
37
+
38
+ #### New Resource:
39
+ * features, subscription_entitlements, item_entitlements and entitlement_overrides have been added.
40
+
41
+ #### New filter parameters:
42
+ * einvoice[status] filter parameter has been added in credit_notes#list_credit_notes api.
43
+
44
+ #### New Enum values:
45
+ * paypal_express_checkout has been added to payment_method_type enum.
46
+ * feature_created, feature_updated, feature_deleted, feature_activated, feature_reactivated, feature_archived, item_entitlements_updated, entitlement_overrides_updated, entitlement_overrides_removed, item_entitlements_removed and entitlement_overrides_auto_removed have been added to the event_type enum.
47
+ * action enum has been added.
48
+
49
+ ### v2.15.0 (2022-04-25)
50
+ * * *
51
+
52
+ #### New endpoints:
53
+ * UnbilledCharge#CreateUnbilledCharge has been added to UnbilledCharge resource. Applicable only for PC1.0.
54
+
55
+ #### New attributes:
56
+ * channel have been added to the Addon, AttachedItem, CreditNote, Customer, Invoice, ItemFamily, ItemPrice, Plan and Subscription resources.
57
+ * external_name and channel have been added to the Item resource.
58
+
59
+ #### New input parameters:
60
+ * external_name have been added to Item#CreateRequest and Item#UpdateRequest.
61
+ * channel have been added to Addon#AddonListRequest.
62
+ * channel have been added to CreditNote#CreditNoteListRequest.
63
+ * channel have been added to Customer#CustomerListRequest.
64
+ * invoice[channel], subscription[channel] and customer[channel] have been added to Export#RevenueRecognitionRequest and Export#DeferredRevenueRequest.
65
+ * plan[channel] have been added to Export#PlansRequest.
66
+ * addon[channel] have been added to Export#AddonsRequest.
67
+ * customer[channel] have been added to Export#CustomersRequest.
68
+ * subscription[channel] have been added to Export#SubscriptionsRequest.
69
+ * invoice[channel] have been added to Export#InvoicesRequest.
70
+ * credit_note[channel] have been added to Export#CreditNotesRequest.
71
+ * item[channel] have been added to Export#ItemsRequest.
72
+ * item_price[channel] have been added to Export#ItemPricesRequest.
73
+ * channel have been added to Invoice#InvoiceListRequest.
74
+ * channel have been added to Item#ItemListRequest.
75
+ * channel have been added to ItemPrice#ItemPriceListRequest.
76
+ * channel have been added to Plan#PlanListRequest.
77
+ * channel have been added to Subscription#SubscriptionListRequest.
78
+
79
+ ### Existing input parameter changes:
80
+ * item_family_id in Item#CreateRequest has been made as required field.
81
+
82
+ ### Removed enum values:
83
+ * coupon_expired event has been removed from EventTypeEnum.
84
+
1
85
  ### v2.14.1 (2022-03-31)
2
86
  * * *
3
87
 
4
88
  ### Fixes:
5
89
  * Fixed serialization issue.
6
90
 
91
+
7
92
  ### v2.14.0 (2022-03-14)
8
93
  * * *
9
94
 
data/chargebee.gemspec CHANGED
@@ -4,8 +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.14.1'
8
- s.date = '2022-03-31'
7
+ s.version = '2.17.0'
8
+ s.date = '2022-07-18'
9
9
  s.summary = "Ruby client for Chargebee API."
10
10
  s.description = "Subscription Billing - Simple. Secure. Affordable. More details at www.chargebee.com."
11
11
 
@@ -52,15 +52,20 @@ Gem::Specification.new do |s|
52
52
  lib/chargebee/models/customer.rb
53
53
  lib/chargebee/models/differential_price.rb
54
54
  lib/chargebee/models/download.rb
55
+ lib/chargebee/models/entitlement_override.rb
55
56
  lib/chargebee/models/estimate.rb
56
57
  lib/chargebee/models/event.rb
57
58
  lib/chargebee/models/export.rb
59
+ lib/chargebee/models/feature.rb
58
60
  lib/chargebee/models/gift.rb
59
61
  lib/chargebee/models/hierarchy.rb
60
62
  lib/chargebee/models/hosted_page.rb
63
+ lib/chargebee/models/impacted_item.rb
64
+ lib/chargebee/models/impacted_subscription.rb
61
65
  lib/chargebee/models/invoice.rb
62
66
  lib/chargebee/models/invoice_estimate.rb
63
67
  lib/chargebee/models/item.rb
68
+ lib/chargebee/models/item_entitlement.rb
64
69
  lib/chargebee/models/item_family.rb
65
70
  lib/chargebee/models/item_price.rb
66
71
  lib/chargebee/models/model.rb
@@ -70,6 +75,7 @@ Gem::Specification.new do |s|
70
75
  lib/chargebee/models/plan.rb
71
76
  lib/chargebee/models/portal_session.rb
72
77
  lib/chargebee/models/promotional_credit.rb
78
+ lib/chargebee/models/purchase.rb
73
79
  lib/chargebee/models/quote.rb
74
80
  lib/chargebee/models/quote_line_group.rb
75
81
  lib/chargebee/models/quoted_charge.rb
@@ -77,6 +83,7 @@ Gem::Specification.new do |s|
77
83
  lib/chargebee/models/resource_migration.rb
78
84
  lib/chargebee/models/site_migration_detail.rb
79
85
  lib/chargebee/models/subscription.rb
86
+ lib/chargebee/models/subscription_entitlement.rb
80
87
  lib/chargebee/models/subscription_estimate.rb
81
88
  lib/chargebee/models/tax_withheld.rb
82
89
  lib/chargebee/models/third_party_payment_method.rb
@@ -10,8 +10,8 @@ module ChargeBee
10
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
- :resource_version, :updated_at, :price_in_decimal, :included_in_mrr, :invoice_notes, :taxable,
14
- :tax_profile_id, :meta_data, :tiers, :show_description_in_invoices, :show_description_in_quotes
13
+ :resource_version, :updated_at, :price_in_decimal, :included_in_mrr, :channel, :invoice_notes,
14
+ :taxable, :tax_profile_id, :meta_data, :tiers, :show_description_in_invoices, :show_description_in_quotes
15
15
 
16
16
  # OPERATIONS
17
17
  #-----------
@@ -20,7 +20,7 @@ module ChargeBee
20
20
  Request.send('post', uri_path("addons"), params, env, headers)
21
21
  end
22
22
 
23
- def self.update(id, params={}, env=nil, headers={})
23
+ def self.update(id, params, env=nil, headers={})
24
24
  Request.send('post', uri_path("addons",id.to_s), params, env, headers)
25
25
  end
26
26
 
@@ -2,7 +2,8 @@ module ChargeBee
2
2
  class AttachedItem < Model
3
3
 
4
4
  attr_accessor :id, :parent_item_id, :item_id, :type, :status, :quantity, :quantity_in_decimal,
5
- :billing_cycles, :charge_on_event, :charge_once, :created_at, :resource_version, :updated_at
5
+ :billing_cycles, :charge_on_event, :charge_once, :created_at, :resource_version, :updated_at,
6
+ :channel
6
7
 
7
8
  # OPERATIONS
8
9
  #-----------
@@ -10,7 +10,7 @@ module ChargeBee
10
10
  end
11
11
 
12
12
  class Discount < Model
13
- attr_accessor :amount, :description, :entity_type, :entity_id
13
+ attr_accessor :amount, :description, :entity_type, :entity_id, :coupon_set_code
14
14
  end
15
15
 
16
16
  class LineItemDiscount < Model
@@ -40,9 +40,10 @@ module ChargeBee
40
40
  attr_accessor :id, :customer_id, :subscription_id, :reference_invoice_id, :type, :reason_code,
41
41
  :status, :vat_number, :date, :price_type, :currency_code, :total, :amount_allocated, :amount_refunded,
42
42
  :amount_available, :refunded_at, :voided_at, :generated_at, :resource_version, :updated_at,
43
- :einvoice, :sub_total, :sub_total_in_local_currency, :total_in_local_currency, :local_currency_code,
43
+ :channel, :einvoice, :sub_total, :sub_total_in_local_currency, :total_in_local_currency, :local_currency_code,
44
44
  :round_off_amount, :fractional_correction, :line_items, :discounts, :line_item_discounts, :line_item_tiers,
45
- :taxes, :line_item_taxes, :linked_refunds, :allocations, :deleted, :create_reason_code, :vat_number_prefix
45
+ :taxes, :line_item_taxes, :linked_refunds, :allocations, :deleted, :create_reason_code, :vat_number_prefix,
46
+ :business_entity_id
46
47
 
47
48
  # OPERATIONS
48
49
  #-----------
@@ -87,5 +88,9 @@ module ChargeBee
87
88
  Request.send('post', uri_path("credit_notes",id.to_s,"delete"), params, env, headers)
88
89
  end
89
90
 
91
+ def self.resend_einvoice(id, env=nil, headers={})
92
+ Request.send('post', uri_path("credit_notes",id.to_s,"resend_einvoice"), {}, env, headers)
93
+ end
94
+
90
95
  end # ~CreditNote
91
96
  end # ~ChargeBee
@@ -6,7 +6,7 @@ module ChargeBee
6
6
  end
7
7
 
8
8
  class Discount < Model
9
- attr_accessor :amount, :description, :entity_type, :entity_id
9
+ attr_accessor :amount, :description, :entity_type, :entity_id, :coupon_set_code
10
10
  end
11
11
 
12
12
  class Tax < Model
@@ -41,13 +41,14 @@ module ChargeBee
41
41
  :offline_payment_method, :net_term_days, :vat_number_validated_time, :vat_number_status, :allow_direct_debit,
42
42
  :is_location_valid, :created_at, :created_from_ip, :exemption_details, :taxability, :entity_code,
43
43
  :exempt_number, :resource_version, :updated_at, :locale, :billing_date, :billing_date_mode,
44
- :billing_day_of_week, :billing_day_of_week_mode, :pii_cleared, :auto_close_invoices, :card_status,
45
- :fraud_flag, :primary_payment_source_id, :backup_payment_source_id, :billing_address, :referral_urls,
46
- :contacts, :payment_method, :invoice_notes, :preferred_currency_code, :promotional_credits,
47
- :unbilled_charges, :refundable_credits, :excess_payments, :balances, :entity_identifiers, :is_einvoice_enabled,
48
- :meta_data, :deleted, :registered_for_gst, :consolidated_invoicing, :customer_type, :business_customer_without_vat_number,
49
- :client_profile_id, :relationship, :use_default_hierarchy_settings, :parent_account_access,
50
- :child_account_access, :vat_number_prefix, :entity_identifier_scheme, :entity_identifier_standard
44
+ :billing_day_of_week, :billing_day_of_week_mode, :pii_cleared, :auto_close_invoices, :channel,
45
+ :card_status, :fraud_flag, :primary_payment_source_id, :backup_payment_source_id, :billing_address,
46
+ :referral_urls, :contacts, :payment_method, :invoice_notes, :business_entity_id, :preferred_currency_code,
47
+ :promotional_credits, :unbilled_charges, :refundable_credits, :excess_payments, :balances, :entity_identifiers,
48
+ :is_einvoice_enabled, :meta_data, :deleted, :registered_for_gst, :consolidated_invoicing, :customer_type,
49
+ :business_customer_without_vat_number, :client_profile_id, :relationship, :use_default_hierarchy_settings,
50
+ :parent_account_access, :child_account_access, :vat_number_prefix, :entity_identifier_scheme,
51
+ :entity_identifier_standard
51
52
 
52
53
  # OPERATIONS
53
54
  #-----------
@@ -0,0 +1,18 @@
1
+ module ChargeBee
2
+ class EntitlementOverride < Model
3
+
4
+ attr_accessor :id, :entity_id, :entity_type, :feature_id, :feature_name, :value, :name, :expires_at
5
+
6
+ # OPERATIONS
7
+ #-----------
8
+
9
+ def self.add_entitlement_override_for_subscription(id, params, env=nil, headers={})
10
+ Request.send('post', uri_path("subscriptions",id.to_s,"entitlement_overrides"), params, env, headers)
11
+ end
12
+
13
+ def self.list_entitlement_override_for_subscription(id, params={}, env=nil, headers={})
14
+ Request.send('get', uri_path("subscriptions",id.to_s,"entitlement_overrides"), params, env, headers)
15
+ end
16
+
17
+ end # ~EntitlementOverride
18
+ end # ~ChargeBee
@@ -1,8 +1,8 @@
1
1
  module ChargeBee
2
2
  class Estimate < Model
3
3
 
4
- attr_accessor :created_at, :subscription_estimate, :invoice_estimate, :invoice_estimates, :next_invoice_estimate,
5
- :credit_note_estimates, :unbilled_charge_estimates
4
+ attr_accessor :created_at, :subscription_estimate, :subscription_estimates, :invoice_estimate,
5
+ :invoice_estimates, :next_invoice_estimate, :credit_note_estimates, :unbilled_charge_estimates
6
6
 
7
7
  # OPERATIONS
8
8
  #-----------
@@ -0,0 +1,47 @@
1
+ module ChargeBee
2
+ class Feature < Model
3
+
4
+ class Level < Model
5
+ attr_accessor :name, :value, :level, :is_unlimited
6
+ end
7
+
8
+ attr_accessor :id, :name, :description, :status, :type, :unit, :resource_version, :updated_at,
9
+ :created_at, :levels
10
+
11
+ # OPERATIONS
12
+ #-----------
13
+
14
+ def self.list(params={}, env=nil, headers={})
15
+ Request.send_list_request('get', uri_path("features"), params, env, headers)
16
+ end
17
+
18
+ def self.create(params, env=nil, headers={})
19
+ Request.send('post', uri_path("features"), params, env, headers)
20
+ end
21
+
22
+ def self.update(id, params={}, env=nil, headers={})
23
+ Request.send('post', uri_path("features",id.to_s), params, env, headers)
24
+ end
25
+
26
+ def self.retrieve(id, env=nil, headers={})
27
+ Request.send('get', uri_path("features",id.to_s), {}, env, headers)
28
+ end
29
+
30
+ def self.delete(id, env=nil, headers={})
31
+ Request.send('post', uri_path("features",id.to_s,"delete"), {}, env, headers)
32
+ end
33
+
34
+ def self.activate(id, env=nil, headers={})
35
+ Request.send('post', uri_path("features",id.to_s,"activate_command"), {}, env, headers)
36
+ end
37
+
38
+ def self.archive(id, env=nil, headers={})
39
+ Request.send('post', uri_path("features",id.to_s,"archive_command"), {}, env, headers)
40
+ end
41
+
42
+ def self.reactivate(id, env=nil, headers={})
43
+ Request.send('post', uri_path("features",id.to_s,"reactivate_command"), {}, env, headers)
44
+ end
45
+
46
+ end # ~Feature
47
+ end # ~ChargeBee
@@ -2,7 +2,7 @@ module ChargeBee
2
2
  class HostedPage < Model
3
3
 
4
4
  attr_accessor :id, :type, :url, :state, :failure_reason, :pass_thru_content, :embed, :created_at,
5
- :expires_at, :updated_at, :resource_version, :checkout_info
5
+ :expires_at, :updated_at, :resource_version, :checkout_info, :business_entity_id
6
6
 
7
7
  class Content < Result
8
8
  end
@@ -26,7 +26,7 @@ module ChargeBee
26
26
  Request.send('post', uri_path("hosted_pages","checkout_one_time"), params, env, headers)
27
27
  end
28
28
 
29
- def self.checkout_one_time_for_items(params={}, env=nil, headers={})
29
+ def self.checkout_one_time_for_items(params, env=nil, headers={})
30
30
  Request.send('post', uri_path("hosted_pages","checkout_one_time_for_items"), params, env, headers)
31
31
  end
32
32
 
@@ -94,5 +94,9 @@ module ChargeBee
94
94
  Request.send_list_request('get', uri_path("hosted_pages"), params, env, headers)
95
95
  end
96
96
 
97
+ def self.pre_cancel(params, env=nil, headers={})
98
+ Request.send('post', uri_path("hosted_pages","pre_cancel"), params, env, headers)
99
+ end
100
+
97
101
  end # ~HostedPage
98
102
  end # ~ChargeBee
@@ -0,0 +1,14 @@
1
+ module ChargeBee
2
+ class ImpactedItem < Model
3
+
4
+ class Download < Model
5
+ attr_accessor :download_url, :valid_till, :mime_type
6
+ end
7
+
8
+ attr_accessor :count, :download, :items
9
+
10
+ # OPERATIONS
11
+ #-----------
12
+
13
+ end # ~ImpactedItem
14
+ end # ~ChargeBee
@@ -0,0 +1,14 @@
1
+ module ChargeBee
2
+ class ImpactedSubscription < Model
3
+
4
+ class Download < Model
5
+ attr_accessor :download_url, :valid_till, :mime_type
6
+ end
7
+
8
+ attr_accessor :count, :download, :subscription_ids
9
+
10
+ # OPERATIONS
11
+ #-----------
12
+
13
+ end # ~ImpactedSubscription
14
+ end # ~ChargeBee
@@ -6,7 +6,7 @@ module ChargeBee
6
6
  end
7
7
 
8
8
  class Discount < Model
9
- attr_accessor :amount, :description, :entity_type, :entity_id
9
+ attr_accessor :amount, :description, :entity_type, :entity_id, :coupon_set_code
10
10
  end
11
11
 
12
12
  class LineItemDiscount < Model
@@ -74,7 +74,7 @@ module ChargeBee
74
74
  :line_items, :discounts, :line_item_discounts, :taxes, :line_item_taxes, :line_item_tiers, :linked_payments,
75
75
  :dunning_attempts, :applied_credits, :adjustment_credit_notes, :issued_credit_notes, :linked_orders,
76
76
  :notes, :shipping_address, :billing_address, :einvoice, :payment_owner, :void_reason_code, :deleted,
77
- :vat_number_prefix
77
+ :vat_number_prefix, :channel, :business_entity_id
78
78
 
79
79
  # OPERATIONS
80
80
  #-----------
@@ -111,6 +111,10 @@ module ChargeBee
111
111
  Request.send('post', uri_path("invoices",id.to_s,"apply_payments"), params, env, headers)
112
112
  end
113
113
 
114
+ def self.sync_usages(id, env=nil, headers={})
115
+ Request.send('post', uri_path("invoices",id.to_s,"sync_usages"), {}, env, headers)
116
+ end
117
+
114
118
  def self.apply_credits(id, params={}, env=nil, headers={})
115
119
  Request.send('post', uri_path("invoices",id.to_s,"apply_credits"), params, env, headers)
116
120
  end
@@ -195,5 +199,9 @@ module ChargeBee
195
199
  Request.send('post', uri_path("invoices",id.to_s,"update_details"), params, env, headers)
196
200
  end
197
201
 
202
+ def self.resend_einvoice(id, env=nil, headers={})
203
+ Request.send('post', uri_path("invoices",id.to_s,"resend_einvoice"), {}, env, headers)
204
+ end
205
+
198
206
  end # ~Invoice
199
207
  end # ~ChargeBee
@@ -6,7 +6,7 @@ module ChargeBee
6
6
  end
7
7
 
8
8
  class Discount < Model
9
- attr_accessor :amount, :description, :entity_type, :entity_id
9
+ attr_accessor :amount, :description, :entity_type, :entity_id, :coupon_set_code
10
10
  end
11
11
 
12
12
  class Tax < Model
@@ -5,10 +5,10 @@ module ChargeBee
5
5
  attr_accessor :id
6
6
  end
7
7
 
8
- attr_accessor :id, :name, :description, :status, :resource_version, :updated_at, :item_family_id,
9
- :type, :is_shippable, :is_giftable, :redirect_url, :enabled_for_checkout, :enabled_in_portal,
8
+ attr_accessor :id, :name, :external_name, :description, :status, :resource_version, :updated_at,
9
+ :item_family_id, :type, :is_shippable, :is_giftable, :redirect_url, :enabled_for_checkout, :enabled_in_portal,
10
10
  :included_in_mrr, :item_applicability, :gift_claim_redirect_url, :unit, :metered, :usage_calculation,
11
- :archived_at, :applicable_items, :metadata
11
+ :archived_at, :channel, :applicable_items, :metadata
12
12
 
13
13
  # OPERATIONS
14
14
  #-----------
@@ -0,0 +1,26 @@
1
+ module ChargeBee
2
+ class ItemEntitlement < Model
3
+
4
+ attr_accessor :id, :item_id, :item_type, :feature_id, :feature_name, :value, :name
5
+
6
+ # OPERATIONS
7
+ #-----------
8
+
9
+ def self.item_entitlements_for_item(id, params={}, env=nil, headers={})
10
+ Request.send('get', uri_path("items",id.to_s,"item_entitlements"), params, env, headers)
11
+ end
12
+
13
+ def self.item_entitlements_for_feature(id, params={}, env=nil, headers={})
14
+ Request.send('get', uri_path("features",id.to_s,"item_entitlements"), params, env, headers)
15
+ end
16
+
17
+ def self.add_item_entitlements(id, params, env=nil, headers={})
18
+ Request.send('post', uri_path("features",id.to_s,"item_entitlements"), params, env, headers)
19
+ end
20
+
21
+ def self.upsert_or_remove_item_entitlements_for_item(id, params, env=nil, headers={})
22
+ Request.send('post', uri_path("items",id.to_s,"item_entitlements"), params, env, headers)
23
+ end
24
+
25
+ end # ~ItemEntitlement
26
+ end # ~ChargeBee
@@ -1,7 +1,7 @@
1
1
  module ChargeBee
2
2
  class ItemFamily < Model
3
3
 
4
- attr_accessor :id, :name, :description, :status, :resource_version, :updated_at
4
+ attr_accessor :id, :name, :description, :status, :resource_version, :updated_at, :channel
5
5
 
6
6
  # OPERATIONS
7
7
  #-----------
@@ -16,9 +16,9 @@ module ChargeBee
16
16
  attr_accessor :id, :name, :item_family_id, :item_id, :description, :status, :external_name,
17
17
  :pricing_model, :price, :price_in_decimal, :period, :currency_code, :period_unit, :trial_period,
18
18
  :trial_period_unit, :trial_end_action, :shipping_period, :shipping_period_unit, :billing_cycles,
19
- :free_quantity, :free_quantity_in_decimal, :resource_version, :updated_at, :created_at, :archived_at,
20
- :invoice_notes, :tiers, :is_taxable, :tax_detail, :accounting_detail, :metadata, :item_type,
21
- :archivable, :parent_item_id, :show_description_in_invoices, :show_description_in_quotes
19
+ :free_quantity, :free_quantity_in_decimal, :channel, :resource_version, :updated_at, :created_at,
20
+ :archived_at, :invoice_notes, :tiers, :is_taxable, :tax_detail, :accounting_detail, :metadata,
21
+ :item_type, :archivable, :parent_item_id, :show_description_in_invoices, :show_description_in_quotes
22
22
 
23
23
  # OPERATIONS
24
24
  #-----------
@@ -7,7 +7,7 @@ module ChargeBee
7
7
 
8
8
  attr_accessor :id, :status, :currency_code, :amount, :gateway_account_id, :expires_at, :reference_id,
9
9
  :payment_method_type, :success_url, :failure_url, :created_at, :modified_at, :resource_version,
10
- :updated_at, :customer_id, :gateway, :active_payment_attempt
10
+ :updated_at, :customer_id, :gateway, :active_payment_attempt, :business_entity_id
11
11
 
12
12
  # OPERATIONS
13
13
  #-----------
@@ -27,7 +27,7 @@ module ChargeBee
27
27
 
28
28
  attr_accessor :id, :resource_version, :updated_at, :created_at, :customer_id, :type, :reference_id,
29
29
  :status, :gateway, :gateway_account_id, :ip_address, :issuing_country, :card, :bank_account,
30
- :amazon_payment, :upi, :paypal, :mandates, :deleted
30
+ :amazon_payment, :upi, :paypal, :mandates, :deleted, :business_entity_id
31
31
 
32
32
  # OPERATIONS
33
33
  #-----------
@@ -24,8 +24,8 @@ module ChargeBee
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,
27
- :price_in_decimal, :invoice_notes, :taxable, :tax_profile_id, :meta_data, :tiers, :applicable_addons,
28
- :attached_addons, :event_based_addons, :show_description_in_invoices, :show_description_in_quotes
27
+ :price_in_decimal, :channel, :invoice_notes, :taxable, :tax_profile_id, :meta_data, :tiers,
28
+ :applicable_addons, :attached_addons, :event_based_addons, :show_description_in_invoices, :show_description_in_quotes
29
29
 
30
30
  # OPERATIONS
31
31
  #-----------
@@ -34,7 +34,7 @@ module ChargeBee
34
34
  Request.send('post', uri_path("plans"), params, env, headers)
35
35
  end
36
36
 
37
- def self.update(id, params={}, env=nil, headers={})
37
+ def self.update(id, params, env=nil, headers={})
38
38
  Request.send('post', uri_path("plans",id.to_s), params, env, headers)
39
39
  end
40
40
 
@@ -0,0 +1,18 @@
1
+ module ChargeBee
2
+ class Purchase < Model
3
+
4
+ attr_accessor :id, :customer_id, :created_at, :modified_at, :subscription_ids, :invoice_ids
5
+
6
+ # OPERATIONS
7
+ #-----------
8
+
9
+ def self.create(params, env=nil, headers={})
10
+ Request.send('post', uri_path("purchases"), params, env, headers)
11
+ end
12
+
13
+ def self.estimate(params, env=nil, headers={})
14
+ Request.send('post', uri_path("purchases","estimate"), params, env, headers)
15
+ end
16
+
17
+ end # ~Purchase
18
+ end # ~ChargeBee
@@ -6,7 +6,7 @@ module ChargeBee
6
6
  end
7
7
 
8
8
  class Discount < Model
9
- attr_accessor :amount, :description, :entity_type, :entity_id
9
+ attr_accessor :amount, :description, :entity_type, :entity_id, :coupon_set_code
10
10
  end
11
11
 
12
12
  class LineItemDiscount < Model
@@ -38,7 +38,7 @@ module ChargeBee
38
38
  :sub_total, :total, :credits_applied, :amount_paid, :amount_due, :version, :resource_version,
39
39
  :updated_at, :vat_number_prefix, :line_items, :discounts, :line_item_discounts, :taxes, :line_item_taxes,
40
40
  :line_item_tiers, :currency_code, :notes, :shipping_address, :billing_address, :contract_term_start,
41
- :contract_term_end, :contract_term_termination_fee
41
+ :contract_term_end, :contract_term_termination_fee, :business_entity_id
42
42
 
43
43
  # OPERATIONS
44
44
  #-----------
@@ -6,7 +6,7 @@ module ChargeBee
6
6
  end
7
7
 
8
8
  class Discount < Model
9
- attr_accessor :amount, :description, :entity_type, :entity_id
9
+ attr_accessor :amount, :description, :entity_type, :entity_id, :coupon_set_code
10
10
  end
11
11
 
12
12
  class LineItemDiscount < Model
@@ -49,11 +49,11 @@ module ChargeBee
49
49
  :override_relationship, :pause_date, :resume_date, :cancelled_at, :cancel_reason, :affiliate_token,
50
50
  :created_from_ip, :resource_version, :updated_at, :has_scheduled_advance_invoices, :has_scheduled_changes,
51
51
  :payment_source_id, :plan_free_quantity_in_decimal, :plan_amount_in_decimal, :cancel_schedule_created_at,
52
- :offline_payment_method, :net_term_days, :subscription_items, :item_tiers, :charged_items,
52
+ :offline_payment_method, :channel, :net_term_days, :subscription_items, :item_tiers, :charged_items,
53
53
  :due_invoices_count, :due_since, :total_dues, :mrr, :exchange_rate, :base_currency_code, :addons,
54
54
  :event_based_addons, :charged_event_based_addons, :coupon, :coupons, :shipping_address, :referral_info,
55
55
  :invoice_notes, :meta_data, :metadata, :deleted, :changes_scheduled_at, :contract_term, :cancel_reason_code,
56
- :free_period, :free_period_unit, :create_pending_invoices, :auto_close_invoices
56
+ :free_period, :free_period_unit, :create_pending_invoices, :auto_close_invoices, :business_entity_id
57
57
 
58
58
  # OPERATIONS
59
59
  #-----------
@@ -0,0 +1,23 @@
1
+ module ChargeBee
2
+ class SubscriptionEntitlement < Model
3
+
4
+ class Component < Model
5
+ attr_accessor :entitlement_overrides
6
+ end
7
+
8
+ attr_accessor :id, :subscription_id, :feature_id, :feature_name, :feature_unit, :value, :name,
9
+ :is_overridden, :is_enabled, :expires_at, :components
10
+
11
+ # OPERATIONS
12
+ #-----------
13
+
14
+ def self.subscription_entitlements_for_subscription(id, params={}, env=nil, headers={})
15
+ Request.send('get', uri_path("subscriptions",id.to_s,"subscription_entitlements"), params, env, headers)
16
+ end
17
+
18
+ def self.set_subscription_entitlement_availability(id, params, env=nil, headers={})
19
+ Request.send('post', uri_path("subscriptions",id.to_s,"subscription_entitlements/set_availability"), params, env, headers)
20
+ end
21
+
22
+ end # ~SubscriptionEntitlement
23
+ end # ~ChargeBee
@@ -23,7 +23,7 @@ module ChargeBee
23
23
  :error_code, :error_text, :voided_at, :resource_version, :updated_at, :fraud_reason, :amount_unused,
24
24
  :masked_card_number, :reference_transaction_id, :refunded_txn_id, :reference_authorization_id,
25
25
  :amount_capturable, :reversal_transaction_id, :linked_invoices, :linked_credit_notes, :linked_refunds,
26
- :linked_payments, :deleted, :iin, :last4, :merchant_reference_id
26
+ :linked_payments, :deleted, :iin, :last4, :merchant_reference_id, :business_entity_id
27
27
 
28
28
  # OPERATIONS
29
29
  #-----------
@@ -13,6 +13,10 @@ module ChargeBee
13
13
  # OPERATIONS
14
14
  #-----------
15
15
 
16
+ def self.create_unbilled_charge(params, env=nil, headers={})
17
+ Request.send('post', uri_path("unbilled_charges","create"), params, env, headers)
18
+ end
19
+
16
20
  def self.create(params, env=nil, headers={})
17
21
  Request.send('post', uri_path("unbilled_charges"), params, env, headers)
18
22
  end
@@ -117,13 +117,15 @@ module ChargeBee
117
117
 
118
118
  def estimate()
119
119
  estimate = get(:estimate, Estimate, {},
120
- {:subscription_estimate => SubscriptionEstimate, :invoice_estimate => InvoiceEstimate, :invoice_estimates => InvoiceEstimate, :next_invoice_estimate => InvoiceEstimate, :credit_note_estimates => CreditNoteEstimate, :unbilled_charge_estimates => UnbilledCharge});
120
+ {:subscription_estimate => SubscriptionEstimate, :subscription_estimates => SubscriptionEstimate, :invoice_estimate => InvoiceEstimate, :invoice_estimates => InvoiceEstimate, :next_invoice_estimate => InvoiceEstimate, :credit_note_estimates => CreditNoteEstimate, :unbilled_charge_estimates => UnbilledCharge});
121
121
  estimate.init_dependant(@response[:estimate], :subscription_estimate,
122
122
  {:shipping_address => SubscriptionEstimate::ShippingAddress, :contract_term => SubscriptionEstimate::ContractTerm});
123
123
  estimate.init_dependant(@response[:estimate], :invoice_estimate,
124
124
  {:line_items => InvoiceEstimate::LineItem, :discounts => InvoiceEstimate::Discount, :taxes => InvoiceEstimate::Tax, :line_item_taxes => InvoiceEstimate::LineItemTax, :line_item_tiers => InvoiceEstimate::LineItemTier, :line_item_discounts => InvoiceEstimate::LineItemDiscount});
125
125
  estimate.init_dependant(@response[:estimate], :next_invoice_estimate,
126
126
  {:line_items => InvoiceEstimate::LineItem, :discounts => InvoiceEstimate::Discount, :taxes => InvoiceEstimate::Tax, :line_item_taxes => InvoiceEstimate::LineItemTax, :line_item_tiers => InvoiceEstimate::LineItemTier, :line_item_discounts => InvoiceEstimate::LineItemDiscount});
127
+ estimate.init_dependant_list(@response[:estimate], :subscription_estimates,
128
+ {:shipping_address => SubscriptionEstimate::ShippingAddress, :contract_term => SubscriptionEstimate::ContractTerm});
127
129
  estimate.init_dependant_list(@response[:estimate], :invoice_estimates,
128
130
  {:line_items => InvoiceEstimate::LineItem, :discounts => InvoiceEstimate::Discount, :taxes => InvoiceEstimate::Tax, :line_item_taxes => InvoiceEstimate::LineItemTax, :line_item_tiers => InvoiceEstimate::LineItemTier, :line_item_discounts => InvoiceEstimate::LineItemDiscount});
129
131
  estimate.init_dependant_list(@response[:estimate], :credit_note_estimates,
@@ -272,6 +274,45 @@ module ChargeBee
272
274
  return differential_price;
273
275
  end
274
276
 
277
+ def feature()
278
+ feature = get(:feature, Feature,
279
+ {:levels => Feature::Level});
280
+ return feature;
281
+ end
282
+
283
+ def impacted_subscription()
284
+ impacted_subscription = get(:impacted_subscription, ImpactedSubscription,
285
+ {:download => ImpactedSubscription::Download});
286
+ return impacted_subscription;
287
+ end
288
+
289
+ def impacted_item()
290
+ impacted_item = get(:impacted_item, ImpactedItem,
291
+ {:download => ImpactedItem::Download});
292
+ return impacted_item;
293
+ end
294
+
295
+ def subscription_entitlement()
296
+ subscription_entitlement = get(:subscription_entitlement, SubscriptionEntitlement,
297
+ {:component => SubscriptionEntitlement::Component});
298
+ return subscription_entitlement;
299
+ end
300
+
301
+ def item_entitlement()
302
+ item_entitlement = get(:item_entitlement, ItemEntitlement);
303
+ return item_entitlement;
304
+ end
305
+
306
+ def entitlement_override()
307
+ entitlement_override = get(:entitlement_override, EntitlementOverride);
308
+ return entitlement_override;
309
+ end
310
+
311
+ def purchase()
312
+ purchase = get(:purchase, Purchase);
313
+ return purchase;
314
+ end
315
+
275
316
 
276
317
  def unbilled_charges()
277
318
  unbilled_charges = get_list(:unbilled_charges, UnbilledCharge,
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.14.1'
56
+ VERSION = '2.17.0'
57
57
 
58
58
  @@default_env = nil
59
59
  @@verify_ca_certs = true
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.14.1
4
+ version: 2.17.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rajaraman S
@@ -9,88 +9,88 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2022-03-31 00:00:00.000000000 Z
12
+ date: 2022-07-18 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
- - - "<"
55
+ - - <
56
56
  - !ruby/object:Gem::Version
57
57
  version: 1.0.0
58
58
  type: :runtime
59
59
  prerelease: false
60
60
  version_requirements: !ruby/object:Gem::Requirement
61
61
  requirements:
62
- - - ">="
62
+ - - '>='
63
63
  - !ruby/object:Gem::Version
64
64
  version: 0.1.0
65
- - - "<"
65
+ - - <
66
66
  - !ruby/object:Gem::Version
67
67
  version: 1.0.0
68
68
  - !ruby/object:Gem::Dependency
69
69
  name: rspec
70
70
  requirement: !ruby/object:Gem::Requirement
71
71
  requirements:
72
- - - "~>"
72
+ - - ~>
73
73
  - !ruby/object:Gem::Version
74
74
  version: 3.0.0
75
75
  type: :development
76
76
  prerelease: false
77
77
  version_requirements: !ruby/object:Gem::Requirement
78
78
  requirements:
79
- - - "~>"
79
+ - - ~>
80
80
  - !ruby/object:Gem::Version
81
81
  version: 3.0.0
82
82
  - !ruby/object:Gem::Dependency
83
83
  name: mocha
84
84
  requirement: !ruby/object:Gem::Requirement
85
85
  requirements:
86
- - - ">="
86
+ - - '>='
87
87
  - !ruby/object:Gem::Version
88
88
  version: '0'
89
89
  type: :development
90
90
  prerelease: false
91
91
  version_requirements: !ruby/object:Gem::Requirement
92
92
  requirements:
93
- - - ">="
93
+ - - '>='
94
94
  - !ruby/object:Gem::Version
95
95
  version: '0'
96
96
  description: Subscription Billing - Simple. Secure. Affordable. More details at www.chargebee.com.
@@ -128,15 +128,20 @@ files:
128
128
  - lib/chargebee/models/customer.rb
129
129
  - lib/chargebee/models/differential_price.rb
130
130
  - lib/chargebee/models/download.rb
131
+ - lib/chargebee/models/entitlement_override.rb
131
132
  - lib/chargebee/models/estimate.rb
132
133
  - lib/chargebee/models/event.rb
133
134
  - lib/chargebee/models/export.rb
135
+ - lib/chargebee/models/feature.rb
134
136
  - lib/chargebee/models/gift.rb
135
137
  - lib/chargebee/models/hierarchy.rb
136
138
  - lib/chargebee/models/hosted_page.rb
139
+ - lib/chargebee/models/impacted_item.rb
140
+ - lib/chargebee/models/impacted_subscription.rb
137
141
  - lib/chargebee/models/invoice.rb
138
142
  - lib/chargebee/models/invoice_estimate.rb
139
143
  - lib/chargebee/models/item.rb
144
+ - lib/chargebee/models/item_entitlement.rb
140
145
  - lib/chargebee/models/item_family.rb
141
146
  - lib/chargebee/models/item_price.rb
142
147
  - lib/chargebee/models/model.rb
@@ -146,6 +151,7 @@ files:
146
151
  - lib/chargebee/models/plan.rb
147
152
  - lib/chargebee/models/portal_session.rb
148
153
  - lib/chargebee/models/promotional_credit.rb
154
+ - lib/chargebee/models/purchase.rb
149
155
  - lib/chargebee/models/quote.rb
150
156
  - lib/chargebee/models/quote_line_group.rb
151
157
  - lib/chargebee/models/quoted_charge.rb
@@ -153,6 +159,7 @@ files:
153
159
  - lib/chargebee/models/resource_migration.rb
154
160
  - lib/chargebee/models/site_migration_detail.rb
155
161
  - lib/chargebee/models/subscription.rb
162
+ - lib/chargebee/models/subscription_entitlement.rb
156
163
  - lib/chargebee/models/subscription_estimate.rb
157
164
  - lib/chargebee/models/tax_withheld.rb
158
165
  - lib/chargebee/models/third_party_payment_method.rb
@@ -178,21 +185,22 @@ licenses:
178
185
  metadata: {}
179
186
  post_install_message:
180
187
  rdoc_options:
181
- - "--charset=UTF-8"
188
+ - --charset=UTF-8
182
189
  require_paths:
183
190
  - lib
184
191
  required_ruby_version: !ruby/object:Gem::Requirement
185
192
  requirements:
186
- - - ">="
193
+ - - '>='
187
194
  - !ruby/object:Gem::Version
188
195
  version: 1.9.3
189
196
  required_rubygems_version: !ruby/object:Gem::Requirement
190
197
  requirements:
191
- - - ">="
198
+ - - '>='
192
199
  - !ruby/object:Gem::Version
193
200
  version: '0'
194
201
  requirements: []
195
- rubygems_version: 3.0.3
202
+ rubyforge_project:
203
+ rubygems_version: 2.4.5
196
204
  signing_key:
197
205
  specification_version: 2
198
206
  summary: Ruby client for Chargebee API.