o
    rN)jx                    @   s  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 d dlmZ d dlmZ d d	lmZ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 erd 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l0m1Z1 d dl2m3Z3 d dl4m5Z5 d dl6m7Z7 d dl8m9Z9 d dl:m;Z; d dl<m=Z= d dl>m?Z? d dl@mAZA d dlBmCZC d dlDmEZE d dlFmGZG d d lHmIZI d d!lJmKZK d d"lLmMZM d d#lNmOZO d d$lPmQZQ d d%lRmSZS G d&d' d'ed' ed' e	d' ed' ZTeTeTjU_Vd(S ))    )CreateableAPIResource)DeletableAPIResource)ExpandableField)
ListObject)ListableAPIResource)StripeObjectUntypedStripeObject)APIResourceTestHelpers)UpdateableAPIResource)class_method_variantsanitize_id)ClassVarListOptionalUnioncastoverload)LiteralTypeUnpackTYPE_CHECKING)Account)BankAccount)Card)Charge)PaymentIntent)PaymentMethod)Refund)SetupIntent)Source)ReaderCancelActionParams)ReaderCollectInputsParams) ReaderCollectPaymentMethodParams) ReaderConfirmPaymentIntentParams)ReaderCreateParams)ReaderDeleteParams)ReaderListParams)ReaderModifyParams) ReaderPresentPaymentMethodParams) ReaderProcessPaymentIntentParams)ReaderProcessSetupIntentParams)ReaderRefundPaymentParams)ReaderRetrieveParams)ReaderSetReaderDisplayParams)"ReaderSucceedInputCollectionParams)"ReaderTimeoutInputCollectionParams)Locationc                   @   sv
  e Zd ZU dZdZeed  ed< G dd deZ	e
e	 ed< 	 e
ed  ed< 	 e
e ed	< 	 ed
 ed< 	 eed< 	 e
