Class: Stripe::TaxRate
- Inherits:
-
APIResource
- Object
- StripeObject
- APIResource
- Stripe::TaxRate
- Extended by:
- APIOperations::Create, APIOperations::List
- Includes:
- APIOperations::Save
- Defined in:
- lib/stripe/resources/tax_rate.rb
Overview
Tax rates can be applied to [invoices](stripe.com/invoicing/taxes/tax-rates), [subscriptions](stripe.com/billing/taxes/tax-rates) and [Checkout Sessions](stripe.com/payments/checkout/use-manual-tax-rates) to collect tax.
Related guide: [Tax rates](stripe.com/billing/taxes/tax-rates)
Defined Under Namespace
Classes: CreateParams, FlatAmount, ListParams, UpdateParams
Constant Summary collapse
- OBJECT_NAME =
"tax_rate"
Constants inherited from StripeObject
StripeObject::RESERVED_FIELD_NAMES
Instance Attribute Summary collapse
-
#active ⇒ Object
readonly
Defaults to ‘true`.
-
#country ⇒ Object
readonly
Two-letter country code ([ISO 3166-1 alpha-2](en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
-
#created ⇒ Object
readonly
Time at which the object was created.
-
#description ⇒ Object
readonly
An arbitrary string attached to the tax rate for your internal use only.
-
#display_name ⇒ Object
readonly
The display name of the tax rates as it will appear to your customer on their receipt email, PDF, and the hosted invoice page.
-
#effective_percentage ⇒ Object
readonly
Actual/effective tax rate percentage out of 100.
-
#flat_amount ⇒ Object
readonly
The amount of the tax rate when the ‘rate_type` is `flat_amount`.
-
#id ⇒ Object
readonly
Unique identifier for the object.
-
#inclusive ⇒ Object
readonly
This specifies if the tax rate is inclusive or exclusive.
-
#jurisdiction ⇒ Object
readonly
The jurisdiction for the tax rate.
-
#jurisdiction_level ⇒ Object
readonly
The level of the jurisdiction that imposes this tax rate.
-
#livemode ⇒ Object
readonly
Has the value ‘true` if the object exists in live mode or the value `false` if the object exists in test mode.
-
#metadata ⇒ Object
readonly
Set of [key-value pairs](stripe.com/docs/api/metadata) that you can attach to an object.
-
#object ⇒ Object
readonly
String representing the object’s type.
-
#percentage ⇒ Object
readonly
Tax rate percentage out of 100.
-
#rate_type ⇒ Object
readonly
Indicates the type of tax rate applied to the taxable amount.
-
#state ⇒ Object
readonly
[ISO 3166-2 subdivision code](en.wikipedia.org/wiki/ISO_3166-2), without country prefix.
-
#tax_type ⇒ Object
readonly
The high-level tax type, such as ‘vat` or `sales_tax`.
Attributes inherited from APIResource
Attributes inherited from StripeObject
Class Method Summary collapse
-
.create(params = {}, opts = {}) ⇒ Object
Creates a new tax rate.
-
.list(params = {}, opts = {}) ⇒ Object
Returns a list of your tax rates.
- .object_name ⇒ Object
-
.update(tax_rate, params = {}, opts = {}) ⇒ Object
Updates an existing tax rate.
Methods included from APIOperations::Create
Methods included from APIOperations::List
Methods included from APIOperations::Save
Methods inherited from APIResource
class_name, custom_method, #refresh, #request_stripe_object, resource_url, #resource_url, retrieve, save_nested_resource
Methods included from APIOperations::Request
Methods inherited from StripeObject
#==, #[], #[]=, additive_object_param, additive_object_param?, #as_json, construct_from, #deleted?, #dirty!, #each, #eql?, #hash, #initialize, #inspect, #keys, #marshal_dump, #marshal_load, protected_fields, #serialize_params, #to_hash, #to_json, #to_s, #update_attributes, #values
Constructor Details
This class inherits a constructor from Stripe::StripeObject
Dynamic Method Handling
This class handles dynamic methods through the method_missing method in the class Stripe::StripeObject
Instance Attribute Details
#active ⇒ Object (readonly)
Defaults to ‘true`. When set to `false`, this tax rate cannot be used with new applications or Checkout Sessions, but will still work for subscriptions and invoices that already have it set.
171 172 173 |
# File 'lib/stripe/resources/tax_rate.rb', line 171 def active @active end |
#country ⇒ Object (readonly)
Two-letter country code ([ISO 3166-1 alpha-2](en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
173 174 175 |
# File 'lib/stripe/resources/tax_rate.rb', line 173 def country @country end |
#created ⇒ Object (readonly)
Time at which the object was created. Measured in seconds since the Unix epoch.
175 176 177 |
# File 'lib/stripe/resources/tax_rate.rb', line 175 def created @created end |
#description ⇒ Object (readonly)
An arbitrary string attached to the tax rate for your internal use only. It will not be visible to your customers.
177 178 179 |
# File 'lib/stripe/resources/tax_rate.rb', line 177 def description @description end |
#display_name ⇒ Object (readonly)
The display name of the tax rates as it will appear to your customer on their receipt email, PDF, and the hosted invoice page.
179 180 181 |
# File 'lib/stripe/resources/tax_rate.rb', line 179 def display_name @display_name end |
#effective_percentage ⇒ Object (readonly)
Actual/effective tax rate percentage out of 100. For tax calculations with automatic_tax=true, this percentage reflects the rate actually used to calculate tax based on the product’s taxability and whether the user is registered to collect taxes in the corresponding jurisdiction.
183 184 185 |
# File 'lib/stripe/resources/tax_rate.rb', line 183 def effective_percentage @effective_percentage end |
#flat_amount ⇒ Object (readonly)
The amount of the tax rate when the ‘rate_type` is `flat_amount`. Tax rates with `rate_type` `percentage` can vary based on the transaction, resulting in this field being `null`. This field exposes the amount and currency of the flat tax rate.
185 186 187 |
# File 'lib/stripe/resources/tax_rate.rb', line 185 def flat_amount @flat_amount end |
#id ⇒ Object (readonly)
Unique identifier for the object.
187 188 189 |
# File 'lib/stripe/resources/tax_rate.rb', line 187 def id @id end |
#inclusive ⇒ Object (readonly)
This specifies if the tax rate is inclusive or exclusive.
189 190 191 |
# File 'lib/stripe/resources/tax_rate.rb', line 189 def inclusive @inclusive end |
#jurisdiction ⇒ Object (readonly)
The jurisdiction for the tax rate. You can use this label field for tax reporting purposes. It also appears on your customer’s invoice.
191 192 193 |
# File 'lib/stripe/resources/tax_rate.rb', line 191 def jurisdiction @jurisdiction end |
#jurisdiction_level ⇒ Object (readonly)
The level of the jurisdiction that imposes this tax rate. Will be ‘null` for manually defined tax rates.
193 194 195 |
# File 'lib/stripe/resources/tax_rate.rb', line 193 def jurisdiction_level @jurisdiction_level end |
#livemode ⇒ Object (readonly)
Has the value ‘true` if the object exists in live mode or the value `false` if the object exists in test mode.
195 196 197 |
# File 'lib/stripe/resources/tax_rate.rb', line 195 def livemode @livemode end |
#metadata ⇒ Object (readonly)
Set of [key-value pairs](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.
197 198 199 |
# File 'lib/stripe/resources/tax_rate.rb', line 197 def @metadata end |
#object ⇒ Object (readonly)
String representing the object’s type. Objects of the same type share the same value.
199 200 201 |
# File 'lib/stripe/resources/tax_rate.rb', line 199 def object @object end |
#percentage ⇒ Object (readonly)
Tax rate percentage out of 100. For tax calculations with automatic_tax=true, this percentage includes the statutory tax rate of non-taxable jurisdictions.
201 202 203 |
# File 'lib/stripe/resources/tax_rate.rb', line 201 def percentage @percentage end |
#rate_type ⇒ Object (readonly)
Indicates the type of tax rate applied to the taxable amount. This value can be ‘null` when no tax applies to the location. This field is only present for TaxRates created by Stripe Tax.
203 204 205 |
# File 'lib/stripe/resources/tax_rate.rb', line 203 def rate_type @rate_type end |
#state ⇒ Object (readonly)
[ISO 3166-2 subdivision code](en.wikipedia.org/wiki/ISO_3166-2), without country prefix. For example, “NY” for New York, United States.
205 206 207 |
# File 'lib/stripe/resources/tax_rate.rb', line 205 def state @state end |
#tax_type ⇒ Object (readonly)
The high-level tax type, such as ‘vat` or `sales_tax`.
207 208 209 |
# File 'lib/stripe/resources/tax_rate.rb', line 207 def tax_type @tax_type end |
Class Method Details
.create(params = {}, opts = {}) ⇒ Object
Creates a new tax rate.
210 211 212 |
# File 'lib/stripe/resources/tax_rate.rb', line 210 def self.create(params = {}, opts = {}) request_stripe_object(method: :post, path: "/v1/tax_rates", params: params, opts: opts) end |
.list(params = {}, opts = {}) ⇒ Object
Returns a list of your tax rates. Tax rates are returned sorted by creation date, with the most recently created tax rates appearing first.
215 216 217 |
# File 'lib/stripe/resources/tax_rate.rb', line 215 def self.list(params = {}, opts = {}) request_stripe_object(method: :get, path: "/v1/tax_rates", params: params, opts: opts) end |
.object_name ⇒ Object
14 15 16 |
# File 'lib/stripe/resources/tax_rate.rb', line 14 def self.object_name "tax_rate" end |
.update(tax_rate, params = {}, opts = {}) ⇒ Object
Updates an existing tax rate.
220 221 222 223 224 225 226 227 |
# File 'lib/stripe/resources/tax_rate.rb', line 220 def self.update(tax_rate, params = {}, opts = {}) request_stripe_object( method: :post, path: format("/v1/tax_rates/%<tax_rate>s", { tax_rate: CGI.escape(tax_rate) }), params: params, opts: opts ) end |