chargebee 2.6.4 → 2.6.5

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 (50) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +1501 -1488
  3. data/LICENSE +24 -24
  4. data/README.rdoc +41 -41
  5. data/chargebee.gemspec +2 -3
  6. data/lib/chargebee/environment.rb +28 -28
  7. data/lib/chargebee/errors.rb +43 -43
  8. data/lib/chargebee/models/addon.rb +45 -45
  9. data/lib/chargebee/models/address.rb +18 -18
  10. data/lib/chargebee/models/card.rb +32 -32
  11. data/lib/chargebee/models/comment.rb +25 -25
  12. data/lib/chargebee/models/contact.rb +10 -10
  13. data/lib/chargebee/models/coupon.rb +40 -40
  14. data/lib/chargebee/models/coupon_code.rb +25 -25
  15. data/lib/chargebee/models/coupon_set.rb +37 -37
  16. data/lib/chargebee/models/credit_note.rb +77 -77
  17. data/lib/chargebee/models/credit_note_estimate.rb +35 -35
  18. data/lib/chargebee/models/customer.rb +120 -120
  19. data/lib/chargebee/models/download.rb +9 -9
  20. data/lib/chargebee/models/estimate.rb +46 -46
  21. data/lib/chargebee/models/event.rb +45 -45
  22. data/lib/chargebee/models/export.rb +86 -86
  23. data/lib/chargebee/models/gift.rb +42 -42
  24. data/lib/chargebee/models/hosted_page.rb +77 -77
  25. data/lib/chargebee/models/invoice.rb +172 -172
  26. data/lib/chargebee/models/invoice_estimate.rb +35 -35
  27. data/lib/chargebee/models/model.rb +101 -101
  28. data/lib/chargebee/models/order.rb +76 -76
  29. data/lib/chargebee/models/payment_source.rb +75 -71
  30. data/lib/chargebee/models/plan.rb +60 -59
  31. data/lib/chargebee/models/portal_session.rb +30 -30
  32. data/lib/chargebee/models/promotional_credit.rb +30 -30
  33. data/lib/chargebee/models/quote.rb +72 -72
  34. data/lib/chargebee/models/resource_migration.rb +13 -13
  35. data/lib/chargebee/models/site_migration_detail.rb +14 -14
  36. data/lib/chargebee/models/subscription.rb +137 -137
  37. data/lib/chargebee/models/subscription_estimate.rb +13 -13
  38. data/lib/chargebee/models/third_party_payment_method.rb +9 -9
  39. data/lib/chargebee/models/time_machine.rb +46 -46
  40. data/lib/chargebee/models/transaction.rb +62 -62
  41. data/lib/chargebee/models/unbilled_charge.rb +31 -31
  42. data/lib/chargebee/models/virtual_bank_account.rb +30 -26
  43. data/lib/chargebee/request.rb +27 -27
  44. data/lib/chargebee/rest.rb +92 -92
  45. data/lib/chargebee/result.rb +240 -240
  46. data/lib/chargebee.rb +85 -85
  47. data/spec/errors_spec.rb +23 -23
  48. data/spec/sample_response.rb +73 -73
  49. metadata +3 -4
  50. data/lib/chargebee/.DS_Store +0 -0