e ed< 	 eed< 	 e
e ed< 	 eed< 	 e
ed  ed< 	 ee ed< 	 ed ed< 	 eed< 	 e
ed  ed< 	 ededed dd fddZeededed dd fddZeded dd fd dZed!ded dd fd"dZededed dd fd#d$Zeededed dd fd%d&Zeded dd fd'd&Zed(ded dd fd)d&Zededed* dd fd+d,Zeededed* dd fd-d.Zeded* dd fd/d.Zed0ded* dd fd1d.Zededed* dd fd2d3Zeededed* dd fd4d5Zeded* dd fd6d5Zed7ded* dd fd8d5Zededed9 dd fd:d;Zeededed9 dd fd<d=Zeded9 dd fd>d=Zed?ded9 dd fd@d=Zededed9 dd fdAdBZeededed9 dd fdCdDZ eded9 dd fdEdDZ edFded9 dd fdGdDZ edededH dd fdIdJZ!eedededH dd fdKdLZ"ededH dd fdMdLZ"edNdedH dd fdOdLZ"edededH dd fdPdQZ#eedededH dd fdRdSZ$ededH dd fdTdSZ$edUdedH dd fdVdSZ$ededW dd fdXdYZ%ededW dd fdZd[Z&ed\eded] dd fd^d_Z'eed\eded] dd fd`daZ(eded] dd fdbdaZ(edcded] dd fdddaZ(ed\eded] dd fdedfZ)eed\eded] dd fdgdhZ*eded] dd fdidhZ*edjded] dd fdkdhZ*ededl de+d  fdmdnZ,ededl de+d  fdodpZ-edededq dd fdrdsZ.edededq dd fdtduZ/edededv dd fdwdxZ0eedededv dd fdydzZ1ededv dd fd{dzZ1ed|dedv dd fd}dzZ1edededv dd fd~dZ2eedededv dd fddZ3ededv dd fddZ3eddedv dd fddZ3ededed dd fddZ4eededed dd fddZ5eded dd fddZ5edded dd fddZ5ededed dd fddZ6eededed dd fddZ7eded dd fddZ7edded dd fddZ7ededed dd fddZ8eededed dd fddZ9eded dd fddZ9edded dd fddZ9ededed dd fddZ:eededed dd fddZ;eded dd fddZ;edded dd fddZ;ededed dd fddZ<ededed dd fddZ=ededed dd fddZ>eededed dd fddZ?eded dd fddZ?edded dd fddZ?ededed dd fddZ@eededed dd fddZAeded dd fddZAedded dd fddZAG dd deBd  ZCeDdd ZEde	iZFdS )Readerz
    A Reader represents a physical device for accepting payment details.

    Related guide: [Connecting to a reader](https://docs.stripe.com/terminal/payments/connect-reader)
    zterminal.readerOBJECT_NAMEc                
   @   sl  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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d< 	 ee
 ed< 	 ee ed< 	 ee ed< 	 ed ed< 	 ed  ed!< 	 eeeeee	e
eed"	Zd#S )$zReader.Actionc                   @   s   e Zd ZU ee ed< 	 ee ed< 	 eed  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d ed< 	 ed ed< 	 ee ed< 	 ee ed< 	 ed ed< 	 eed  ed< ed ed< dS )zReader.Action.ApiErroradvice_codecharge)account_closedaccount_country_invalid_address6account_error_country_change_requires_additional_stepsaccount_information_mismatchaccount_invalidaccount_number_invalid%account_token_required_for_v2_accountacss_debit_session_incompleteaction_blockedalipay_upgrade_requiredamount_too_largeamount_too_smallapi_key_expiredapplication_fees_not_allowedapproval_requiredauthentication_requiredbalance_insufficientbalance_invalid_parameter bank_account_bad_routing_numbersbank_account_declinedbank_account_existsbank_account_restrictedbank_account_unusablebank_account_unverified bank_account_verification_failedbilling_invalid_mandatebitcoin_upgrade_required$capture_charge_authorization_expiredcapture_unauthorized_payment card_decline_rate_limit_exceededcard_declined cardholder_phone_number_requiredcharge_already_capturedcharge_already_refundedcharge_disputedcharge_exceeds_source_limit charge_exceeds_transaction_limitcharge_expired_for_capturecharge_invalid_parametercharge_not_refundableclearing_code_unsupportedcountry_code_invalidcountry_unsupportedcoupon_expiredcustomer_max_payment_methodscustomer_max_subscriptionscustomer_session_expiredcustomer_tax_location_invaliddebit_not_authorizedemail_invalidexpired_card&financial_connections_account_inactive5financial_connections_account_pending_account_numbers9financial_connections_account_unavailable_account_numbers7financial_connections_no_successful_transaction_refreshforwarding_api_inactive forwarding_api_invalid_parameter'forwarding_api_retryable_upstream_error(forwarding_api_upstream_connection_error*forwarding_api_upstream_connection_timeoutforwarding_api_upstream_erroridempotency_key_in_useincorrect_addressincorrect_cvcincorrect_numberincorrect_zip(india_recurring_payment_mandate_canceledinstant_payouts_config_disabled!instant_payouts_currency_disabledinstant_payouts_limit_exceededinstant_payouts_unsupportedinsufficient_fundsintent_invalid_state"intent_verification_method_missinginvalid_card_typeinvalid_charactersinvalid_charge_amountinvalid_cvcinvalid_expiry_monthinvalid_expiry_year'invalid_mandate_reference_prefix_formatinvalid_numberinvalid_source_usageinvalid_tax_locationinvoice_no_customer_line_itemsinvoice_no_payment_method_types"invoice_no_subscription_line_itemsinvoice_not_editable!invoice_on_behalf_of_not_editable&invoice_payment_intent_requires_actioninvoice_upcoming_nonelivemode_mismatchlock_timeoutmissing
no_accountnot_allowed_on_standard_accountout_of_inventory!ownership_declaration_not_allowedparameter_invalid_emptyparameter_invalid_integerparameter_invalid_string_blankparameter_invalid_string_emptyparameter_missingparameter_unknownparameters_exclusivepayment_intent_action_required%payment_intent_authentication_failure*payment_intent_incompatible_payment_method payment_intent_invalid_parameter3payment_intent_konbini_rejected_confirmation_numberpayment_intent_mandate_invalid&payment_intent_payment_attempt_expired%payment_intent_payment_attempt_failed"payment_intent_rate_limit_exceededpayment_intent_unexpected_state,payment_method_bank_account_already_verified#payment_method_bank_account_blocked.payment_method_billing_details_address_missing%payment_method_configuration_failures payment_method_currency_mismatchpayment_method_customer_decline payment_method_invalid_parameter)payment_method_invalid_parameter_testmode"payment_method_microdeposit_failed,payment_method_microdeposit_processing_error8payment_method_microdeposit_verification_amounts_invalid9payment_method_microdeposit_verification_amounts_mismatch:payment_method_microdeposit_verification_attempts_exceededApayment_method_microdeposit_verification_descriptor_code_mismatch0payment_method_microdeposit_verification_timeoutpayment_method_not_availablepayment_method_provider_declinepayment_method_provider_timeoutpayment_method_unactivatedpayment_method_unexpected_statepayment_method_unsupported_typepayout_reconciliation_not_readypayouts_limit_exceededpayouts_not_allowedplatform_account_requiredplatform_api_key_expiredpostal_code_invalidprocessing_errorproduct_inactive%progressive_onboarding_limit_exceeded
rate_limitrefer_to_customerrefund_disputed_paymentrequest_blockedresource_already_existsresource_missingreturn_intent_already_processedrouting_number_invalidsecret_key_requiredsepa_unsupported_account:service_period_coupon_with_metered_tiered_item_unsupportedsetup_attempt_failed#setup_intent_authentication_failuresetup_intent_invalid_parametersetup_intent_mandate_invalid&setup_intent_mobile_wallet_unsupported"setup_intent_setup_attempt_expiredsetup_intent_unexpected_stateshipping_address_invalidshipping_calculation_failedsiret_invalidsku_inactivestate_unsupportedstatus_transition_invalidstorer_capability_missingstorer_capability_not_activestripe_tax_inactivetax_id_invalidtax_id_prohibitedtaxes_calculation_failed%terminal_location_country_unsupportedterminal_reader_busyterminal_reader_hardware_fault/terminal_reader_invalid_location_for_activation,terminal_reader_invalid_location_for_paymentterminal_reader_offlineterminal_reader_timeouttestmode_charges_onlytls_version_unsupportedtoken_already_usedtoken_card_network_invalidtoken_in_use+transfer_source_balance_parameters_mismatchtransfers_not_allowedurl_invalidcodedecline_codedoc_urlmessagenetwork_advice_codenetwork_decline_codeparamr   payment_intentr   payment_methodpayment_method_typerequest_log_urlr   setup_intent)r   r   r   r   source)	api_error
card_erroridempotency_errorinvalid_request_errortypeN)__name__
__module____qualname__r   str__annotations__r   r    r
  r
  x/var/www/html/finance.cargoinsureonline.com/_shared/backend-venv/lib/python3.10/site-packages/stripe/terminal/_reader.pyApiErrorS   sN   
  Cr  c                   @   sF   e Zd ZU G dd deZee ed< 	 eee	  ed< 	 deiZ
