a
    !f?                    @   s<  d dl mZ d dlmZmZ d dlmZ d dlmZ d dl	m
Z
 d dlmZ d dlmZ d dlmZmZmZmZmZmZ d d	lmZmZmZmZmZ erd d
lmZ d dlmZ  d dl!m"Z" d dl#m$Z$ d dl%m&Z& d dl'm(Z( d dl)m*Z* d dl+m,Z, d dl-m.Z. d dl/m0Z1 d dl2m3Z3 G dd ded ed Z4dS )    )util)CreateableAPIResourceListableAPIResource)ExpandableField)
ListObject)RequestOptions)StripeObject)class_method_variant)ClassVarDictListOptionalcastoverload)LiteralNotRequired	TypedDictUnpackTYPE_CHECKING)Customer)Discount)Invoice)LineItem)PaymentIntent)PaymentLink)SetupIntent)ShippingRate)Subscription)TaxId)TaxRatec                   @   s   e Zd ZU dZdZeed  ed< G dd deZ	G dd deZ
G dd	 d	eZG d
d deZG dd deZG dd deZG dd deZG dd deZG dd deZG dd deZG dd deZG dd deZG dd deZG dd deZG d d! d!eZG d"d# d#eZG d$d% d%eZG d&d' d'eZG d(d) d)eZG d*d+ d+eZG d,d- d-eZG d.d/ d/eZ G d0d1 d1eZ!G d2d3 d3eZ"G d4d5 d5eZ#G d6d7 d7eZ$G d8d9 d9eZ%G d:d; d;eZ&G d<d= d=eZ'G d>d? d?eZ(G d@dA dAeZ)G dBdC dCeZ*G dDdE dEeZ+G dFdG dGeZ,G dHdI dIeZ-G dJdK dKeZ.G dLdM dMeZ/G dNdO dOeZ0G dPdQ dQeZ1G dRdS dSeZ2G dTdU dUeZ3G dVdW dWeZ4G dXdY dYeZ5G dZd[ d[eZ6G d\d] d]eZ7G d^d_ d_eZ8G d`da daeZ9G dbdc dceZ:G ddde deeZ;G dfdg dgeZ<G dhdi dieZ=G djdk dkeZ>G dldm dmeZ?G dndo doeZ@G dpdq dqeZAG drds dseZBG dtdu dueZCG dvdw dweZDG dxdy dyeZEG dzd{ d{eZFG d|d} d}eZGG d~d deZHG dd deZIG dd deZJG dd deZKG dd deZLG dd deZMG dd deZNG dd deZOG dd deZPG dd deZQG dd deZRG dd deZSG dd deZTG dd deZUG dd deZVG dd deZWG dd deZXG dd deZYG dd deZZG dd deZ[G dd deZ\G dd deZ]G dd deZ^G dd deZ_G dd deZ`G dd deZaG dd deZbG dd deZcG dd deZdG dd deZeG dd deZfG dd deZgG dd deZhG dd deZiG ddÄ deZjG ddń deZkG ddǄ deZlG ddɄ deZmG dd˄ deZnG dd̈́ deZoG ddτ deZpG ddф deZqG ddӄ deZrese	 ed< eset ed< eseu ed< eseu ed< e
ed< esed  ed< esev ed< esev ed< esev ed< ese ed< ese ed< eued< esev ed< ese ed< ewe ed< eed< esexd  ed< esed  ed< ese ed< esev ed< eued< eved< esexd  ed< ese ed< eseyd  ed< eted< esed  ed< esezevevf  ed< ed ed< ed ed< esexd  ed< esexd  ed< esed  ed< ese ed< ese ed< ewev ed < ed ed< ese ed< esev ed< esed  ed< esev ed< esexd  ed	< ese ed
< ese ed< ese ed< ewe ed< esed  ed< esed  ed< esexd  ed< esev ed< ese ed< ese ed< esed  ed< esev ed< e{d:esev esev esev esev e|d d dddZ}e{d;evesev esev esev e|d d d d!d"Z~eed<evesev esev esev e|d d d d#d$Zed=esev e|d d d%d&d$Zed'd>esev e|d d d%d(d$Ze{d?esev esev esev e|d) eyd  d*d+d,Ze{d@evesev esev esev e|d- eyd d d.d/ZeedAevesev esev esev e|d- eyd d d0d1ZedBesev e|d- eyd d%d2d1Zed3dCesev e|d- eyd d%d4d1Ze{eve|d5 d d6d7d8Ze	e
eeeeeeeeeeeeeeeed9ZdS (D  Sessiona>  
    A Checkout Session represents your customer's session as they pay for
    one-time purchases or subscriptions through [Checkout](https://stripe.com/docs/payments/checkout)
    or [Payment Links](https://stripe.com/docs/payments/payment-links). We recommend creating a
    new Session each time your customer attempts to pay.

    Once payment is successful, the Checkout Session will contain a reference
    to the [Customer](https://stripe.com/docs/api/customers), and either the successful
    [PaymentIntent](https://stripe.com/docs/api/payment_intents) or an active
    [Subscription](https://stripe.com/docs/api/subscriptions).

    You can create a Checkout Session on your server and redirect to its URL
    to begin Checkout.

    Related guide: [Checkout quickstart](https://stripe.com/docs/checkout/quickstart)
    zcheckout.sessionOBJECT_NAMEc                   @   s2   e Zd ZU G dd deZee ed< deiZdS )zSession.AfterExpirationc                   @   s6   e Zd ZU eed< eed< ee ed< ee ed< dS )z Session.AfterExpiration.Recoveryallow_promotion_codesenabled
expires_aturlN)__name__
__module____qualname__bool__annotations__r   intstr r-   r-   f/var/www/html/python-backend/venv/lib/python3.9/site-packages/stripe/api_resources/checkout/session.pyRecovery;   s
   
r/   recoveryN)r&   r'   r(   r   r/   r   r*   _inner_class_typesr-   r-   r-   r.   AfterExpiration:   s   
r2   c                   @   s&   e Zd ZU eed< eed  ed< dS )zSession.AutomaticTaxr#   )completefailedZrequires_location_inputsstatusN)r&   r'   r(   r)   r*   r   r   r-   r-   r-   r.   AutomaticTaxU   s
   
r6   c                   @   s.   e Zd ZU eed  ed< eed  ed< dS )zSession.Consent)Zopt_inZopt_out
promotionsacceptedterms_of_serviceNr&   r'   r(   r   r   r*   r-   r-   r-   r.   Consenta   s   
r;   c                   @   s.   e Zd ZU eed  ed< eed  ed< dS )zSession.ConsentCollection)autononer7   )r=   requiredr9   Nr:   r-   r-   r-   r.   ConsentCollectionl   s   
r?   c                   @   s.   e Zd ZU eed< eed< eed< eed< dS )zSession.CurrencyConversionamount_subtotalamount_totalZfx_rateZsource_currencyN)r&   r'   r(   r+   r*   r,   r-   r-   r-   r.   CurrencyConversionx   s
   
rB   c                   @   s   e Zd ZU G dd deZG dd deZG dd deZG dd deZee e	d	< e
e	d
< ee	d< ee e	d< ee	d< ee e	d< ed e	d< eeeedZdS )zSession.CustomFieldc                   @   s>   e Zd ZU G dd deZee ed< ee ed< deiZ	dS )zSession.CustomField.Dropdownc                   @   s   e Zd ZU eed< eed< dS )z#Session.CustomField.Dropdown.OptionlabelvalueNr&   r'   r(   r,   r*   r-   r-   r-   r.   Option   s   
rF   optionsrD   N)
r&   r'   r(   r   rF   r   r*   r   r,   r1   r-   r-   r-   r.   Dropdown   s   

