1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151
|
# -*- coding: utf-8 -*-
# File generated from our OpenAPI spec
from stripe._stripe_object import StripeObject
from typing import ClassVar, Dict, List, Optional
from typing_extensions import Literal
class CalculationLineItem(StripeObject):
OBJECT_NAME: ClassVar[Literal["tax.calculation_line_item"]] = (
"tax.calculation_line_item"
)
class TaxBreakdown(StripeObject):
class Jurisdiction(StripeObject):
country: str
"""
Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
"""
display_name: str
"""
A human-readable name for the jurisdiction imposing the tax.
"""
level: Literal["city", "country", "county", "district", "state"]
"""
Indicates the level of the jurisdiction imposing the tax.
"""
state: Optional[str]
"""
[ISO 3166-2 subdivision code](https://en.wikipedia.org/wiki/ISO_3166-2), without country prefix. For example, "NY" for New York, United States.
"""
class TaxRateDetails(StripeObject):
display_name: str
"""
A localized display name for tax type, intended to be human-readable. For example, "Local Sales and Use Tax", "Value-added tax (VAT)", or "Umsatzsteuer (USt.)".
"""
percentage_decimal: str
"""
The tax rate percentage as a string. For example, 8.5% is represented as "8.5".
"""
tax_type: Literal[
"amusement_tax",
"communications_tax",
"gst",
"hst",
"igst",
"jct",
"lease_tax",
"pst",
"qst",
"retail_delivery_fee",
"rst",
"sales_tax",
"service_tax",
"vat",
]
"""
The tax type, such as `vat` or `sales_tax`.
"""
amount: int
"""
The amount of tax, in the [smallest currency unit](https://docs.stripe.com/currencies#zero-decimal).
"""
jurisdiction: Jurisdiction
sourcing: Literal["destination", "origin"]
"""
Indicates whether the jurisdiction was determined by the origin (merchant's address) or destination (customer's address).
"""
tax_rate_details: Optional[TaxRateDetails]
"""
Details regarding the rate for this tax. This field will be `null` when the tax is not imposed, for example if the product is exempt from tax.
"""
taxability_reason: Literal[
"customer_exempt",
"not_collecting",
"not_subject_to_tax",
"not_supported",
"portion_product_exempt",
"portion_reduced_rated",
"portion_standard_rated",
"product_exempt",
"product_exempt_holiday",
"proportionally_rated",
"reduced_rated",
"reverse_charge",
"standard_rated",
"taxable_basis_reduced",
"zero_rated",
]
"""
The reasoning behind this tax, for example, if the product is tax exempt. The possible values for this field may be extended as new tax rules are supported.
"""
taxable_amount: int
"""
The amount on which tax is calculated, in the [smallest currency unit](https://docs.stripe.com/currencies#zero-decimal).
"""
_inner_class_types = {
"jurisdiction": Jurisdiction,
"tax_rate_details": TaxRateDetails,
}
amount: int
"""
The line item amount in the [smallest currency unit](https://docs.stripe.com/currencies#zero-decimal). If `tax_behavior=inclusive`, then this amount includes taxes. Otherwise, taxes were calculated on top of this amount.
"""
amount_tax: int
"""
The amount of tax calculated for this line item, in the [smallest currency unit](https://docs.stripe.com/currencies#zero-decimal).
"""
id: str
"""
Unique identifier for the object.
"""
livemode: bool
"""
Has the value `true` if the object exists in live mode or the value `false` if the object exists in test mode.
"""
metadata: Optional[Dict[str, str]]
"""
Set of [key-value pairs](https://docs.stripe.com/api/metadata) that you can attach to an object. This can be useful for storing additional information about the object in a structured format.
"""
object: Literal["tax.calculation_line_item"]
"""
String representing the object's type. Objects of the same type share the same value.
"""
product: Optional[str]
"""
The ID of an existing [Product](https://docs.stripe.com/api/products/object).
"""
quantity: int
"""
The number of units of the item being purchased. For reversals, this is the quantity reversed.
"""
reference: str
"""
A custom identifier for this line item.
"""
tax_behavior: Literal["exclusive", "inclusive"]
"""
Specifies whether the `amount` includes taxes. If `tax_behavior=inclusive`, then the amount includes taxes.
"""
tax_breakdown: Optional[List[TaxBreakdown]]
"""
Detailed account of taxes relevant to this line item.
"""
tax_code: str
"""
The [tax code](https://docs.stripe.com/tax/tax-categories) ID used for this resource.
"""
_inner_class_types = {"tax_breakdown": TaxBreakdown}
|