@@ -1,73 +1,73 @@
1
- module ChargeBee
2
- class Quote < Model
3
-
4
- class LineItem < Model
5
- attr_accessor :id, :subscription_id, :date_from, :date_to, :unit_amount, :quantity, :amount, :pricing_model, :is_taxed, :tax_amount, :tax_rate, :discount_amount, :item_level_discount_amount, :description, :entity_type, :tax_exempt_reason, :entity_id
6
- end
7
-
8
- class Discount < Model
9
- attr_accessor :amount, :description, :entity_type, :entity_id
10
- end
11
-
12
- class LineItemDiscount < Model
13
- attr_accessor :line_item_id, :discount_type, :coupon_id, :discount_amount
14
- end
15
-
16
- class Tax < Model
17
- attr_accessor :name, :amount, :description
18
- end
19
-
20
- class LineItemTax < Model
21
- attr_accessor :line_item_id, :tax_name, :tax_rate, :tax_amount, :tax_juris_type, :tax_juris_name, :tax_juris_code
22
- end
23
-
24
- class ShippingAddress < Model
25
- attr_accessor :first_name, :last_name, :email, :company, :phone, :line1, :line2, :line3, :city, :state_code, :state, :country, :zip, :validation_status
26
- end
27
-
28
- class BillingAddress < Model
29
- attr_accessor :first_name, :last_name, :email, :company, :phone, :line1, :line2, :line3, :city, :state_code, :state, :country, :zip, :validation_status
30
- end
31
-
32
- attr_accessor :id, :po_number, :customer_id, :subscription_id, :status, :operation_type, :vat_number,
33
- :price_type, :valid_till, :date, :sub_total, :total, :credits_applied, :amount_paid, :amount_due,
34
- :resource_version, :updated_at, :currency_code, :line_items, :discounts, :line_item_discounts,
35
- :taxes, :line_item_taxes, :shipping_address, :billing_address
36
-
37
- # OPERATIONS
38
- #-----------
39
-
40
- def self.retrieve(id, env=nil, headers={})
41
- Request.send('get', uri_path("quotes",id.to_s), {}, env, headers)
42
- end
43
-
44
- def self.create_sub_for_customer_quote(id, params, env=nil, headers={})
45
- Request.send('post', uri_path("customers",id.to_s,"create_subscription_quote"), params, env, headers)
46
- end
47
-
48
- def self.update_subscription_quote(params, env=nil, headers={})
49
- Request.send('post', uri_path("quotes","update_subscription_quote"), params, env, headers)
50
- end
51
-
52
- def self.create_for_onetime_charges(params, env=nil, headers={})
53
- Request.send('post', uri_path("quotes","create_for_onetime_charges"), params, env, headers)
54
- end
55
-
56
- def self.convert(id, env=nil, headers={})
57
- Request.send('post', uri_path("quotes",id.to_s,"convert"), {}, env, headers)
58
- end
59
-
60
- def self.update_status(id, params, env=nil, headers={})
61
- Request.send('post', uri_path("quotes",id.to_s,"update_status"), params, env, headers)
62
- end
63
-
64
- def self.delete(id, params={}, env=nil, headers={})
65
- Request.send('post', uri_path("quotes",id.to_s,"delete"), params, env, headers)
66
- end
67
-
68
- def self.pdf(id, params={}, env=nil, headers={})
69
- Request.send('post', uri_path("quotes",id.to_s,"pdf"), params, env, headers)
70
- end
71
-
72
- end # ~Quote
1
+ module ChargeBee
2
+ class Quote < Model
3
+
4
+ class LineItem < Model
5
+ attr_accessor :id, :subscription_id, :date_from, :date_to, :unit_amount, :quantity, :amount, :pricing_model, :is_taxed, :tax_amount, :tax_rate, :discount_amount, :item_level_discount_amount, :description, :entity_type, :tax_exempt_reason, :entity_id
6
+ end
7
+
8
+ class Discount < Model
9
+ attr_accessor :amount, :description, :entity_type, :entity_id
10
+ end
11
+
12
+ class LineItemDiscount < Model
13
+ attr_accessor :line_item_id, :discount_type, :coupon_id, :discount_amount
14
+ end
15
+
16
+ class Tax < Model
17
+ attr_accessor :name, :amount, :description
18
+ end
19
+
20
+ class LineItemTax < Model
21
+ attr_accessor :line_item_id, :tax_name, :tax_rate, :is_partial_tax_applied, :is_non_compliance_tax, :taxable_amount, :tax_amount, :tax_juris_type, :tax_juris_name, :tax_juris_code
22
+ end
23
+
24
+ class ShippingAddress < Model
25
+ attr_accessor :first_name, :last_name, :email, :company, :phone, :line1, :line2, :line3, :city, :state_code, :state, :country, :zip, :validation_status
26
+ end
27
+
28
+ class BillingAddress < Model
29
+ attr_accessor :first_name, :last_name, :email, :company, :phone, :line1, :line2, :line3, :city, :state_code, :state, :country, :zip, :validation_status
30
+ end
31
+
32
+ attr_accessor :id, :po_number, :customer_id, :subscription_id, :status, :operation_type, :vat_number,
33
+ :price_type, :valid_till, :date, :sub_total, :total, :credits_applied, :amount_paid, :amount_due,
34
+ :resource_version, :updated_at, :currency_code, :line_items, :discounts, :line_item_discounts,
35
+ :taxes, :line_item_taxes, :shipping_address, :billing_address
36
+
37
+ # OPERATIONS
38
+ #-----------
39
+
40
+ def self.retrieve(id, env=nil, headers={})
41
+ Request.send('get', uri_path("quotes",id.to_s), {}, env, headers)
42
+ end
43
+
44
+ def self.create_sub_for_customer_quote(id, params, env=nil, headers={})
45
+ Request.send('post', uri_path("customers",id.to_s,"create_subscription_quote"), params, env, headers)
46
+ end
47
+
48
+ def self.update_subscription_quote(params, env=nil, headers={})
49
+ Request.send('post', uri_path("quotes","update_subscription_quote"), params, env, headers)
50
+ end
51
+
52
+ def self.create_for_onetime_charges(params, env=nil, headers={})
53
+ Request.send('post', uri_path("quotes","create_for_onetime_charges"), params, env, headers)
54
+ end
55
+
56
+ def self.convert(id, env=nil, headers={})
57
+ Request.send('post', uri_path("quotes",id.to_s,"convert"), {}, env, headers)
58
+ end
59
+
60
+ def self.update_status(id, params, env=nil, headers={})
61
+ Request.send('post', uri_path("quotes",id.to_s,"update_status"), params, env, headers)
62
+ end
63
+
64
+ def self.delete(id, params={}, env=nil, headers={})
65
+ Request.send('post', uri_path("quotes",id.to_s,"delete"), params, env, headers)
66
+ end
67
+
68
+ def self.pdf(id, params={}, env=nil, headers={})
69
+ Request.send('post', uri_path("quotes",id.to_s,"pdf"), params, env, headers)
70
+ end
71
+
72
+ end # ~Quote
73
73
  end # ~ChargeBee
