stripe 15.0.0 → 15.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/API_VERSION +1 -0
- data/CHANGELOG.md +129 -44
- data/CONTRIBUTING.md +25 -0
- data/Gemfile +1 -1
- data/OPENAPI_VERSION +1 -1
- data/README.md +28 -55
- data/VERSION +1 -1
- data/lib/stripe/api_operations/nested_resource.rb +35 -35
- data/lib/stripe/api_requestor.rb +1 -1
- data/lib/stripe/api_version.rb +2 -1
- data/lib/stripe/connection_manager.rb +1 -3
- data/lib/stripe/event_types.rb +1 -0
- data/lib/stripe/events/v1_billing_meter_error_report_triggered_event.rb +1 -1
- data/lib/stripe/events/v1_billing_meter_no_meter_found_event.rb +1 -1
- data/lib/stripe/events/v2_core_event_destination_ping_event.rb +21 -0
- data/lib/stripe/oauth.rb +1 -1
- data/lib/stripe/resources/account.rb +198 -28
- data/lib/stripe/resources/account_session.rb +176 -72
- data/lib/stripe/resources/apple_pay_domain.rb +1 -2
- data/lib/stripe/resources/balance.rb +42 -0
- data/lib/stripe/resources/balance_transaction.rb +2 -0
- data/lib/stripe/resources/bank_account.rb +2 -2
- data/lib/stripe/resources/billing_portal/session.rb +3 -3
- data/lib/stripe/resources/capability.rb +1 -1
- data/lib/stripe/resources/charge.rb +43 -20
- data/lib/stripe/resources/checkout/session.rb +120 -19
- data/lib/stripe/resources/confirmation_token.rb +119 -100
- data/lib/stripe/resources/country_spec.rb +1 -1
- data/lib/stripe/resources/coupon.rb +2 -3
- data/lib/stripe/resources/credit_note.rb +21 -18
- data/lib/stripe/resources/customer.rb +4 -6
- data/lib/stripe/resources/customer_session.rb +5 -5
- data/lib/stripe/resources/dispute.rb +2 -2
- data/lib/stripe/resources/event.rb +3 -1
- data/lib/stripe/resources/file.rb +1 -1
- data/lib/stripe/resources/funding_instructions.rb +1 -1
- data/lib/stripe/resources/identity/verification_report.rb +6 -0
- data/lib/stripe/resources/identity/verification_session.rb +51 -11
- data/lib/stripe/resources/invoice.rb +146 -32
- data/lib/stripe/resources/invoice_item.rb +3 -7
- data/lib/stripe/resources/invoice_line_item.rb +1 -1
- data/lib/stripe/resources/invoice_payment.rb +9 -2
- data/lib/stripe/resources/issuing/authorization.rb +8 -8
- data/lib/stripe/resources/issuing/card.rb +1 -1
- data/lib/stripe/resources/issuing/dispute.rb +3 -3
- data/lib/stripe/resources/login_link.rb +2 -1
- data/lib/stripe/resources/mandate.rb +3 -0
- data/lib/stripe/resources/payment_intent.rb +602 -325
- data/lib/stripe/resources/payment_method.rb +76 -117
- data/lib/stripe/resources/payment_method_configuration.rb +356 -2
- data/lib/stripe/resources/payment_method_domain.rb +15 -2
- data/lib/stripe/resources/payout.rb +4 -4
- data/lib/stripe/resources/person.rb +27 -3
- data/lib/stripe/resources/plan.rb +2 -3
- data/lib/stripe/resources/price.rb +1 -1
- data/lib/stripe/resources/product.rb +1 -2
- data/lib/stripe/resources/quote.rb +28 -3
- data/lib/stripe/resources/radar/value_list.rb +1 -2
- data/lib/stripe/resources/radar/value_list_item.rb +1 -2
- data/lib/stripe/resources/refund.rb +8 -1
- data/lib/stripe/resources/reversal.rb +1 -1
- data/lib/stripe/resources/review.rb +1 -1
- data/lib/stripe/resources/setup_attempt.rb +1 -1
- data/lib/stripe/resources/setup_intent.rb +414 -293
- data/lib/stripe/resources/source.rb +1 -1
- data/lib/stripe/resources/subscription.rb +149 -27
- data/lib/stripe/resources/subscription_item.rb +33 -0
- data/lib/stripe/resources/subscription_schedule.rb +141 -4
- data/lib/stripe/resources/tax/calculation.rb +6 -2
- data/lib/stripe/resources/tax/calculation_line_item.rb +2 -0
- data/lib/stripe/resources/tax/registration.rb +261 -1
- data/lib/stripe/resources/tax/transaction.rb +1 -1
- data/lib/stripe/resources/tax_id.rb +3 -4
- data/lib/stripe/resources/tax_rate.rb +2 -2
- data/lib/stripe/resources/terminal/configuration.rb +2 -2
- data/lib/stripe/resources/terminal/location.rb +2 -3
- data/lib/stripe/resources/terminal/reader.rb +426 -6
- data/lib/stripe/resources/test_helpers/test_clock.rb +1 -2
- data/lib/stripe/resources/token.rb +63 -2
- data/lib/stripe/resources/transfer.rb +1 -1
- data/lib/stripe/resources/treasury/financial_account.rb +5 -1
- data/lib/stripe/resources/v2/billing/meter_event.rb +2 -2
- data/lib/stripe/resources/v2/billing/meter_event_adjustment.rb +2 -2
- data/lib/stripe/resources/v2/billing/meter_event_session.rb +2 -2
- data/lib/stripe/resources/v2/event.rb +2 -2
- data/lib/stripe/resources/v2/event_destination.rb +2 -2
- data/lib/stripe/resources/webhook_endpoint.rb +1 -2
- data/lib/stripe/resources.rb +1 -0
- data/lib/stripe/services/account_external_account_service.rb +3 -4
- data/lib/stripe/services/account_login_link_service.rb +1 -1
- data/lib/stripe/services/account_person_service.rb +85 -2
- data/lib/stripe/services/account_service.rb +169 -20
- data/lib/stripe/services/account_session_service.rb +115 -47
- data/lib/stripe/services/apple_pay_domain_service.rb +1 -2
- data/lib/stripe/services/application_fee_service.rb +1 -1
- data/lib/stripe/services/apps_service.rb +1 -1
- data/lib/stripe/services/balance_service.rb +1 -1
- data/lib/stripe/services/billing/meter_service.rb +1 -1
- data/lib/stripe/services/billing_portal/session_service.rb +1 -1
- data/lib/stripe/services/billing_portal_service.rb +1 -1
- data/lib/stripe/services/billing_service.rb +1 -1
- data/lib/stripe/services/charge_service.rb +4 -4
- data/lib/stripe/services/checkout/session_service.rb +94 -15
- data/lib/stripe/services/checkout_service.rb +1 -1
- data/lib/stripe/services/climate_service.rb +1 -1
- data/lib/stripe/services/coupon_service.rb +1 -2
- data/lib/stripe/services/credit_note_preview_lines_service.rb +3 -3
- data/lib/stripe/services/credit_note_service.rb +14 -15
- data/lib/stripe/services/customer_balance_transaction_service.rb +3 -3
- data/lib/stripe/services/customer_cash_balance_transaction_service.rb +2 -2
- data/lib/stripe/services/customer_payment_method_service.rb +1 -1
- data/lib/stripe/services/customer_payment_source_service.rb +1 -1
- data/lib/stripe/services/customer_service.rb +5 -7
- data/lib/stripe/services/customer_session_service.rb +1 -1
- data/lib/stripe/services/customer_tax_id_service.rb +2 -3
- data/lib/stripe/services/dispute_service.rb +1 -1
- data/lib/stripe/services/entitlements_service.rb +1 -1
- data/lib/stripe/services/file_service.rb +1 -1
- data/lib/stripe/services/financial_connections/account_service.rb +1 -1
- data/lib/stripe/services/financial_connections_service.rb +1 -1
- data/lib/stripe/services/forwarding_service.rb +1 -1
- data/lib/stripe/services/identity/verification_session_service.rb +21 -5
- data/lib/stripe/services/identity_service.rb +1 -1
- data/lib/stripe/services/invoice_item_service.rb +1 -2
- data/lib/stripe/services/invoice_service.rb +122 -28
- data/lib/stripe/services/issuing/authorization_service.rb +4 -4
- data/lib/stripe/services/issuing/card_service.rb +1 -1
- data/lib/stripe/services/issuing/dispute_service.rb +2 -2
- data/lib/stripe/services/issuing_service.rb +1 -1
- data/lib/stripe/services/payment_intent_service.rb +563 -313
- data/lib/stripe/services/payment_link_service.rb +1 -1
- data/lib/stripe/services/payment_method_configuration_service.rb +254 -2
- data/lib/stripe/services/payment_method_domain_service.rb +1 -1
- data/lib/stripe/services/payment_method_service.rb +59 -105
- data/lib/stripe/services/payout_service.rb +2 -2
- data/lib/stripe/services/plan_service.rb +2 -3
- data/lib/stripe/services/price_service.rb +2 -2
- data/lib/stripe/services/product_feature_service.rb +1 -2
- data/lib/stripe/services/product_service.rb +3 -4
- data/lib/stripe/services/promotion_code_service.rb +1 -1
- data/lib/stripe/services/quote_service.rb +21 -4
- data/lib/stripe/services/radar/early_fraud_warning_service.rb +1 -1
- data/lib/stripe/services/radar/value_list_item_service.rb +1 -2
- data/lib/stripe/services/radar/value_list_service.rb +1 -2
- data/lib/stripe/services/radar_service.rb +1 -1
- data/lib/stripe/services/reporting_service.rb +1 -1
- data/lib/stripe/services/setup_intent_service.rb +403 -291
- data/lib/stripe/services/sigma_service.rb +1 -1
- data/lib/stripe/services/source_service.rb +2 -2
- data/lib/stripe/services/subscription_item_service.rb +26 -0
- data/lib/stripe/services/subscription_schedule_service.rb +106 -3
- data/lib/stripe/services/subscription_service.rb +121 -26
- data/lib/stripe/services/tax/calculation_service.rb +6 -2
- data/lib/stripe/services/tax/registration_service.rb +170 -1
- data/lib/stripe/services/tax/transaction_service.rb +1 -1
- data/lib/stripe/services/tax_id_service.rb +2 -3
- data/lib/stripe/services/tax_service.rb +1 -1
- data/lib/stripe/services/terminal/configuration_service.rb +1 -2
- data/lib/stripe/services/terminal/location_service.rb +2 -3
- data/lib/stripe/services/terminal/reader_service.rb +196 -2
- data/lib/stripe/services/terminal_service.rb +1 -1
- data/lib/stripe/services/test_helpers/confirmation_token_service.rb +90 -91
- data/lib/stripe/services/test_helpers/issuing_service.rb +1 -1
- data/lib/stripe/services/test_helpers/terminal/reader_service.rb +43 -0
- data/lib/stripe/services/test_helpers/terminal_service.rb +1 -1
- data/lib/stripe/services/test_helpers/test_clock_service.rb +1 -2
- data/lib/stripe/services/test_helpers/treasury_service.rb +1 -1
- data/lib/stripe/services/test_helpers_service.rb +1 -1
- data/lib/stripe/services/token_service.rb +62 -1
- data/lib/stripe/services/transfer_service.rb +2 -2
- data/lib/stripe/services/treasury/financial_account_service.rb +6 -2
- data/lib/stripe/services/treasury_service.rb +1 -1
- data/lib/stripe/services/v1_services.rb +1 -1
- data/lib/stripe/services/v2/billing/meter_event_session_service.rb +1 -2
- data/lib/stripe/services/v2/billing_service.rb +3 -3
- data/lib/stripe/services/v2/core/event_destination_service.rb +17 -23
- data/lib/stripe/services/v2/core/event_service.rb +1 -2
- data/lib/stripe/services/v2/core_service.rb +1 -1
- data/lib/stripe/services/v2_services.rb +1 -1
- data/lib/stripe/services/webhook_endpoint_service.rb +1 -2
- data/lib/stripe/version.rb +1 -1
- data/lib/stripe/webhook.rb +1 -1
- data/rbi/stripe/resources/account.rbi +190 -35
- data/rbi/stripe/resources/account_session.rbi +196 -77
- data/rbi/stripe/resources/apple_pay_domain.rbi +1 -3
- data/rbi/stripe/resources/balance.rbi +55 -0
- data/rbi/stripe/resources/balance_transaction.rbi +3 -0
- data/rbi/stripe/resources/bank_account.rbi +2 -2
- data/rbi/stripe/resources/billing/alert.rbi +2 -2
- data/rbi/stripe/resources/billing_portal/session.rbi +3 -3
- data/rbi/stripe/resources/capability.rbi +1 -1
- data/rbi/stripe/resources/charge.rbi +52 -20
- data/rbi/stripe/resources/checkout/session.rbi +133 -24
- data/rbi/stripe/resources/confirmation_token.rbi +140 -115
- data/rbi/stripe/resources/country_spec.rbi +1 -1
- data/rbi/stripe/resources/coupon.rbi +2 -4
- data/rbi/stripe/resources/credit_note.rbi +23 -18
- data/rbi/stripe/resources/customer.rbi +4 -8
- data/rbi/stripe/resources/customer_session.rbi +5 -5
- data/rbi/stripe/resources/dispute.rbi +2 -2
- data/rbi/stripe/resources/event.rbi +4 -1
- data/rbi/stripe/resources/file.rbi +1 -1
- data/rbi/stripe/resources/identity/verification_report.rbi +9 -0
- data/rbi/stripe/resources/identity/verification_session.rbi +59 -12
- data/rbi/stripe/resources/invoice.rbi +149 -40
- data/rbi/stripe/resources/invoice_item.rbi +3 -8
- data/rbi/stripe/resources/invoice_line_item.rbi +2 -2
- data/rbi/stripe/resources/invoice_payment.rbi +9 -2
- data/rbi/stripe/resources/issuing/authorization.rbi +8 -8
- data/rbi/stripe/resources/issuing/card.rbi +1 -1
- data/rbi/stripe/resources/issuing/dispute.rbi +3 -3
- data/rbi/stripe/resources/login_link.rbi +2 -1
- data/rbi/stripe/resources/mandate.rbi +4 -0
- data/rbi/stripe/resources/payment_intent.rbi +637 -381
- data/rbi/stripe/resources/payment_method.rbi +81 -133
- data/rbi/stripe/resources/payment_method_configuration.rbi +400 -4
- data/rbi/stripe/resources/payment_method_domain.rbi +18 -2
- data/rbi/stripe/resources/payout.rbi +4 -4
- data/rbi/stripe/resources/person.rbi +33 -3
- data/rbi/stripe/resources/plan.rbi +2 -4
- data/rbi/stripe/resources/price.rbi +1 -1
- data/rbi/stripe/resources/product.rbi +1 -3
- data/rbi/stripe/resources/quote.rbi +25 -3
- data/rbi/stripe/resources/radar/value_list.rbi +1 -3
- data/rbi/stripe/resources/radar/value_list_item.rbi +1 -3
- data/rbi/stripe/resources/refund.rbi +8 -1
- data/rbi/stripe/resources/reversal.rbi +1 -1
- data/rbi/stripe/resources/review.rbi +1 -1
- data/rbi/stripe/resources/setup_attempt.rbi +1 -1
- data/rbi/stripe/resources/setup_intent.rbi +464 -346
- data/rbi/stripe/resources/source.rbi +1 -1
- data/rbi/stripe/resources/subscription.rbi +150 -34
- data/rbi/stripe/resources/subscription_item.rbi +36 -2
- data/rbi/stripe/resources/subscription_schedule.rbi +161 -11
- data/rbi/stripe/resources/tax/calculation.rbi +7 -3
- data/rbi/stripe/resources/tax/calculation_line_item.rbi +4 -1
- data/rbi/stripe/resources/tax/registration.rbi +249 -2
- data/rbi/stripe/resources/tax/transaction.rbi +1 -1
- data/rbi/stripe/resources/tax_id.rbi +3 -5
- data/rbi/stripe/resources/tax_rate.rbi +2 -2
- data/rbi/stripe/resources/terminal/configuration.rbi +2 -3
- data/rbi/stripe/resources/terminal/location.rbi +4 -6
- data/rbi/stripe/resources/terminal/reader.rbi +415 -8
- data/rbi/stripe/resources/test_helpers/test_clock.rbi +1 -3
- data/rbi/stripe/resources/token.rbi +70 -4
- data/rbi/stripe/resources/transfer.rbi +1 -1
- data/rbi/stripe/resources/treasury/financial_account.rbi +6 -2
- data/rbi/stripe/resources/v2/billing/meter_event.rbi +3 -3
- data/rbi/stripe/resources/v2/billing/meter_event_adjustment.rbi +3 -3
- data/rbi/stripe/resources/v2/billing/meter_event_session.rbi +3 -3
- data/rbi/stripe/resources/v2/event.rbi +3 -3
- data/rbi/stripe/resources/v2/event_destination.rbi +3 -3
- data/rbi/stripe/resources/webhook_endpoint.rbi +1 -3
- data/rbi/stripe/services/account_external_account_service.rbi +3 -5
- data/rbi/stripe/services/account_login_link_service.rbi +1 -1
- data/rbi/stripe/services/account_person_service.rbi +93 -5
- data/rbi/stripe/services/account_service.rbi +166 -28
- data/rbi/stripe/services/account_session_service.rbi +126 -52
- data/rbi/stripe/services/apple_pay_domain_service.rbi +1 -3
- data/rbi/stripe/services/balance_service.rbi +1 -1
- data/rbi/stripe/services/billing/alert_service.rbi +2 -2
- data/rbi/stripe/services/billing_portal/session_service.rbi +1 -1
- data/rbi/stripe/services/charge_service.rbi +4 -4
- data/rbi/stripe/services/checkout/session_service.rbi +104 -19
- data/rbi/stripe/services/coupon_service.rbi +1 -3
- data/rbi/stripe/services/credit_note_preview_lines_service.rbi +3 -3
- data/rbi/stripe/services/credit_note_service.rbi +13 -14
- data/rbi/stripe/services/customer_balance_transaction_service.rbi +3 -3
- data/rbi/stripe/services/customer_cash_balance_transaction_service.rbi +2 -2
- data/rbi/stripe/services/customer_payment_method_service.rbi +1 -1
- data/rbi/stripe/services/customer_payment_source_service.rbi +1 -1
- data/rbi/stripe/services/customer_service.rbi +4 -8
- data/rbi/stripe/services/customer_session_service.rbi +1 -1
- data/rbi/stripe/services/customer_tax_id_service.rbi +2 -4
- data/rbi/stripe/services/dispute_service.rbi +1 -1
- data/rbi/stripe/services/file_service.rbi +1 -1
- data/rbi/stripe/services/identity/verification_session_service.rbi +22 -6
- data/rbi/stripe/services/invoice_item_service.rbi +1 -3
- data/rbi/stripe/services/invoice_service.rbi +126 -35
- data/rbi/stripe/services/issuing/authorization_service.rbi +4 -4
- data/rbi/stripe/services/issuing/card_service.rbi +1 -1
- data/rbi/stripe/services/issuing/dispute_service.rbi +2 -2
- data/rbi/stripe/services/payment_intent_service.rbi +599 -369
- data/rbi/stripe/services/payment_method_configuration_service.rbi +280 -4
- data/rbi/stripe/services/payment_method_domain_service.rbi +1 -1
- data/rbi/stripe/services/payment_method_service.rbi +62 -121
- data/rbi/stripe/services/payout_service.rbi +2 -2
- data/rbi/stripe/services/plan_service.rbi +2 -4
- data/rbi/stripe/services/price_service.rbi +2 -2
- data/rbi/stripe/services/product_feature_service.rbi +1 -3
- data/rbi/stripe/services/product_service.rbi +2 -4
- data/rbi/stripe/services/promotion_code_service.rbi +1 -1
- data/rbi/stripe/services/quote_service.rbi +16 -3
- data/rbi/stripe/services/radar/early_fraud_warning_service.rbi +1 -1
- data/rbi/stripe/services/radar/value_list_item_service.rbi +1 -3
- data/rbi/stripe/services/radar/value_list_service.rbi +1 -3
- data/rbi/stripe/services/setup_intent_service.rbi +457 -344
- data/rbi/stripe/services/source_service.rbi +1 -1
- data/rbi/stripe/services/subscription_item_service.rbi +28 -2
- data/rbi/stripe/services/subscription_schedule_service.rbi +119 -10
- data/rbi/stripe/services/subscription_service.rbi +121 -33
- data/rbi/stripe/services/tax/calculation_service.rbi +6 -2
- data/rbi/stripe/services/tax/registration_service.rbi +171 -2
- data/rbi/stripe/services/tax_id_service.rbi +2 -4
- data/rbi/stripe/services/terminal/configuration_service.rbi +1 -3
- data/rbi/stripe/services/terminal/location_service.rbi +4 -6
- data/rbi/stripe/services/terminal/reader_service.rbi +200 -4
- data/rbi/stripe/services/test_helpers/confirmation_token_service.rbi +106 -106
- data/rbi/stripe/services/test_helpers/terminal/reader_service.rbi +31 -0
- data/rbi/stripe/services/test_helpers/test_clock_service.rbi +1 -3
- data/rbi/stripe/services/token_service.rbi +71 -3
- data/rbi/stripe/services/transfer_service.rbi +1 -1
- data/rbi/stripe/services/treasury/financial_account_service.rbi +6 -2
- data/rbi/stripe/services/v2/billing/meter_event_session_service.rbi +1 -3
- data/rbi/stripe/services/v2/billing_service.rbi +1 -1
- data/rbi/stripe/services/v2/core/event_destination_service.rbi +14 -22
- data/rbi/stripe/services/v2/core/event_service.rbi +1 -3
- data/rbi/stripe/services/webhook_endpoint_service.rbi +1 -3
- metadata +5 -2
@@ -127,6 +127,18 @@ module Stripe
|
|
127
127
|
end
|
128
128
|
end
|
129
129
|
|
130
|
+
class BillingThresholds < Stripe::RequestParams
|
131
|
+
# Monetary threshold that triggers the subscription to advance to a new billing period
|
132
|
+
attr_accessor :amount_gte
|
133
|
+
# Indicates if the `billing_cycle_anchor` should be reset when a threshold is reached. If true, `billing_cycle_anchor` will be updated to the date/time the threshold was last reached; otherwise, the value will remain unchanged.
|
134
|
+
attr_accessor :reset_billing_cycle_anchor
|
135
|
+
|
136
|
+
def initialize(amount_gte: nil, reset_billing_cycle_anchor: nil)
|
137
|
+
@amount_gte = amount_gte
|
138
|
+
@reset_billing_cycle_anchor = reset_billing_cycle_anchor
|
139
|
+
end
|
140
|
+
end
|
141
|
+
|
130
142
|
class CancellationDetails < Stripe::RequestParams
|
131
143
|
# Additional comments about why the user canceled the subscription, if the subscription was canceled explicitly by the user.
|
132
144
|
attr_accessor :comment
|
@@ -178,6 +190,15 @@ module Stripe
|
|
178
190
|
end
|
179
191
|
|
180
192
|
class Item < Stripe::RequestParams
|
193
|
+
class BillingThresholds < Stripe::RequestParams
|
194
|
+
# Number of units that meets the billing threshold to advance the subscription to a new billing period (e.g., it takes 10 $5 units to meet a $50 [monetary threshold](https://stripe.com/docs/api/subscriptions/update#update_subscription-billing_thresholds-amount_gte))
|
195
|
+
attr_accessor :usage_gte
|
196
|
+
|
197
|
+
def initialize(usage_gte: nil)
|
198
|
+
@usage_gte = usage_gte
|
199
|
+
end
|
200
|
+
end
|
201
|
+
|
181
202
|
class Discount < Stripe::RequestParams
|
182
203
|
# ID of the coupon to create a new discount for.
|
183
204
|
attr_accessor :coupon
|
@@ -234,6 +255,8 @@ module Stripe
|
|
234
255
|
@unit_amount_decimal = unit_amount_decimal
|
235
256
|
end
|
236
257
|
end
|
258
|
+
# Define thresholds at which an invoice will be sent, and the subscription advanced to a new billing period. Pass an empty string to remove previously-defined thresholds.
|
259
|
+
attr_accessor :billing_thresholds
|
237
260
|
# Delete all usage for a given subscription item. You must pass this when deleting a usage records subscription item. `clear_usage` has no effect if the plan has a billing meter attached.
|
238
261
|
attr_accessor :clear_usage
|
239
262
|
# A flag that, if set to `true`, will delete the specified item.
|
@@ -256,6 +279,7 @@ module Stripe
|
|
256
279
|
attr_accessor :tax_rates
|
257
280
|
|
258
281
|
def initialize(
|
282
|
+
billing_thresholds: nil,
|
259
283
|
clear_usage: nil,
|
260
284
|
deleted: nil,
|
261
285
|
discounts: nil,
|
@@ -267,6 +291,7 @@ module Stripe
|
|
267
291
|
quantity: nil,
|
268
292
|
tax_rates: nil
|
269
293
|
)
|
294
|
+
@billing_thresholds = billing_thresholds
|
270
295
|
@clear_usage = clear_usage
|
271
296
|
@deleted = deleted
|
272
297
|
@discounts = discounts
|
@@ -383,11 +408,8 @@ module Stripe
|
|
383
408
|
end
|
384
409
|
end
|
385
410
|
|
386
|
-
class Konbini < Stripe::RequestParams
|
387
|
-
end
|
388
|
-
|
389
|
-
class SepaDebit < Stripe::RequestParams
|
390
|
-
end
|
411
|
+
class Konbini < Stripe::RequestParams; end
|
412
|
+
class SepaDebit < Stripe::RequestParams; end
|
391
413
|
|
392
414
|
class UsBankAccount < Stripe::RequestParams
|
393
415
|
class FinancialConnections < Stripe::RequestParams
|
@@ -521,6 +543,8 @@ module Stripe
|
|
521
543
|
attr_accessor :automatic_tax
|
522
544
|
# Either `now` or `unchanged`. Setting the value to `now` resets the subscription's billing cycle anchor to the current time (in UTC). For more information, see the billing cycle [documentation](https://stripe.com/docs/billing/subscriptions/billing-cycle).
|
523
545
|
attr_accessor :billing_cycle_anchor
|
546
|
+
# Define thresholds at which an invoice will be sent, and the subscription advanced to a new billing period. When updating, pass an empty string to remove previously-defined thresholds.
|
547
|
+
attr_accessor :billing_thresholds
|
524
548
|
# A timestamp at which the subscription should cancel. If set to a date before the current period ends, this will cause a proration if prorations have been enabled using `proration_behavior`. If set during a future period, this will always cause a proration for that period.
|
525
549
|
attr_accessor :cancel_at
|
526
550
|
# Indicate whether this subscription should cancel at the end of the current period (`current_period_end`). Defaults to `false`.
|
@@ -569,11 +593,11 @@ module Stripe
|
|
569
593
|
attr_accessor :pending_invoice_item_interval
|
570
594
|
# Determines how to handle [prorations](https://stripe.com/docs/billing/subscriptions/prorations) when the billing cycle changes (e.g., when switching plans, resetting `billing_cycle_anchor=now`, or starting a trial), or if an item's `quantity` changes. The default value is `create_prorations`.
|
571
595
|
attr_accessor :proration_behavior
|
572
|
-
# If set,
|
596
|
+
# If set, prorations will be calculated as though the subscription was updated at the given time. This can be used to apply exactly the same prorations that were previewed with the [create preview](https://stripe.com/docs/api/invoices/create_preview) endpoint. `proration_date` can also be used to implement custom proration logic, such as prorating by day instead of by second, by providing the time that you wish to use for proration calculations.
|
573
597
|
attr_accessor :proration_date
|
574
598
|
# If specified, the funds from the subscription's invoices will be transferred to the destination and the ID of the resulting transfers will be found on the resulting charges. This will be unset if you POST an empty value.
|
575
599
|
attr_accessor :transfer_data
|
576
|
-
# Unix timestamp representing the end of the trial period the customer will get before being charged for the first time. This will always overwrite any trials that might apply via a subscribed plan. If set, trial_end will override the default trial period of the plan the customer is being subscribed to. The special value `now` can be provided to end the customer's trial immediately. Can be at most two years from `billing_cycle_anchor`.
|
600
|
+
# Unix timestamp representing the end of the trial period the customer will get before being charged for the first time. This will always overwrite any trials that might apply via a subscribed plan. If set, `trial_end` will override the default trial period of the plan the customer is being subscribed to. The `billing_cycle_anchor` will be updated to the `trial_end` value. The special value `now` can be provided to end the customer's trial immediately. Can be at most two years from `billing_cycle_anchor`.
|
577
601
|
attr_accessor :trial_end
|
578
602
|
# Indicates if a plan's `trial_period_days` should be applied to the subscription. Setting `trial_end` per subscription is preferred, and this defaults to `false`. Setting this flag to `true` together with `trial_end` is not allowed. See [Using trial periods on subscriptions](https://stripe.com/docs/billing/subscriptions/trials) to learn more.
|
579
603
|
attr_accessor :trial_from_plan
|
@@ -585,6 +609,7 @@ module Stripe
|
|
585
609
|
application_fee_percent: nil,
|
586
610
|
automatic_tax: nil,
|
587
611
|
billing_cycle_anchor: nil,
|
612
|
+
billing_thresholds: nil,
|
588
613
|
cancel_at: nil,
|
589
614
|
cancel_at_period_end: nil,
|
590
615
|
cancellation_details: nil,
|
@@ -616,6 +641,7 @@ module Stripe
|
|
616
641
|
@application_fee_percent = application_fee_percent
|
617
642
|
@automatic_tax = automatic_tax
|
618
643
|
@billing_cycle_anchor = billing_cycle_anchor
|
644
|
+
@billing_thresholds = billing_thresholds
|
619
645
|
@cancel_at = cancel_at
|
620
646
|
@cancel_at_period_end = cancel_at_period_end
|
621
647
|
@cancellation_details = cancellation_details
|
@@ -645,8 +671,7 @@ module Stripe
|
|
645
671
|
end
|
646
672
|
end
|
647
673
|
|
648
|
-
class DeleteDiscountParams < Stripe::RequestParams
|
649
|
-
end
|
674
|
+
class DeleteDiscountParams < Stripe::RequestParams; end
|
650
675
|
|
651
676
|
class ListParams < Stripe::RequestParams
|
652
677
|
class AutomaticTax < Stripe::RequestParams
|
@@ -880,6 +905,27 @@ module Stripe
|
|
880
905
|
end
|
881
906
|
end
|
882
907
|
|
908
|
+
class BillingMode < Stripe::RequestParams
|
909
|
+
# Attribute for param field type
|
910
|
+
attr_accessor :type
|
911
|
+
|
912
|
+
def initialize(type: nil)
|
913
|
+
@type = type
|
914
|
+
end
|
915
|
+
end
|
916
|
+
|
917
|
+
class BillingThresholds < Stripe::RequestParams
|
918
|
+
# Monetary threshold that triggers the subscription to advance to a new billing period
|
919
|
+
attr_accessor :amount_gte
|
920
|
+
# Indicates if the `billing_cycle_anchor` should be reset when a threshold is reached. If true, `billing_cycle_anchor` will be updated to the date/time the threshold was last reached; otherwise, the value will remain unchanged.
|
921
|
+
attr_accessor :reset_billing_cycle_anchor
|
922
|
+
|
923
|
+
def initialize(amount_gte: nil, reset_billing_cycle_anchor: nil)
|
924
|
+
@amount_gte = amount_gte
|
925
|
+
@reset_billing_cycle_anchor = reset_billing_cycle_anchor
|
926
|
+
end
|
927
|
+
end
|
928
|
+
|
883
929
|
class Discount < Stripe::RequestParams
|
884
930
|
# ID of the coupon to create a new discount for.
|
885
931
|
attr_accessor :coupon
|
@@ -919,6 +965,15 @@ module Stripe
|
|
919
965
|
end
|
920
966
|
|
921
967
|
class Item < Stripe::RequestParams
|
968
|
+
class BillingThresholds < Stripe::RequestParams
|
969
|
+
# Number of units that meets the billing threshold to advance the subscription to a new billing period (e.g., it takes 10 $5 units to meet a $50 [monetary threshold](https://stripe.com/docs/api/subscriptions/update#update_subscription-billing_thresholds-amount_gte))
|
970
|
+
attr_accessor :usage_gte
|
971
|
+
|
972
|
+
def initialize(usage_gte: nil)
|
973
|
+
@usage_gte = usage_gte
|
974
|
+
end
|
975
|
+
end
|
976
|
+
|
922
977
|
class Discount < Stripe::RequestParams
|
923
978
|
# ID of the coupon to create a new discount for.
|
924
979
|
attr_accessor :coupon
|
@@ -975,6 +1030,8 @@ module Stripe
|
|
975
1030
|
@unit_amount_decimal = unit_amount_decimal
|
976
1031
|
end
|
977
1032
|
end
|
1033
|
+
# Define thresholds at which an invoice will be sent, and the subscription advanced to a new billing period. Pass an empty string to remove previously-defined thresholds.
|
1034
|
+
attr_accessor :billing_thresholds
|
978
1035
|
# The coupons to redeem into discounts for the subscription item.
|
979
1036
|
attr_accessor :discounts
|
980
1037
|
# Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format. Individual keys can be unset by posting an empty value to them. All keys can be unset by posting an empty value to `metadata`.
|
@@ -991,6 +1048,7 @@ module Stripe
|
|
991
1048
|
attr_accessor :tax_rates
|
992
1049
|
|
993
1050
|
def initialize(
|
1051
|
+
billing_thresholds: nil,
|
994
1052
|
discounts: nil,
|
995
1053
|
metadata: nil,
|
996
1054
|
plan: nil,
|
@@ -999,6 +1057,7 @@ module Stripe
|
|
999
1057
|
quantity: nil,
|
1000
1058
|
tax_rates: nil
|
1001
1059
|
)
|
1060
|
+
@billing_thresholds = billing_thresholds
|
1002
1061
|
@discounts = discounts
|
1003
1062
|
@metadata = metadata
|
1004
1063
|
@plan = plan
|
@@ -1100,11 +1159,8 @@ module Stripe
|
|
1100
1159
|
end
|
1101
1160
|
end
|
1102
1161
|
|
1103
|
-
class Konbini < Stripe::RequestParams
|
1104
|
-
end
|
1105
|
-
|
1106
|
-
class SepaDebit < Stripe::RequestParams
|
1107
|
-
end
|
1162
|
+
class Konbini < Stripe::RequestParams; end
|
1163
|
+
class SepaDebit < Stripe::RequestParams; end
|
1108
1164
|
|
1109
1165
|
class UsBankAccount < Stripe::RequestParams
|
1110
1166
|
class FinancialConnections < Stripe::RequestParams
|
@@ -1234,14 +1290,18 @@ module Stripe
|
|
1234
1290
|
attr_accessor :add_invoice_items
|
1235
1291
|
# A non-negative decimal between 0 and 100, with at most two decimal places. This represents the percentage of the subscription invoice total that will be transferred to the application owner's Stripe account. The request must be made by a platform account on a connected account in order to set an application fee percentage. For more information, see the application fees [documentation](https://stripe.com/docs/connect/subscriptions#collecting-fees-on-subscriptions).
|
1236
1292
|
attr_accessor :application_fee_percent
|
1237
|
-
# Automatic tax settings for this subscription.
|
1293
|
+
# Automatic tax settings for this subscription.
|
1238
1294
|
attr_accessor :automatic_tax
|
1239
|
-
#
|
1295
|
+
# A past timestamp to backdate the subscription's start date to. If set, the first invoice will contain line items for the timespan between the start date and the current time. Can be combined with trials and the billing cycle anchor.
|
1240
1296
|
attr_accessor :backdate_start_date
|
1241
1297
|
# A future timestamp in UTC format to anchor the subscription's [billing cycle](https://stripe.com/docs/subscriptions/billing-cycle). The anchor is the reference point that aligns future billing cycle dates. It sets the day of week for `week` intervals, the day of month for `month` and `year` intervals, and the month of year for `year` intervals.
|
1242
1298
|
attr_accessor :billing_cycle_anchor
|
1243
1299
|
# Mutually exclusive with billing_cycle_anchor and only valid with monthly and yearly price intervals. When provided, the billing_cycle_anchor is set to the next occurence of the day_of_month at the hour, minute, and second UTC.
|
1244
1300
|
attr_accessor :billing_cycle_anchor_config
|
1301
|
+
# Controls how prorations and invoices for subscriptions are calculated and orchestrated.
|
1302
|
+
attr_accessor :billing_mode
|
1303
|
+
# Define thresholds at which an invoice will be sent, and the subscription advanced to a new billing period. When updating, pass an empty string to remove previously-defined thresholds.
|
1304
|
+
attr_accessor :billing_thresholds
|
1245
1305
|
# A timestamp at which the subscription should cancel. If set to a date before the current period ends, this will cause a proration if prorations have been enabled using `proration_behavior`. If set during a future period, this will always cause a proration for that period.
|
1246
1306
|
attr_accessor :cancel_at
|
1247
1307
|
# Indicate whether this subscription should cancel at the end of the current period (`current_period_end`). Defaults to `false`.
|
@@ -1312,6 +1372,8 @@ module Stripe
|
|
1312
1372
|
backdate_start_date: nil,
|
1313
1373
|
billing_cycle_anchor: nil,
|
1314
1374
|
billing_cycle_anchor_config: nil,
|
1375
|
+
billing_mode: nil,
|
1376
|
+
billing_thresholds: nil,
|
1315
1377
|
cancel_at: nil,
|
1316
1378
|
cancel_at_period_end: nil,
|
1317
1379
|
collection_method: nil,
|
@@ -1345,6 +1407,8 @@ module Stripe
|
|
1345
1407
|
@backdate_start_date = backdate_start_date
|
1346
1408
|
@billing_cycle_anchor = billing_cycle_anchor
|
1347
1409
|
@billing_cycle_anchor_config = billing_cycle_anchor_config
|
1410
|
+
@billing_mode = billing_mode
|
1411
|
+
@billing_thresholds = billing_thresholds
|
1348
1412
|
@cancel_at = cancel_at
|
1349
1413
|
@cancel_at_period_end = cancel_at_period_end
|
1350
1414
|
@collection_method = collection_method
|
@@ -1392,14 +1456,34 @@ module Stripe
|
|
1392
1456
|
end
|
1393
1457
|
end
|
1394
1458
|
|
1459
|
+
class MigrateParams < Stripe::RequestParams
|
1460
|
+
class BillingMode < Stripe::RequestParams
|
1461
|
+
# Attribute for param field type
|
1462
|
+
attr_accessor :type
|
1463
|
+
|
1464
|
+
def initialize(type: nil)
|
1465
|
+
@type = type
|
1466
|
+
end
|
1467
|
+
end
|
1468
|
+
# Controls how prorations and invoices for subscriptions are calculated and orchestrated.
|
1469
|
+
attr_accessor :billing_mode
|
1470
|
+
# Specifies which fields in the response should be expanded.
|
1471
|
+
attr_accessor :expand
|
1472
|
+
|
1473
|
+
def initialize(billing_mode: nil, expand: nil)
|
1474
|
+
@billing_mode = billing_mode
|
1475
|
+
@expand = expand
|
1476
|
+
end
|
1477
|
+
end
|
1478
|
+
|
1395
1479
|
class ResumeParams < Stripe::RequestParams
|
1396
1480
|
# The billing cycle anchor that applies when the subscription is resumed. Either `now` or `unchanged`. The default is `now`. For more information, see the billing cycle [documentation](https://stripe.com/docs/billing/subscriptions/billing-cycle).
|
1397
1481
|
attr_accessor :billing_cycle_anchor
|
1398
1482
|
# Specifies which fields in the response should be expanded.
|
1399
1483
|
attr_accessor :expand
|
1400
|
-
# Determines how to handle [prorations](https://stripe.com/docs/billing/subscriptions/prorations)
|
1484
|
+
# Determines how to handle [prorations](https://stripe.com/docs/billing/subscriptions/prorations) resulting from the `billing_cycle_anchor` being `unchanged`. When the `billing_cycle_anchor` is set to `now` (default value), no prorations are generated. If no value is passed, the default is `create_prorations`.
|
1401
1485
|
attr_accessor :proration_behavior
|
1402
|
-
# If set,
|
1486
|
+
# If set, prorations will be calculated as though the subscription was resumed at the given time. This can be used to apply exactly the same prorations that were previewed with the [create preview](https://stripe.com/docs/api/invoices/create_preview) endpoint.
|
1403
1487
|
attr_accessor :proration_date
|
1404
1488
|
|
1405
1489
|
def initialize(
|
@@ -1415,9 +1499,9 @@ module Stripe
|
|
1415
1499
|
end
|
1416
1500
|
end
|
1417
1501
|
|
1418
|
-
# Cancels a customer's subscription immediately. The customer won't be charged again for the subscription. After it's canceled, you can no longer update the subscription or its [metadata](https://stripe.com/metadata).
|
1502
|
+
# Cancels a customer's subscription immediately. The customer won't be charged again for the subscription. After it's canceled, you can no longer update the subscription or its [metadata](https://docs.stripe.com/metadata).
|
1419
1503
|
#
|
1420
|
-
# Any pending invoice items that you've created are still charged at the end of the period, unless manually [deleted](https://stripe.com/
|
1504
|
+
# Any pending invoice items that you've created are still charged at the end of the period, unless manually [deleted](https://docs.stripe.com/api#delete_invoiceitem). If you've set the subscription to cancel at the end of the period, any pending prorations are also left in place and collected at the end of the period. But if the subscription is set to cancel immediately, pending prorations are removed if invoice_now and prorate are both set to true.
|
1421
1505
|
#
|
1422
1506
|
# By default, upon subscription cancellation, Stripe stops automatic collection of all finalized invoices for the customer. This is intended to prevent unexpected payment attempts after the customer has canceled a subscription. However, you can resume automatic collection of the invoices manually after subscription cancellation to have us proceed. Or, you could check for unpaid invoices before allowing the customer to cancel the subscription at all.
|
1423
1507
|
def cancel(subscription_exposed_id, params = {}, opts = {})
|
@@ -1435,7 +1519,7 @@ module Stripe
|
|
1435
1519
|
# When you create a subscription with collection_method=charge_automatically, the first invoice is finalized as part of the request.
|
1436
1520
|
# The payment_behavior parameter determines the exact behavior of the initial payment.
|
1437
1521
|
#
|
1438
|
-
# To start subscriptions where the first invoice always begins in a draft status, use [subscription schedules](https://stripe.com/docs/billing/subscriptions/subscription-schedules#managing) instead.
|
1522
|
+
# To start subscriptions where the first invoice always begins in a draft status, use [subscription schedules](https://docs.stripe.com/docs/billing/subscriptions/subscription-schedules#managing) instead.
|
1439
1523
|
# Schedules provide the flexibility to model more complex billing configurations that change over time.
|
1440
1524
|
def create(params = {}, opts = {})
|
1441
1525
|
request(
|
@@ -1469,6 +1553,17 @@ module Stripe
|
|
1469
1553
|
)
|
1470
1554
|
end
|
1471
1555
|
|
1556
|
+
# Upgrade the billing_mode of an existing subscription.
|
1557
|
+
def migrate(subscription, params = {}, opts = {})
|
1558
|
+
request(
|
1559
|
+
method: :post,
|
1560
|
+
path: format("/v1/subscriptions/%<subscription>s/migrate", { subscription: CGI.escape(subscription) }),
|
1561
|
+
params: params,
|
1562
|
+
opts: opts,
|
1563
|
+
base_address: :api
|
1564
|
+
)
|
1565
|
+
end
|
1566
|
+
|
1472
1567
|
# Initiates resumption of a paused subscription, optionally resetting the billing cycle anchor and creating prorations. If a resumption invoice is generated, it must be paid or marked uncollectible before the subscription will be unpaused. If payment succeeds the subscription will become active, and if payment fails the subscription will be past_due. The resumption invoice will void automatically if not paid by the expiration date.
|
1473
1568
|
def resume(subscription, params = {}, opts = {})
|
1474
1569
|
request(
|
@@ -1491,7 +1586,7 @@ module Stripe
|
|
1491
1586
|
)
|
1492
1587
|
end
|
1493
1588
|
|
1494
|
-
# Search for subscriptions you've previously created using Stripe's [Search Query Language](https://stripe.com/docs/search#search-query-language).
|
1589
|
+
# Search for subscriptions you've previously created using Stripe's [Search Query Language](https://docs.stripe.com/docs/search#search-query-language).
|
1495
1590
|
# Don't use search in read-after-write flows where strict consistency is necessary. Under normal operating
|
1496
1591
|
# conditions, data is searchable in less than a minute. Occasionally, propagation of new or updated data can be up
|
1497
1592
|
# to an hour behind during outages. Search functionality is not available to merchants in India.
|
@@ -1507,7 +1602,7 @@ module Stripe
|
|
1507
1602
|
|
1508
1603
|
# Updates an existing subscription to match the specified parameters.
|
1509
1604
|
# When changing prices or quantities, we optionally prorate the price we charge next month to make up for any price changes.
|
1510
|
-
# To preview how the proration is calculated, use the [create preview](https://stripe.com/docs/api/invoices/create_preview) endpoint.
|
1605
|
+
# To preview how the proration is calculated, use the [create preview](https://docs.stripe.com/docs/api/invoices/create_preview) endpoint.
|
1511
1606
|
#
|
1512
1607
|
# By default, we prorate subscription changes. For example, if a customer signs up on May 1 for a 100 price, they'll be billed 100 immediately. If on May 15 they switch to a 200 price, then on June 1 they'll be billed 250 (200 for a renewal of her subscription, plus a 50 prorating adjustment for half of the previous month's 100 difference). Similarly, a downgrade generates a credit that is applied to the next invoice. We also prorate when you make quantity changes.
|
1513
1608
|
#
|
@@ -1519,13 +1614,13 @@ module Stripe
|
|
1519
1614
|
# A trial starts or ends.
|
1520
1615
|
#
|
1521
1616
|
#
|
1522
|
-
# In these cases, we apply a credit for the unused time on the previous price, immediately charge the customer using the new price, and reset the billing date. Learn about how [Stripe immediately attempts payment for subscription changes](https://stripe.com/docs/billing/subscriptions/upgrade-downgrade#immediate-payment).
|
1617
|
+
# In these cases, we apply a credit for the unused time on the previous price, immediately charge the customer using the new price, and reset the billing date. Learn about how [Stripe immediately attempts payment for subscription changes](https://docs.stripe.com/docs/billing/subscriptions/upgrade-downgrade#immediate-payment).
|
1523
1618
|
#
|
1524
|
-
# If you want to charge for an upgrade immediately, pass proration_behavior as always_invoice to create prorations, automatically invoice the customer for those proration adjustments, and attempt to collect payment. If you pass create_prorations, the prorations are created but not automatically invoiced. If you want to bill the customer for the prorations before the subscription's renewal date, you need to manually [invoice the customer](https://stripe.com/docs/api/invoices/create).
|
1619
|
+
# If you want to charge for an upgrade immediately, pass proration_behavior as always_invoice to create prorations, automatically invoice the customer for those proration adjustments, and attempt to collect payment. If you pass create_prorations, the prorations are created but not automatically invoiced. If you want to bill the customer for the prorations before the subscription's renewal date, you need to manually [invoice the customer](https://docs.stripe.com/docs/api/invoices/create).
|
1525
1620
|
#
|
1526
1621
|
# If you don't want to prorate, set the proration_behavior option to none. With this option, the customer is billed 100 on May 1 and 200 on June 1. Similarly, if you set proration_behavior to none when switching between different billing intervals (for example, from monthly to yearly), we don't generate any credits for the old subscription's unused time. We still reset the billing date and bill immediately for the new subscription.
|
1527
1622
|
#
|
1528
|
-
# Updating the quantity on a subscription many times in an hour may result in [rate limiting. If you need to bill for a frequently changing quantity, consider integrating <a href="/docs/billing/subscriptions/usage-based">usage-based billing](https://stripe.com/docs/rate-limits) instead.
|
1623
|
+
# Updating the quantity on a subscription many times in an hour may result in [rate limiting. If you need to bill for a frequently changing quantity, consider integrating <a href="/docs/billing/subscriptions/usage-based">usage-based billing](https://docs.stripe.com/docs/rate-limits) instead.
|
1529
1624
|
def update(subscription_exposed_id, params = {}, opts = {})
|
1530
1625
|
request(
|
1531
1626
|
method: :post,
|
@@ -7,7 +7,7 @@ module Stripe
|
|
7
7
|
attr_reader :line_items
|
8
8
|
|
9
9
|
def initialize(requestor)
|
10
|
-
super
|
10
|
+
super
|
11
11
|
@line_items = Stripe::Tax::CalculationLineItemService.new(@requestor)
|
12
12
|
end
|
13
13
|
|
@@ -54,7 +54,7 @@ module Stripe
|
|
54
54
|
end
|
55
55
|
|
56
56
|
class TaxId < Stripe::RequestParams
|
57
|
-
# Type of the tax ID, one of `ad_nrt`, `ae_trn`, `al_tin`, `am_tin`, `ao_tin`, `ar_cuit`, `au_abn`, `au_arn`, `ba_tin`, `bb_tin`, `bg_uic`, `bh_vat`, `bo_tin`, `br_cnpj`, `br_cpf`, `bs_tin`, `by_tin`, `ca_bn`, `ca_gst_hst`, `ca_pst_bc`, `ca_pst_mb`, `ca_pst_sk`, `ca_qst`, `cd_nif`, `ch_uid`, `ch_vat`, `cl_tin`, `cn_tin`, `co_nit`, `cr_tin`, `de_stn`, `do_rcn`, `ec_ruc`, `eg_tin`, `es_cif`, `eu_oss_vat`, `eu_vat`, `gb_vat`, `ge_vat`, `gn_nif`, `hk_br`, `hr_oib`, `hu_tin`, `id_npwp`, `il_vat`, `in_gst`, `is_vat`, `jp_cn`, `jp_rn`, `jp_trn`, `ke_pin`, `kh_tin`, `kr_brn`, `kz_bin`, `li_uid`, `li_vat`, `ma_vat`, `md_vat`, `me_pib`, `mk_vat`, `mr_nif`, `mx_rfc`, `my_frp`, `my_itn`, `my_sst`, `ng_tin`, `no_vat`, `no_voec`, `np_pan`, `nz_gst`, `om_vat`, `pe_ruc`, `ph_tin`, `ro_tin`, `rs_pib`, `ru_inn`, `ru_kpp`, `sa_vat`, `sg_gst`, `sg_uen`, `si_tin`, `sn_ninea`, `sr_fin`, `sv_nit`, `th_vat`, `tj_tin`, `tr_tin`, `tw_vat`, `tz_vat`, `ua_vat`, `ug_tin`, `us_ein`, `uy_ruc`, `uz_tin`, `uz_vat`, `ve_rif`, `vn_tin`, `za_vat`, `zm_tin`, or `zw_tin`
|
57
|
+
# Type of the tax ID, one of `ad_nrt`, `ae_trn`, `al_tin`, `am_tin`, `ao_tin`, `ar_cuit`, `au_abn`, `au_arn`, `aw_tin`, `az_tin`, `ba_tin`, `bb_tin`, `bd_bin`, `bf_ifu`, `bg_uic`, `bh_vat`, `bj_ifu`, `bo_tin`, `br_cnpj`, `br_cpf`, `bs_tin`, `by_tin`, `ca_bn`, `ca_gst_hst`, `ca_pst_bc`, `ca_pst_mb`, `ca_pst_sk`, `ca_qst`, `cd_nif`, `ch_uid`, `ch_vat`, `cl_tin`, `cm_niu`, `cn_tin`, `co_nit`, `cr_tin`, `cv_nif`, `de_stn`, `do_rcn`, `ec_ruc`, `eg_tin`, `es_cif`, `et_tin`, `eu_oss_vat`, `eu_vat`, `gb_vat`, `ge_vat`, `gn_nif`, `hk_br`, `hr_oib`, `hu_tin`, `id_npwp`, `il_vat`, `in_gst`, `is_vat`, `jp_cn`, `jp_rn`, `jp_trn`, `ke_pin`, `kg_tin`, `kh_tin`, `kr_brn`, `kz_bin`, `la_tin`, `li_uid`, `li_vat`, `ma_vat`, `md_vat`, `me_pib`, `mk_vat`, `mr_nif`, `mx_rfc`, `my_frp`, `my_itn`, `my_sst`, `ng_tin`, `no_vat`, `no_voec`, `np_pan`, `nz_gst`, `om_vat`, `pe_ruc`, `ph_tin`, `ro_tin`, `rs_pib`, `ru_inn`, `ru_kpp`, `sa_vat`, `sg_gst`, `sg_uen`, `si_tin`, `sn_ninea`, `sr_fin`, `sv_nit`, `th_vat`, `tj_tin`, `tr_tin`, `tw_vat`, `tz_vat`, `ua_vat`, `ug_tin`, `us_ein`, `uy_ruc`, `uz_tin`, `uz_vat`, `ve_rif`, `vn_tin`, `za_vat`, `zm_tin`, or `zw_tin`
|
58
58
|
attr_accessor :type
|
59
59
|
# Value of the tax ID.
|
60
60
|
attr_accessor :value
|
@@ -94,6 +94,8 @@ module Stripe
|
|
94
94
|
# A positive integer representing the line item's total price in the [smallest currency unit](https://stripe.com/docs/currencies#zero-decimal).
|
95
95
|
# If `tax_behavior=inclusive`, then this amount includes taxes. Otherwise, taxes are calculated on top of this amount.
|
96
96
|
attr_accessor :amount
|
97
|
+
# Set of [key-value pairs](https://stripe.com/docs/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format.
|
98
|
+
attr_accessor :metadata
|
97
99
|
# If provided, the product's `tax_code` will be used as the line item's `tax_code`.
|
98
100
|
attr_accessor :product
|
99
101
|
# The number of units of the item being purchased. Used to calculate the per-unit price from the total `amount` for the line. For example, if `amount=100` and `quantity=4`, the calculated unit price is 25.
|
@@ -107,6 +109,7 @@ module Stripe
|
|
107
109
|
|
108
110
|
def initialize(
|
109
111
|
amount: nil,
|
112
|
+
metadata: nil,
|
110
113
|
product: nil,
|
111
114
|
quantity: nil,
|
112
115
|
reference: nil,
|
@@ -114,6 +117,7 @@ module Stripe
|
|
114
117
|
tax_code: nil
|
115
118
|
)
|
116
119
|
@amount = amount
|
120
|
+
@metadata = metadata
|
117
121
|
@product = product
|
118
122
|
@quantity = quantity
|
119
123
|
@reference = reference
|