recurly 2.18.21 → 3.0.0.beta.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitignore +14 -0
- data/.rspec +2 -0
- data/.travis.yml +5 -0
- data/Gemfile +4 -0
- data/LICENSE.txt +21 -0
- data/README.md +158 -110
- data/Rakefile +6 -0
- data/bin/bundle +105 -0
- data/bin/coderay +29 -0
- data/bin/console +14 -0
- data/bin/htmldiff +29 -0
- data/bin/ldiff +29 -0
- data/bin/pry +29 -0
- data/bin/rake +29 -0
- data/bin/rspec +29 -0
- data/bin/setup +8 -0
- data/bin/yard +29 -0
- data/bin/yardoc +29 -0
- data/bin/yri +29 -0
- data/lib/data/ca-certificates.crt +31 -0
- data/lib/recurly/client/operations.rb +935 -0
- data/lib/recurly/client.rb +198 -0
- data/lib/recurly/errors/api_errors.rb +35 -0
- data/lib/recurly/errors/network_errors.rb +8 -0
- data/lib/recurly/errors.rb +34 -0
- data/lib/recurly/pager.rb +119 -0
- data/lib/recurly/request.rb +30 -0
- data/lib/recurly/requests/account_acquisition_updatable.rb +22 -0
- data/lib/recurly/requests/account_create_only.rb +18 -0
- data/lib/recurly/requests/account_updatable.rb +50 -0
- data/lib/recurly/requests/add_on_create.rb +38 -0
- data/lib/recurly/requests/add_on_update.rb +38 -0
- data/lib/recurly/requests/address.rb +42 -0
- data/lib/recurly/requests/billing_info_create.rb +58 -0
- data/lib/recurly/requests/coupon_create_only.rb +66 -0
- data/lib/recurly/requests/coupon_updatable.rb +30 -0
- data/lib/recurly/requests/create_account.rb +62 -0
- data/lib/recurly/requests/create_coupon.rb +90 -0
- data/lib/recurly/requests/invoice_create.rb +42 -0
- data/lib/recurly/requests/invoice_refund.rb +30 -0
- data/lib/recurly/requests/line_item_create.rb +46 -0
- data/lib/recurly/requests/plan_create.rb +66 -0
- data/lib/recurly/requests/plan_update.rb +70 -0
- data/lib/recurly/requests/shipping_address_create.rb +58 -0
- data/lib/recurly/requests/shipping_address_update.rb +62 -0
- data/lib/recurly/requests/subscription_add_on_create.rb +22 -0
- data/lib/recurly/requests/subscription_change_create.rb +42 -0
- data/lib/recurly/requests/subscription_create.rb +86 -0
- data/lib/recurly/requests/subscription_update.rb +42 -0
- data/lib/recurly/requests/update_coupon.rb +30 -0
- data/lib/recurly/resource.rb +16 -1103
- data/lib/recurly/resources/account.rb +86 -0
- data/lib/recurly/resources/account_acquisition.rb +42 -0
- data/lib/recurly/resources/account_balance.rb +22 -0
- data/lib/recurly/resources/account_note.rb +30 -0
- data/lib/recurly/resources/add_on.rb +62 -0
- data/lib/recurly/resources/address.rb +42 -0
- data/lib/recurly/resources/billing_info.rb +62 -0
- data/lib/recurly/resources/coupon.rb +110 -0
- data/lib/recurly/resources/coupon_discount.rb +22 -0
- data/lib/recurly/resources/coupon_redemption.rb +46 -0
- data/lib/recurly/resources/credit_payment.rb +62 -0
- data/lib/recurly/resources/error.rb +18 -0
- data/lib/recurly/resources/error_may_have_transaction.rb +22 -0
- data/lib/recurly/resources/invoice.rb +138 -0
- data/lib/recurly/resources/invoice_collection.rb +18 -0
- data/lib/recurly/resources/line_item.rb +166 -0
- data/lib/recurly/resources/plan.rb +86 -0
- data/lib/recurly/resources/settings.rb +18 -0
- data/lib/recurly/resources/shipping_address.rb +74 -0
- data/lib/recurly/resources/site.rb +46 -0
- data/lib/recurly/resources/subscription.rb +134 -0
- data/lib/recurly/resources/subscription_add_on.rb +42 -0
- data/lib/recurly/resources/subscription_change.rb +54 -0
- data/lib/recurly/resources/tax_info.rb +18 -0
- data/lib/recurly/resources/transaction.rb +146 -0
- data/lib/recurly/resources/unique_coupon_code.rb +38 -0
- data/lib/recurly/resources/user.rb +38 -0
- data/lib/recurly/schema/json_deserializer.rb +53 -0
- data/lib/recurly/schema/json_parser.rb +71 -0
- data/lib/recurly/schema/request_caster.rb +66 -0
- data/lib/recurly/schema/schema_factory.rb +50 -0
- data/lib/recurly/schema/schema_validator.rb +125 -0
- data/lib/recurly/schema.rb +114 -0
- data/lib/recurly/version.rb +1 -10
- data/lib/recurly.rb +14 -145
- data/recurly.gemspec +32 -0
- data/scripts/build +4 -0
- data/scripts/clean +6 -0
- data/scripts/test +3 -0
- metadata +129 -173
- data/lib/recurly/account.rb +0 -209
- data/lib/recurly/account_acquisition.rb +0 -27
- data/lib/recurly/account_balance.rb +0 -21
- data/lib/recurly/add_on.rb +0 -46
- data/lib/recurly/address.rb +0 -25
- data/lib/recurly/adjustment.rb +0 -81
- data/lib/recurly/api/errors.rb +0 -208
- data/lib/recurly/api/net_http_adapter.rb +0 -111
- data/lib/recurly/api.rb +0 -110
- data/lib/recurly/billing_info.rb +0 -113
- data/lib/recurly/coupon.rb +0 -136
- data/lib/recurly/credit_payment.rb +0 -32
- data/lib/recurly/custom_field.rb +0 -15
- data/lib/recurly/delivery.rb +0 -19
- data/lib/recurly/error.rb +0 -13
- data/lib/recurly/gift_card.rb +0 -85
- data/lib/recurly/helper.rb +0 -51
- data/lib/recurly/invoice.rb +0 -304
- data/lib/recurly/invoice_collection.rb +0 -14
- data/lib/recurly/item.rb +0 -36
- data/lib/recurly/js.rb +0 -14
- data/lib/recurly/juris_detail.rb +0 -15
- data/lib/recurly/measured_unit.rb +0 -16
- data/lib/recurly/money.rb +0 -120
- data/lib/recurly/note.rb +0 -14
- data/lib/recurly/plan.rb +0 -43
- data/lib/recurly/purchase.rb +0 -238
- data/lib/recurly/redemption.rb +0 -46
- data/lib/recurly/resource/association.rb +0 -16
- data/lib/recurly/resource/errors.rb +0 -20
- data/lib/recurly/resource/pager.rb +0 -313
- data/lib/recurly/shipping_address.rb +0 -26
- data/lib/recurly/shipping_fee.rb +0 -17
- data/lib/recurly/shipping_method.rb +0 -13
- data/lib/recurly/subscription/add_ons.rb +0 -82
- data/lib/recurly/subscription.rb +0 -366
- data/lib/recurly/subscription_add_on.rb +0 -58
- data/lib/recurly/tax_detail.rb +0 -18
- data/lib/recurly/tax_type.rb +0 -13
- data/lib/recurly/tier.rb +0 -18
- data/lib/recurly/transaction/errors.rb +0 -115
- data/lib/recurly/transaction.rb +0 -131
- data/lib/recurly/usage.rb +0 -28
- data/lib/recurly/verify.rb +0 -12
- data/lib/recurly/webhook/account_notification.rb +0 -13
- data/lib/recurly/webhook/billing_info_update_failed_notification.rb +0 -6
- data/lib/recurly/webhook/billing_info_updated_notification.rb +0 -6
- data/lib/recurly/webhook/canceled_account_notification.rb +0 -6
- data/lib/recurly/webhook/canceled_gift_card_notification.rb +0 -6
- data/lib/recurly/webhook/canceled_subscription_notification.rb +0 -6
- data/lib/recurly/webhook/closed_credit_invoice_notification.rb +0 -6
- data/lib/recurly/webhook/closed_invoice_notification.rb +0 -6
- data/lib/recurly/webhook/credit_payment_notification.rb +0 -12
- data/lib/recurly/webhook/deactivated_item_notification.rb +0 -6
- data/lib/recurly/webhook/deleted_shipping_address_notification.rb +0 -6
- data/lib/recurly/webhook/dunning_notification.rb +0 -14
- data/lib/recurly/webhook/expired_subscription_notification.rb +0 -6
- data/lib/recurly/webhook/failed_charge_invoice_notification.rb +0 -6
- data/lib/recurly/webhook/failed_payment_notification.rb +0 -6
- data/lib/recurly/webhook/fraud_info_updated_notification.rb +0 -6
- data/lib/recurly/webhook/gift_card_notification.rb +0 -8
- data/lib/recurly/webhook/invoice_notification.rb +0 -12
- data/lib/recurly/webhook/item_notification.rb +0 -7
- data/lib/recurly/webhook/low_balance_gift_card_notification.rb +0 -6
- data/lib/recurly/webhook/new_account_notification.rb +0 -6
- data/lib/recurly/webhook/new_charge_invoice_notification.rb +0 -6
- data/lib/recurly/webhook/new_credit_invoice_notification.rb +0 -6
- data/lib/recurly/webhook/new_credit_payment_notification.rb +0 -6
- data/lib/recurly/webhook/new_dunning_event_notification.rb +0 -6
- data/lib/recurly/webhook/new_invoice_notification.rb +0 -6
- data/lib/recurly/webhook/new_item_notification.rb +0 -6
- data/lib/recurly/webhook/new_shipping_address_notification.rb +0 -6
- data/lib/recurly/webhook/new_subscription_notification.rb +0 -6
- data/lib/recurly/webhook/new_usage_notification.rb +0 -8
- data/lib/recurly/webhook/notification.rb +0 -18
- data/lib/recurly/webhook/paid_charge_invoice_notification.rb +0 -6
- data/lib/recurly/webhook/past_due_charge_invoice_notification.rb +0 -6
- data/lib/recurly/webhook/past_due_invoice_notification.rb +0 -6
- data/lib/recurly/webhook/paused_subscription_renewal_notification.rb +0 -6
- data/lib/recurly/webhook/prerenewal_notification.rb +0 -6
- data/lib/recurly/webhook/processing_charge_invoice_notification.rb +0 -6
- data/lib/recurly/webhook/processing_credit_invoice_notification.rb +0 -6
- data/lib/recurly/webhook/processing_invoice_notification.rb +0 -6
- data/lib/recurly/webhook/processing_payment_notification.rb +0 -6
- data/lib/recurly/webhook/purchased_gift_card_notification.rb +0 -7
- data/lib/recurly/webhook/reactivated_account_notification.rb +0 -6
- data/lib/recurly/webhook/reactivated_item_notification.rb +0 -6
- data/lib/recurly/webhook/redeemed_gift_card_notification.rb +0 -7
- data/lib/recurly/webhook/regenerated_gift_card_notification.rb +0 -6
- data/lib/recurly/webhook/renewed_subscription_notification.rb +0 -6
- data/lib/recurly/webhook/reopened_charge_invoice_notification.rb +0 -6
- data/lib/recurly/webhook/reopened_credit_invoice_notification.rb +0 -6
- data/lib/recurly/webhook/scheduled_payment_notification.rb +0 -6
- data/lib/recurly/webhook/scheduled_subscription_pause_notification.rb +0 -6
- data/lib/recurly/webhook/scheduled_subscription_update_notification.rb +0 -6
- data/lib/recurly/webhook/subscription_notification.rb +0 -12
- data/lib/recurly/webhook/subscription_pause_canceled_notification.rb +0 -6
- data/lib/recurly/webhook/subscription_pause_modified_notification.rb +0 -6
- data/lib/recurly/webhook/subscription_paused_notification.rb +0 -6
- data/lib/recurly/webhook/subscription_resumed_notification.rb +0 -6
- data/lib/recurly/webhook/successful_payment_notification.rb +0 -6
- data/lib/recurly/webhook/successful_refund_notification.rb +0 -6
- data/lib/recurly/webhook/transaction_authorized_notification.rb +0 -6
- data/lib/recurly/webhook/transaction_notification.rb +0 -12
- data/lib/recurly/webhook/transaction_status_updated_notification.rb +0 -6
- data/lib/recurly/webhook/updated_account_notification.rb +0 -6
- data/lib/recurly/webhook/updated_balance_gift_card_notification.rb +0 -7
- data/lib/recurly/webhook/updated_gift_card_notification.rb +0 -6
- data/lib/recurly/webhook/updated_invoice_notification.rb +0 -6
- data/lib/recurly/webhook/updated_item_notification.rb +0 -6
- data/lib/recurly/webhook/updated_shipping_address_notification.rb +0 -6
- data/lib/recurly/webhook/updated_subscription_notification.rb +0 -6
- data/lib/recurly/webhook/void_payment_notification.rb +0 -6
- data/lib/recurly/webhook/voided_credit_invoice_notification.rb +0 -6
- data/lib/recurly/webhook/voided_credit_payment_notification.rb +0 -6
- data/lib/recurly/webhook.rb +0 -113
- data/lib/recurly/xml/nokogiri.rb +0 -60
- data/lib/recurly/xml/rexml.rb +0 -52
- data/lib/recurly/xml.rb +0 -122
@@ -0,0 +1,86 @@
|
|
1
|
+
module Recurly
|
2
|
+
module Resources
|
3
|
+
class Plan < Resource
|
4
|
+
|
5
|
+
# @!attribute accounting_code
|
6
|
+
# @return [String] Accounting code for invoice line items for the plan. If no value is provided, it defaults to plan's code.
|
7
|
+
define_attribute :accounting_code, String
|
8
|
+
|
9
|
+
# @!attribute code
|
10
|
+
# @return [String] Unique code to identify the plan. This is used in Hosted Payment Page URLs and in the invoice exports.
|
11
|
+
define_attribute :code, String
|
12
|
+
|
13
|
+
# @!attribute [r] created_at
|
14
|
+
# @return [DateTime] Created at
|
15
|
+
define_attribute :created_at, DateTime, {:read_only => true}
|
16
|
+
|
17
|
+
# @!attribute currencies
|
18
|
+
# @return [Array[String]] Pricing
|
19
|
+
define_attribute :currencies, Array, {:item_type => String}
|
20
|
+
|
21
|
+
# @!attribute [r] deleted_at
|
22
|
+
# @return [DateTime] Deleted at
|
23
|
+
define_attribute :deleted_at, DateTime, {:read_only => true}
|
24
|
+
|
25
|
+
# @!attribute description
|
26
|
+
# @return [String] Optional description, not displayed.
|
27
|
+
define_attribute :description, String
|
28
|
+
|
29
|
+
# @!attribute hosted_pages
|
30
|
+
# @return [Hash] Hosted pages settings
|
31
|
+
define_attribute :hosted_pages, Hash
|
32
|
+
|
33
|
+
# @!attribute [r] id
|
34
|
+
# @return [String] Plan ID
|
35
|
+
define_attribute :id, String, {:read_only => true}
|
36
|
+
|
37
|
+
# @!attribute interval_length
|
38
|
+
# @return [Integer] Length of the plan's billing interval in `interval_unit`.
|
39
|
+
define_attribute :interval_length, Integer
|
40
|
+
|
41
|
+
# @!attribute interval_unit
|
42
|
+
# @return [String] Unit for the plan's billing interval.
|
43
|
+
define_attribute :interval_unit, String, {:enum => ["days", "months"]}
|
44
|
+
|
45
|
+
# @!attribute name
|
46
|
+
# @return [String] This name describes your plan and will appear on the Hosted Payment Page and the subscriber's invoice.
|
47
|
+
define_attribute :name, String
|
48
|
+
|
49
|
+
# @!attribute [r] object
|
50
|
+
# @return [String] Object type
|
51
|
+
define_attribute :object, String, {:read_only => true}
|
52
|
+
|
53
|
+
# @!attribute setup_fee_accounting_code
|
54
|
+
# @return [String] Accounting code for invoice line items for the plan's setup fee. If no value is provided, it defaults to plan's accounting code.
|
55
|
+
define_attribute :setup_fee_accounting_code, String
|
56
|
+
|
57
|
+
# @!attribute [r] state
|
58
|
+
# @return [String] The current state of the plan.
|
59
|
+
define_attribute :state, String, {:read_only => true, :enum => ["active", "inactive"]}
|
60
|
+
|
61
|
+
# @!attribute tax_code
|
62
|
+
# @return [String] Optional field for EU VAT merchants and Avalara AvaTax Pro merchants. If you are using Recurly's EU VAT feature, you can use values of 'unknown', 'physical', or 'digital'. If you have your own AvaTax account configured, you can use Avalara tax codes to assign custom tax rules.
|
63
|
+
define_attribute :tax_code, String
|
64
|
+
|
65
|
+
# @!attribute tax_exempt
|
66
|
+
# @return [Boolean] `true` exempts tax on the plan, `false` applies tax on the plan.
|
67
|
+
define_attribute :tax_exempt, :Boolean
|
68
|
+
|
69
|
+
# @!attribute total_billing_cycles
|
70
|
+
# @return [Integer] Automatically terminate subscriptions after a defined number of billing cycles. Number of billing cycles before the plan automatically stops renewing, defaults to `null` for continuous, automatic renewal.
|
71
|
+
define_attribute :total_billing_cycles, Integer
|
72
|
+
|
73
|
+
# @!attribute trial_length
|
74
|
+
# @return [Integer] Length of plan's trial period in `trial_units`. `0` means `no trial`.
|
75
|
+
define_attribute :trial_length, Integer
|
76
|
+
|
77
|
+
# @!attribute trial_unit
|
78
|
+
# @return [String] Units for the plan's trial period.
|
79
|
+
define_attribute :trial_unit, String, {:enum => ["days", "months"]}
|
80
|
+
|
81
|
+
# @!attribute [r] updated_at
|
82
|
+
# @return [DateTime] Last updated at
|
83
|
+
define_attribute :updated_at, DateTime, {:read_only => true}
|
84
|
+
end
|
85
|
+
end
|
86
|
+
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
module Recurly
|
2
|
+
module Resources
|
3
|
+
class Settings < Resource
|
4
|
+
|
5
|
+
# @!attribute [r] accepted_currencies
|
6
|
+
# @return [Array[String]]
|
7
|
+
define_attribute :accepted_currencies, Array, {:item_type => String, :read_only => true}
|
8
|
+
|
9
|
+
# @!attribute [r] billing_address_requirement
|
10
|
+
# @return [String] - full: Full Address (Street, City, State, Postal Code and Country) - streetzip: Street and Postal Code only - zip: Postal Code only - none: No Address
|
11
|
+
define_attribute :billing_address_requirement, String, {:read_only => true, :enum => ["full", "streetzip", "zip", "none"]}
|
12
|
+
|
13
|
+
# @!attribute [r] default_currency
|
14
|
+
# @return [String] The default 3-letter ISO 4217 currency code.
|
15
|
+
define_attribute :default_currency, String, {:read_only => true}
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
@@ -0,0 +1,74 @@
|
|
1
|
+
module Recurly
|
2
|
+
module Resources
|
3
|
+
class ShippingAddress < Resource
|
4
|
+
|
5
|
+
# @!attribute [r] account_id
|
6
|
+
# @return [String] Account ID
|
7
|
+
define_attribute :account_id, String, {:read_only => true}
|
8
|
+
|
9
|
+
# @!attribute city
|
10
|
+
# @return [String]
|
11
|
+
define_attribute :city, String
|
12
|
+
|
13
|
+
# @!attribute company
|
14
|
+
# @return [String]
|
15
|
+
define_attribute :company, String
|
16
|
+
|
17
|
+
# @!attribute country
|
18
|
+
# @return [String] Country, 2-letter ISO code.
|
19
|
+
define_attribute :country, String
|
20
|
+
|
21
|
+
# @!attribute [r] created_at
|
22
|
+
# @return [DateTime] Created at
|
23
|
+
define_attribute :created_at, DateTime, {:read_only => true}
|
24
|
+
|
25
|
+
# @!attribute email
|
26
|
+
# @return [String]
|
27
|
+
define_attribute :email, String
|
28
|
+
|
29
|
+
# @!attribute first_name
|
30
|
+
# @return [String]
|
31
|
+
define_attribute :first_name, String
|
32
|
+
|
33
|
+
# @!attribute [r] id
|
34
|
+
# @return [String] Shipping Address ID
|
35
|
+
define_attribute :id, String, {:read_only => true}
|
36
|
+
|
37
|
+
# @!attribute last_name
|
38
|
+
# @return [String]
|
39
|
+
define_attribute :last_name, String
|
40
|
+
|
41
|
+
# @!attribute nickname
|
42
|
+
# @return [String]
|
43
|
+
define_attribute :nickname, String
|
44
|
+
|
45
|
+
# @!attribute phone
|
46
|
+
# @return [String]
|
47
|
+
define_attribute :phone, String
|
48
|
+
|
49
|
+
# @!attribute postal_code
|
50
|
+
# @return [String] Zip or postal code.
|
51
|
+
define_attribute :postal_code, String
|
52
|
+
|
53
|
+
# @!attribute region
|
54
|
+
# @return [String] State or province.
|
55
|
+
define_attribute :region, String
|
56
|
+
|
57
|
+
# @!attribute street1
|
58
|
+
# @return [String]
|
59
|
+
define_attribute :street1, String
|
60
|
+
|
61
|
+
# @!attribute street2
|
62
|
+
# @return [String]
|
63
|
+
define_attribute :street2, String
|
64
|
+
|
65
|
+
# @!attribute [r] updated_at
|
66
|
+
# @return [DateTime] Updated at
|
67
|
+
define_attribute :updated_at, DateTime, {:read_only => true}
|
68
|
+
|
69
|
+
# @!attribute vat_number
|
70
|
+
# @return [String]
|
71
|
+
define_attribute :vat_number, String
|
72
|
+
end
|
73
|
+
end
|
74
|
+
end
|
@@ -0,0 +1,46 @@
|
|
1
|
+
module Recurly
|
2
|
+
module Resources
|
3
|
+
class Site < Resource
|
4
|
+
|
5
|
+
# @!attribute address
|
6
|
+
# @return [Address]
|
7
|
+
define_attribute :address, :Address
|
8
|
+
|
9
|
+
# @!attribute [r] created_at
|
10
|
+
# @return [DateTime] Created at
|
11
|
+
define_attribute :created_at, DateTime, {:read_only => true}
|
12
|
+
|
13
|
+
# @!attribute [r] deleted_at
|
14
|
+
# @return [DateTime] Deleted at
|
15
|
+
define_attribute :deleted_at, DateTime, {:read_only => true}
|
16
|
+
|
17
|
+
# @!attribute features
|
18
|
+
# @return [Array[String]] A list of features enabled for the site.
|
19
|
+
define_attribute :features, Array, {:item_type => String}
|
20
|
+
|
21
|
+
# @!attribute [r] id
|
22
|
+
# @return [String] Site ID
|
23
|
+
define_attribute :id, String, {:read_only => true}
|
24
|
+
|
25
|
+
# @!attribute [r] mode
|
26
|
+
# @return [String] Mode
|
27
|
+
define_attribute :mode, String, {:read_only => true, :enum => ["development", "production", "sandbox"]}
|
28
|
+
|
29
|
+
# @!attribute [r] object
|
30
|
+
# @return [String] Object type
|
31
|
+
define_attribute :object, String, {:read_only => true}
|
32
|
+
|
33
|
+
# @!attribute settings
|
34
|
+
# @return [Settings]
|
35
|
+
define_attribute :settings, :Settings
|
36
|
+
|
37
|
+
# @!attribute [r] subdomain
|
38
|
+
# @return [String]
|
39
|
+
define_attribute :subdomain, String, {:read_only => true}
|
40
|
+
|
41
|
+
# @!attribute [r] updated_at
|
42
|
+
# @return [DateTime] Updated at
|
43
|
+
define_attribute :updated_at, DateTime, {:read_only => true}
|
44
|
+
end
|
45
|
+
end
|
46
|
+
end
|
@@ -0,0 +1,134 @@
|
|
1
|
+
module Recurly
|
2
|
+
module Resources
|
3
|
+
class Subscription < Resource
|
4
|
+
|
5
|
+
# @!attribute account
|
6
|
+
# @return [AccountMini]
|
7
|
+
define_attribute :account, :AccountMini
|
8
|
+
|
9
|
+
# @!attribute activated_at
|
10
|
+
# @return [DateTime] Activated at
|
11
|
+
define_attribute :activated_at, DateTime
|
12
|
+
|
13
|
+
# @!attribute add_ons
|
14
|
+
# @return [Array[SubscriptionAddOn]] Add-ons
|
15
|
+
define_attribute :add_ons, Array, {:item_type => :SubscriptionAddOn}
|
16
|
+
|
17
|
+
# @!attribute add_ons_total
|
18
|
+
# @return [Float] Total price of add-ons
|
19
|
+
define_attribute :add_ons_total, Float
|
20
|
+
|
21
|
+
# @!attribute bank_account_authorized_at
|
22
|
+
# @return [DateTime] Recurring subscriptions paid with ACH will have this attribute set. This timestamp is used for alerting customers to reauthorize in 3 years in accordance with NACHA rules. If a subscription becomes inactive or the billing info is no longer a bank account, this timestamp is cleared.
|
23
|
+
define_attribute :bank_account_authorized_at, DateTime
|
24
|
+
|
25
|
+
# @!attribute canceled_at
|
26
|
+
# @return [DateTime] Canceled at
|
27
|
+
define_attribute :canceled_at, DateTime
|
28
|
+
|
29
|
+
# @!attribute collection_method
|
30
|
+
# @return [String] Collection method
|
31
|
+
define_attribute :collection_method, String, {:enum => ["automatic", "manual"]}
|
32
|
+
|
33
|
+
# @!attribute coupon_redemptions
|
34
|
+
# @return [Array[CouponRedemptionMini]] Coupon redemptions
|
35
|
+
define_attribute :coupon_redemptions, Array, {:item_type => :CouponRedemptionMini}
|
36
|
+
|
37
|
+
# @!attribute created_at
|
38
|
+
# @return [DateTime] Created at
|
39
|
+
define_attribute :created_at, DateTime
|
40
|
+
|
41
|
+
# @!attribute currency
|
42
|
+
# @return [String] 3-letter ISO 4217 currency code.
|
43
|
+
define_attribute :currency, String
|
44
|
+
|
45
|
+
# @!attribute current_period_ends_at
|
46
|
+
# @return [DateTime] Current billing period ends at
|
47
|
+
define_attribute :current_period_ends_at, DateTime
|
48
|
+
|
49
|
+
# @!attribute current_period_started_at
|
50
|
+
# @return [DateTime] Current billing period started at
|
51
|
+
define_attribute :current_period_started_at, DateTime
|
52
|
+
|
53
|
+
# @!attribute customer_notes
|
54
|
+
# @return [String] Customer notes
|
55
|
+
define_attribute :customer_notes, String
|
56
|
+
|
57
|
+
# @!attribute expiration_reason
|
58
|
+
# @return [String] Expiration reason
|
59
|
+
define_attribute :expiration_reason, String
|
60
|
+
|
61
|
+
# @!attribute expires_at
|
62
|
+
# @return [DateTime] Expires at
|
63
|
+
define_attribute :expires_at, DateTime
|
64
|
+
|
65
|
+
# @!attribute id
|
66
|
+
# @return [String] Subscription ID
|
67
|
+
define_attribute :id, String
|
68
|
+
|
69
|
+
# @!attribute net_terms
|
70
|
+
# @return [Integer] Integer representing the number of days after an invoice's creation that the invoice will become past due. If an invoice's net terms are set to '0', it is due 'On Receipt' and will become past due 24 hours after it’s created. If an invoice is due net 30, it will become past due at 31 days exactly.
|
71
|
+
define_attribute :net_terms, Integer
|
72
|
+
|
73
|
+
# @!attribute object
|
74
|
+
# @return [String] Object type
|
75
|
+
define_attribute :object, String
|
76
|
+
|
77
|
+
# @!attribute pending_change
|
78
|
+
# @return [SubscriptionChange]
|
79
|
+
define_attribute :pending_change, :SubscriptionChange
|
80
|
+
|
81
|
+
# @!attribute plan
|
82
|
+
# @return [PlanMini]
|
83
|
+
define_attribute :plan, :PlanMini
|
84
|
+
|
85
|
+
# @!attribute po_number
|
86
|
+
# @return [String] For manual invoicing, this identifies the PO number associated with the subscription.
|
87
|
+
define_attribute :po_number, String
|
88
|
+
|
89
|
+
# @!attribute quantity
|
90
|
+
# @return [Integer] Subscription quantity
|
91
|
+
define_attribute :quantity, Integer
|
92
|
+
|
93
|
+
# @!attribute remaining_billing_cycles
|
94
|
+
# @return [Integer] Remaining billing cycles
|
95
|
+
define_attribute :remaining_billing_cycles, Integer
|
96
|
+
|
97
|
+
# @!attribute shipping_address
|
98
|
+
# @return [ShippingAddress]
|
99
|
+
define_attribute :shipping_address, :ShippingAddress
|
100
|
+
|
101
|
+
# @!attribute state
|
102
|
+
# @return [String] State
|
103
|
+
define_attribute :state, String, {:enum => ["active", "canceled", "expired", "failed", "future", "paused"]}
|
104
|
+
|
105
|
+
# @!attribute subtotal
|
106
|
+
# @return [Float] Estimated total, before tax.
|
107
|
+
define_attribute :subtotal, Float
|
108
|
+
|
109
|
+
# @!attribute terms_and_conditions
|
110
|
+
# @return [String] Terms and conditions
|
111
|
+
define_attribute :terms_and_conditions, String
|
112
|
+
|
113
|
+
# @!attribute trial_ends_at
|
114
|
+
# @return [DateTime] Trial period ends at
|
115
|
+
define_attribute :trial_ends_at, DateTime
|
116
|
+
|
117
|
+
# @!attribute trial_started_at
|
118
|
+
# @return [DateTime] Trial period started at
|
119
|
+
define_attribute :trial_started_at, DateTime
|
120
|
+
|
121
|
+
# @!attribute unit_amount
|
122
|
+
# @return [Float] Subscription unit price
|
123
|
+
define_attribute :unit_amount, Float
|
124
|
+
|
125
|
+
# @!attribute updated_at
|
126
|
+
# @return [DateTime] Last updated at
|
127
|
+
define_attribute :updated_at, DateTime
|
128
|
+
|
129
|
+
# @!attribute uuid
|
130
|
+
# @return [String] The UUID is useful for matching data with the CSV exports and building URLs into Recurly's UI.
|
131
|
+
define_attribute :uuid, String
|
132
|
+
end
|
133
|
+
end
|
134
|
+
end
|
@@ -0,0 +1,42 @@
|
|
1
|
+
module Recurly
|
2
|
+
module Resources
|
3
|
+
class SubscriptionAddOn < Resource
|
4
|
+
|
5
|
+
# @!attribute add_on
|
6
|
+
# @return [AddOnMini]
|
7
|
+
define_attribute :add_on, :AddOnMini
|
8
|
+
|
9
|
+
# @!attribute created_at
|
10
|
+
# @return [DateTime] Created at
|
11
|
+
define_attribute :created_at, DateTime
|
12
|
+
|
13
|
+
# @!attribute expired_at
|
14
|
+
# @return [DateTime] Expired at
|
15
|
+
define_attribute :expired_at, DateTime
|
16
|
+
|
17
|
+
# @!attribute id
|
18
|
+
# @return [String] Subscription Add-on ID
|
19
|
+
define_attribute :id, String
|
20
|
+
|
21
|
+
# @!attribute object
|
22
|
+
# @return [String] Object type
|
23
|
+
define_attribute :object, String
|
24
|
+
|
25
|
+
# @!attribute quantity
|
26
|
+
# @return [Integer] Add-on quantity
|
27
|
+
define_attribute :quantity, Integer
|
28
|
+
|
29
|
+
# @!attribute subscription_id
|
30
|
+
# @return [String] Subscription ID
|
31
|
+
define_attribute :subscription_id, String
|
32
|
+
|
33
|
+
# @!attribute unit_amount
|
34
|
+
# @return [Float] This is priced in the subscription's currency.
|
35
|
+
define_attribute :unit_amount, Float
|
36
|
+
|
37
|
+
# @!attribute updated_at
|
38
|
+
# @return [DateTime] Updated at
|
39
|
+
define_attribute :updated_at, DateTime
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
@@ -0,0 +1,54 @@
|
|
1
|
+
module Recurly
|
2
|
+
module Resources
|
3
|
+
class SubscriptionChange < Resource
|
4
|
+
|
5
|
+
# @!attribute [r] activate_at
|
6
|
+
# @return [DateTime] Activated at
|
7
|
+
define_attribute :activate_at, DateTime, {:read_only => true}
|
8
|
+
|
9
|
+
# @!attribute activated
|
10
|
+
# @return [Boolean] Returns `true` if the subscription change is activated.
|
11
|
+
define_attribute :activated, :Boolean
|
12
|
+
|
13
|
+
# @!attribute add_ons
|
14
|
+
# @return [Array[SubscriptionAddOn]] These add-ons will be used when the subscription renews.
|
15
|
+
define_attribute :add_ons, Array, {:item_type => :SubscriptionAddOn}
|
16
|
+
|
17
|
+
# @!attribute [r] created_at
|
18
|
+
# @return [DateTime] Created at
|
19
|
+
define_attribute :created_at, DateTime, {:read_only => true}
|
20
|
+
|
21
|
+
# @!attribute [r] deleted_at
|
22
|
+
# @return [DateTime] Deleted at
|
23
|
+
define_attribute :deleted_at, DateTime, {:read_only => true}
|
24
|
+
|
25
|
+
# @!attribute id
|
26
|
+
# @return [String] The ID of the Subscription Change.
|
27
|
+
define_attribute :id, String
|
28
|
+
|
29
|
+
# @!attribute object
|
30
|
+
# @return [String] Object type
|
31
|
+
define_attribute :object, String
|
32
|
+
|
33
|
+
# @!attribute plan
|
34
|
+
# @return [PlanMini]
|
35
|
+
define_attribute :plan, :PlanMini
|
36
|
+
|
37
|
+
# @!attribute quantity
|
38
|
+
# @return [Integer] Subscription quantity
|
39
|
+
define_attribute :quantity, Integer
|
40
|
+
|
41
|
+
# @!attribute subscription_id
|
42
|
+
# @return [String] The ID of the subscription that is going to be changed.
|
43
|
+
define_attribute :subscription_id, String
|
44
|
+
|
45
|
+
# @!attribute unit_amount
|
46
|
+
# @return [Float] Unit amount
|
47
|
+
define_attribute :unit_amount, Float
|
48
|
+
|
49
|
+
# @!attribute [r] updated_at
|
50
|
+
# @return [DateTime] Updated at
|
51
|
+
define_attribute :updated_at, DateTime, {:read_only => true}
|
52
|
+
end
|
53
|
+
end
|
54
|
+
end
|