
    jofQx                         d dl 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 d dlmZmZ erd dlmZ  G d	 d
ed
                   ZdS )    N)ExpandableField)StripeObject)UpdateableAPIResource)sanitize_id)ClassVarDictListOptional)LiteralTYPE_CHECKING)Filec                      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 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 G d de          Z G 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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e         ed$<   	 ee         ed%<   	 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f                  ed-<   	 ee         ed.<   	 ed         ed/<   	 ee         ed0<   	 eed1                  ed2<   	 ee         ed3<   ee         ed4<   ee         ed5<   	 ee         ed6<   	 ee         ed7<   eed8                  ed9<   	 d: Zed;             Zed<             Ze	e
eeeeeeeed=
Zd>S )?Persona  
    This is an object representing a person associated with a Stripe account.

    A platform cannot access a person for an account where [account.controller.requirement_collection](https://stripe.com/api/accounts/object#account_object-controller-requirement_collection) is `stripe`, which includes Standard and Express accounts, after creating an Account Link or Account Session to start Connect onboarding.

    See the [Standard onboarding](https://stripe.com/connect/standard-accounts) or [Express onboarding](https://stripe.com/connect/express-accounts) documentation for information about prefilling information and account onboarding steps. Learn more about [handling identity verification with the API](https://stripe.com/connect/handling-api-verification#person-information).
    personOBJECT_NAMEc                   >    e Zd ZU  G d de          Zeed<   deiZdS )Person.AdditionalTosAcceptancesc                   V    e Zd ZU ee         ed<   	 ee         ed<   	 ee         ed<   dS )'Person.AdditionalTosAcceptances.Accountdateip
user_agentN)__name__
__module____qualname__r
   int__annotations__str     H/var/www/html/Alfredo/env/lib/python3.11/site-packages/stripe/_person.pyAccountr      sT         3-  !%%% r    r"   accountN)r   r   r   r   r"   r   _inner_class_typesr   r    r!   AdditionalTosAcceptancesr      sU         	 	 	 	 	l 	 	 	 '1r    r%   c                       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 )Person.Addresscitycountryline1line2postal_codestateNr   r   r   r
   r   r   r   r    r!   Addressr'   ,            sm	 #	 }	 }	 c]"""	 }	 	r    r/   c                       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<   	 ee         ed<   dS )	Person.AddressKanar(   r)   r*   r+   r,   r-   townNr.   r   r    r!   AddressKanar2   F            sm	 #	 }	 }	 c]"""	 }	 sm	 	r    r4   c                       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<   	 ee         ed<   dS )	Person.AddressKanjir(   r)   r*   r+   r,   r-   r3   Nr.   r   r    r!   AddressKanjir7   d   r5   r    r8   c                   V    e Zd ZU ee         ed<   	 ee         ed<   	 ee         ed<   dS )
Person.DobdaymonthyearN)r   r   r   r
   r   r   r   r    r!   Dobr:      sT         c]	 }	 sm	 	r    r>   c                       e Zd ZU  G d de          Z G d de          Ze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dZ