@@ -1,14 +1,14 @@
1
- module ChargeBee
2
- class ResourceMigration < Model
3
-
4
- attr_accessor :from_site, :entity_type, :entity_id, :status, :errors, :created_at, :updated_at
5
-
6
- # OPERATIONS
7
- #-----------
8
-
9
- def self.retrieve_latest(params, env=nil, headers={})
10
- Request.send('get', uri_path("resource_migrations","retrieve_latest"), params, env, headers)
11
- end
12
-
13
- end # ~ResourceMigration
1
+ module ChargeBee
2
+ class ResourceMigration < Model
3
+
4
+ attr_accessor :from_site, :entity_type, :entity_id, :status, :errors, :created_at, :updated_at
5
+
6
+ # OPERATIONS
7
+ #-----------
8
+
9
+ def self.retrieve_latest(params, env=nil, headers={})
10
+ Request.send('get', uri_path("resource_migrations","retrieve_latest"), params, env, headers)
11
+ end
12
+
13
+ end # ~ResourceMigration
14
14
  end # ~ChargeBee
@@ -1,15 +1,15 @@
1
- module ChargeBee
2
- class SiteMigrationDetail < Model
3
-
4
- attr_accessor :entity_id, :other_site_name, :entity_id_at_other_site, :migrated_at, :entity_type,
5
- :status
6
-
7
- # OPERATIONS
8
- #-----------
9
-
10
- def self.list(params={}, env=nil, headers={})
11
- Request.send_list_request('get', uri_path("site_migration_details"), params, env, headers)
12
- end
13
-
14
- end # ~SiteMigrationDetail
1
+ module ChargeBee
2
+ class SiteMigrationDetail < Model
3
+
4
+ attr_accessor :entity_id, :other_site_name, :entity_id_at_other_site, :migrated_at, :entity_type,
5
+ :status
6
+
7
+ # OPERATIONS
8
+ #-----------
9
+
10
+ def self.list(params={}, env=nil, headers={})
11
+ Request.send_list_request('get', uri_path("site_migration_details"), params, env, headers)
12
+ end
13
+
14
+ end # ~SiteMigrationDetail
15
15
  end # ~ChargeBee