dS )zReader.Action.CollectInputsc                	   @   sB  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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d< 	 ee
 ed< 	 eee  ed< 	 ed ed< 	 eeeeee	e
edZdS )z!Reader.Action.CollectInputs.Inputc                   @   sD   e Zd ZU ee ed< 	 ee ed< 	 ee ed< 	 ee ed< dS )z,Reader.Action.CollectInputs.Input.CustomTextdescriptionskip_buttonsubmit_buttontitleNr  r  r  r   r  r	  r
  r
  r
  r  
CustomText|  s   
 r  c                   @      e Zd ZU ee ed< dS )z'Reader.Action.CollectInputs.Input.EmailvalueNr  r
  r
  r
  r  Email     
 r  c                   @   r  )z)Reader.Action.CollectInputs.Input.Numericr  Nr  r
  r
  r
  r  Numeric  r  r  c                   @   r  )z'Reader.Action.CollectInputs.Input.Phoner  Nr  r
  r
  r
  r  Phone  r  r  c                   @   sP   e Zd ZU G dd deZee ed< 	 ee ed< 	 ee ed< 	 deiZ	dS )z+Reader.Action.CollectInputs.Input.Selectionc                   @   s6   e Zd ZU ee ed< 	 eed  ed< 	 eed< dS )z2Reader.Action.CollectInputs.Input.Selection.Choiceid)primary	secondarystyletextN)r  r  r  r   r  r	  r   r
  r
  r
  r  Choice  s   
 r  choicesr  r  N)
r  r  r  r   r  r   r	  r   r  _inner_class_typesr
  r
  r
  r  	Selection  s   
 r!  c                   @   r  )z+Reader.Action.CollectInputs.Input.Signaturer  Nr  r
  r
  r
  r  	Signature  r  r"  c                   @   r  )z&Reader.Action.CollectInputs.Input.Textr  Nr  r
  r
  r
  r  Text  r  r#  c                   @   sL   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(Reader.Action.CollectInputs.Input.Toggle)disabledenableddefault_valuer  r  r  N)r  r  r  r   r   r	  r  r
  r
  r
  r  Toggle  s   
 r'  custom_textemailnumericphonerequired	selection	signatureskippedr  toggles)r)  r*  r+  r-  r.  r  r  )r(  r)  r*  r+  r-  r.  r  r0  N)r  r  r  r   r  r  r  r  r!  r"  r#  r'  r   r	  boolr   r   r   r
  r
  r
  r  Input{  sT   
 
r2  inputsmetadataN)r  r  r  r   r2  r   r	  r   r   r  r   r
  r
  r
  r  CollectInputsz  s   
  r5  c                   @   sP   e Zd ZU G dd deZee ed< 	 ed ed< 	 ed ed< 	 deiZdS )	z"Reader.Action.CollectPaymentMethodc                   @   sP   e Zd ZU G dd deZee ed< 	 ee ed< 	 ee ed< 	 deiZdS )z0Reader.Action.CollectPaymentMethod.CollectConfigc                   @   r  )z8Reader.Action.CollectPaymentMethod.CollectConfig.Tippingamount_eligibleNr  r  r  r   intr	  r
  r
  r
  r  Tipping%  r  r9  enable_customer_cancellationskip_tippingtippingN)	r  r  r  r   r9  r   r1  r	  r   r
  r
  r
  r  CollectConfig$     
 r=  collect_configr   r   r   r   N)	r  r  r  r   r=  r   r	  r   r   r
  r
  r
  r  CollectPaymentMethod#  s   
 r@  c                   @   sB   e Zd ZU G dd deZee ed< 	 ed ed< 	 deiZdS )z"Reader.Action.ConfirmPaymentIntentc                   @   r  )z0Reader.Action.ConfirmPaymentIntent.ConfirmConfig
