Files
Hotel-Booking/Backend/venv/lib/python3.12/site-packages/stripe/tax/_registration.py
Iliyan Angelov 0c59fe1173 updates
2025-11-17 18:26:30 +02:00

1407 lines
42 KiB
Python

# -*- coding: utf-8 -*-
# File generated from our OpenAPI spec
from stripe._createable_api_resource import CreateableAPIResource
from stripe._list_object import ListObject
from stripe._listable_api_resource import ListableAPIResource
from stripe._stripe_object import StripeObject
from stripe._updateable_api_resource import UpdateableAPIResource
from stripe._util import sanitize_id
from typing import ClassVar, List, Optional, cast
from typing_extensions import Literal, Unpack, TYPE_CHECKING
if TYPE_CHECKING:
from stripe.params.tax._registration_create_params import (
RegistrationCreateParams,
)
from stripe.params.tax._registration_list_params import (
RegistrationListParams,
)
from stripe.params.tax._registration_modify_params import (
RegistrationModifyParams,
)
from stripe.params.tax._registration_retrieve_params import (
RegistrationRetrieveParams,
)
class Registration(
CreateableAPIResource["Registration"],
ListableAPIResource["Registration"],
UpdateableAPIResource["Registration"],
):
"""
A Tax `Registration` lets us know that your business is registered to collect tax on payments within a region, enabling you to [automatically collect tax](https://stripe.com/docs/tax).
Stripe doesn't register on your behalf with the relevant authorities when you create a Tax `Registration` object. For more information on how to register to collect tax, see [our guide](https://stripe.com/docs/tax/registering).
Related guide: [Using the Registrations API](https://stripe.com/docs/tax/registrations-api)
"""
OBJECT_NAME: ClassVar[Literal["tax.registration"]] = "tax.registration"
class CountryOptions(StripeObject):
class Ae(StripeObject):
class Standard(StripeObject):
place_of_supply_scheme: Literal["inbound_goods", "standard"]
"""
Place of supply scheme used in an Default standard registration.
"""
standard: Optional[Standard]
type: Literal["standard"]
"""
Type of registration in `country`.
"""
_inner_class_types = {"standard": Standard}
class Al(StripeObject):
type: Literal["standard"]
"""
Type of registration in `country`.
"""
class Am(StripeObject):
type: Literal["simplified"]
"""
Type of registration in `country`.
"""
class Ao(StripeObject):
type: Literal["standard"]
"""
Type of registration in `country`.
"""
class At(StripeObject):
class Standard(StripeObject):
place_of_supply_scheme: Literal[
"inbound_goods", "small_seller", "standard"
]
"""
Place of supply scheme used in an EU standard registration.
"""
standard: Optional[Standard]
type: Literal["ioss", "oss_non_union", "oss_union", "standard"]
"""
Type of registration in an EU country.
"""
_inner_class_types = {"standard": Standard}
class Au(StripeObject):
class Standard(StripeObject):
place_of_supply_scheme: Literal["inbound_goods", "standard"]
"""
Place of supply scheme used in an Default standard registration.
"""
standard: Optional[Standard]
type: Literal["standard"]
"""
Type of registration in `country`.
"""
_inner_class_types = {"standard": Standard}
class Aw(StripeObject):
type: Literal["standard"]
"""
Type of registration in `country`.
"""
class Az(StripeObject):
type: Literal["simplified"]
"""
Type of registration in `country`.
"""
class Ba(StripeObject):
type: Literal["standard"]
"""
Type of registration in `country`.
"""
class Bb(StripeObject):
type: Literal["standard"]
"""
Type of registration in `country`.
"""
class Bd(StripeObject):
type: Literal["standard"]
"""
Type of registration in `country`.
"""
class Be(StripeObject):
class Standard(StripeObject):
place_of_supply_scheme: Literal[
"inbound_goods", "small_seller", "standard"
]
"""
Place of supply scheme used in an EU standard registration.
"""
standard: Optional[Standard]
type: Literal["ioss", "oss_non_union", "oss_union", "standard"]
"""
Type of registration in an EU country.
"""
_inner_class_types = {"standard": Standard}
class Bf(StripeObject):
type: Literal["standard"]
"""
Type of registration in `country`.
"""
class Bg(StripeObject):
class Standard(StripeObject):
place_of_supply_scheme: Literal[
"inbound_goods", "small_seller", "standard"
]
"""
Place of supply scheme used in an EU standard registration.
"""
standard: Optional[Standard]
type: Literal["ioss", "oss_non_union", "oss_union", "standard"]
"""
Type of registration in an EU country.
"""
_inner_class_types = {"standard": Standard}
class Bh(StripeObject):
type: Literal["standard"]
"""
Type of registration in `country`.
"""
class Bj(StripeObject):
type: Literal["simplified"]
"""
Type of registration in `country`.
"""
class Bs(StripeObject):
type: Literal["standard"]
"""
Type of registration in `country`.
"""
class By(StripeObject):
type: Literal["simplified"]
"""
Type of registration in `country`.
"""
class Ca(StripeObject):
class ProvinceStandard(StripeObject):
province: str
"""
Two-letter CA province code ([ISO 3166-2](https://en.wikipedia.org/wiki/ISO_3166-2)).
"""
province_standard: Optional[ProvinceStandard]
type: Literal["province_standard", "simplified", "standard"]
"""
Type of registration in Canada.
"""
_inner_class_types = {"province_standard": ProvinceStandard}
class Cd(StripeObject):
type: Literal["standard"]
"""
Type of registration in `country`.
"""
class Ch(StripeObject):
class Standard(StripeObject):
place_of_supply_scheme: Literal["inbound_goods", "standard"]
"""
Place of supply scheme used in an Default standard registration.
"""
standard: Optional[Standard]
type: Literal["standard"]
"""
Type of registration in `country`.
"""
_inner_class_types = {"standard": Standard}
class Cl(StripeObject):
type: Literal["simplified"]
"""
Type of registration in `country`.
"""
class Cm(StripeObject):
type: Literal["simplified"]
"""
Type of registration in `country`.
"""
class Co(StripeObject):
type: Literal["simplified"]
"""
Type of registration in `country`.
"""
class Cr(StripeObject):
type: Literal["simplified"]
"""
Type of registration in `country`.
"""
class Cv(StripeObject):
type: Literal["simplified"]
"""
Type of registration in `country`.
"""
class Cy(StripeObject):
class Standard(StripeObject):
place_of_supply_scheme: Literal[
"inbound_goods", "small_seller", "standard"
]
"""
Place of supply scheme used in an EU standard registration.
"""
standard: Optional[Standard]
type: Literal["ioss", "oss_non_union", "oss_union", "standard"]
"""
Type of registration in an EU country.
"""
_inner_class_types = {"standard": Standard}
class Cz(StripeObject):
class Standard(StripeObject):
place_of_supply_scheme: Literal[
"inbound_goods", "small_seller", "standard"
]
"""
Place of supply scheme used in an EU standard registration.
"""
standard: Optional[Standard]
type: Literal["ioss", "oss_non_union", "oss_union", "standard"]
"""
Type of registration in an EU country.
"""
_inner_class_types = {"standard": Standard}
class De(StripeObject):
class Standard(StripeObject):
place_of_supply_scheme: Literal[
"inbound_goods", "small_seller", "standard"
]
"""
Place of supply scheme used in an EU standard registration.
"""
standard: Optional[Standard]
type: Literal["ioss", "oss_non_union", "oss_union", "standard"]
"""
Type of registration in an EU country.
"""
_inner_class_types = {"standard": Standard}
class Dk(StripeObject):
class Standard(StripeObject):
place_of_supply_scheme: Literal[
"inbound_goods", "small_seller", "standard"
]
"""
Place of supply scheme used in an EU standard registration.
"""
standard: Optional[Standard]
type: Literal["ioss", "oss_non_union", "oss_union", "standard"]
"""
Type of registration in an EU country.
"""
_inner_class_types = {"standard": Standard}
class Ec(StripeObject):
type: Literal["simplified"]
"""
Type of registration in `country`.
"""
class Ee(StripeObject):
class Standard(StripeObject):
place_of_supply_scheme: Literal[
"inbound_goods", "small_seller", "standard"
]
"""
Place of supply scheme used in an EU standard registration.
"""
standard: Optional[Standard]
type: Literal["ioss", "oss_non_union", "oss_union", "standard"]
"""
Type of registration in an EU country.
"""
_inner_class_types = {"standard": Standard}
class Eg(StripeObject):
type: Literal["simplified"]
"""
Type of registration in `country`.
"""
class Es(StripeObject):
class Standard(StripeObject):
place_of_supply_scheme: Literal[
"inbound_goods", "small_seller", "standard"
]
"""
Place of supply scheme used in an EU standard registration.
"""
standard: Optional[Standard]
type: Literal["ioss", "oss_non_union", "oss_union", "standard"]
"""
Type of registration in an EU country.
"""
_inner_class_types = {"standard": Standard}
class Et(StripeObject):
type: Literal["standard"]
"""
Type of registration in `country`.
"""
class Fi(StripeObject):
class Standard(StripeObject):
place_of_supply_scheme: Literal[
"inbound_goods", "small_seller", "standard"
]
"""
Place of supply scheme used in an EU standard registration.
"""
standard: Optional[Standard]
type: Literal["ioss", "oss_non_union", "oss_union", "standard"]
"""
Type of registration in an EU country.
"""
_inner_class_types = {"standard": Standard}
class Fr(StripeObject):
class Standard(StripeObject):
place_of_supply_scheme: Literal[
"inbound_goods", "small_seller", "standard"
]
"""
Place of supply scheme used in an EU standard registration.
"""
standard: Optional[Standard]
type: Literal["ioss", "oss_non_union", "oss_union", "standard"]
"""
Type of registration in an EU country.
"""
_inner_class_types = {"standard": Standard}
class Gb(StripeObject):
class Standard(StripeObject):
place_of_supply_scheme: Literal["inbound_goods", "standard"]
"""
Place of supply scheme used in an Default standard registration.
"""
standard: Optional[Standard]
type: Literal["standard"]
"""
Type of registration in `country`.
"""
_inner_class_types = {"standard": Standard}
class Ge(StripeObject):
type: Literal["simplified"]
"""
Type of registration in `country`.
"""
class Gn(StripeObject):
type: Literal["standard"]
"""
Type of registration in `country`.
"""
class Gr(StripeObject):
class Standard(StripeObject):
place_of_supply_scheme: Literal[
"inbound_goods", "small_seller", "standard"
]
"""
Place of supply scheme used in an EU standard registration.
"""
standard: Optional[Standard]
type: Literal["ioss", "oss_non_union", "oss_union", "standard"]
"""
Type of registration in an EU country.
"""
_inner_class_types = {"standard": Standard}
class Hr(StripeObject):
class Standard(StripeObject):
place_of_supply_scheme: Literal[
"inbound_goods", "small_seller", "standard"
]
"""
Place of supply scheme used in an EU standard registration.
"""
standard: Optional[Standard]
type: Literal["ioss", "oss_non_union", "oss_union", "standard"]
"""
Type of registration in an EU country.
"""
_inner_class_types = {"standard": Standard}
class Hu(StripeObject):
class Standard(StripeObject):
place_of_supply_scheme: Literal[
"inbound_goods", "small_seller", "standard"
]
"""
Place of supply scheme used in an EU standard registration.
"""
standard: Optional[Standard]
type: Literal["ioss", "oss_non_union", "oss_union", "standard"]
"""
Type of registration in an EU country.
"""
_inner_class_types = {"standard": Standard}
class Id(StripeObject):
type: Literal["simplified"]
"""
Type of registration in `country`.
"""
class Ie(StripeObject):
class Standard(StripeObject):
place_of_supply_scheme: Literal[
"inbound_goods", "small_seller", "standard"
]
"""
Place of supply scheme used in an EU standard registration.
"""
standard: Optional[Standard]
type: Literal["ioss", "oss_non_union", "oss_union", "standard"]
"""
Type of registration in an EU country.
"""
_inner_class_types = {"standard": Standard}
class In(StripeObject):
type: Literal["simplified"]
"""
Type of registration in `country`.
"""
class Is(StripeObject):
type: Literal["standard"]
"""
Type of registration in `country`.
"""
class It(StripeObject):
class Standard(StripeObject):
place_of_supply_scheme: Literal[
"inbound_goods", "small_seller", "standard"
]
"""
Place of supply scheme used in an EU standard registration.
"""
standard: Optional[Standard]
type: Literal["ioss", "oss_non_union", "oss_union", "standard"]
"""
Type of registration in an EU country.
"""
_inner_class_types = {"standard": Standard}
class Jp(StripeObject):
class Standard(StripeObject):
place_of_supply_scheme: Literal["inbound_goods", "standard"]
"""
Place of supply scheme used in an Default standard registration.
"""
standard: Optional[Standard]
type: Literal["standard"]
"""
Type of registration in `country`.
"""
_inner_class_types = {"standard": Standard}
class Ke(StripeObject):
type: Literal["simplified"]
"""
Type of registration in `country`.
"""
class Kg(StripeObject):
type: Literal["simplified"]
"""
Type of registration in `country`.
"""
class Kh(StripeObject):
type: Literal["simplified"]
"""
Type of registration in `country`.
"""
class Kr(StripeObject):
type: Literal["simplified"]
"""
Type of registration in `country`.
"""
class Kz(StripeObject):
type: Literal["simplified"]
"""
Type of registration in `country`.
"""
class La(StripeObject):
type: Literal["simplified"]
"""
Type of registration in `country`.
"""
class Lt(StripeObject):
class Standard(StripeObject):
place_of_supply_scheme: Literal[
"inbound_goods", "small_seller", "standard"
]
"""
Place of supply scheme used in an EU standard registration.
"""
standard: Optional[Standard]
type: Literal["ioss", "oss_non_union", "oss_union", "standard"]
"""
Type of registration in an EU country.
"""
_inner_class_types = {"standard": Standard}
class Lu(StripeObject):
class Standard(StripeObject):
place_of_supply_scheme: Literal[
"inbound_goods", "small_seller", "standard"
]
"""
Place of supply scheme used in an EU standard registration.
"""
standard: Optional[Standard]
type: Literal["ioss", "oss_non_union", "oss_union", "standard"]
"""
Type of registration in an EU country.
"""
_inner_class_types = {"standard": Standard}
class Lv(StripeObject):
class Standard(StripeObject):
place_of_supply_scheme: Literal[
"inbound_goods", "small_seller", "standard"
]
"""
Place of supply scheme used in an EU standard registration.
"""
standard: Optional[Standard]
type: Literal["ioss", "oss_non_union", "oss_union", "standard"]
"""
Type of registration in an EU country.
"""
_inner_class_types = {"standard": Standard}
class Ma(StripeObject):
type: Literal["simplified"]
"""
Type of registration in `country`.
"""
class Md(StripeObject):
type: Literal["simplified"]
"""
Type of registration in `country`.
"""
class Me(StripeObject):
type: Literal["standard"]
"""
Type of registration in `country`.
"""
class Mk(StripeObject):
type: Literal["standard"]
"""
Type of registration in `country`.
"""
class Mr(StripeObject):
type: Literal["standard"]
"""
Type of registration in `country`.
"""
class Mt(StripeObject):
class Standard(StripeObject):
place_of_supply_scheme: Literal[
"inbound_goods", "small_seller", "standard"
]
"""
Place of supply scheme used in an EU standard registration.
"""
standard: Optional[Standard]
type: Literal["ioss", "oss_non_union", "oss_union", "standard"]
"""
Type of registration in an EU country.
"""
_inner_class_types = {"standard": Standard}
class Mx(StripeObject):
type: Literal["simplified"]
"""
Type of registration in `country`.
"""
class My(StripeObject):
type: Literal["simplified"]
"""
Type of registration in `country`.
"""
class Ng(StripeObject):
type: Literal["simplified"]
"""
Type of registration in `country`.
"""
class Nl(StripeObject):
class Standard(StripeObject):
place_of_supply_scheme: Literal[
"inbound_goods", "small_seller", "standard"
]
"""
Place of supply scheme used in an EU standard registration.
"""
standard: Optional[Standard]
type: Literal["ioss", "oss_non_union", "oss_union", "standard"]
"""
Type of registration in an EU country.
"""
_inner_class_types = {"standard": Standard}
class No(StripeObject):
class Standard(StripeObject):
place_of_supply_scheme: Literal["inbound_goods", "standard"]
"""
Place of supply scheme used in an Default standard registration.
"""
standard: Optional[Standard]
type: Literal["standard"]
"""
Type of registration in `country`.
"""
_inner_class_types = {"standard": Standard}
class Np(StripeObject):
type: Literal["simplified"]
"""
Type of registration in `country`.
"""
class Nz(StripeObject):
class Standard(StripeObject):
place_of_supply_scheme: Literal["inbound_goods", "standard"]
"""
Place of supply scheme used in an Default standard registration.
"""
standard: Optional[Standard]
type: Literal["standard"]
"""
Type of registration in `country`.
"""
_inner_class_types = {"standard": Standard}
class Om(StripeObject):
type: Literal["standard"]
"""
Type of registration in `country`.
"""
class Pe(StripeObject):
type: Literal["simplified"]
"""
Type of registration in `country`.
"""
class Ph(StripeObject):
type: Literal["simplified"]
"""
Type of registration in `country`.
"""
class Pl(StripeObject):
class Standard(StripeObject):
place_of_supply_scheme: Literal[
"inbound_goods", "small_seller", "standard"
]
"""
Place of supply scheme used in an EU standard registration.
"""
standard: Optional[Standard]
type: Literal["ioss", "oss_non_union", "oss_union", "standard"]
"""
Type of registration in an EU country.
"""
_inner_class_types = {"standard": Standard}
class Pt(StripeObject):
class Standard(StripeObject):
place_of_supply_scheme: Literal[
"inbound_goods", "small_seller", "standard"
]
"""
Place of supply scheme used in an EU standard registration.
"""
standard: Optional[Standard]
type: Literal["ioss", "oss_non_union", "oss_union", "standard"]
"""
Type of registration in an EU country.
"""
_inner_class_types = {"standard": Standard}
class Ro(StripeObject):
class Standard(StripeObject):
place_of_supply_scheme: Literal[
"inbound_goods", "small_seller", "standard"
]
"""
Place of supply scheme used in an EU standard registration.
"""
standard: Optional[Standard]
type: Literal["ioss", "oss_non_union", "oss_union", "standard"]
"""
Type of registration in an EU country.
"""
_inner_class_types = {"standard": Standard}
class Rs(StripeObject):
type: Literal["standard"]
"""
Type of registration in `country`.
"""
class Ru(StripeObject):
type: Literal["simplified"]
"""
Type of registration in `country`.
"""
class Sa(StripeObject):
type: Literal["simplified"]
"""
Type of registration in `country`.
"""
class Se(StripeObject):
class Standard(StripeObject):
place_of_supply_scheme: Literal[
"inbound_goods", "small_seller", "standard"
]
"""
Place of supply scheme used in an EU standard registration.
"""
standard: Optional[Standard]
type: Literal["ioss", "oss_non_union", "oss_union", "standard"]
"""
Type of registration in an EU country.
"""
_inner_class_types = {"standard": Standard}
class Sg(StripeObject):
class Standard(StripeObject):
place_of_supply_scheme: Literal["inbound_goods", "standard"]
"""
Place of supply scheme used in an Default standard registration.
"""
standard: Optional[Standard]
type: Literal["standard"]
"""
Type of registration in `country`.
"""
_inner_class_types = {"standard": Standard}
class Si(StripeObject):
class Standard(StripeObject):
place_of_supply_scheme: Literal[
"inbound_goods", "small_seller", "standard"
]
"""
Place of supply scheme used in an EU standard registration.
"""
standard: Optional[Standard]
type: Literal["ioss", "oss_non_union", "oss_union", "standard"]
"""
Type of registration in an EU country.
"""
_inner_class_types = {"standard": Standard}
class Sk(StripeObject):
class Standard(StripeObject):
place_of_supply_scheme: Literal[
"inbound_goods", "small_seller", "standard"
]
"""
Place of supply scheme used in an EU standard registration.
"""
standard: Optional[Standard]
type: Literal["ioss", "oss_non_union", "oss_union", "standard"]
"""
Type of registration in an EU country.
"""
_inner_class_types = {"standard": Standard}
class Sn(StripeObject):
type: Literal["simplified"]
"""
Type of registration in `country`.
"""
class Sr(StripeObject):
type: Literal["standard"]
"""
Type of registration in `country`.
"""
class Th(StripeObject):
type: Literal["simplified"]
"""
Type of registration in `country`.
"""
class Tj(StripeObject):
type: Literal["simplified"]
"""
Type of registration in `country`.
"""
class Tr(StripeObject):
type: Literal["simplified"]
"""
Type of registration in `country`.
"""
class Tw(StripeObject):
type: Literal["simplified"]
"""
Type of registration in `country`.
"""
class Tz(StripeObject):
type: Literal["simplified"]
"""
Type of registration in `country`.
"""
class Ua(StripeObject):
type: Literal["simplified"]
"""
Type of registration in `country`.
"""
class Ug(StripeObject):
type: Literal["simplified"]
"""
Type of registration in `country`.
"""
class Us(StripeObject):
class LocalAmusementTax(StripeObject):
jurisdiction: str
"""
A [FIPS code](https://www.census.gov/library/reference/code-lists/ansi.html) representing the local jurisdiction.
"""
class LocalLeaseTax(StripeObject):
jurisdiction: str
"""
A [FIPS code](https://www.census.gov/library/reference/code-lists/ansi.html) representing the local jurisdiction.
"""
class StateSalesTax(StripeObject):
class Election(StripeObject):
jurisdiction: Optional[str]
"""
A [FIPS code](https://www.census.gov/library/reference/code-lists/ansi.html) representing the local jurisdiction.
"""
type: Literal[
"local_use_tax",
"simplified_sellers_use_tax",
"single_local_use_tax",
]
"""
The type of the election for the state sales tax registration.
"""
elections: Optional[List[Election]]
"""
Elections for the state sales tax registration.
"""
_inner_class_types = {"elections": Election}
local_amusement_tax: Optional[LocalAmusementTax]
local_lease_tax: Optional[LocalLeaseTax]
state: str
"""
Two-letter US state code ([ISO 3166-2](https://en.wikipedia.org/wiki/ISO_3166-2)).
"""
state_sales_tax: Optional[StateSalesTax]
type: Literal[
"local_amusement_tax",
"local_lease_tax",
"state_communications_tax",
"state_retail_delivery_fee",
"state_sales_tax",
]
"""
Type of registration in the US.
"""
_inner_class_types = {
"local_amusement_tax": LocalAmusementTax,
"local_lease_tax": LocalLeaseTax,
"state_sales_tax": StateSalesTax,
}
class Uy(StripeObject):
type: Literal["standard"]
"""
Type of registration in `country`.
"""
class Uz(StripeObject):
type: Literal["simplified"]
"""
Type of registration in `country`.
"""
class Vn(StripeObject):
type: Literal["simplified"]
"""
Type of registration in `country`.
"""
class Za(StripeObject):
type: Literal["standard"]
"""
Type of registration in `country`.
"""
class Zm(StripeObject):
type: Literal["simplified"]
"""
Type of registration in `country`.
"""
class Zw(StripeObject):
type: Literal["standard"]
"""
Type of registration in `country`.
"""
ae: Optional[Ae]
al: Optional[Al]
am: Optional[Am]
ao: Optional[Ao]
at: Optional[At]
au: Optional[Au]
aw: Optional[Aw]
az: Optional[Az]
ba: Optional[Ba]
bb: Optional[Bb]
bd: Optional[Bd]
be: Optional[Be]
bf: Optional[Bf]
bg: Optional[Bg]
bh: Optional[Bh]
bj: Optional[Bj]
bs: Optional[Bs]
by: Optional[By]
ca: Optional[Ca]
cd: Optional[Cd]
ch: Optional[Ch]
cl: Optional[Cl]
cm: Optional[Cm]
co: Optional[Co]
cr: Optional[Cr]
cv: Optional[Cv]
cy: Optional[Cy]
cz: Optional[Cz]
de: Optional[De]
dk: Optional[Dk]
ec: Optional[Ec]
ee: Optional[Ee]
eg: Optional[Eg]
es: Optional[Es]
et: Optional[Et]
fi: Optional[Fi]
fr: Optional[Fr]
gb: Optional[Gb]
ge: Optional[Ge]
gn: Optional[Gn]
gr: Optional[Gr]
hr: Optional[Hr]
hu: Optional[Hu]
id: Optional[Id]
ie: Optional[Ie]
in_: Optional[In]
is_: Optional[Is]
it: Optional[It]
jp: Optional[Jp]
ke: Optional[Ke]
kg: Optional[Kg]
kh: Optional[Kh]
kr: Optional[Kr]
kz: Optional[Kz]
la: Optional[La]
lt: Optional[Lt]
lu: Optional[Lu]
lv: Optional[Lv]
ma: Optional[Ma]
md: Optional[Md]
me: Optional[Me]
mk: Optional[Mk]
mr: Optional[Mr]
mt: Optional[Mt]
mx: Optional[Mx]
my: Optional[My]
ng: Optional[Ng]
nl: Optional[Nl]
no: Optional[No]
np: Optional[Np]
nz: Optional[Nz]
om: Optional[Om]
pe: Optional[Pe]
ph: Optional[Ph]
pl: Optional[Pl]
pt: Optional[Pt]
ro: Optional[Ro]
rs: Optional[Rs]
ru: Optional[Ru]
sa: Optional[Sa]
se: Optional[Se]
sg: Optional[Sg]
si: Optional[Si]
sk: Optional[Sk]
sn: Optional[Sn]
sr: Optional[Sr]
th: Optional[Th]
tj: Optional[Tj]
tr: Optional[Tr]
tw: Optional[Tw]
tz: Optional[Tz]
ua: Optional[Ua]
ug: Optional[Ug]
us: Optional[Us]
uy: Optional[Uy]
uz: Optional[Uz]
vn: Optional[Vn]
za: Optional[Za]
zm: Optional[Zm]
zw: Optional[Zw]
_inner_class_types = {
"ae": Ae,
"al": Al,
"am": Am,
"ao": Ao,
"at": At,
"au": Au,
"aw": Aw,
"az": Az,
"ba": Ba,
"bb": Bb,
"bd": Bd,
"be": Be,
"bf": Bf,
"bg": Bg,
"bh": Bh,
"bj": Bj,
"bs": Bs,
"by": By,
"ca": Ca,
"cd": Cd,
"ch": Ch,
"cl": Cl,
"cm": Cm,
"co": Co,
"cr": Cr,
"cv": Cv,
"cy": Cy,
"cz": Cz,
"de": De,
"dk": Dk,
"ec": Ec,
"ee": Ee,
"eg": Eg,
"es": Es,
"et": Et,
"fi": Fi,
"fr": Fr,
"gb": Gb,
"ge": Ge,
"gn": Gn,
"gr": Gr,
"hr": Hr,
"hu": Hu,
"id": Id,
"ie": Ie,
"in": In,
"is": Is,
"it": It,
"jp": Jp,
"ke": Ke,
"kg": Kg,
"kh": Kh,
"kr": Kr,
"kz": Kz,
"la": La,
"lt": Lt,
"lu": Lu,
"lv": Lv,
"ma": Ma,
"md": Md,
"me": Me,
"mk": Mk,
"mr": Mr,
"mt": Mt,
"mx": Mx,
"my": My,
"ng": Ng,
"nl": Nl,
"no": No,
"np": Np,
"nz": Nz,
"om": Om,
"pe": Pe,
"ph": Ph,
"pl": Pl,
"pt": Pt,
"ro": Ro,
"rs": Rs,
"ru": Ru,
"sa": Sa,
"se": Se,
"sg": Sg,
"si": Si,
"sk": Sk,
"sn": Sn,
"sr": Sr,
"th": Th,
"tj": Tj,
"tr": Tr,
"tw": Tw,
"tz": Tz,
"ua": Ua,
"ug": Ug,
"us": Us,
"uy": Uy,
"uz": Uz,
"vn": Vn,
"za": Za,
"zm": Zm,
"zw": Zw,
}
_field_remappings = {"in_": "in", "is_": "is"}
active_from: int
"""
Time at which the registration becomes active. Measured in seconds since the Unix epoch.
"""
country: str
"""
Two-letter country code ([ISO 3166-1 alpha-2](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2)).
"""
country_options: CountryOptions
created: int
"""
Time at which the object was created. Measured in seconds since the Unix epoch.
"""
expires_at: Optional[int]
"""
If set, the registration stops being active at this time. If not set, the registration will be active indefinitely. Measured in seconds since the Unix epoch.
"""
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.
"""
object: Literal["tax.registration"]
"""
String representing the object's type. Objects of the same type share the same value.
"""
status: Literal["active", "expired", "scheduled"]
"""
The status of the registration. This field is present for convenience and can be deduced from `active_from` and `expires_at`.
"""
@classmethod
def create(
cls, **params: Unpack["RegistrationCreateParams"]
) -> "Registration":
"""
Creates a new Tax Registration object.
"""
return cast(
"Registration",
cls._static_request(
"post",
cls.class_url(),
params=params,
),
)
@classmethod
async def create_async(
cls, **params: Unpack["RegistrationCreateParams"]
) -> "Registration":
"""
Creates a new Tax Registration object.
"""
return cast(
"Registration",
await cls._static_request_async(
"post",
cls.class_url(),
params=params,
),
)
@classmethod
def list(
cls, **params: Unpack["RegistrationListParams"]
) -> ListObject["Registration"]:
"""
Returns a list of Tax Registration objects.
"""
result = cls._static_request(
"get",
cls.class_url(),
params=params,
)
if not isinstance(result, ListObject):
raise TypeError(
"Expected list object from API, got %s"
% (type(result).__name__)
)
return result
@classmethod
async def list_async(
cls, **params: Unpack["RegistrationListParams"]
) -> ListObject["Registration"]:
"""
Returns a list of Tax Registration objects.
"""
result = await cls._static_request_async(
"get",
cls.class_url(),
params=params,
)
if not isinstance(result, ListObject):
raise TypeError(
"Expected list object from API, got %s"
% (type(result).__name__)
)
return result
@classmethod
def modify(
cls, id: str, **params: Unpack["RegistrationModifyParams"]
) -> "Registration":
"""
Updates an existing Tax Registration object.
A registration cannot be deleted after it has been created. If you wish to end a registration you may do so by setting expires_at.
"""
url = "%s/%s" % (cls.class_url(), sanitize_id(id))
return cast(
"Registration",
cls._static_request(
"post",
url,
params=params,
),
)
@classmethod
async def modify_async(
cls, id: str, **params: Unpack["RegistrationModifyParams"]
) -> "Registration":
"""
Updates an existing Tax Registration object.
A registration cannot be deleted after it has been created. If you wish to end a registration you may do so by setting expires_at.
"""
url = "%s/%s" % (cls.class_url(), sanitize_id(id))
return cast(
"Registration",
await cls._static_request_async(
"post",
url,
params=params,
),
)
@classmethod
def retrieve(
cls, id: str, **params: Unpack["RegistrationRetrieveParams"]
) -> "Registration":
"""
Returns a Tax Registration object.
"""
instance = cls(id, **params)
instance.refresh()
return instance
@classmethod
async def retrieve_async(
cls, id: str, **params: Unpack["RegistrationRetrieveParams"]
) -> "Registration":
"""
Returns a Tax Registration object.
"""
instance = cls(id, **params)
await instance.refresh_async()
return instance
_inner_class_types = {"country_options": CountryOptions}