rH   c                   @   s&   e Zd ZU ee ed< ed ed< dS )zSession.CustomField.LabelcustomtypeN)r&   r'   r(   r   r,   r*   r   r-   r-   r-   r.   Label   s   
rK   c                   @   s2   e Zd ZU ee ed< ee ed< ee ed< dS )zSession.CustomField.Numericmaximum_lengthminimum_lengthrD   Nr&   r'   r(   r   r+   r*   r,   r-   r-   r-   r.   Numeric   s   
rO   c                   @   s2   e Zd ZU ee ed< ee ed< ee ed< dS )zSession.CustomField.TextrL   rM   rD   NrN   r-   r-   r-   r.   Text   s   
rP   dropdownkeyrC   numericoptionaltextrQ   rS   rU   rJ   )rQ   rC   rS   rU   N)r&   r'   r(   r   rH   rK   rO   rP   r   r*   r,   r)   r   r1   r-   r-   r-   r.   CustomField   s    

rW   c                   @   sn   e Zd ZU G dd deZG dd deZG dd deZee ed< ee ed< ee ed	< eeed
Z	dS )zSession.CustomTextc                   @   s   e Zd ZU eed< dS )z"Session.CustomText.ShippingAddressmessageNrE   r-   r-   r-   r.   ShippingAddress   s   
rY   c                   @   s   e Zd ZU eed< dS )zSession.CustomText.SubmitrX   NrE   r-   r-   r-   r.   Submit   s   
rZ   c                   @   s   e Zd ZU eed< dS )z+Session.CustomText.TermsOfServiceAcceptancerX   NrE   r-   r-   r-   r.   TermsOfServiceAcceptance   s   
r[   shipping_addresssubmitterms_of_service_acceptance)r\   r]   r^   N)
r&   r'   r(   r   rY   rZ   r[   r   r*   r1   r-   r-   r-   r.   
CustomText   s   
r_   c                   @   s   e Zd ZU G dd deZG dd deZee ed< ee ed< ee ed< ee ed< ee	d	  ed
< ee
e  ed< eedZdS )zSession.CustomerDetailsc                   @   sV   e Zd ZU ee ed< ee ed< ee ed< ee ed< ee ed< ee ed< dS )zSession.CustomerDetails.Addresscitycountryline1line2postal_codestateNr&   r'   r(   r   r,   r*   r-   r-   r-   r.   Address  s   
rg   c                   @   s&   e Zd ZU ed ed< ee ed< dS )zSession.CustomerDetails.TaxId)CZad_nrtZae_trnZar_cuitZau_abnZau_arnZbg_uicZbo_tinZbr_cnpjZbr_cpfZca_bnZ
ca_gst_hstZ	ca_pst_bcZ	ca_pst_mbZ	ca_pst_skZca_qstZch_vatZcl_tinZcn_tinZco_nitZcr_tinZdo_rcnZec_rucZeg_tinZes_cifZ
eu_oss_vatZeu_vatZgb_vatZge_vatZhk_brZhu_tinZid_npwpZil_vatZin_gstZis_vatZjp_cnZjp_rnZjp_trnZke_pinZkr_brnZli_uidZmx_rfcZmy_frpZmy_itnZmy_sstZno_vatZnz_gstZpe_rucZph_tinZro_tinZrs_pibZru_innZru_kppZsa_vatZsg_gstZsg_uenZsi_tinZsv_nitZth_vatZtr_tinZtw_vatZua_vatunknownZus_einZuy_rucZve_rifZvn_tinZza_vatrJ   rD   N)r&   r'   r(   r   r*   r   r,   r-   r-   r-   r.   r     s
   
Hr   addressemailnamephone)Zexemptr=   reverseZ
tax_exempttax_ids)ri   rn   N)r&   r'   r(   r   rg   r   r   r*   r,   r   r   r1   r-   r-   r-   r.   CustomerDetails  s   
Nro   c                   @   s6   e Zd ZU G dd deZeed< eed< deiZdS )zSession.InvoiceCreationc                   @   s   e Zd ZU G dd deZG dd deZeeed   e	d< eee  e	d< ee
 e	d< ee
 e	d	< eee
e
f  e	d
< ee e	d< eedZdS )z#Session.InvoiceCreation.InvoiceDatac                   @   s   e Zd ZU eed< eed< dS )z/Session.InvoiceCreation.InvoiceData.CustomFieldrk   rD   NrE   r-   r-   r-   r.   rW     s   
rW   c                   @   s   e Zd ZU ee ed< dS )z4Session.InvoiceCreation.InvoiceData.RenderingOptionsamount_tax_displayNrf   r-   r-   r-   r.   RenderingOptions  s   
rq   TaxIdResourceaccount_tax_idscustom_fieldsdescriptionfootermetadatarendering_options)rt   rx   N)r&   r'   r(   r   rW   rq   r   r   r   r*   r,   r   r1   r-   r-   r-   r.   InvoiceData  s   

ry   r#   invoice_dataN)r&   r'   r(   r   ry   r)   r*   r1   r-   r-   r-   r.   InvoiceCreation  s   
.r{   c                   @   s"   e Zd ZU eed< ee ed< dS )z)Session.PaymentMethodConfigurationDetailsidparentN)r&   r'   r(   r,   r*   r   r-   r-   r-   r.   !PaymentMethodConfigurationDetails  s   
r~   c                   @   s\  e Zd ZU G dd deZG dd deZG dd deZG dd deZG d	d
 d
eZG dd deZ	G dd deZ
G dd deZG dd deZG dd deZG dd deZG dd deZG dd deZG dd deZG dd deZG dd  d eZG d!d" d"eZG d#d$ d$eZG d%d& d&eZG d'd( d(eZG d)d* d*eZG d+d, d,eZG d-d. d.eZG d/d0 d0eZG d1d2 d2eZG d3d4 d4eZG d5d6 d6eZG d7d8 d8eZe e e!d9< e e e!d:< e e e!d;< e e e!d<< e e e!d=< e e	 e!d>< e e
 e!d?< e e e!d@< e e e!dA< e e e!dB< e e e!dC< e e e!dD< e e e!dE< e e e!dF< e e e!dG< e e e!dH< e e e!dI< e e e!dJ< e e e!dK< e e e!dL< e e e!dM< e e e!dN< e e e!dO< e e e!dP< e e e!dQ< e e e!dR< e e e!dS< e e e!dT< eeeeee	e
eeeeeeeeeeeeeeeeeeeeedUZ"dVS )WzSession.PaymentMethodOptionsc                   @   sb   e Zd ZU G dd deZeed  ed< ee ed< eed  ed< eed  ed	< deiZd
S )z&Session.PaymentMethodOptions.AcssDebitc                   @   sZ   e Zd ZU ee ed< eeed   ed< ee ed< eed  ed< eed  ed< d	S )
z5Session.PaymentMethodOptions.AcssDebit.MandateOptionscustom_mandate_url)invoicesubscriptiondefault_forinterval_description)combinedintervalZsporadicpayment_schedule)ZbusinessZpersonaltransaction_typeN)r&   r'   r(   r   r,   r*   r   r   r-   r-   r-   r.   MandateOptions  s   
r   )Zcadusdcurrencymandate_optionsr=   off_sessionZ
on_sessionsetup_future_usage)	automaticinstantZmicrodepositsverification_methodN)	r&   r'   r(   r   r   r   r   r*   r1   r-   r-   r-   r.   	AcssDebit  s   

