| All Verbs | /stripe-session/{Id} |
|---|
import datetime
import decimal
from marshmallow.fields import *
from servicestack import *
from typing import *
from dataclasses import dataclass, field
from dataclasses_json import dataclass_json, LetterCase, Undefined, config
from enum import Enum, IntEnum
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class StripeEntity(IStripeEntity):
pass
T = TypeVar('T')
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class StripeEntity1(Generic[T], StripeEntity):
pass
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionAfterExpirationRecovery(StripeEntity1["SessionAfterExpirationRecovery"]):
allow_promotion_codes: bool = False
enabled: bool = False
expires_at: Optional[datetime.datetime] = None
url: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionAfterExpiration(StripeEntity1["SessionAfterExpiration"]):
recovery: Optional[SessionAfterExpirationRecovery] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionAutomaticTax(StripeEntity1["SessionAutomaticTax"]):
enabled: bool = False
status: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionConsent(StripeEntity1["SessionConsent"]):
promotions: Optional[str] = None
terms_of_service: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionConsentCollection(StripeEntity1["SessionConsentCollection"]):
promotions: Optional[str] = None
terms_of_service: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionCustomFieldDropdownOption(StripeEntity1["SessionCustomFieldDropdownOption"]):
label: Optional[str] = None
value: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionCustomFieldDropdown(StripeEntity1["SessionCustomFieldDropdown"]):
options: Optional[List[SessionCustomFieldDropdownOption]] = None
value: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionCustomFieldLabel(StripeEntity1["SessionCustomFieldLabel"]):
custom: Optional[str] = None
type: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionCustomFieldNumeric(StripeEntity1["SessionCustomFieldNumeric"]):
value: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionCustomFieldText(StripeEntity1["SessionCustomFieldText"]):
value: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionCustomField(StripeEntity1["SessionCustomField"]):
dropdown: Optional[SessionCustomFieldDropdown] = None
key: Optional[str] = None
label: Optional[SessionCustomFieldLabel] = None
numeric: Optional[SessionCustomFieldNumeric] = None
optional: bool = False
text: Optional[SessionCustomFieldText] = None
type: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionCustomTextShippingAddress(StripeEntity1["SessionCustomTextShippingAddress"]):
message: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionCustomTextSubmit(StripeEntity1["SessionCustomTextSubmit"]):
message: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionCustomText(StripeEntity1["SessionCustomText"]):
shipping_address: Optional[SessionCustomTextShippingAddress] = None
submit: Optional[SessionCustomTextSubmit] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class Address(StripeEntity1["Address"]):
city: Optional[str] = None
country: Optional[str] = None
line1: Optional[str] = None
line2: Optional[str] = None
postal_code: Optional[str] = None
state: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionCustomerDetailsTaxId(StripeEntity1["SessionCustomerDetailsTaxId"]):
type: Optional[str] = None
value: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionCustomerDetails(StripeEntity1["SessionCustomerDetails"]):
address: Optional[Address] = None
email: Optional[str] = None
name: Optional[str] = None
phone: Optional[str] = None
tax_exempt: Optional[str] = None
tax_ids: Optional[List[SessionCustomerDetailsTaxId]] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionInvoiceCreationInvoiceDataCustomField(StripeEntity1["SessionInvoiceCreationInvoiceDataCustomField"]):
name: Optional[str] = None
value: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionInvoiceCreationInvoiceDataRenderingOptions(StripeEntity1["SessionInvoiceCreationInvoiceDataRenderingOptions"]):
amount_tax_display: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionInvoiceCreationInvoiceData(StripeEntity1["SessionInvoiceCreationInvoiceData"], IHasMetadata):
custom_fields: Optional[List[SessionInvoiceCreationInvoiceDataCustomField]] = None
description: Optional[str] = None
footer: Optional[str] = None
metadata: Optional[Dict[str, str]] = None
rendering_options: Optional[SessionInvoiceCreationInvoiceDataRenderingOptions] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionInvoiceCreation(StripeEntity1["SessionInvoiceCreation"]):
enabled: bool = False
invoice_data: Optional[SessionInvoiceCreationInvoiceData] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class CouponAppliesTo(StripeEntity1["CouponAppliesTo"]):
products: Optional[List[str]] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class CouponCurrencyOptions(StripeEntity1["CouponCurrencyOptions"]):
amount_off: int = 0
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class Coupon(StripeEntity1["Coupon"], IHasId, IHasMetadata, IHasObject):
id: Optional[str] = None
object: Optional[str] = None
amount_off: Optional[int] = None
applies_to: Optional[CouponAppliesTo] = None
created: datetime.datetime = datetime.datetime(1, 1, 1)
currency: Optional[str] = None
currency_options: Optional[Dict[str, CouponCurrencyOptions]] = None
deleted: Optional[bool] = None
duration: Optional[str] = None
duration_in_months: Optional[int] = None
livemode: bool = False
max_redemptions: Optional[int] = None
metadata: Optional[Dict[str, str]] = None
name: Optional[str] = None
percent_off: Optional[Decimal] = None
redeem_by: Optional[datetime.datetime] = None
times_redeemed: int = 0
valid: bool = False
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class Discount(StripeEntity1["Discount"], IHasId, IHasObject):
id: Optional[str] = None
object: Optional[str] = None
checkout_session: Optional[str] = None
coupon: Optional[Coupon] = None
deleted: Optional[bool] = None
end: Optional[datetime.datetime] = None
invoice: Optional[str] = None
invoice_item: Optional[str] = None
start: Optional[datetime.datetime] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class LineItemDiscount(StripeEntity1["LineItemDiscount"]):
amount: int = 0
discount: Optional[Discount] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class PriceCurrencyOptionsCustomUnitAmount(StripeEntity1["PriceCurrencyOptionsCustomUnitAmount"]):
maximum: Optional[int] = None
minimum: Optional[int] = None
preset: Optional[int] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class PriceCurrencyOptionsTier(StripeEntity1["PriceCurrencyOptionsTier"]):
flat_amount: Optional[int] = None
flat_amount_decimal: Optional[Decimal] = None
unit_amount: Optional[int] = None
unit_amount_decimal: Optional[Decimal] = None
up_to: Optional[int] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class PriceCurrencyOptions(StripeEntity1["PriceCurrencyOptions"]):
custom_unit_amount: Optional[PriceCurrencyOptionsCustomUnitAmount] = None
tax_behavior: Optional[str] = None
tiers: Optional[List[PriceCurrencyOptionsTier]] = None
unit_amount: Optional[int] = None
unit_amount_decimal: Optional[Decimal] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class PriceCustomUnitAmount(StripeEntity1["PriceCustomUnitAmount"]):
maximum: Optional[int] = None
minimum: Optional[int] = None
preset: Optional[int] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class PriceRecurring(StripeEntity1["PriceRecurring"]):
aggregate_usage: Optional[str] = None
interval: Optional[str] = None
interval_count: int = 0
trial_period_days: Optional[int] = None
usage_type: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class PriceTier(StripeEntity1["PriceTier"]):
flat_amount: Optional[int] = None
flat_amount_decimal: Optional[Decimal] = None
unit_amount: Optional[int] = None
unit_amount_decimal: Optional[Decimal] = None
up_to: Optional[int] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class PriceTransformQuantity(StripeEntity1["PriceTransformQuantity"]):
divide_by: int = 0
round: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class Price(StripeEntity1["Price"], IHasId, IHasMetadata, IHasObject):
id: Optional[str] = None
object: Optional[str] = None
active: bool = False
billing_scheme: Optional[str] = None
created: datetime.datetime = datetime.datetime(1, 1, 1)
currency: Optional[str] = None
currency_options: Optional[Dict[str, PriceCurrencyOptions]] = None
custom_unit_amount: Optional[PriceCustomUnitAmount] = None
deleted: Optional[bool] = None
livemode: bool = False
lookup_key: Optional[str] = None
metadata: Optional[Dict[str, str]] = None
nickname: Optional[str] = None
recurring: Optional[PriceRecurring] = None
tax_behavior: Optional[str] = None
tiers: Optional[List[PriceTier]] = None
tiers_mode: Optional[str] = None
transform_quantity: Optional[PriceTransformQuantity] = None
type: Optional[str] = None
unit_amount: Optional[int] = None
unit_amount_decimal: Optional[Decimal] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class TaxRate(StripeEntity1["TaxRate"], IHasId, IHasMetadata, IHasObject):
id: Optional[str] = None
object: Optional[str] = None
active: bool = False
country: Optional[str] = None
created: datetime.datetime = datetime.datetime(1, 1, 1)
description: Optional[str] = None
display_name: Optional[str] = None
inclusive: bool = False
jurisdiction: Optional[str] = None
livemode: bool = False
metadata: Optional[Dict[str, str]] = None
percentage: Decimal = decimal.Decimal(0)
state: Optional[str] = None
tax_type: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class LineItemTax(StripeEntity1["LineItemTax"]):
amount: int = 0
rate: Optional[TaxRate] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class LineItem(StripeEntity1["LineItem"], IHasId, IHasObject):
id: Optional[str] = None
object: Optional[str] = None
amount_discount: int = 0
amount_subtotal: int = 0
amount_tax: int = 0
amount_total: int = 0
currency: Optional[str] = None
deleted: Optional[bool] = None
description: Optional[str] = None
discounts: Optional[List[LineItemDiscount]] = None
price: Optional[Price] = None
quantity: Optional[int] = None
taxes: Optional[List[LineItemTax]] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionPaymentMethodOptionsAcssDebitMandateOptions(StripeEntity1["SessionPaymentMethodOptionsAcssDebitMandateOptions"]):
custom_mandate_url: Optional[str] = None
default_for: Optional[List[str]] = None
interval_description: Optional[str] = None
payment_schedule: Optional[str] = None
transaction_type: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionPaymentMethodOptionsAcssDebit(StripeEntity1["SessionPaymentMethodOptionsAcssDebit"]):
currency: Optional[str] = None
mandate_options: Optional[SessionPaymentMethodOptionsAcssDebitMandateOptions] = None
setup_future_usage: Optional[str] = None
verification_method: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionPaymentMethodOptionsAffirm(StripeEntity1["SessionPaymentMethodOptionsAffirm"]):
setup_future_usage: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionPaymentMethodOptionsAfterpayClearpay(StripeEntity1["SessionPaymentMethodOptionsAfterpayClearpay"]):
setup_future_usage: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionPaymentMethodOptionsAlipay(StripeEntity1["SessionPaymentMethodOptionsAlipay"]):
setup_future_usage: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionPaymentMethodOptionsAuBecsDebit(StripeEntity1["SessionPaymentMethodOptionsAuBecsDebit"]):
setup_future_usage: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionPaymentMethodOptionsBacsDebit(StripeEntity1["SessionPaymentMethodOptionsBacsDebit"]):
setup_future_usage: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionPaymentMethodOptionsBancontact(StripeEntity1["SessionPaymentMethodOptionsBancontact"]):
setup_future_usage: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionPaymentMethodOptionsBoleto(StripeEntity1["SessionPaymentMethodOptionsBoleto"]):
expires_after_days: int = 0
setup_future_usage: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionPaymentMethodOptionsCardInstallments(StripeEntity1["SessionPaymentMethodOptionsCardInstallments"]):
enabled: bool = False
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionPaymentMethodOptionsCard(StripeEntity1["SessionPaymentMethodOptionsCard"]):
installments: Optional[SessionPaymentMethodOptionsCardInstallments] = None
setup_future_usage: Optional[str] = None
statement_descriptor_suffix_kana: Optional[str] = None
statement_descriptor_suffix_kanji: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionPaymentMethodOptionsCustomerBalanceBankTransferEuBankTransfer(StripeEntity1["SessionPaymentMethodOptionsCustomerBalanceBankTransferEuBankTransfer"]):
country: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionPaymentMethodOptionsCustomerBalanceBankTransfer(StripeEntity1["SessionPaymentMethodOptionsCustomerBalanceBankTransfer"]):
eu_bank_transfer: Optional[SessionPaymentMethodOptionsCustomerBalanceBankTransferEuBankTransfer] = None
requested_address_types: Optional[List[str]] = None
type: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionPaymentMethodOptionsCustomerBalance(StripeEntity1["SessionPaymentMethodOptionsCustomerBalance"]):
bank_transfer: Optional[SessionPaymentMethodOptionsCustomerBalanceBankTransfer] = None
funding_type: Optional[str] = None
setup_future_usage: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionPaymentMethodOptionsEps(StripeEntity1["SessionPaymentMethodOptionsEps"]):
setup_future_usage: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionPaymentMethodOptionsFpx(StripeEntity1["SessionPaymentMethodOptionsFpx"]):
setup_future_usage: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionPaymentMethodOptionsGiropay(StripeEntity1["SessionPaymentMethodOptionsGiropay"]):
setup_future_usage: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionPaymentMethodOptionsGrabpay(StripeEntity1["SessionPaymentMethodOptionsGrabpay"]):
setup_future_usage: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionPaymentMethodOptionsIdeal(StripeEntity1["SessionPaymentMethodOptionsIdeal"]):
setup_future_usage: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionPaymentMethodOptionsKlarna(StripeEntity1["SessionPaymentMethodOptionsKlarna"]):
setup_future_usage: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionPaymentMethodOptionsKonbini(StripeEntity1["SessionPaymentMethodOptionsKonbini"]):
expires_after_days: Optional[int] = None
setup_future_usage: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionPaymentMethodOptionsOxxo(StripeEntity1["SessionPaymentMethodOptionsOxxo"]):
expires_after_days: int = 0
setup_future_usage: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionPaymentMethodOptionsP24(StripeEntity1["SessionPaymentMethodOptionsP24"]):
setup_future_usage: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionPaymentMethodOptionsPaynow(StripeEntity1["SessionPaymentMethodOptionsPaynow"]):
setup_future_usage: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionPaymentMethodOptionsPix(StripeEntity1["SessionPaymentMethodOptionsPix"]):
expires_after_seconds: Optional[int] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionPaymentMethodOptionsSepaDebit(StripeEntity1["SessionPaymentMethodOptionsSepaDebit"]):
setup_future_usage: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionPaymentMethodOptionsSofort(StripeEntity1["SessionPaymentMethodOptionsSofort"]):
setup_future_usage: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionPaymentMethodOptionsUsBankAccountFinancialConnections(StripeEntity1["SessionPaymentMethodOptionsUsBankAccountFinancialConnections"]):
permissions: Optional[List[str]] = None
return_url: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionPaymentMethodOptionsUsBankAccount(StripeEntity1["SessionPaymentMethodOptionsUsBankAccount"]):
financial_connections: Optional[SessionPaymentMethodOptionsUsBankAccountFinancialConnections] = None
setup_future_usage: Optional[str] = None
verification_method: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionPaymentMethodOptions(StripeEntity1["SessionPaymentMethodOptions"]):
acss_debit: Optional[SessionPaymentMethodOptionsAcssDebit] = None
affirm: Optional[SessionPaymentMethodOptionsAffirm] = None
afterpay_clearpay: Optional[SessionPaymentMethodOptionsAfterpayClearpay] = None
alipay: Optional[SessionPaymentMethodOptionsAlipay] = None
au_becs_debit: Optional[SessionPaymentMethodOptionsAuBecsDebit] = None
bacs_debit: Optional[SessionPaymentMethodOptionsBacsDebit] = None
bancontact: Optional[SessionPaymentMethodOptionsBancontact] = None
boleto: Optional[SessionPaymentMethodOptionsBoleto] = None
card: Optional[SessionPaymentMethodOptionsCard] = None
customer_balance: Optional[SessionPaymentMethodOptionsCustomerBalance] = None
eps: Optional[SessionPaymentMethodOptionsEps] = None
fpx: Optional[SessionPaymentMethodOptionsFpx] = None
giropay: Optional[SessionPaymentMethodOptionsGiropay] = None
grabpay: Optional[SessionPaymentMethodOptionsGrabpay] = None
ideal: Optional[SessionPaymentMethodOptionsIdeal] = None
klarna: Optional[SessionPaymentMethodOptionsKlarna] = None
konbini: Optional[SessionPaymentMethodOptionsKonbini] = None
oxxo: Optional[SessionPaymentMethodOptionsOxxo] = None
p24: Optional[SessionPaymentMethodOptionsP24] = None
paynow: Optional[SessionPaymentMethodOptionsPaynow] = None
pix: Optional[SessionPaymentMethodOptionsPix] = None
sepa_debit: Optional[SessionPaymentMethodOptionsSepaDebit] = None
sofort: Optional[SessionPaymentMethodOptionsSofort] = None
us_bank_account: Optional[SessionPaymentMethodOptionsUsBankAccount] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionPhoneNumberCollection(StripeEntity1["SessionPhoneNumberCollection"]):
enabled: bool = False
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionShippingAddressCollection(StripeEntity1["SessionShippingAddressCollection"]):
allowed_countries: Optional[List[str]] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionShippingCostTax(StripeEntity1["SessionShippingCostTax"]):
amount: int = 0
rate: Optional[TaxRate] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionShippingCost(StripeEntity1["SessionShippingCost"]):
amount_subtotal: int = 0
amount_tax: int = 0
amount_total: int = 0
taxes: Optional[List[SessionShippingCostTax]] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionShippingDetails(StripeEntity1["SessionShippingDetails"]):
address: Optional[Address] = None
carrier: Optional[str] = None
name: Optional[str] = None
phone: Optional[str] = None
tracking_number: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionShippingOption(StripeEntity1["SessionShippingOption"]):
shipping_amount: int = 0
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionTaxIdCollection(StripeEntity1["SessionTaxIdCollection"]):
enabled: bool = False
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionTotalDetailsBreakdownDiscount(StripeEntity1["SessionTotalDetailsBreakdownDiscount"]):
amount: int = 0
discount: Optional[Discount] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionTotalDetailsBreakdownTax(StripeEntity1["SessionTotalDetailsBreakdownTax"]):
amount: int = 0
rate: Optional[TaxRate] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionTotalDetailsBreakdown(StripeEntity1["SessionTotalDetailsBreakdown"]):
discounts: Optional[List[SessionTotalDetailsBreakdownDiscount]] = None
taxes: Optional[List[SessionTotalDetailsBreakdownTax]] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class SessionTotalDetails(StripeEntity1["SessionTotalDetails"]):
amount_discount: int = 0
amount_shipping: Optional[int] = None
amount_tax: int = 0
breakdown: Optional[SessionTotalDetailsBreakdown] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class Session(StripeEntity1["Session"], IHasId, IHasMetadata, IHasObject):
id: Optional[str] = None
object: Optional[str] = None
after_expiration: Optional[SessionAfterExpiration] = None
allow_promotion_codes: Optional[bool] = None
amount_subtotal: Optional[int] = None
amount_total: Optional[int] = None
automatic_tax: Optional[SessionAutomaticTax] = None
billing_address_collection: Optional[str] = None
cancel_url: Optional[str] = None
client_reference_id: Optional[str] = None
consent: Optional[SessionConsent] = None
consent_collection: Optional[SessionConsentCollection] = None
created: datetime.datetime = datetime.datetime(1, 1, 1)
currency: Optional[str] = None
custom_fields: Optional[List[SessionCustomField]] = None
custom_text: Optional[SessionCustomText] = None
customer_creation: Optional[str] = None
customer_details: Optional[SessionCustomerDetails] = None
customer_email: Optional[str] = None
expires_at: datetime.datetime = datetime.datetime(1, 1, 1)
invoice_creation: Optional[SessionInvoiceCreation] = None
line_items: Optional[StripeList[LineItem]] = None
livemode: bool = False
locale: Optional[str] = None
metadata: Optional[Dict[str, str]] = None
mode: Optional[str] = None
payment_method_collection: Optional[str] = None
payment_method_options: Optional[SessionPaymentMethodOptions] = None
payment_method_types: Optional[List[str]] = None
payment_status: Optional[str] = None
phone_number_collection: Optional[SessionPhoneNumberCollection] = None
recovered_from: Optional[str] = None
shipping_address_collection: Optional[SessionShippingAddressCollection] = None
shipping_cost: Optional[SessionShippingCost] = None
shipping_details: Optional[SessionShippingDetails] = None
shipping_options: Optional[List[SessionShippingOption]] = None
status: Optional[str] = None
submit_type: Optional[str] = None
success_url: Optional[str] = None
tax_id_collection: Optional[SessionTaxIdCollection] = None
total_details: Optional[SessionTotalDetails] = None
url: Optional[str] = None
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class GetStripeSession:
id: Optional[str] = None
T = TypeVar('T')
@dataclass_json(letter_case=LetterCase.CAMEL, undefined=Undefined.EXCLUDE)
@dataclass
class StripeList(Generic[T], StripeEntity1[StripeList[T]], IHasObject):
pass
To override the Content-type in your clients, use the HTTP Accept Header, append the .other suffix or ?format=other
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /stripe-session/{Id} HTTP/1.1
Host: duengageapi.uat.scadsoftware.com
Accept: text/jsonl
Content-Type: text/jsonl
Content-Length: length
{"Id":"String"}
HTTP/1.1 200 OK
Content-Type: text/jsonl
Content-Length: length
{Unable to show example output for type 'Session' using the custom 'other' filter}Exception has been thrown by the target of an invocation.