
    +h1                         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 d dlmZmZmZmZmZ er6d 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#  G d ded         Z$y)    )ListableAPIResource)
ListObject)RequestOptions)StripeObject)ClassVarListOptional)LiteralNotRequired	TypedDictUnpackTYPE_CHECKING)Authorization)CreditReversal)DebitReversal)InboundTransfer)OutboundPayment)OutboundTransfer)ReceivedCredit)ReceivedDebit)TransactionEntryc                   8   e Zd ZU dZdZeed      ed<    G d de      Z	 G d de      Z
 G d d	e      Zer7 G d
 de      Z G d de      Z G d de      Z G d de      Z G d de      Zeed<   	 e	ed<   	 eed<   	 eed<   	 eed<   	 eed      ed<   	 eed<   	 ee   ed<   	 ee
   ed<   	 ed   ed<   	 eed <   	 eed!<   	 ed   ed"<   	 ed#   ed$<   	 eed%<   e	 	 	 d1d'ee   d(ee   d)ee   d*ed+   d,ed    f
d-       Zed ed*ed.   d,d fd/       Ze	e
ed0Zy&)2Transactionz{
    Transactions represent changes to a [FinancialAccount's](https://stripe.com/docs/api#financial_accounts) balance.
    ztreasury.transactionOBJECT_NAMEc                   0    e Zd ZU eed<   	 eed<   	 eed<   y)Transaction.BalanceImpactcashinbound_pendingoutbound_pendingN)__name__
__module____qualname__int__annotations__     \/var/www/html/venv/lib/python3.12/site-packages/stripe/api_resources/treasury/transaction.pyBalanceImpactr   )   s&    		 	 	r&   r(   c                       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<   y)Transaction.FlowDetailsr   credit_reversalr   debit_reversalr   inbound_transferr   issuing_authorizationr   outbound_paymentr   outbound_transferr   received_creditr   received_debit	r+   r,   r-   r.   otherr/   r0   r1   r2   typeN)r    r!   r"   r	   r$   r
   r%   r&   r'   FlowDetailsr*   7   s    !"233	 !11	 ##455	  (88	 ##455	
 $$677	
 ""233	 !11	 

 
	
	r&   r6   c                   0    e Zd ZU ee   ed<   	 ee   ed<   y)Transaction.StatusTransitions	posted_atvoid_atN)r    r!   r"   r	   r#   r$   r%   r&   r'   StatusTransitionsr8   o   s"    C= 	 #	r&   r;   c                       e Zd ZU ed   ed<   ed   ed<   	 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<   y)Transaction.ListParamsz!Transaction.ListParamsCreated|intcreatedstrending_before	List[str]expandfinancial_accountr#   limitzLiteral['created', 'posted_at']order_bystarting_afterz!Literal['open', 'posted', 'void']status'Transaction.ListParamsStatusTransitionsstatus_transitionsN)r    r!   r"   r   r$   r?   r%   r&   r'   
ListParamsr=   {   s     !DEE&u--  ,,  #" u%% ""CDD (..   CDD !,9! r&   rJ   c                       e Zd ZU ed   ed<   y)rH   z3Transaction.ListParamsStatusTransitionsPostedAt|intr9   Nr    r!   r"   r   r$   r%   r&   r'   ListParamsStatusTransitionsz'Transaction.ListParamsStatusTransitions   s    "E r&   rM   c                   T    e Zd ZU ed   ed<   	 ed   ed<   	 ed   ed<   	 ed   ed<   y)/Transaction.ListParamsStatusTransitionsPostedAtr#   gtgteltlteNrL   r%   r&   r'   #ListParamsStatusTransitionsPostedAtrO      H    E"" U## E"" U##r&   rT   c                   T    e Zd ZU ed   ed<   	 ed   ed<   	 ed   ed<   	 ed   ed<   y)Transaction.ListParamsCreatedr#   rP   rQ   rR   rS   NrL   r%   r&   r'   ListParamsCreatedrW      rU   r&   rX   c                       e Zd ZU ed   ed<   y)Transaction.RetrieveParamsrA   rB   NrL   r%   r&   r'   RetrieveParamsrZ      s    ,,r&   r[   amountbalance_impactr>   currencydescriptionr   entriesrC   flowflow_detailsr3   	flow_typeidlivemodeobject)openpostedvoidrG   rI   Napi_keystripe_versionstripe_accountparamsr=   returnc                     | j                  d| j                         ||||      }t        |t              s!t	        dt        |      j                  z        |S )z:
        Retrieves a list of Transaction objects.
        get)rj   rk   rl   rm   z%Expected list object from API, got %s)_static_request	class_url
isinstancer   	TypeErrorr5   r    )clsrj   rk   rl   rm   results         r'   listzTransaction.list  sf     $$MMO)) % 
 &*-7<((* 
 r&   rZ   c                 8     | |fi |}|j                          |S )zC
        Retrieves the details of an existing Transaction.
        )refresh)ru   rd   rm   instances       r'   retrievezTransaction.retrieve2  s$     r$V$r&   )r]   rb   rI   )NNN)r    r!   r"   __doc__r   r   r
   r$   r   r(   r6   r;   r   r   rJ   r   rM   rT   rX   r[   r#   r?   r	   r   boolclassmethodr   rw   r{   _inner_class_typesr%   r&   r'   r   r       s    	 &'  6l 6pL  #	 #	J	) 		) 	$		 	$	^ 	 K "! L M  j!3455  3- ;'' 	
 
 	G N *++ ,-- *) "&(,(,	# ! !	
 12 
M	" 6  &'C D	  (#/r&   r   N)%stripe.api_resources.abstractr    stripe.api_resources.list_objectr   stripe.request_optionsr   stripe.stripe_objectr   typingr   r   r	   typing_extensionsr
   r   r   r   r   *stripe.api_resources.issuing.authorizationr   -stripe.api_resources.treasury.credit_reversalr   ,stripe.api_resources.treasury.debit_reversalr   .stripe.api_resources.treasury.inbound_transferr   .stripe.api_resources.treasury.outbound_paymentr   /stripe.api_resources.treasury.outbound_transferr   -stripe.api_resources.treasury.received_creditr   ,stripe.api_resources.treasury.received_debitr   /stripe.api_resources.treasury.transaction_entryr   r   r%   r&   r'   <module>r      s^    > 7 1 - + +  HLJNN MJ
a%m4 ar&   