r   c                   @   s   e Zd ZU eed  ed< dS )z#Session.PaymentMethodOptions.Affirmr=   r   Nr:   r-   r-   r-   r.   Affirm  s   
r   c                   @   s   e Zd ZU eed  ed< dS )z-Session.PaymentMethodOptions.AfterpayClearpayr=   r   Nr:   r-   r-   r-   r.   AfterpayClearpay  s   
r   c                   @   s   e Zd ZU eed  ed< dS )z#Session.PaymentMethodOptions.Alipayr=   r   Nr:   r-   r-   r-   r.   Alipay  s   
r   c                   @   s   e Zd ZU eed  ed< dS )z(Session.PaymentMethodOptions.AuBecsDebitr=   r   Nr:   r-   r-   r-   r.   AuBecsDebit  s   
r   c                   @   s   e Zd ZU eed  ed< dS )z&Session.PaymentMethodOptions.BacsDebitr   r   Nr:   r-   r-   r-   r.   	BacsDebit  s   
r   c                   @   s   e Zd ZU eed  ed< dS )z'Session.PaymentMethodOptions.Bancontactr=   r   Nr:   r-   r-   r-   r.   
Bancontact+  s   
r   c                   @   s&   e Zd ZU eed< eed  ed< dS )z#Session.PaymentMethodOptions.Boletoexpires_after_daysr   r   Nr&   r'   r(   r+   r*   r   r   r-   r-   r-   r.   Boleto5  s
   
r   c                   @   sZ   e Zd ZU G dd deZee ed< eed  ed< ee ed< ee ed< deiZ	dS )	z!Session.PaymentMethodOptions.Cardc                   @   s   e Zd ZU ee ed< dS )z.Session.PaymentMethodOptions.Card.Installmentsr#   N)r&   r'   r(   r   r)   r*   r-   r-   r-   r.   InstallmentsF  s   
r   installmentsr   r    statement_descriptor_suffix_kana!statement_descriptor_suffix_kanjiN)
r&   r'   r(   r   r   r   r*   r   r,   r1   r-   r-   r-   r.   CardE  s   

r   c                   @   s   e Zd ZU eed  ed< dS )z$Session.PaymentMethodOptions.Cashappr=   r   Nr:   r-   r-   r-   r.   Cashappa  s   
r   c                   @   sR   e Zd ZU G dd deZee ed< eed  ed< eed  ed< deiZdS )z,Session.PaymentMethodOptions.CustomerBalancec                   @   sV   e Zd ZU G dd deZee ed< eeed   ed< eed  ed< deiZ	dS )	z9Session.PaymentMethodOptions.CustomerBalance.BankTransferc                   @   s   e Zd ZU ed ed< dS )zHSession.PaymentMethodOptions.CustomerBalance.BankTransfer.EuBankTransfer)BEDEESFRIENLra   Nr&   r'   r(   r   r*   r-   r-   r-   r.   EuBankTransferm  s   
r   eu_bank_transfer)ZabaZibanZsepaZ	sort_codeZspeiswiftZzenginrequested_address_typesr   Zgb_bank_transferZjp_bank_transferZmx_bank_transferZus_bank_transferrJ   N)
r&   r'   r(   r   r   r   r*   r   r   r1   r-   r-   r-   r.   BankTransferl  s   
r   bank_transferfunding_typer=   r   N)	r&   r'   r(   r   r   r   r*   r   r1   r-   r-   r-   r.   CustomerBalancek  s
   
(r   c                   @   s   e Zd ZU eed  ed< dS )z Session.PaymentMethodOptions.Epsr=   r   Nr:   r-   r-   r-   r.   Eps  s   
r   c                   @   s   e Zd ZU eed  ed< dS )z Session.PaymentMethodOptions.Fpxr=   r   Nr:   r-   r-   r-   r.   Fpx  s   
r   c                   @   s   e Zd ZU eed  ed< dS )z$Session.PaymentMethodOptions.Giropayr=   r   Nr:   r-   r-   r-   r.   Giropay  s   
r   c                   @   s   e Zd ZU eed  ed< dS )z$Session.PaymentMethodOptions.Grabpayr=   r   Nr:   r-   r-   r-   r.   Grabpay  s   
r   c                   @   s   e Zd ZU eed  ed< dS )z"Session.PaymentMethodOptions.Idealr=   r   Nr:   r-   r-   r-   r.   Ideal  s   
r   c                   @   s   e Zd ZU eed  ed< dS )z#Session.PaymentMethodOptions.Klarnar   r   Nr:   r-   r-   r-   r.   Klarna  s   
r   c                   @   s*   e Zd ZU ee ed< eed  ed< dS )z$Session.PaymentMethodOptions.Konbinir   r=   r   N)r&   r'   r(   r   r+   r*   r   r-   r-   r-   r.   Konbini  s   
r   c                   @   s   e Zd ZU eed  ed< dS )z!Session.PaymentMethodOptions.Linkr=   r   r   Nr:   r-   r-   r-   r.   Link  s   
r   c                   @   s&   e Zd ZU eed< eed  ed< dS )z!Session.PaymentMethodOptions.Oxxor   r=   r   Nr   r-   r-   r-   r.   Oxxo  s   
r   c                   @   s   e Zd ZU eed  ed< dS )z Session.PaymentMethodOptions.P24r=   r   Nr:   r-   r-   r-   r.   P24  s   
r   c                   @   s   e Zd ZU eed  ed< dS )z#Session.PaymentMethodOptions.Paynowr=   r   Nr:   r-   r-   r-   r.   Paynow  s   
r   c                   @   sF   e Zd ZU eed  ed< ee ed< ee ed< eed  ed< dS )z#Session.PaymentMethodOptions.PaypalZmanualcapture_methodpreferred_locale	referencer   r   N)r&   r'   r(   r   r   r*   r,   r-   r-   r-   r.   Paypal  s
   
r   c                   @   s   e Zd ZU ee ed< dS )z Session.PaymentMethodOptions.Pixexpires_after_secondsN)r&   r'   r(   r   r+   r*   r-   r-   r-   r.   Pix1  s   
r   c                   @   s   e Zd ZdS )z'Session.PaymentMethodOptions.RevolutPayN)r&   r'   r(   r-   r-   r-   r.   
RevolutPay7  s   r   c                   @   s   e Zd ZU eed  ed< dS )z&Session.PaymentMethodOptions.SepaDebitr   r   Nr:   r-   r-   r-   r.   	SepaDebit:  s   
r   c                   @   s   e Zd ZU eed  ed< dS )z#Session.PaymentMethodOptions.Sofortr=   r   Nr:   r-   r-   r-   r.   SofortF  s   
r   c                   @   sR   e Zd ZU G dd deZee ed< eed  ed< eed  ed< deiZdS )	z*Session.PaymentMethodOptions.UsBankAccountc                   @   sB   e Zd ZU eeed   ed< eeed   ed< ee ed< dS )z?Session.PaymentMethodOptions.UsBankAccount.FinancialConnections)balancesZ	ownershipZpayment_methodZtransactionspermissionsr   prefetch
return_urlN)r&   r'   r(   r   r   r   r*   r,   r-   r-   r-   r.   FinancialConnectionsQ  s   
r   financial_connectionsr   r   )r   r   r   N)	r&   r'   r(   r   r   r   r*   r   r1   r-   r-   r-   r.   UsBankAccountP  s   

r   
acss_debitaffirmafterpay_clearpayalipayau_becs_debit
bacs_debit
bancontactboletocardcashappcustomer_balanceepsfpxgiropaygrabpayidealklarnakonbinilinkoxxop24paynowpaypalpixrevolut_pay
sepa_debitsofortus_bank_account)r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   N)#r&   r'   r(   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r*   r1   r-   r-   r-   r.   PaymentMethodOptions  s   
0





8