return_urlNr  r
  r
  r
  r  ConfirmConfigL  r  rB  confirm_configr   r   N)	r  r  r  r   rB  r   r	  r   r   r
  r
  r
  r  ConfirmPaymentIntentK  s   
 rD  c                   @   B   e Zd ZU G dd deZee ed< 	 ed ed< 	 deiZdS )zReader.Action.PrintContentc                   @   s4   e Zd ZU eed< 	 eed< 	 eed< 	 eed< dS )z Reader.Action.PrintContent.Image
created_atfilenamesizer  Nr  r  r  r8  r	  r  r
  r
  r
  r  Image]  s   
 rJ  imager  N)	r  r  r  r   rJ  r   r	  r   r   r
  r
  r
  r  PrintContent\  s   
 rL  c                   @   sB   e Zd ZU G dd deZed ed< 	 ee ed< 	 deiZdS )z"Reader.Action.ProcessPaymentIntentc                   @   s^   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< 	 deiZ	dS )z0Reader.Action.ProcessPaymentIntent.ProcessConfigc                   @   r  )z8Reader.Action.ProcessPaymentIntent.ProcessConfig.Tippingr6  Nr7  r
  r
  r
  r  r9  {  r  r9  r:  rA  r;  r<  N)
r  r  r  r   r9  r   r1  r	  r  r   r
  r
  r
  r  ProcessConfigz  s   
 rM  r   r   process_configN)	r  r  r  r   rM  r   r	  r   r   r
  r
  r
  r  ProcessPaymentIntenty  s   
 rO  c                   @   sP   e Zd ZU G dd deZee ed< 	 ee ed< 	 ed ed< 	 deiZ	dS )z Reader.Action.ProcessSetupIntentc                   @   r  )z.Reader.Action.ProcessSetupIntent.ProcessConfigr:  Nr  r  r  r   r1  r	  r
  r
  r
  r  rM    r  rM  generated_cardrN  r   r   N)
r  r  r  r   rM  r   r  r	  r   r   r
  r
  r
  r  ProcessSetupIntent  r>  rR  c                   @   s   e Zd ZU G dd deZee ed< 	 eed  ed< 	 ee	e
  ed< 	 eed  ed< 	 eed	  ed
< 	 eed  ed< 	 ee ed< 	 ee ed< 	 ee ed< 	 deiZdS )zReader.Action.RefundPaymentc                   @   r  )z/Reader.Action.RefundPayment.RefundPaymentConfigr:  NrP  r
  r
  r
  r  RefundPaymentConfig  r  rS  amountr   r4   r4  r   r   )	duplicate
fraudulentrequested_by_customerreasonr   refundrefund_application_feerefund_payment_configreverse_transferN)r  r  r  r   rS  r   r8  r	  r   r   r  r   r1  r   r
  r
  r
  r  RefundPayment  s.   
 r]  c                   @   rE  )zReader.Action.SetReaderDisplayc                   @   sV   e Zd ZU G dd deZeed< 	 ee ed< 	 ee	 ed< 	 e	ed< 	 deiZ
dS )z#Reader.Action.SetReaderDisplay.Cartc                   @   s*   e Zd ZU eed< 	 eed< 	 eed< dS )z,Reader.Action.SetReaderDisplay.Cart.LineItemrT  r  quantityNrI  r
  r
  r
  r  LineItem  s   
 r_  currency
