
    kh                         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 erd dlmZ d d	lmZ d d
lmZ  G d de      Zy)    )RequestOptions)StripeService)sanitize_id)Transaction)TransactionLineItemService)Optionalcast)TYPE_CHECKING)&TransactionCreateFromCalculationParams)TransactionCreateReversalParams)TransactionRetrieveParamsc            	            e Zd Z fdZ	 	 ddeded   dee   defdZ	 	 ddeded   dee   defdZ		 ddd	dee   defd
Z
	 ddd	dee   defdZ	 ddddee   defdZ	 ddddee   defdZ xZS )TransactionServicec                 X    t         |   |       t        | j                        | _        y N)super__init__r   
_requestor
line_items)self	requestor	__class__s     _/var/www/api/v1/venv_fitandmore/lib/python3.12/site-packages/stripe/tax/_transaction_service.pyr   zTransactionService.__init__   s     #4T__E    transactionparamsr   optionsreturnc                 |    t        t        | j                  ddj                  t	        |            d||            S )5
        Retrieves a Tax Transaction object.
        get"/v1/tax/transactions/{transaction}r   apibase_addressr   r   )r	   r   _requestformatr   r   r   r   r   s       r   retrievezTransactionService.retrieve   sN     MM4;; +K 8 <  #  
 	
r   c                    K   t        t        | j                  ddj                  t	        |            d||       d{         S 7 w)r    r!   r"   r#   r$   r%   N)r	   r   _request_asyncr(   r   r)   s       r   retrieve_asyncz!TransactionService.retrieve_async4   s^      %%4;; +K 8 <  # &  
 	
s   =A
A
 	A
r   c           
      J    t        t        | j                  ddd||            S )
        Creates a Tax Transaction from a calculation, if that calculation hasn't expired. Calculations expire after 90 days.
        post,/v1/tax/transactions/create_from_calculationr$   r%   r	   r   r'   r   r   r   s      r   create_from_calculationz*TransactionService.create_from_calculationJ   s4     MM>"  	
 		
r   c           
      f   K   t        t        | j                  ddd||       d{         S 7 w)r/   r0   r1   r$   r%   Nr	   r   r,   r3   s      r   create_from_calculation_asyncz0TransactionService.create_from_calculation_async]   sD      %%>" &  	
 		
   $1/
	1r   c           
      J    t        t        | j                  ddd||            S )O
        Partially or fully reverses a previously created Transaction.
        r0   $/v1/tax/transactions/create_reversalr$   r%   r2   r3   s      r   create_reversalz"TransactionService.create_reversalp   s4     MM6"  	
 		
r   c           
      f   K   t        t        | j                  ddd||       d{         S 7 w)r:   r0   r;   r$   r%   Nr6   r3   s      r   create_reversal_asyncz(TransactionService.create_reversal_async   sD      %%6" &  	
 		
r8   )NNr   )__name__
__module____qualname__r   strr   r   r   r*   r-   r4   r7   r<   r>   __classcell__)r   s   @r   r   r      s1   F 9=,0	

 45
 .)	

 

2 9=,0	

 45
 .)	

 

2 -1
8
 .)
 
	
, -1
8
 .)
 
	
, -1
1
 .)
 
	
, -1
1
 .)
 
	
r   r   N)stripe._request_optionsr   stripe._stripe_servicer   stripe._utilr   stripe.tax._transactionr   )stripe.tax._transaction_line_item_servicer   typingr   r	   typing_extensionsr
   =stripe.params.tax._transaction_create_from_calculation_paramsr   5stripe.params.tax._transaction_create_reversal_paramsr   .stripe.params.tax._transaction_retrieve_paramsr   r    r   r   <module>rO      s@    3 0 $ / " +
{
 {
r   