@@ -1,138 +1,138 @@
1
- module ChargeBee
2
- class Subscription < Model
3
-
4
- class Addon < Model
5
- attr_accessor :id, :quantity, :unit_price, :amount, :trial_end, :remaining_billing_cycles
6
- end
7
-
8
- class EventBasedAddon < Model
9
- attr_accessor :id, :quantity, :unit_price, :on_event, :charge_once
10
- end
11
-
12
- class ChargedEventBasedAddon < Model
13
- attr_accessor :id, :last_charged_at
14
- end
15
-
16
- class Coupon < Model
17
- attr_accessor :coupon_id, :apply_till, :applied_count, :coupon_code
18
- end
19
-
20
- class ShippingAddress < Model
21
- attr_accessor :first_name, :last_name, :email, :company, :phone, :line1, :line2, :line3, :city, :state_code, :state, :country, :zip, :validation_status
22
- end
23
-
24
- class ReferralInfo < Model
25
- attr_accessor :referral_code, :coupon_code, :referrer_id, :external_reference_id, :reward_status, :referral_system, :account_id, :campaign_id, :external_campaign_id, :friend_offer_type, :referrer_reward_type, :notify_referral_system, :destination_url, :post_purchase_widget_enabled
26
- end
27
-
28
- attr_accessor :id, :customer_id, :currency_code, :plan_id, :plan_quantity, :plan_unit_price,
29
- :setup_fee, :plan_amount, :billing_period, :billing_period_unit, :plan_free_quantity, :status,
30
- :start_date, :trial_start, :trial_end, :current_term_start, :current_term_end, :next_billing_at,
31
- :remaining_billing_cycles, :po_number, :created_at, :started_at, :activated_at, :gift_id, :pause_date,
32
- :resume_date, :cancelled_at, :cancel_reason, :affiliate_token, :created_from_ip, :resource_version,
33
- :updated_at, :has_scheduled_changes, :payment_source_id, :auto_collection, :due_invoices_count,
34
- :due_since, :total_dues, :mrr, :exchange_rate, :base_currency_code, :addons, :event_based_addons,
35
- :charged_event_based_addons, :coupon, :coupons, :shipping_address, :referral_info, :invoice_notes,
36
- :meta_data, :deleted
37
-
38
- # OPERATIONS
39
- #-----------
40
-
41
- def self.create(params, env=nil, headers={})
42
- Request.send('post', uri_path("subscriptions"), params, env, headers)
43
- end
44
-
45
- def self.create_for_customer(id, params, env=nil, headers={})
46
- Request.send('post', uri_path("customers",id.to_s,"subscriptions"), params, env, headers)
47
- end
48
-
49
- def self.list(params={}, env=nil, headers={})
50
- Request.send_list_request('get', uri_path("subscriptions"), params, env, headers)
51
- end
52
-
53
- def self.subscriptions_for_customer(id, params={}, env=nil, headers={})
54
- Request.send('get', uri_path("customers",id.to_s,"subscriptions"), params, env, headers)
55
- end
56
-
57
- def self.retrieve(id, env=nil, headers={})
58
- Request.send('get', uri_path("subscriptions",id.to_s), {}, env, headers)
59
- end
60
-
61
- def self.retrieve_with_scheduled_changes(id, env=nil, headers={})
62
- Request.send('get', uri_path("subscriptions",id.to_s,"retrieve_with_scheduled_changes"), {}, env, headers)
63
- end
64
-
65
- def self.remove_scheduled_changes(id, env=nil, headers={})
66
- Request.send('post', uri_path("subscriptions",id.to_s,"remove_scheduled_changes"), {}, env, headers)
67
- end
68
-
69
- def self.remove_scheduled_cancellation(id, params={}, env=nil, headers={})
70
- Request.send('post', uri_path("subscriptions",id.to_s,"remove_scheduled_cancellation"), params, env, headers)
71
- end
72
-
73
- def self.remove_coupons(id, params={}, env=nil, headers={})
74
- Request.send('post', uri_path("subscriptions",id.to_s,"remove_coupons"), params, env, headers)
75
- end
76
-
77
- def self.update(id, params={}, env=nil, headers={})
78
- Request.send('post', uri_path("subscriptions",id.to_s), params, env, headers)
79
- end
80
-
81
- def self.change_term_end(id, params, env=nil, headers={})
82
- Request.send('post', uri_path("subscriptions",id.to_s,"change_term_end"), params, env, headers)
83
- end
84
-
85
- def self.cancel(id, params={}, env=nil, headers={})
86
- Request.send('post', uri_path("subscriptions",id.to_s,"cancel"), params, env, headers)
87
- end
88
-
89
- def self.reactivate(id, params={}, env=nil, headers={})
90
- Request.send('post', uri_path("subscriptions",id.to_s,"reactivate"), params, env, headers)
91
- end
92
-
93
- def self.add_charge_at_term_end(id, params, env=nil, headers={})
94
- Request.send('post', uri_path("subscriptions",id.to_s,"add_charge_at_term_end"), params, env, headers)
95
- end
96
-
97
- def self.charge_addon_at_term_end(id, params, env=nil, headers={})
98
- Request.send('post', uri_path("subscriptions",id.to_s,"charge_addon_at_term_end"), params, env, headers)
99
- end
100
-
101
- def self.charge_future_renewals(id, params={}, env=nil, headers={})
102
- Request.send('post', uri_path("subscriptions",id.to_s,"charge_future_renewals"), params, env, headers)
103
- end
104
-
105
- def self.import_subscription(params, env=nil, headers={})
106
- Request.send('post', uri_path("subscriptions","import_subscription"), params, env, headers)
107
- end
108
-
109
- def self.import_for_customer(id, params, env=nil, headers={})
110
- Request.send('post', uri_path("customers",id.to_s,"import_subscription"), params, env, headers)
111
- end
112
-
113
- def self.override_billing_profile(id, params={}, env=nil, headers={})
114
- Request.send('post', uri_path("subscriptions",id.to_s,"override_billing_profile"), params, env, headers)
115
- end
116
-
117
- def self.delete(id, env=nil, headers={})
118
- Request.send('post', uri_path("subscriptions",id.to_s,"delete"), {}, env, headers)
119
- end
120
-
121
- def self.pause(id, params={}, env=nil, headers={})
122
- Request.send('post', uri_path("subscriptions",id.to_s,"pause"), params, env, headers)
123
- end
124
-
125
- def self.resume(id, params={}, env=nil, headers={})
126
- Request.send('post', uri_path("subscriptions",id.to_s,"resume"), params, env, headers)
127
- end
128
-
129
- def self.remove_scheduled_pause(id, env=nil, headers={})
130
- Request.send('post', uri_path("subscriptions",id.to_s,"remove_scheduled_pause"), {}, env, headers)
131
- end
132
-
133
- def self.remove_scheduled_resumption(id, env=nil, headers={})
134
- Request.send('post', uri_path("subscriptions",id.to_s,"remove_scheduled_resumption"), {}, env, headers)
135
- end
136
-
137
- end # ~Subscription
1
+ module ChargeBee
2
+ class Subscription < Model
3
+
4
+ class Addon < Model
5
+ attr_accessor :id, :quantity, :unit_price, :amount, :trial_end, :remaining_billing_cycles
6
+ end
7
+
8
+ class EventBasedAddon < Model
9
+ attr_accessor :id, :quantity, :unit_price, :on_event, :charge_once
10
+ end
11
+
12
+ class ChargedEventBasedAddon < Model
13
+ attr_accessor :id, :last_charged_at
14
+ end
15
+
16
+ class Coupon < Model
17
+ attr_accessor :coupon_id, :apply_till, :applied_count, :coupon_code
18
+ end
19
+
20
+ class ShippingAddress < Model
21
+ attr_accessor :first_name, :last_name, :email, :company, :phone, :line1, :line2, :line3, :city, :state_code, :state, :country, :zip, :validation_status
22
+ end
23
+
24
+ class ReferralInfo < Model
25
+ attr_accessor :referral_code, :coupon_code, :referrer_id, :external_reference_id, :reward_status, :referral_system, :account_id, :campaign_id, :external_campaign_id, :friend_offer_type, :referrer_reward_type, :notify_referral_system, :destination_url, :post_purchase_widget_enabled
26
+ end
27
+
28
+ attr_accessor :id, :customer_id, :currency_code, :plan_id, :plan_quantity, :plan_unit_price,
29
+ :setup_fee, :plan_amount, :billing_period, :billing_period_unit, :plan_free_quantity, :status,
30
+ :start_date, :trial_start, :trial_end, :current_term_start, :current_term_end, :next_billing_at,
31
+ :remaining_billing_cycles, :po_number, :created_at, :started_at, :activated_at, :gift_id, :pause_date,
32
+ :resume_date, :cancelled_at, :cancel_reason, :affiliate_token, :created_from_ip, :resource_version,
33
+ :updated_at, :has_scheduled_changes, :payment_source_id, :auto_collection, :due_invoices_count,
34
+ :due_since, :total_dues, :mrr, :exchange_rate, :base_currency_code, :addons, :event_based_addons,
35
+ :charged_event_based_addons, :coupon, :coupons, :shipping_address, :referral_info, :invoice_notes,
36
+ :meta_data, :deleted
37
+
38
+ # OPERATIONS
39
+ #-----------
40
+
41
+ def self.create(params, env=nil, headers={})
42
+ Request.send('post', uri_path("subscriptions"), params, env, headers)
43
+ end
44
+
45
+ def self.create_for_customer(id, params, env=nil, headers={})
46
+ Request.send('post', uri_path("customers",id.to_s,"subscriptions"), params, env, headers)
47
+ end
48
+
49
+ def self.list(params={}, env=nil, headers={})
50
+ Request.send_list_request('get', uri_path("subscriptions"), params, env, headers)
51
+ end
52
+
53
+ def self.subscriptions_for_customer(id, params={}, env=nil, headers={})
54
+ Request.send('get', uri_path("customers",id.to_s,"subscriptions"), params, env, headers)
55
+ end
56
+
57
+ def self.retrieve(id, env=nil, headers={})
58
+ Request.send('get', uri_path("subscriptions",id.to_s), {}, env, headers)
59
+ end
60
+
61
+ def self.retrieve_with_scheduled_changes(id, env=nil, headers={})
62
+ Request.send('get', uri_path("subscriptions",id.to_s,"retrieve_with_scheduled_changes"), {}, env, headers)
63
+ end
64
+
65
+ def self.remove_scheduled_changes(id, env=nil, headers={})
66
+ Request.send('post', uri_path("subscriptions",id.to_s,"remove_scheduled_changes"), {}, env, headers)
67
+ end
68
+
69
+ def self.remove_scheduled_cancellation(id, params={}, env=nil, headers={})
70
+ Request.send('post', uri_path("subscriptions",id.to_s,"remove_scheduled_cancellation"), params, env, headers)
71
+ end
72
+
73
+ def self.remove_coupons(id, params={}, env=nil, headers={})
74
+ Request.send('post', uri_path("subscriptions",id.to_s,"remove_coupons"), params, env, headers)
75
+ end
76
+
77
+ def self.update(id, params={}, env=nil, headers={})
78
+ Request.send('post', uri_path("subscriptions",id.to_s), params, env, headers)
79
+ end
80
+
81
+ def self.change_term_end(id, params, env=nil, headers={})
82
+ Request.send('post', uri_path("subscriptions",id.to_s,"change_term_end"), params, env, headers)
83
+ end
84
+
85
+ def self.cancel(id, params={}, env=nil, headers={})
86
+ Request.send('post', uri_path("subscriptions",id.to_s,"cancel"), params, env, headers)
87
+ end
88
+
89
+ def self.reactivate(id, params={}, env=nil, headers={})
90
+ Request.send('post', uri_path("subscriptions",id.to_s,"reactivate"), params, env, headers)
91
+ end
92
+
93
+ def self.add_charge_at_term_end(id, params, env=nil, headers={})
94
+ Request.send('post', uri_path("subscriptions",id.to_s,"add_charge_at_term_end"), params, env, headers)
95
+ end
96
+
97
+ def self.charge_addon_at_term_end(id, params, env=nil, headers={})
98
+ Request.send('post', uri_path("subscriptions",id.to_s,"charge_addon_at_term_end"), params, env, headers)
99
+ end
100
+
101
+ def self.charge_future_renewals(id, params={}, env=nil, headers={})
102
+ Request.send('post', uri_path("subscriptions",id.to_s,"charge_future_renewals"), params, env, headers)
103
+ end
104
+
105
+ def self.import_subscription(params, env=nil, headers={})
106
+ Request.send('post', uri_path("subscriptions","import_subscription"), params, env, headers)
107
+ end
108
+
109
+ def self.import_for_customer(id, params, env=nil, headers={})
110
+ Request.send('post', uri_path("customers",id.to_s,"import_subscription"), params, env, headers)
111
+ end
112
+
113
+ def self.override_billing_profile(id, params={}, env=nil, headers={})
114
+ Request.send('post', uri_path("subscriptions",id.to_s,"override_billing_profile"), params, env, headers)
115
+ end
116
+
117
+ def self.delete(id, env=nil, headers={})
118
+ Request.send('post', uri_path("subscriptions",id.to_s,"delete"), {}, env, headers)
119
+ end
120
+
121
+ def self.pause(id, params={}, env=nil, headers={})
122
+ Request.send('post', uri_path("subscriptions",id.to_s,"pause"), params, env, headers)
123
+ end
124
+
125
+ def self.resume(id, params={}, env=nil, headers={})
126
+ Request.send('post', uri_path("subscriptions",id.to_s,"resume"), params, env, headers)
127
+ end
128
+
129
+ def self.remove_scheduled_pause(id, env=nil, headers={})
130
+ Request.send('post', uri_path("subscriptions",id.to_s,"remove_scheduled_pause"), {}, env, headers)
131
+ end
132
+
133
+ def self.remove_scheduled_resumption(id, env=nil, headers={})
134
+ Request.send('post', uri_path("subscriptions",id.to_s,"remove_scheduled_resumption"), {}, env, headers)
135
+ end
136
+
137
+ end # ~Subscription
138
138
  end # ~ChargeBee