line_itemstaxtotalN)r  r  r  r   r_  r  r	  r   r   r8  r   r
  r
  r
  r  Cart  s   
 rd  cartr  N)	r  r  r  r   rd  r   r	  r   r   r
  r
  r
  r  SetReaderDisplay  s   
 !rf  r   collect_inputscollect_payment_methodconfirm_payment_intentfailure_codefailure_messageprint_contentprocess_payment_intentprocess_setup_intentrefund_paymentset_reader_display)failedin_progress	succeededstatus)rg  rh  ri  rl  rm  rn  ro  rp  r  )	r   rg  rh  ri  rl  rm  rn  ro  rp  N)r  r  r  r   r  r5  r@  rD  rL  rO  rR  r]  rf  r   r	  r  r   r   r
  r
  r
  r  ActionR   sf   
   ) *($/,

ru  actionTdeleteddevice_sw_version)bbpos_chipper2xbbpos_wisepad3bbpos_wisepos_emobile_phone_readersimulated_stripe_s700simulated_stripe_s710simulated_verifone_m425simulated_verifone_p630simulated_verifone_ux700simulated_verifone_v660psimulated_wisepos_e	stripe_m2stripe_s700stripe_s710verifone_P400verifone_m425verifone_p630verifone_ux700verifone_v660pdevice_typer  
ip_addresslabellast_seen_atlivemoder0   locationr4  objectserial_number)offlineonlinert  readerparamsr    returnc                 K   "   t d| jddjt|d|dS )
        Cancels the current reader action. See [Programmatic Cancellation](https://docs.stripe.com/docs/terminal/payments/collect-card-payment?terminal-sdk-platform=server-driven#programmatic-cancellation) for more details.
        r1   post+/v1/terminal/readers/{reader}/cancel_actionr  r  r   _static_requestformatr   clsr  r  r
  r
  r  _cls_cancel_action     zReader._cls_cancel_actionc                 K      dS r  Nr
  r  r  r
  r
  r  cancel_action     zReader.cancel_actionc                 K   r  r  r
  selfr  r
  r
  r  r       r  c              	   K   *   t d| jddjt| jdd|dS )r  r1   r  r  r  r  r  r   _requestr  r   _datagetr  r
  r
  r  r       c                    *   t d| jddjt|d|dI dH S )r  r1   r  r  r  r  Nr   _static_request_asyncr  r   r  r
  r
  r  _cls_cancel_action_async     
zReader._cls_cancel_action_asyncc                       dS r  r
  r  r
  r
  r  cancel_action_async     zReader.cancel_action_asyncc                    r  r  r
  r  r
  r
  r  r       r  c              	      2   t d| jddjt| jdd|dI dH S )r  r1   r  r  r  r  r  Nr   _request_asyncr  r   r  r  r  r
  r
  r  r       
r!   c                 K   r  )
        Initiates an [input collection flow](https://docs.stripe.com/docs/terminal/features/collect-inputs) on a Reader to display input forms and collect information from your customers.
        r1   r  ,/v1/terminal/readers/{reader}/collect_inputsr  r  r  r  r
  r
  r  _cls_collect_inputs  r  zReader._cls_collect_inputsc                 K   r  r  Nr
  r  r
  r
  r  rg  #  r  zReader.collect_inputsc                 K   r  r  r
  r  r
  r
  r  rg  -  r  r  c              	   K   r  )r  r1   r  r  r  r  r  r  r  r
  r
  r  rg  6  r  c                    r  )r  r1   r  r  r  r  Nr  r  r
  r
  r  _cls_collect_inputs_asyncH  r  z Reader._cls_collect_inputs_asyncc                    r  r  r
  r  r
  r
  r  collect_inputs_asyncZ  r  zReader.collect_inputs_asyncc                    r  r  r
  r  r
  r
  r  r  d  r  r  c              	      r  )r  r1   r  r  r  r  r  Nr  r  r
  r
  r  r  m  r  r"   c                 K   r  )G  
        Initiates a payment flow on a Reader and updates the PaymentIntent with card details before manual confirmation. See [Collecting a Payment method](https://docs.stripe.com/docs/terminal/payments/collect-card-payment?terminal-sdk-platform=server-driven&process=inspect#collect-a-paymentmethod) for more details.
        r1   r  4/v1/terminal/readers/{reader}/collect_payment_methodr  r  r  r  r
  r
  r  _cls_collect_payment_method  r  z"Reader._cls_collect_payment_methodc                 K   r  r  Nr
  r  r
  r
  r  rh    r  zReader.collect_payment_methodc                 K   r  r  r
  r  r
  r
  r  rh    r  r  c              	   K   r  )r  r1   r  r  r  r  r  r  r  r
  r
  r  rh    r  c                    r  )r  r1   r  r  r  r  Nr  r  r
  r
  r  !_cls_collect_payment_method_async  r  z(Reader._cls_collect_payment_method_asyncc                    r  r  r
  r  r
  r
  r  collect_payment_method_async  r  z#Reader.collect_payment_method_asyncc                    r  r  r
  r  r
  r
  r  r    r  r  c              	      r  )r  r1   r  r  r  r  r  Nr  r  r
  r
  r  r    r  r#   c                 K   r  )
        Finalizes a payment on a Reader. See [Confirming a Payment](https://docs.stripe.com/docs/terminal/payments/collect-card-payment?terminal-sdk-platform=server-driven&process=inspect#confirm-the-paymentintent) for more details.
        r1   r  4/v1/terminal/readers/{reader}/confirm_payment_intentr  r  r  r  r
  r
  r  _cls_confirm_payment_intent  r  z"Reader._cls_confirm_payment_intentc                 K   r  r  Nr
  r  r
  r
  r  ri    r  zReader.confirm_payment_intentc                 K   r  r  r
  r  r
  r
  r  ri  	  r  r  c              	   K   r  )r  r1   r  r  r  r  r  r  r  r
  r
  r  ri    r  c                    r  )r  r1   r  r  r  r  Nr  r  r
  r
  r  !_cls_confirm_payment_intent_async$  r  z(Reader._cls_confirm_payment_intent_asyncc                    r  r  r
  r  r
  r
  r  confirm_payment_intent_async6  r  z#Reader.confirm_payment_intent_asyncc                    r  r  r
  r  r
  r
  r  r  @  r  r  c              	      r  )r  r1   r  r  r  r  r  Nr  r  r
  r
  r  r  I  r  r$   c                 K   s   t d| jd|  |dS ).
        Creates a new Reader object.
        r1   r  r  )r   r  	class_urlr  r  r
  r
  r  create[  s   zReader.createc                    s"   t d| jd|  |dI dH S )r  r1   r  r  N)r   r  r  r  r
  r
  r  create_asynci  s   
zReader.create_asyncsidr%   c                 K   *   d|   t|f }td| jd||dS )*
        Deletes a Reader object.
        %s/%sr1   deleter  r  r   r   r  r  r  r  urlr
  r
  r  _cls_deletey     zReader._cls_deletec                 K   r  r  Nr
  r  r  r
  r
  r  r    s   zReader.deletec                 K   r  r  r
  r  r
  r
  r  r    s   r  c                 K   s   | j d|  |dS )r  r  r  )_request_and_refreshinstance_urlr  r
  r
  r  r    s
   c                    2   d|   t|f }td| jd||dI dH S )r  r  r1   r  r  Nr  r   r   r  r  r
  r
  r  _cls_delete_async     