+r   c                   @   s   e Zd ZU eed< dS )zSession.PhoneNumberCollectionr#   Nr&   r'   r(   r)   r*   r-   r-   r-   r.   PhoneNumberCollection  s   
r   c                   @   s   e Zd ZU eed  ed< dS )z!Session.ShippingAddressCollectionZACZADZAEZAFZAGZAIALZAMZAOZAQARATZAUZAWZAXZAZZBABBZBDr   ZBFZBGZBHZBIZBJZBLZBMBNZBOZBQZBRZBSZBTZBVZBWZBYZBZCAZCDZCFZCGZCHCIZCKZCLZCMZCNZCOCRZCVZCWZCYZCZr   ZDJZDKZDMZDOZDZZECZEEZEGZEHZERr   ETZFIZFJZFKZFOr   ZGAGBZGDZGEZGFZGGZGHZGIZGLZGMZGNZGPZGQZGRZGSGTZGUZGWZGYZHKZHNZHRZHTZHUZIDr   ZILZIMINIOZIQZISZITZJEZJMZJOZJPZKEZKGZKHZKIZKMZKNZKRZKWZKYZKZZLAZLBZLCZLIZLKZLRZLSLTZLULVZLYZMAZMCZMDZMEZMFZMGZMKZMLZMMZMNZMOZMQZMRZMSZMTZMUZMVZMWZMXZMYZMZZNAZNCZNEZNGZNIr   NOZNPZNRZNUZNZZOMZPAPEZPFZPGZPHZPKZPLZPMZPNZPRZPSZPTZPYZQAZREZROZRSZRUZRWZSAZSBZSCZSEZSGZSHZSIZSJZSKZSLZSMZSNSOZSRZSSZSTZSVZSXZSZZTAZTCZTDZTFZTGZTHZTJZTKZTLZTMZTNZTOZTRZTTZTVZTWZTZZUAZUGZUSZUYZUZZVAZVCZVEZVGZVNZVUZWFZWSZXKZYEZYTZZAZZMZZWZZZallowed_countriesNr&   r'   r(   r   r   r*   r-   r-   r-   r.   ShippingAddressCollection  s   
 rr  c                   @   s^   e Zd ZU G dd deZeed< eed< eed< eed  ed< ee	e  ed< deiZ
d	S )
zSession.ShippingCostc                   @   s:   e Zd ZU eed< ded< eed  ed< ee ed< dS )zSession.ShippingCost.Taxamountr   rateZcustomer_exemptZnot_collectingZnot_subject_to_taxZnot_supportedZportion_product_exemptZportion_reduced_ratedZportion_standard_ratedZproduct_exemptZproduct_exempt_holidayZproportionally_ratedZreduced_ratedZreverse_chargeZstandard_ratedZtaxable_basis_reducedZ
zero_ratedtaxability_reasontaxable_amountNr   r-   r-   r-   r.   Tax  s   
r  r@   
amount_taxrA   r   shipping_ratetaxesN)r&   r'   r(   r   r  r+   r*   r   r   r   r1   r-   r-   r-   r.   ShippingCost  s   
&r  c                   @   sb   e Zd ZU G dd deZee ed< ee ed< ee ed< ee ed< ee ed< deiZdS )	zSession.ShippingDetailsc                   @   sV   e Zd ZU ee ed< ee ed< ee ed< ee ed< ee ed< ee ed< dS )zSession.ShippingDetails.Addressr`   ra   rb   rc   rd   re   Nrf   r-   r-   r-   r.   rg     s   
rg   ri   carrierrk   rl   tracking_numberN)	r&   r'   r(   r   rg   r   r*   r,   r1   r-   r-   r-   r.   ShippingDetails  s   
r  c                   @   s"   e Zd ZU eed< ed ed< dS )zSession.ShippingOptionZshipping_amountr   r
  N)r&   r'   r(   r+   r*   r   r-   r-   r-   r.   ShippingOption  s   
r  c                   @   s   e Zd ZU eed< dS )zSession.TaxIdCollectionr#   Nr   r-   r-   r-   r.   TaxIdCollection(  s   
r  c                   @   sN   e Zd ZU G dd deZeed< ee ed< eed< ee ed< deiZdS )zSession.TotalDetailsc                   @   sP   e Zd ZU G dd deZG dd deZee ed< ee ed< eedZdS )	zSession.TotalDetails.Breakdownc                   @   s   e Zd ZU eed< ded< dS )z'Session.TotalDetails.Breakdown.Discountr  DiscountResourceZdiscountN)r&   r'   r(   r+   r*   r-   r-   r-   r.   r   0  s   
r   c                   @   s:   e Zd ZU eed< ded< eed  ed< ee ed< dS )z"Session.TotalDetails.Breakdown.Taxr  r   r  r  r  r  Nr   r-   r-   r-   r.   r  =  s   
r  	discountsr  )r  r  N)	r&   r'   r(   r   r   r  r   r*   r1   r-   r-   r-   r.   	Breakdown/  s
   
&r  Zamount_discountZamount_shippingr	  Z	breakdownN)	r&   r'   r(   r   r  r+   r*   r   r1   r-   r-   r-   r.   TotalDetails.  s   
>r  c                   @   s  e Zd ZU ed ed< ed ed< ed ed< ed ed< ed	 ed
< ed	 ed< ed ed< ed	 ed< ed ed< ed ed< ed	 ed< ed ed< ed	 ed< ed ed< ed ed< ed ed< ed ed< ed ed < ed! ed"< ed# ed$< ed% ed&< ed' ed(< ed) ed*< ed ed+< ed	 ed,< ed- ed.< ed/ ed0< ed1 ed2< ed3 ed4< ed	 ed5< ed6 ed7< ed8 ed9< ed: ed;< ed< ed=< ed> ed?< ed	 ed@< edA edB< edC edD< dES )FSession.CreateParams#Session.CreateParamsAfterExpirationafter_expirationr)   r"    Session.CreateParamsAutomaticTaxautomatic_taxzLiteral['auto', 'required']billing_address_collectionr,   
cancel_urlclient_reference_id%Session.CreateParamsConsentCollectionconsent_collectionr   z%List[Session.CreateParamsCustomField]rt   Session.CreateParamsCustomTextcustom_textcustomerz Literal['always', 'if_required']customer_creationcustomer_email"Session.CreateParamsCustomerUpdateZcustomer_updatez"List[Session.CreateParamsDiscount]r  	List[str]expandr+   r$   #Session.CreateParamsInvoiceCreationinvoice_creationz"List[Session.CreateParamsLineItem]
line_itemsa  Literal['auto', 'bg', 'cs', 'da', 'de', 'el', 'en', 'en-GB', 'es', 'es-419', 'et', 'fi', 'fil', 'fr', 'fr-CA', 'hr', 'hu', 'id', 'it', 'ja', 'ko', 'lt', 'lv', 'ms', 'mt', 'nb', 'nl', 'pl', 'pt', 'pt-BR', 'ro', 'ru', 'sk', 'sl', 'sv', 'th', 'tr', 'vi', 'zh', 'zh-HK', 'zh-TW']localeDict[str, str]rw   z+Literal['payment', 'setup', 'subscription']mode%Session.CreateParamsPaymentIntentDataZpayment_intent_datapayment_method_collectionZpayment_method_configuration(Session.CreateParamsPaymentMethodOptionspayment_method_optionsaz  List[Literal['acss_debit', 'affirm', 'afterpay_clearpay', 'alipay', 'au_becs_debit', 'bacs_debit', 'bancontact', 'blik', 'boleto', 'card', 'cashapp', 'customer_balance', 'eps', 'fpx', 'giropay', 'grabpay', 'ideal', 'klarna', 'konbini', 'link', 'oxxo', 'p24', 'paynow', 'paypal', 'pix', 'promptpay', 'revolut_pay', 'sepa_debit', 'sofort', 'us_bank_account', 'wechat_pay', 'zip']]payment_method_types)Session.CreateParamsPhoneNumberCollectionphone_number_collectionz)Literal['always', 'if_required', 'never']redirect_on_completionr   #Session.CreateParamsSetupIntentDataZsetup_intent_data-Session.CreateParamsShippingAddressCollectionshipping_address_collectionz(List[Session.CreateParamsShippingOption]shipping_optionsz(Literal['auto', 'book', 'donate', 'pay']submit_type$Session.CreateParamsSubscriptionDataZsubscription_datasuccess_url#Session.CreateParamsTaxIdCollectiontax_id_collectionzLiteral['embedded', 'hosted']ui_modeNr&   r'   r(   r   r*   r-   r-   r-   r.   CreateParams|  sv   
	rA  c                   @   s   e Zd ZU eed< dS )r=  r#   Nr   r-   r-   r-   r.   CreateParamsTaxIdCollectiona  s   
rB  c                   @   s   e Zd ZU ed ed< ed ed< ed ed< ed ed< ed	 ed
< ed ed< ed ed< ed ed< ed ed< ed ed< ed ed< dS )r;  floatZapplication_fee_percentr+   Zbilling_cycle_anchorr&  Zdefault_tax_ratesr,   ru   r,  rw   on_behalf_ofz$Literal['create_prorations', 'none']Zproration_behavior0Session.CreateParamsSubscriptionDataTransferDatatransfer_dataZ	trial_endZtrial_period_days1Session.CreateParamsSubscriptionDataTrialSettingsZtrial_settingsNr@  r-   r-   r-   r.   CreateParamsSubscriptionDatag  s    
rH  c                   @   s   e Zd ZU ded< dS )rG  <Session.CreateParamsSubscriptionDataTrialSettingsEndBehaviorZend_behaviorN)r&   r'   r(   r*   r-   r-   r-   r.   )CreateParamsSubscriptionDataTrialSettings  s   
rJ  c                   @   s   e Zd ZU ed ed< dS )rI  )cancelZcreate_invoicepauseZmissing_payment_methodNr   r-   r-   r-   r.   4CreateParamsSubscriptionDataTrialSettingsEndBehavior  s   
rM  c                   @   s"   e Zd ZU ed ed< eed< dS )rE  rC  Zamount_percentdestinationNr&   r'   r(   r   r*   r,   r-   r-   r-   r.   (CreateParamsSubscriptionDataTransferData  s   
rP  c                   @   s&   e Zd ZU ed ed< ed ed< dS )z"Session.CreateParamsShippingOptionr,   r
  2Session.CreateParamsShippingOptionShippingRateDataZshipping_rate_dataNr@  r-   r-   r-   r.   CreateParamsShippingOption  s
   
rR  c                   @   s^   e Zd ZU ed ed< eed< ed ed< ed ed< ed ed	< ed
 ed< ed ed< dS )rQ  BSession.CreateParamsShippingOptionShippingRateDataDeliveryEstimateZdelivery_estimateZdisplay_name=Session.CreateParamsShippingOptionShippingRateDataFixedAmountZfixed_amountr,  rw   0Literal['exclusive', 'inclusive', 'unspecified']tax_behaviorr,   tax_codezLiteral['fixed_amount']rJ   NrO  r-   r-   r-   r.   *CreateParamsShippingOptionShippingRateData  s   
rX  c                   @   s*   e Zd ZU eed< eed< ed ed< dS )rT  r  r   zWDict[str, Session.CreateParamsShippingOptionShippingRateDataFixedAmountCurrencyOptions]Zcurrency_optionsN)r&   r'   r(   r+   r*   r,   r   r-   r-   r-   r.   5CreateParamsShippingOptionShippingRateDataFixedAmount  s   
rY  c                   @   s"   e Zd ZU eed< ed ed< dS )zLSession.CreateParamsShippingOptionShippingRateDataFixedAmountCurrencyOptionsr  rU  rV  N)r&   r'   r(   r+   r*   r   r-   r-   r-   r.   DCreateParamsShippingOptionShippingRateDataFixedAmountCurrencyOptions  s
   
rZ  c                   @   s&   e Zd ZU ed ed< ed ed< dS )rS  ISession.CreateParamsShippingOptionShippingRateDataDeliveryEstimateMaximummaximumISession.CreateParamsShippingOptionShippingRateDataDeliveryEstimateMinimumminimumNr@  r-   r-   r-   r.   :CreateParamsShippingOptionShippingRateDataDeliveryEstimate  s   
r_  c                   @   s"   e Zd ZU ed ed< eed< dS )r]  Zbusiness_daydayhourmonthweekunitrD   Nr&   r'   r(   r   r*   r+   r-   r-   r-   r.   ACreateParamsShippingOptionShippingRateDataDeliveryEstimateMinimum  s   
rg  c                   @   s"   e Zd ZU ed ed< eed< dS )r[  r`  re  rD   Nrf  r-   r-   r-   r.   ACreateParamsShippingOptionShippingRateDataDeliveryEstimateMaximum   s   
rh  c                   @   s   e Zd ZU eed  ed< dS )r7  r   r   Nr  r-   r-   r-   r.   %CreateParamsShippingAddressCollection,  s   
 rri  c                   @   s2   e Zd ZU ed ed< ed ed< ed ed< dS )r6  r,   ru   r,  rw   rD  Nr@  r-   r-   r-   r.   CreateParamsSetupIntentData#  s   