dS )Person.FutureRequirementsc                   >    e Zd ZU ee         ed<   	 ee         ed<   dS )%Person.FutureRequirements.Alternativealternative_fields_dueoriginal_fields_dueNr   r   r   r	   r   r   r   r    r!   AlternativerB      =         $(I--- "&c*** r    rF   c                   >    e Zd ZU ed         ed<   	 eed<   	 eed<   dS )Person.FutureRequirements.ErrorY&invalid_address_city_state_postal_code$invalid_address_highway_contract_boxinvalid_address_private_mailboxinvalid_business_profile_name(invalid_business_profile_name_denylistedinvalid_company_name_denylistedinvalid_dob_age_over_maximuminvalid_dob_age_under_18invalid_dob_age_under_minimum"invalid_product_description_length%invalid_product_description_url_matchinvalid_representative_country.invalid_statement_descriptor_business_mismatch'invalid_statement_descriptor_denylisted#invalid_statement_descriptor_length.invalid_statement_descriptor_prefix_denylisted,invalid_statement_descriptor_prefix_mismatchinvalid_street_addressinvalid_tax_idinvalid_tax_id_formatinvalid_tos_acceptanceinvalid_url_denylistedinvalid_url_formatinvalid_url_length!invalid_url_web_presence_detected1invalid_url_website_business_information_mismatchinvalid_url_website_empty invalid_url_website_inaccessible+invalid_url_website_inaccessible_geoblocked3invalid_url_website_inaccessible_password_protectedinvalid_url_website_incomplete2invalid_url_website_incomplete_cancellation_policy7invalid_url_website_incomplete_customer_service_details1invalid_url_website_incomplete_legal_restrictions,invalid_url_website_incomplete_refund_policy,invalid_url_website_incomplete_return_policy3invalid_url_website_incomplete_terms_and_conditions1invalid_url_website_incomplete_under_constructioninvalid_url_website_otherinvalid_value_otherverification_directors_mismatch&verification_document_address_mismatch%verification_document_address_missingverification_document_corrupt+verification_document_country_not_supported(verification_document_directors_mismatch"verification_document_dob_mismatch$verification_document_duplicate_typeverification_document_expired!verification_document_failed_copy&verification_document_failed_greyscale"verification_document_failed_other&verification_document_failed_test_mode verification_document_fraudulent(verification_document_id_number_mismatch'verification_document_id_number_missing verification_document_incompleteverification_document_invalid2verification_document_issue_or_expiry_date_missing!verification_document_manipulated"verification_document_missing_back#verification_document_missing_front#verification_document_name_mismatch"verification_document_name_missing*verification_document_nationality_mismatch"verification_document_not_readable verification_document_not_signed"verification_document_not_uploaded$verification_document_photo_mismatchverification_document_too_large(verification_document_type_not_supported!verification_extraneous_directors!verification_failed_address_match'verification_failed_business_iec_number"verification_failed_document_match#verification_failed_id_number_match"verification_failed_keyed_identityverification_failed_keyed_matchverification_failed_name_matchverification_failed_other,verification_failed_representative_authority'verification_failed_residential_address verification_failed_tax_id_match%verification_failed_tax_id_not_issuedverification_missing_directorsverification_missing_executivesverification_missing_owners;verification_requires_additional_memorandum_of_associations6verification_requires_additional_proof_of_registrationcodereasonrequirementNr   r   r   r   r   r   r   r    r!   ErrorrI      \         XJZ Z Z Zv KKK  r    r   alternativescurrently_dueerrorseventually_duepast_duepending_verificationr   r   Nr   r   r   r   rF   r   r
   r	   r   r   r$   r   r    r!   FutureRequirementsr@              	 	 	 	 	, 	 	 	f	 f	 f	 f	 f	L f	 f	 f	P tK01111	 Cy   	 U	 S	!!!	 s)	 #3i'''	 /:UKKr    r   c                       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 )Person.RegisteredAddressr(   r)   r*   r+   r,   r-   Nr.   r   r    r!   RegisteredAddressr     r0   r    r   c                       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<   	 ee         ed<   dS )	Person.Relationshipdirector	executivelegal_guardianownerpercent_ownershiprepresentativetitleN)r   r   r   r
   boolr   floatr   r   r    r!   Relationshipr   7  s         4.   	 D>!!!	 !&&&	 ~	 $E?***	 !&&&	 }	 	r    r   c                       e Zd ZU  G d de          Z G d de          Ze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dZ