zReader._cls_delete_asyncc                    r  r  r
  r  r
  r
  r  delete_async  r  zReader.delete_asyncc                    r  r  r
  r  r
  r
  r  r    r  r  c                    s   | j d|  |dI dH S )r  r  r  N)_request_and_refresh_asyncr  r  r
  r
  r  r    s   r&   c                 K   s4   | j d|  |d}t|tstdt|j |S )3
        Returns a list of Reader objects.
        r  r  %Expected list object from API, got %s)r  r  
isinstancer   	TypeErrorr  r  r  r  resultr
  r
  r  list  s   
zReader.listc                    s<   | j d|  |dI dH }t|tstdt|j |S )r  r  r  Nr  )r  r  r  r   r  r  r  r  r
  r
  r  
list_async  s   
zReader.list_asyncr'   c                 K   r  )
        Updates a Reader object by setting the values of the parameters passed. Any parameters not provided will be left unchanged.
        r  r1   r  r  r  r  r  r  r  r
  r
  r  modify  r  zReader.modifyc                    r  )r  r  r1   r  r  Nr  r  r
  r
  r  modify_async  r  zReader.modify_asyncr)   c                 K   r  )
        Initiates a payment flow on a Reader. See [process the payment](https://docs.stripe.com/docs/terminal/payments/collect-card-payment?terminal-sdk-platform=server-driven&process=immediately#process-payment) for more details.
        r1   r  4/v1/terminal/readers/{reader}/process_payment_intentr  r  r  r  r
  r
  r  _cls_process_payment_intent!  r  z"Reader._cls_process_payment_intentc                 K   r  r  Nr
  r  r
  r
  r  rm  3  r  zReader.process_payment_intentc                 K   r  r  r
  r  r
  r
  r  rm  =  r  r  c              	   K   r  )r  r1   r  r  r  r  r  r  r  r
  r
  r  rm  F  r  c                    r  )r  r1   r  r  r  r  Nr  r  r
  r
  r  !_cls_process_payment_intent_asyncX  r  z(Reader._cls_process_payment_intent_asyncc                    r  r  r
  r  r
  r
  r  process_payment_intent_asyncj  r  z#Reader.process_payment_intent_asyncc                    r  r  r
  r  r
  r
  r  r  t  r  r  c              	      r  )r  r1   r  r  r  r  r  Nr  r  r
  r
  r  r  }  r  r*   c                 K   r  )
        Initiates a SetupIntent flow on a Reader. See [Save directly without charging](https://docs.stripe.com/docs/terminal/features/saving-payment-details/save-directly) for more details.
        r1   r  2/v1/terminal/readers/{reader}/process_setup_intentr  r  r  r  r
  r
  r  _cls_process_setup_intent  r  z Reader._cls_process_setup_intentc                 K   r  r  Nr
  r  r
  r
  r  rn    r  zReader.process_setup_intentc                 K   r  r  r
  r  r
  r
  r  rn    r  r   c              	   K   r  )r  r1   r  r  r  r  r  r  r  r
  r
  r  rn    r  c                    r  )r  r1   r  r  r  r  Nr  r  r
  r
  r  _cls_process_setup_intent_async  r  z&Reader._cls_process_setup_intent_asyncc                    r  r  r
  r  r
  r
  r  process_setup_intent_async  r  z!Reader.process_setup_intent_asyncc                    r  r  r
  r  r
  r
  r  r    r  r  c              	      r  )r  r1   r  r  r  r  r  Nr  r  r
  r
  r  r    r  r+   c                 K   r  )
        Initiates an in-person refund on a Reader. See [Refund an Interac Payment](https://docs.stripe.com/docs/terminal/payments/regional?integration-country=CA#refund-an-interac-payment) for more details.
        r1   r  ,/v1/terminal/readers/{reader}/refund_paymentr  r  r  r  r
  r
  r  _cls_refund_payment  r  zReader._cls_refund_paymentc                 K   r  r  Nr
  r  r
  r
  r  ro    r  zReader.refund_paymentc                 K   r  r  r
  r  r
  r
  r  ro    r  r  c              	   K   r  )r  r1   r  r  r  r  r  r  r  r
  r
  r  ro  "  r  c                    r  )r  r1   r  r  r  r  Nr  r  r
  r
  r  _cls_refund_payment_async4  r  z Reader._cls_refund_payment_asyncc                    r  r  r
  r  r
  r
  r  refund_payment_asyncF  r  zReader.refund_payment_asyncc                    r  r  r
  r  r
  r
  r  r	  P  r  r  c              	      r  )r  r1   r  r  r  r  r  Nr  r  r
  r
  r  r	  Y  r  r,   c                 K   s   | |fi |}|   |S ),
        Retrieves a Reader object.
        )refreshr  r  r  instancer
  r
  r  retrievek  s   zReader.retrievec                    s$   | |fi |}|  I dH  |S )r
  N)refresh_asyncr  r
  r
  r  retrieve_asyncv  s   zReader.retrieve_asyncr-   c                 K   r  )y
        Sets the reader display to show [cart details](https://docs.stripe.com/docs/terminal/features/display).
        r1   r  0/v1/terminal/readers/{reader}/set_reader_displayr  r  r  r  r
  r
  r  _cls_set_reader_display  r  zReader._cls_set_reader_displayc                 K   r  r  Nr
  r  r
  r
  r  rp    r  zReader.set_reader_displayc                 K   r  r  r
  r  r
  r
  r  rp    r  r  c              	   K   r  )r  r1   r  r  r  r  r  r  r  r
  r
  r  rp    r  c                    r  )r  r1   r  r  r  r  Nr  r  r
  r
  r  _cls_set_reader_display_async  r  z$Reader._cls_set_reader_display_asyncc                    r  r  r
  r  r
  r
  r  set_reader_display_async  r  zReader.set_reader_display_asyncc                    r  r  r
  r  r
  r
  r  r    r  r  c              	      r  )r  r1   r  r  r  r  r  Nr  r  r
  r
  r  r    r  c                   @   s  e Zd ZU ed ed< ededed ddfddZe	e