@@ -1,14 +1,14 @@
1
- module ChargeBee
2
- class SubscriptionEstimate < Model
3
-
4
- class ShippingAddress < Model
5
- attr_accessor :first_name, :last_name, :email, :company, :phone, :line1, :line2, :line3, :city, :state_code, :state, :country, :zip, :validation_status
6
- end
7
-
8
- attr_accessor :id, :currency_code, :status, :next_billing_at, :pause_date, :resume_date, :shipping_address
9
-
10
- # OPERATIONS
11
- #-----------
12
-
13
- end # ~SubscriptionEstimate
1
+ module ChargeBee
2
+ class SubscriptionEstimate < Model
3
+
4
+ class ShippingAddress < Model
5
+ attr_accessor :first_name, :last_name, :email, :company, :phone, :line1, :line2, :line3, :city, :state_code, :state, :country, :zip, :validation_status
6
+ end
7
+
8
+ attr_accessor :id, :currency_code, :status, :next_billing_at, :pause_date, :resume_date, :shipping_address
9
+
10
+ # OPERATIONS
11
+ #-----------
12
+
13
+ end # ~SubscriptionEstimate
14
14
  end # ~ChargeBee
@@ -1,10 +1,10 @@
1
- module ChargeBee
2
- class ThirdPartyPaymentMethod < Model
3
-
4
- attr_accessor :type, :gateway, :gateway_account_id, :reference_id
5
-
6
- # OPERATIONS
7
- #-----------
8
-
9
- end # ~ThirdPartyPaymentMethod
1
+ module ChargeBee
2
+ class ThirdPartyPaymentMethod < Model
3
+
4
+ attr_accessor :type, :gateway, :gateway_account_id, :reference_id
5
+
6
+ # OPERATIONS
7
+ #-----------
8
+
9
+ end # ~ThirdPartyPaymentMethod
10
10
  end # ~ChargeBee