dS )Person.Requirementsc                   >    e Zd ZU ee         ed<   	 ee         ed<   dS )Person.Requirements.AlternativerC   rD   NrE   r   r    r!   rF   r   V  rG   r    rF   c                   >    e Zd ZU ed         ed<   	 eed<   	 eed<   dS )Person.Requirements.ErrorrJ   r   r   r   Nr   r   r    r!   r   r   `  r   r    r   r   r   r   r   r   r   r   Nr   r   r    r!   Requirementsr   U  r   r    r   c                       e Zd ZU  G d de          Z G d de          Zee         ed<   	 ee         ed<   	 ee         ed<   	 ee         ed<   eed	<   	 eed
Z	dS )Person.Verificationc                       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 )&Person.Verification.AdditionalDocumentr   backdetailsdetails_codefrontNr   r   r   r
   r   r   r   r   r    r!   AdditionalDocumentr     w         ?623333 c]""" #3-''' OF34444 r    r   c                       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 )Person.Verification.Documentr   r   r   r   r   Nr   r   r    r!   Documentr     r   r    r   additional_documentr   r   documentstatus)r   r   N)
r   r   r   r   r   r   r
   r   r   r$   r   r    r!   Verificationr     s         	 	 	 	 	 	 	 	$	 	 	 	 	| 	 	 	$ &&89999	 #	 sm###	 8$$$$	 $6 
 
r    r   r#   additional_tos_acceptancesaddressaddress_kanaaddress_kanjicreateddobemail
first_namefirst_name_kanafirst_name_kanjifull_name_aliasesfuture_requirementsgenderidid_number_providedid_number_secondary_provided	last_namelast_name_kanalast_name_kanjimaiden_namemetadatanationalityobjectphone)existingnonepolitical_exposureregistered_addressrelationshiprequirementsssn_last_4_providedverificationTdeletedc                     | j         }| j        }t          j                                        }|J t          |          }t          |          }|d|d|S )N/z	/persons/)r   r#   striper"   	class_urlr   )selftokenr#   base	acct_extnextns         r!   instance_urlzPerson.instance_url  s`    ,~''))"""((	5!!%)TT999dd;;r    c                      t          d          )NzCan't modify a person without an account ID. Use stripe.Account.modify_person('account_id', 'person_id', ...) (see https://stripe.com/docs/api/persons/update).NotImplementedError)clssidparamss      r!   modifyzPerson.modify  s    !@
 
 	
r    c                      t          d          )NzCan't retrieve a person without an account ID. Use stripe.Account.retrieve_person('account_id', 'person_id') (see https://stripe.com/docs/api/persons/retrieve).r  )r
  r   r  s      r!   retrievezPerson.retrieve  s    !B
 
 	
r    )
r   r   r   r   r   r   r   r   r   r   N)r   r   r   __doc__r   r   r   r   r   r%   r/   r4   r8   r>   r   r   r   r   r   r
   r   r   r	   r   r   r  classmethodr  r  r$   r   r    r!   r   r      s@          08K'(+,7772 2 2 2 2< 2 2 2$    ,   4    l   <    |   <    l   KL KL KL KL KL\ KL KL KLZ    L   4    |   <KL KL KL KL KL| KL KL KLZ9
 9
 9
 9
 9
| 9
 9
 9
v c] !))A BBBBg;'''' L)))) LLL 
#C=  c]""" sm###  S	**** ""45555 SM 	GGG !&&& #+4.000 } SM!!! c]""" # tCH~&&&& # H C= !);!<==== !!23333<((((<(((( "$''' <((((gdm$$$$< < < 
 
 [
 
 
 [
 '?#%1/$$$ r    r   )r   stripe._expandable_fieldr   stripe._stripe_objectr   stripe._updateable_api_resourcer   stripe._utilr   typingr   r   r	   r
   typing_extensionsr   r   stripe._filer   r   r   r    r!   <module>r     s     4 4 4 4 4 4 . . . . . . A A A A A A $ $ $ $ $ $ 1 1 1 1 1 1 1 1 1 1 1 1 4 4 4 4 4 4 4 4 "!!!!!!a
 a
 a
 a
 a
"8, a
 a
 a
 a
 a
r    