deded ddfd	d
Ze	ded ddfdd
Zedded ddfdd
Zededed ddfddZe	e
deded ddfddZe	ded ddfddZedded ddfddZededed ddfddZe	e
deded ddfddZe	ded ddfddZedded ddfddZededed ddfddZe	e
deded ddfdd Ze	ded ddfd!d Zed"ded ddfd#d Zededed$ ddfd%d&Ze	e
deded$ ddfd'd(Ze	ded$ ddfd)d(Zed*ded$ ddfd+d(Zededed$ ddfd,d-Ze	e
deded$ ddfd.d/Ze	ded$ ddfd0d/Zed1ded$ ddfd2d/Zd3S )4zReader.TestHelpersr1   _resource_clsr  r  r(   r  c                 K   r  )
            Presents a payment method on a simulated reader. Can be used to simulate accepting a payment, saving a card or refunding a transaction.
            r1   r  A/v1/test_helpers/terminal/readers/{reader}/present_payment_methodr  r  r  r  r
  r
  r  _cls_present_payment_method     	z.Reader.TestHelpers._cls_present_payment_methodc                 K   r  r  Nr
  r  r
  r
  r  present_payment_method  r  z)Reader.TestHelpers.present_payment_methodc                 K   r  r  r
  r  r
  r
  r  r    r  r  c              	   K   .   t d| jjddjt| jjdd|dS )r  r1   r  r  r  r  r  r   resourcer  r  r   r  r  r  r
  r
  r  r       c                    r  )r  r1   r  r  r  r  Nr  r  r
  r
  r  !_cls_present_payment_method_async+     	
z4Reader.TestHelpers._cls_present_payment_method_asyncc                    r  r  r
  r  r
  r
  r  present_payment_method_async?  r  z/Reader.TestHelpers.present_payment_method_asyncc                    r  r  r
  r  r
  r
  r  r$  I  r  r"  c              	      6   t d| jjddjt| jjdd|dI dH S )r  r1   r  r  r  r  r  Nr   r   r  r  r   r  r  r  r
  r
  r  r$  R     