rj  c                   @   s   e Zd ZU eed< dS )r3  r#   Nr   r-   r-   r-   r.   !CreateParamsPhoneNumberCollection1  s   
rk  c                   @   sj  e Zd ZU ed ed< ed ed< ed ed< ed ed< ed	 ed
< ed ed< ed ed< ed ed< ed ed< ed ed< ed ed< ed ed< ed ed< ed ed< ed ed< ed ed < ed! ed"< ed# ed$< ed% ed&< ed' ed(< ed) ed*< ed+ ed,< ed- ed.< ed/ ed0< ed1 ed2< ed3 ed4< ed5 ed6< ed7 ed8< ed9 ed:< d;S )<r0  1Session.CreateParamsPaymentMethodOptionsAcssDebitr   .Session.CreateParamsPaymentMethodOptionsAffirmr   8Session.CreateParamsPaymentMethodOptionsAfterpayClearpayr   .Session.CreateParamsPaymentMethodOptionsAlipayr   3Session.CreateParamsPaymentMethodOptionsAuBecsDebitr   1Session.CreateParamsPaymentMethodOptionsBacsDebitr   2Session.CreateParamsPaymentMethodOptionsBancontactr   .Session.CreateParamsPaymentMethodOptionsBoletor   ,Session.CreateParamsPaymentMethodOptionsCardr   /Session.CreateParamsPaymentMethodOptionsCashappr   7Session.CreateParamsPaymentMethodOptionsCustomerBalancer   +Session.CreateParamsPaymentMethodOptionsEpsr   +Session.CreateParamsPaymentMethodOptionsFpxr   /Session.CreateParamsPaymentMethodOptionsGiropayr   /Session.CreateParamsPaymentMethodOptionsGrabpayr   -Session.CreateParamsPaymentMethodOptionsIdealr   .Session.CreateParamsPaymentMethodOptionsKlarnar   /Session.CreateParamsPaymentMethodOptionsKonbinir   ,Session.CreateParamsPaymentMethodOptionsLinkr   ,Session.CreateParamsPaymentMethodOptionsOxxor   +Session.CreateParamsPaymentMethodOptionsP24r   .Session.CreateParamsPaymentMethodOptionsPaynowr   .Session.CreateParamsPaymentMethodOptionsPaypalr   +Session.CreateParamsPaymentMethodOptionsPixr   2Session.CreateParamsPaymentMethodOptionsRevolutPayr   1Session.CreateParamsPaymentMethodOptionsSepaDebitr   .Session.CreateParamsPaymentMethodOptionsSofortr   5Session.CreateParamsPaymentMethodOptionsUsBankAccountr   1Session.CreateParamsPaymentMethodOptionsWechatPayZ
wechat_payNr@  r-   r-   r-   r.    CreateParamsPaymentMethodOptions7  sd   
r  c                   @   s2   e Zd ZU ed ed< ed ed< ed ed< dS )r  r,   Zapp_id)ZandroidZiosZwebclientLiteral['none']r   Nr&   r'   r(   r   r*   r   r-   r-   r-   r.   )CreateParamsPaymentMethodOptionsWechatPay  s   
r  c                   @   s2   e Zd ZU ed ed< ed ed< ed ed< dS )r  ISession.CreateParamsPaymentMethodOptionsUsBankAccountFinancialConnectionsr   ,Literal['none', 'off_session', 'on_session']r   zLiteral['automatic', 'instant']r   Nr@  r-   r-   r-   r.   -CreateParamsPaymentMethodOptionsUsBankAccount  s   

