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/docs/billing/invoices/tax-rates), [subscriptions](stripe.com/docs/billing/subscriptions/taxes) and [Checkout Sessions](stripe.com/docs/payments/checkout/set-up-a-subscription#tax-rates) to collect tax.
Related guide: [Tax rates](stripe.com/docs/billing/taxes/tax-rates)
Defined Under Namespace
Classes: CreateParams, FlatAmount, ListParams, RetrieveParams, 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:US), 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(id, 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.
208 209 210 |
# File 'lib/stripe/resources/tax_rate.rb', line 208 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)).
211 212 213 |
# File 'lib/stripe/resources/tax_rate.rb', line 211 def country @country end |
#created ⇒ Object (readonly)
Time at which the object was created. Measured in seconds since the Unix epoch.
214 215 216 |
# File 'lib/stripe/resources/tax_rate.rb', line 214 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.
217 218 219 |
# File 'lib/stripe/resources/tax_rate.rb', line 217 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.
220 221 222 |
# File 'lib/stripe/resources/tax_rate.rb', line 220 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.
225 226 227 |
# File 'lib/stripe/resources/tax_rate.rb', line 225 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.
228 229 230 |
# File 'lib/stripe/resources/tax_rate.rb', line 228 def flat_amount @flat_amount end |
#id ⇒ Object (readonly)
Unique identifier for the object.
231 232 233 |
# File 'lib/stripe/resources/tax_rate.rb', line 231 def id @id end |
#inclusive ⇒ Object (readonly)
This specifies if the tax rate is inclusive or exclusive.
234 235 236 |
# File 'lib/stripe/resources/tax_rate.rb', line 234 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.
237 238 239 |
# File 'lib/stripe/resources/tax_rate.rb', line 237 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.
240 241 242 |
# File 'lib/stripe/resources/tax_rate.rb', line 240 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.
243 244 245 |
# File 'lib/stripe/resources/tax_rate.rb', line 243 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.
246 247 248 |
# File 'lib/stripe/resources/tax_rate.rb', line 246 def @metadata end |
#object ⇒ Object (readonly)
String representing the object’s type. Objects of the same type share the same value.
249 250 251 |
# File 'lib/stripe/resources/tax_rate.rb', line 249 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.
252 253 254 |
# File 'lib/stripe/resources/tax_rate.rb', line 252 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.
255 256 257 |
# File 'lib/stripe/resources/tax_rate.rb', line 255 def rate_type @rate_type end |
#state ⇒ Object (readonly)
[ISO 3166-2 subdivision code](en.wikipedia.org/wiki/ISO_3166-2:US), without country prefix. For example, “NY” for New York, United States.
258 259 260 |
# File 'lib/stripe/resources/tax_rate.rb', line 258 def state @state end |
#tax_type ⇒ Object (readonly)
The high-level tax type, such as ‘vat` or `sales_tax`.
261 262 263 |
# File 'lib/stripe/resources/tax_rate.rb', line 261 def tax_type @tax_type end |
Class Method Details
.create(params = {}, opts = {}) ⇒ Object
Creates a new tax rate.
264 265 266 |
# File 'lib/stripe/resources/tax_rate.rb', line 264 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.
269 270 271 |
# File 'lib/stripe/resources/tax_rate.rb', line 269 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(id, params = {}, opts = {}) ⇒ Object
Updates an existing tax rate.
274 275 276 277 278 279 280 281 |
# File 'lib/stripe/resources/tax_rate.rb', line 274 def self.update(id, params = {}, opts = {}) request_stripe_object( method: :post, path: format("/v1/tax_rates/%<id>s", { id: CGI.escape(id) }), params: params, opts: opts ) end |