r.   c                 K   r  )k
            Use this endpoint to trigger a successful input collection on a simulated reader.
            r1   r  C/v1/test_helpers/terminal/readers/{reader}/succeed_input_collectionr  r  r  r  r
  r
  r  _cls_succeed_input_collectiond  r  z0Reader.TestHelpers._cls_succeed_input_collectionc                 K   r  r(  Nr
  r  r
  r
  r  succeed_input_collectionx  r  z+Reader.TestHelpers.succeed_input_collectionc                 K   r  r+  r
  r  r
  r
  r  r,    r  r*  c              	   K   r  )r(  r1   r  r)  r  r  r  r  r  r
  r
  r  r,    r!  c                    r  )r(  r1   r  r)  r  r  Nr  r  r
  r
  r  #_cls_succeed_input_collection_async  r#  z6Reader.TestHelpers._cls_succeed_input_collection_asyncc                    r  r+  r
  r  r
  r
  r  succeed_input_collection_async  r  z1Reader.TestHelpers.succeed_input_collection_asyncc                    r  r+  r
  r  r
  r
  r  r.    r  r-  c              	      r%  )r(  r1   r  r)  r  r  r  Nr&  r  r
  r
  r  r.    r'  r/   c                 K   r  )w
            Use this endpoint to complete an input collection with a timeout error on a simulated reader.
            r1   r  C/v1/test_helpers/terminal/readers/{reader}/timeout_input_collectionr  r  r  r  r
  r
  r  _cls_timeout_input_collection  r  z0Reader.TestHelpers._cls_timeout_input_collectionc                 K   r  r/  Nr
  r  r
  r
  r  timeout_input_collection  r  z+Reader.TestHelpers.timeout_input_collectionc                 K   r  r2  r
  r  r
  r
  r  r3    r  r1  c              	   K   r  )r/  r1   r  r0  r  r  r  r  r  r
  r
  r  r3    r!  c                    r  )r/  r1   r  r0  r  r  Nr  r  r
  r
  r  #_cls_timeout_input_collection_async	  r#  z6Reader.TestHelpers._cls_timeout_input_collection_asyncc                    r  r2  r
  r  r
  r
  r  timeout_input_collection_async#	  r  z1Reader.TestHelpers.timeout_input_collection_asyncc                    r  r2  r
  r  r
  r
  r  r5  -	  r  r4  c              	      r%  )r/  r1   r  r0  r  r  r  Nr&  r  r
  r
  r  r5  6	  r'  N)r  r  r  r   r	  classmethodr  r   r  r   staticmethodr  r   r"  r$  r*  r,  r-  r.  r1  r3  r4  r5  r
  r
  r
  r  TestHelpers  s`  
 r8  c                 C   s
   |  | S )N)r8  )r  r
  r
  r  test_helpersH	  s   
zReader.test_helpersN)Gr  r  r  __doc__r2   r   r   r	  r   ru  r   r  r8  r1  r   r   r6  r   r  r   r7  r  r   r  r  r  rg  r  r  r  rh  r  r  r  ri  r  r  r  r  r  r  r  r  r   r  r  r  r  r  rm  r  r  r   rn  r  r  r  ro  r  r	  r  r  r  rp  r  r  r	   r8  propertyr9  r   r
  r
  r
  r  r1   D   s  
       


  [
r1   N)Wstripe._createable_api_resourcer   stripe._deletable_api_resourcer   stripe._expandable_fieldr   stripe._list_objectr   stripe._listable_api_resourcer   stripe._stripe_objectr   r   stripe._test_helpersr	   stripe._updateable_api_resourcer
   stripe._utilr   r   typingr   r   r   r   r   r   typing_extensionsr   r   r   r   stripe._accountr   stripe._bank_accountr   stripe._cardr   stripe._charger   stripe._payment_intentr   stripe._payment_methodr   stripe._refundr   stripe._setup_intentr   stripe._sourcer   3stripe.params.terminal._reader_cancel_action_paramsr    4stripe.params.terminal._reader_collect_inputs_paramsr!   <stripe.params.terminal._reader_collect_payment_method_paramsr"   <stripe.params.terminal._reader_confirm_payment_intent_paramsr#   ,stripe.params.terminal._reader_create_paramsr$   ,stripe.params.terminal._reader_delete_paramsr%   *stripe.params.terminal._reader_list_paramsr&   ,stripe.params.terminal._reader_modify_paramsr'   <stripe.params.terminal._reader_present_payment_method_paramsr(   <stripe.params.terminal._reader_process_payment_intent_paramsr)   :stripe.params.terminal._reader_process_setup_intent_paramsr*   4stripe.params.terminal._reader_refund_payment_paramsr+   .stripe.params.terminal._reader_retrieve_paramsr,   8stripe.params.terminal._reader_set_reader_display_paramsr-   >stripe.params.terminal._reader_succeed_input_collection_paramsr.   >stripe.params.terminal._reader_timeout_input_collection_paramsr/   stripe.terminal._locationr0   r1   r8  r  r
  r
  r
  r  <module>   s~    
                  