@@ -1,47 +1,47 @@
1
- module ChargeBee
2
- class TimeMachine < Model
3
-
4
- attr_accessor :name, :time_travel_status, :genesis_time, :destination_time, :failure_code, :failure_reason,
5
- :error_json
6
- def wait_for_time_travel_completion(env = nil)
7
- env = env || ChargeBee.default_env
8
- sleeptime = env.time_machine_sleeptime
9
-
10
- tm = (1..30).inject(self) do |time_machine|
11
- break time_machine if time_machine.time_travel_status != "in_progress"
12
- sleep(sleeptime)
13
- self.class.retrieve(self.name, env).time_machine
14
- end
15
-
16
- # sync last fetched one with the current instance
17
- new_values = tm.instance_variable_get("@values")
18
- self.instance_variable_set("@values", new_values)
19
- self.load(new_values)
20
-
21
- case tm.time_travel_status
22
- when "in_progress"
23
- raise Error.new('The time travel is taking too much time')
24
- when "failed"
25
- json_obj = Util.symbolize_keys(JSON.parse(self.error_json))
26
- raise OperationFailedError.new(json_obj[:http_code], json_obj)
27
- when "not_enabled", "_unknown"
28
- raise Error.new("Time travel status is in wrong state #{self.time_travel_status}")
29
- end
30
- end
31
- # OPERATIONS
32
- #-----------
33
-
34
- def self.retrieve(id, env=nil, headers={})
35
- Request.send('get', uri_path("time_machines",id.to_s), {}, env, headers)
36
- end
37
-
38
- def self.start_afresh(id, params={}, env=nil, headers={})
39
- Request.send('post', uri_path("time_machines",id.to_s,"start_afresh"), params, env, headers)
40
- end
41
-
42
- def self.travel_forward(id, params={}, env=nil, headers={})
43
- Request.send('post', uri_path("time_machines",id.to_s,"travel_forward"), params, env, headers)
44
- end
45
-
46
- end # ~TimeMachine
1
+ module ChargeBee
2
+ class TimeMachine < Model
3
+
4
+ attr_accessor :name, :time_travel_status, :genesis_time, :destination_time, :failure_code, :failure_reason,
5
+ :error_json
6
+ def wait_for_time_travel_completion(env = nil)
7
+ env = env || ChargeBee.default_env
8
+ sleeptime = env.time_machine_sleeptime
9
+
10
+ tm = (1..30).inject(self) do |time_machine|
11
+ break time_machine if time_machine.time_travel_status != "in_progress"
12
+ sleep(sleeptime)
13
+ self.class.retrieve(self.name, env).time_machine
14
+ end
15
+
16
+ # sync last fetched one with the current instance
17
+ new_values = tm.instance_variable_get("@values")
18
+ self.instance_variable_set("@values", new_values)
19
+ self.load(new_values)
20
+
21
+ case tm.time_travel_status
22
+ when "in_progress"
23
+ raise Error.new('The time travel is taking too much time')
24
+ when "failed"
25
+ json_obj = Util.symbolize_keys(JSON.parse(self.error_json))
26
+ raise OperationFailedError.new(json_obj[:http_code], json_obj)
27
+ when "not_enabled", "_unknown"
28
+ raise Error.new("Time travel status is in wrong state #{self.time_travel_status}")
29
+ end
30
+ end
31
+ # OPERATIONS
32
+ #-----------
33
+
34
+ def self.retrieve(id, env=nil, headers={})
35
+ Request.send('get', uri_path("time_machines",id.to_s), {}, env, headers)
36
+ end
37
+
38
+ def self.start_afresh(id, params={}, env=nil, headers={})
39
+ Request.send('post', uri_path("time_machines",id.to_s,"start_afresh"), params, env, headers)
40
+ end
41
+
42
+ def self.travel_forward(id, params={}, env=nil, headers={})
43
+ Request.send('post', uri_path("time_machines",id.to_s,"travel_forward"), params, env, headers)
44
+ end
45
+
46
+ end # ~TimeMachine
47
47
  end # ~ChargeBee