r  c                   @   s&   e Zd ZU ed ed< ed ed< dS )r  zHList[Literal['balances', 'ownership', 'payment_method', 'transactions']]r   zList[Literal['balances']]r   Nr@  r-   r-   r-   r.   ACreateParamsPaymentMethodOptionsUsBankAccountFinancialConnections  s
   
r  c                   @   s   e Zd ZU ed ed< dS )r  r  r   Nr@  r-   r-   r-   r.   &CreateParamsPaymentMethodOptionsSofort  s   
r  c                   @   s   e Zd ZU ed ed< dS )r  r  r   Nr@  r-   r-   r-   r.   )CreateParamsPaymentMethodOptionsSepaDebit	  s   
r  c                   @   s   e Zd ZU ed ed< dS )r  Literal['none', 'off_session']r   Nr@  r-   r-   r-   r.   *CreateParamsPaymentMethodOptionsRevolutPay	  s   
r  c                   @   s   e Zd ZU ed ed< dS )r  r+   r   Nr@  r-   r-   r-   r.   #CreateParamsPaymentMethodOptionsPix	  s   
r  c                   @   sJ   e Zd ZU ed ed< ed ed< ed ed< ed ed< ed ed	< d
S )r  zLiteral['']|Literal['manual']r   zLiteral['cs-CZ', 'da-DK', 'de-AT', 'de-DE', 'de-LU', 'el-GR', 'en-GB', 'en-US', 'es-ES', 'fi-FI', 'fr-BE', 'fr-FR', 'fr-LU', 'hu-HU', 'it-IT', 'nl-BE', 'nl-NL', 'pl-PL', 'pt-PT', 'sk-SK', 'sv-SE']r   r,   r   Zrisk_correlation_idz*Literal['']|Literal['none', 'off_session']r   Nr@  r-   r-   r-   r.   &CreateParamsPaymentMethodOptionsPaypal	  s   
r  c                   @   s   e Zd ZU ed ed< dS )r  r  r   Nr@  r-   r-   r-   r.   &CreateParamsPaymentMethodOptionsPaynow=	  s   
r  c                   @   s&   e Zd ZU ed ed< ed ed< dS )r  r  r   r)   Ztos_shown_and_acceptedNr@  r-   r-   r-   r.   #CreateParamsPaymentMethodOptionsP24G	  s   
r  c                   @   s&   e Zd ZU ed ed< ed ed< dS )r  r+   r   r  r   Nr@  r-   r-   r-   r.   $CreateParamsPaymentMethodOptionsOxxoU	  s   
r  c                   @   s   e Zd ZU ed ed< dS )r~  r  r   Nr@  r-   r-   r-   r.   $CreateParamsPaymentMethodOptionsLinkc	  s   
r  c                   @   s&   e Zd ZU ed ed< ed ed< dS )r}  r+   r   r  r   Nr@  r-   r-   r-   r.   'CreateParamsPaymentMethodOptionsKonbinim	  s   
r  c                   @   s   e Zd ZU ed ed< dS )r|  r  r   Nr@  r-   r-   r-   r.   &CreateParamsPaymentMethodOptionsKlarna{	  s   
r  c                   @   s   e Zd ZU ed ed< dS )r{  r  r   Nr@  r-   r-   r-   r.   %CreateParamsPaymentMethodOptionsIdeal	  s   
r  c                   @   s   e Zd ZU ed ed< dS )rz  r  r   Nr@  r-   r-   r-   r.   'CreateParamsPaymentMethodOptionsGrabpay	  s   
r  c                   @   s   e Zd ZU ed ed< dS )ry  r  r   Nr@  r-   r-   r-   r.   'CreateParamsPaymentMethodOptionsGiropay	  s   
r  c                   @   s   e Zd ZU ed ed< dS )rx  r  r   Nr@  r-   r-   r-   r.   #CreateParamsPaymentMethodOptionsFpx	  s   
r  c                   @   s   e Zd ZU ed ed< dS )rw  r  r   Nr@  r-   r-   r-   r.   #CreateParamsPaymentMethodOptionsEps	  s   
r  c                   @   s2   e Zd ZU ed ed< ed ed< ed ed< dS )rv  CSession.CreateParamsPaymentMethodOptionsCustomerBalanceBankTransferr   zLiteral['bank_transfer']r   r  r   Nr@  r-   r-   r-   r.   /CreateParamsPaymentMethodOptionsCustomerBalance	  s   
r  c                   @   s2   e Zd ZU ed ed< ed ed< ed ed< dS )r  QSession.CreateParamsPaymentMethodOptionsCustomerBalanceBankTransferEuBankTransferr   zLList[Literal['aba', 'iban', 'sepa', 'sort_code', 'spei', 'swift', 'zengin']]r   r   rJ   Nr  r-   r-   r-   r.   ;CreateParamsPaymentMethodOptionsCustomerBalanceBankTransfer	  s   
r  c                   @   s   e Zd ZU eed< dS )r  ra   NrE   r-   r-   r-   r.   ICreateParamsPaymentMethodOptionsCustomerBalanceBankTransferEuBankTransfer	  s   
r  c                   @   s   e Zd ZU ed ed< dS )ru  r  r   Nr@  r-   r-   r-   r.   'CreateParamsPaymentMethodOptionsCashapp	  s   
r  c                   @   s>   e Zd ZU ed ed< ed ed< ed ed< ed ed< dS )	rt  8Session.CreateParamsPaymentMethodOptionsCardInstallmentsr   $Literal['off_session', 'on_session']r   r,   r   r   Nr@  r-   r-   r-   r.   $CreateParamsPaymentMethodOptionsCard	  s   
r  c                   @   s   e Zd ZU ed ed< dS )r  r)   r#   Nr@  r-   r-   r-   r.   0CreateParamsPaymentMethodOptionsCardInstallments
  s   
r  c                   @   s&   e Zd ZU ed ed< ed ed< dS )rs  r+   r   r  r   Nr@  r-   r-   r-   r.   &CreateParamsPaymentMethodOptionsBoleto
  s
   
r  c                   @   s   e Zd ZU ed ed< dS )rr  r  r   Nr@  r-   r-   r-   r.   *CreateParamsPaymentMethodOptionsBancontact*
  s   
r  c                   @   s   e Zd ZU ed ed< dS )rq  r  r   Nr@  r-   r-   r-   r.   )CreateParamsPaymentMethodOptionsBacsDebit4
  s   
r  c                   @   s   e Zd ZU ed ed< dS )rp  r  r   Nr@  r-   r-   r-   r.   +CreateParamsPaymentMethodOptionsAuBecsDebit@
  s   
r  c                   @   s   e Zd ZU ed ed< dS )ro  r  r   Nr@  r-   r-   r-   r.   &CreateParamsPaymentMethodOptionsAlipayJ
  s   
r  c                   @   s   e Zd ZU ed ed< dS )rn  r  r   Nr@  r-   r-   r-   r.   0CreateParamsPaymentMethodOptionsAfterpayClearpayT
  s   
r  c                   @   s   e Zd ZU ed ed< dS )rm  r  r   Nr@  r-   r-   r-   r.   &CreateParamsPaymentMethodOptionsAffirm^
  s   
r  c                   @   s>   e Zd ZU ed ed< ed ed< ed ed< ed ed< d	S )
rl  zLiteral['cad', 'usd']r   ?Session.CreateParamsPaymentMethodOptionsAcssDebitMandateOptionsr   r  r   z0Literal['automatic', 'instant', 'microdeposits']r   Nr@  r-   r-   r-   r.   )CreateParamsPaymentMethodOptionsAcssDebith
  s   

r  c                   @   sJ   e Zd ZU ed ed< ed ed< ed ed< ed ed< ed	 ed
< dS )r  zLiteral['']|strr   z(List[Literal['invoice', 'subscription']]r   r,   r   z+Literal['combined', 'interval', 'sporadic']r   zLiteral['business', 'personal']r   Nr@  r-   r-   r-   r.   7CreateParamsPaymentMethodOptionsAcssDebitMandateOptions
  s   
r  c                   @   s   e Zd ZU ed ed< ed ed< ed ed< ed ed< ed ed	< ed ed
< ed ed< ed ed< ed ed< ed ed< ed ed< ed ed< dS )r.  r+   Zapplication_fee_amountz1Literal['automatic', 'automatic_async', 'manual']r   r,   ru   r,  rw   rD  Zreceipt_emailr  r   -Session.CreateParamsPaymentIntentDataShippingshippingZstatement_descriptorZstatement_descriptor_suffix1Session.CreateParamsPaymentIntentDataTransferDatarF  Ztransfer_groupNr@  r-   r-   r-   r.   CreateParamsPaymentIntentData
  s"   
r  c                   @   s"   e Zd ZU ed ed< eed< dS )r  r+   r  rN  NrO  r-   r-   r-   r.   )CreateParamsPaymentIntentDataTransferData
  s   
r  c                   @   sB   e Zd ZU ded< ed ed< eed< ed ed< ed ed< dS )	r  4Session.CreateParamsPaymentIntentDataShippingAddressri   r,   r  rk   rl   r  N)r&   r'   r(   r*   r   r,   r-   r-   r-   r.   %CreateParamsPaymentIntentDataShipping
  s   
r  c                   @   sR   e Zd ZU ed ed< ed ed< eed< ed ed< ed ed< ed ed< dS )	r  r,   r`   ra   rb   rc   rd   re   NrO  r-   r-   r-   r.   ,CreateParamsPaymentIntentDataShippingAddress  s   
r  c                   @   sV   e Zd ZU ed ed< ed ed< ed ed< ed ed< ed	 ed
< ed ed< dS )zSession.CreateParamsLineItem.Session.CreateParamsLineItemAdjustableQuantityZadjustable_quantityr&  Zdynamic_tax_ratesr,   Zprice%Session.CreateParamsLineItemPriceDataZ
price_datar+   ZquantityZ	tax_ratesNr@  r-   r-   r-   r.   CreateParamsLineItem*  s   
r  c                   @   s^   e Zd ZU eed< ed ed< ed ed< ed ed< ed ed	< ed
 ed< ed ed< dS )r  r   r,   product0Session.CreateParamsLineItemPriceDataProductDataZproduct_data.Session.CreateParamsLineItemPriceDataRecurringZ	recurringrU  rV  r+   Zunit_amountZunit_amount_decimalN)r&   r'   r(   r,   r*   r   r-   r-   r-   r.   CreateParamsLineItemPriceDataF  s   
r  c                   @   s&   e Zd ZU ed ed< ed ed< dS )r  )ra  rc  rd  yearr   r+   Zinterval_countN)r&   r'   r(   r   r*   r   r-   r-   r-   r.   &CreateParamsLineItemPriceDataRecurringj  s   
r  c                   @   sF   e Zd ZU ed ed< ed ed< ed ed< eed< ed ed< d	S )
r  r,   ru   r&  Zimagesr,  rw   rk   rW  NrO  r-   r-   r-   r.   (CreateParamsLineItemPriceDataProductDatat  s   
r  c                   @   s.   e Zd ZU eed< ed ed< ed ed< dS )r  r#   r+   r\  r^  Nr&   r'   r(   r)   r*   r   r-   r-   r-   r.   &CreateParamsLineItemAdjustableQuantity  s   
r  c                   @   s"   e Zd ZU eed< ed ed< dS )r(  r#   .Session.CreateParamsInvoiceCreationInvoiceDatarz   Nr  r-   r-   r-   r.   CreateParamsInvoiceCreation  s
   
r  c                   @   sV   e Zd ZU ed ed< ed ed< ed ed< ed ed< ed ed	< ed
 ed< dS )r  zLiteral['']|List[str]rs   zKLiteral['']|List[Session.CreateParamsInvoiceCreationInvoiceDataCustomField]rt   r,   ru   rv   r,  rw   zJLiteral['']|Session.CreateParamsInvoiceCreationInvoiceDataRenderingOptionsrx   Nr@  r-   r-   r-   r.   &CreateParamsInvoiceCreationInvoiceData  s   
r  c                   @   s   e Zd ZU ed ed< dS )z>Session.CreateParamsInvoiceCreationInvoiceDataRenderingOptionsz;Literal['']|Literal['exclude_tax', 'include_inclusive_tax']rp   Nr@  r-   r-   r-   r.   6CreateParamsInvoiceCreationInvoiceDataRenderingOptions  s   
r  c                   @   s   e Zd ZU eed< eed< dS )z9Session.CreateParamsInvoiceCreationInvoiceDataCustomFieldrk   rD   NrE   r-   r-   r-   r.   1CreateParamsInvoiceCreationInvoiceDataCustomField  s   
r  c                   @   s&   e Zd ZU ed ed< ed ed< dS )zSession.CreateParamsDiscountr,   ZcouponZpromotion_codeNr@  r-   r-   r-   r.   CreateParamsDiscount  s   
r  c                   @   s2   e Zd ZU ed ed< ed ed< ed ed< dS )r%  zLiteral['auto', 'never']ri   rk   r  Nr@  r-   r-   r-   r.   CreateParamsCustomerUpdate  s   
r  c                   @   s2   e Zd ZU ed ed< ed ed< ed ed< dS )r   z9Literal['']|Session.CreateParamsCustomTextShippingAddressr\   z0Literal['']|Session.CreateParamsCustomTextSubmitr]   zBLiteral['']|Session.CreateParamsCustomTextTermsOfServiceAcceptancer^   Nr@  r-   r-   r-   r.   CreateParamsCustomText  s   
r  c                   @   s   e Zd ZU eed< dS )z6Session.CreateParamsCustomTextTermsOfServiceAcceptancerX   NrE   r-   r-   r-   r.   .CreateParamsCustomTextTermsOfServiceAcceptance   s   
r  c                   @   s   e Zd ZU eed< dS )z$Session.CreateParamsCustomTextSubmitrX   NrE   r-   r-   r-   r.   CreateParamsCustomTextSubmit  s   
r  c                   @   s   e Zd ZU eed< dS )z-Session.CreateParamsCustomTextShippingAddressrX   NrE   r-   r-   r-   r.   %CreateParamsCustomTextShippingAddress  s   
r  c                   @   sZ   e Zd ZU ed ed< eed< ded< ed ed< ed ed	< ed
 ed< ed ed< dS )zSession.CreateParamsCustomField'Session.CreateParamsCustomFieldDropdownrQ   rR   $Session.CreateParamsCustomFieldLabelrC   &Session.CreateParamsCustomFieldNumericrS   r)   rT   #Session.CreateParamsCustomFieldTextrU   rV   rJ   N)r&   r'   r(   r   r*   r,   r   r-   r-   r-   r.   CreateParamsCustomField  s   
r  c                   @   s&   e Zd ZU ed ed< ed ed< dS )r  r+   rL   rM   Nr@  r-   r-   r-   r.   CreateParamsCustomFieldText0  s   
r  c                   @   s&   e Zd ZU ed ed< ed ed< dS )r  r+   rL   rM   Nr@  r-   r-   r-   r.   CreateParamsCustomFieldNumeric:  s   
r  c                   @   s"   e Zd ZU eed< ed ed< dS )r  rI   rJ   N)r&   r'   r(   r,   r*   r   r-   r-   r-   r.   CreateParamsCustomFieldLabelD  s   
r  c                   @   s   e Zd ZU ed ed< dS )r  -Session.CreateParamsCustomFieldDropdownOptionrG   N)r&   r'   r(   r   r*   r-   r-   r-   r.   CreateParamsCustomFieldDropdownN  s   
r  c                   @   s   e Zd ZU eed< eed< dS )r  rC   rD   NrE   r-   r-   r-   r.   %CreateParamsCustomFieldDropdownOptionT  s   
r  c                   @   s&   e Zd ZU ed ed< ed ed< dS )r  zLiteral['auto', 'none']r7   zLiteral['none', 'required']r9   Nr@  r-   r-   r-   r.   CreateParamsConsentCollection^  s   
r  c                   @   s   e Zd ZU eed< dS )r  r#   Nr   r-   r-   r-   r.   CreateParamsAutomaticTaxk  s   
r  c                   @   s   e Zd ZU ed ed< dS )r  +Session.CreateParamsAfterExpirationRecoveryr0   Nr@  r-   r-   r-   r.   CreateParamsAfterExpirationq  s   
r  c                   @   s"   e Zd ZU ed ed< eed< dS )r  r)   r"   r#   N)r&   r'   r(   r   r*   r)   r-   r-   r-   r.   #CreateParamsAfterExpirationRecoveryw  s   
r  c                   @   s   e Zd ZU ed ed< dS )Session.ExpireParamsr&  r'  Nr@  r-   r-   r-   r.   ExpireParams  s   
r  c                   @   s   e Zd ZU ed ed< ed ed< ed ed< ed ed< ed ed	< ed
 ed< ed ed< ed ed< ed ed< ed ed< ed ed< dS )Session.ListParamszSession.ListParamsCreated|intcreatedr,   r"  !Session.ListParamsCustomerDetailscustomer_detailsending_beforer&  r'  r+   limitpayment_intentpayment_linkstarting_afterz&Literal['complete', 'expired', 'open']r5   r   Nr@  r-   r-   r-   r.   
ListParams  s   
r  c                   @   s   e Zd ZU eed< dS )r  rj   NrE   r-   r-   r-   r.   ListParamsCustomerDetails  s   
r  c                   @   s>   e Zd ZU ed ed< ed ed< ed ed< ed ed< dS )zSession.ListParamsCreatedr+   gtZgteltZlteNr@  r-   r-   r-   r.   ListParamsCreated  s
   
r  c                   @   s>   e Zd ZU ed ed< ed ed< ed ed< ed ed< dS )	Session.ListLineItemsParamsr,   r  r&  r'  r+   r  r  Nr@  r-   r-   r-   r.   ListLineItemsParams  s
   
r  c                   @   s   e Zd ZU ed ed< dS )Session.RetrieveParamsr&  r'  Nr@  r-   r-   r-   r.   RetrieveParams  s   
r  r  r"   r@   rA   r  )r<   r>   r  r  r  Zclient_secretconsentr  r  r   currency_conversionrt   r!  r   r"  )alwaysif_requiredr#  r  r$  r$   r|   r   r   r)  r   r*  Zlivemode))r<   bgcsdadeelenzen-GBeszes-419etfiZfilfrzfr-CAhrhur|   itjakor  lvmsmtnbnlplptzpt-BRroruskslsvthtrvizhzzh-HKzzh-TWr+  rw   )paymentsetupr   r-  objectr   r  r   r  r/  $payment_method_configuration_detailsr1  r2  )Zno_payment_requiredZpaidZunpaidZpayment_statusr4  Zrecovered_from)r  r  neverr5  r   r   Zsetup_intentr8  shipping_costshipping_detailsr9  )r3   Zexpiredopenr5   )r<   bookZdonateZpayr:  r   r   r<  r>  total_details)ZembeddedZhostedr?  r%   Nr  )api_keyidempotency_keystripe_versionstripe_accountparamsreturnc                 K   s    t d| d|  |||||S )z+
        Creates a Session object.
        r    post)r   _static_request	class_url)clsr'  r(  r)  r*  r+  r-   r-   r.   create  s    zSession.creater  )sessionr'  r)  r*  r+  r,  c              
   K   s*   t d| jddjt|d||||dS )
        A Session can be expired when it is in one of these statuses: open

        After it expires, a customer can't complete a Session and customers loading the Session see a message saying the Session is expired.
        r    r-  &/v1/checkout/sessions/{session}/expirer2  r'  r)  r*  r+  )r   r.  formatr   sanitize_idr0  r2  r'  r)  r*  r+  r-   r-   r.   _cls_expire  s    zSession._cls_expirec                 K   s   dS r3  Nr-   r2  r'  r)  r*  r+  r-   r-   r.   expire,  s    zSession.expire)r(  r+  r,  c                 K   s   dS r;  r-   selfr(  r+  r-   r-   r.   r=  >  s    r:  c              
   K   s,   t d| jddjt| dd||dS )r3  r    r-  r4  r|   r5  r(  r+  )r   _requestr7  r   r8  getr>  r-   r-   r.   r=  M  s    r  )r'  r)  r*  r+  r,  c                 K   s:   | j d|  ||||d}t|ts6tdt|j |S )z6
        Returns a list of Checkout Sessions.
        rB  r6  z%Expected list object from API, got %s)r.  r/  
isinstancer   	TypeErrorrJ   r&   )r0  r'  r)  r*  r+  resultr-   r-   r.   listf  s    
zSession.listr  c              
   K   s.   t td | jddjt|d||||dS )
        When retrieving a Checkout Session, there is an includable line_items property containing the first handful of those items. There is also a URL where you can retrieve the full (paginated) list of line items.
        r   rB  */v1/checkout/sessions/{session}/line_itemsr5  r6  )r   r   r.  r7  r   r8  r9  r-   r-   r.   _cls_list_line_items  s    zSession._cls_list_line_itemsc                 K   s   dS rG  Nr-   r<  r-   r-   r.   list_line_items  s    zSession.list_line_itemsc                 K   s   dS rJ  r-   r>  r-   r-   r.   rK    s    rI  c              
   K   s0   t td | jddjt| dd||dS )rG  r   rB  rH  r|   r5  r@  )r   r   rA  r7  r   r8  rB  r>  r-   r-   r.   rK    s    r  )r|   r+  r,  c                 K   s   | |fi |}|   |S )z-
        Retrieves a Session object.
        )refresh)r0  r|   r+  instancer-   r-   r.   retrieve  s    zSession.retrieve)r  r  r  r  r  rt   r!  r  r)  r   r1  r4  r8  r"  r#  r9  r>  r&  )NNNN)NNN)NNN)N)N)NNN)NNN)NNN)N)N)r&   r'   r(   __doc__r!   r
   r   r*   r   r2   r6   r;   r?   rB   rW   r_   ro   r{   r~   r   r   r  r  r  r  r  r  r   rA  r   rB  rH  rJ  rM  rP  rR  rX  rY  rZ  r_  rg  rh  ri  rj  rk  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r  r   r)   r+   r,   r   r   r   r   classmethodr   r1  r:  r   staticmethodr=  r	   rF  rI  rK  rN  r1   r-   r-   r-   r.   r    $   s  
S% 6
   s x=.
N f9
$



 x 


 














O$






.0             
r    N)5Zstriper   Zstripe.api_resources.abstractr   r   Z%stripe.api_resources.expandable_fieldr   Z stripe.api_resources.list_objectr   Zstripe.request_optionsr   Zstripe.stripe_objectr   Zstripe.utilr	   typingr
   r   r   r   r   r   Ztyping_extensionsr   r   r   r   r   Zstripe.api_resources.customerr   Zstripe.api_resources.discountr   r  Zstripe.api_resources.invoicer   Zstripe.api_resources.line_itemr   Z#stripe.api_resources.payment_intentr   Z!stripe.api_resources.payment_linkr   Z!stripe.api_resources.setup_intentr   Z"stripe.api_resources.shipping_rater   Z!stripe.api_resources.subscriptionr   Zstripe.api_resources.tax_idr   rr   Zstripe.api_resources.tax_rater   r    r-   r-   r-   r.   <module>   s.    
