
    (gY                         S SK r S SKJr  S SKJr  S SKJr  S SKJr  S SK	J
r
JrJrJr  S SKJrJr  \(       a  S SKJr   " S	 S
\S
   5      rg)    N)ExpandableField)StripeObject)UpdateableAPIResource)sanitize_id)ClassVarDictListOptional)LiteralTYPE_CHECKING)Filec                      \ rS rSr% SrSr\\S      \S'    " S S\	5      r
 " S S\	5      r " S	 S
\	5      r " S S\	5      r " S S\	5      r " S S\	5      r " S S\	5      r " S S\	5      r " S S\	5      r " S S\	5      r\\   \S'    \\
   \S'   \\   \S'   \\   \S'    \\   \S'    \\S'    \\   \S'   \\   \S '    \\   \S!'    \\   \S"'    \\   \S#'    \\\      \S$'    \\   \S%'    \\   \S&'    \\S''    \\   \S('    \\   \S)'    \\   \S*'    \\   \S+'    \\   \S,'    \\   \S-'    \\\\4      \S.'    \\   \S/'    \S   \S0'    \\   \S1'    \\S2      \S3'    \\   \S4'   \\   \S5'   \\   \S6'    \\   \S7'    \\   \S8'   \\S9      \S:'    S; r\S< 5       r\S= 5       r\
\\\\\\\\\S>.
rS?rg@)APerson   a  
This is an object representing a person associated with a Stripe account.

A platform can only access a subset of data in 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                   F    \ rS rSr%  " S S\5      r\\   \S'    S\0rSr	g)Person.AdditionalTosAcceptances   c                   J    \ rS rSr% \\   \S'    \\   \S'    \\   \S'   Srg)'Person.AdditionalTosAcceptances.Account   dateip
user_agent N)	__name__
__module____qualname____firstlineno__r
   int__annotations__str__static_attributes__r       SC:\Suresh\moveshuttle\MDcreated\moveengine\venv\Lib\site-packages\stripe/_person.pyAccountr      s3    3-  !%r%   r'   accountr   N)
r   r   r   r    r   r'   r
   r"   _inner_class_typesr$   r   r%   r&   AdditionalTosAcceptancesr      s-    	l 	 '""	 (1r%   r*   c                       \ rS rSr% \\   \S'    \\   \S'    \\   \S'    \\   \S'    \\   \S'    \\   \S'   Srg	)
Person.Address/   citycountryline1line2postal_codestater   Nr   r   r   r    r
   r#   r"   r$   r   r%   r&   Addressr,   /   f    sm	 #	 }	 }	 c]"	 }	r%   r5   c                       \ rS rSr% \\   \S'    \\   \S'    \\   \S'    \\   \S'    \\   \S'    \\   \S'    \\   \S'   S	rg
)Person.AddressKanaI   r.   r/   r0   r1   r2   r3   townr   Nr4   r   r%   r&   AddressKanar8   I   w    sm	 #	 }	 }	 c]"	 }	 sm	r%   r;   c                       \ rS rSr% \\   \S'    \\   \S'    \\   \S'    \\   \S'    \\   \S'    \\   \S'    \\   \S'   S	rg
)Person.AddressKanjig   r.   r/   r0   r1   r2   r3   r:   r   Nr4   r   r%   r&   AddressKanjir>   g   r<   r%   r@   c                   J    \ rS rSr% \\   \S'    \\   \S'    \\   \S'   Srg)
Person.Dob   daymonthyearr   N)r   r   r   r    r
   r!   r"   r$   r   r%   r&   DobrB      s3    c]	 }	 sm	r%   rG   c                       \ rS rSr%  " S S\5      r " S S\5      r\\\      \	S'    \\
   \	S'    \\   \	S'    \\
   \	S	'    \\
   \	S
'    \\
   \	S'    \\S.rSrg)Person.FutureRequirements   c                   8    \ rS rSr% \\   \S'    \\   \S'   Srg)%Person.FutureRequirements.Alternative   alternative_fields_dueoriginal_fields_duer   Nr   r   r   r    r	   r#   r"   r$   r   r%   r&   AlternativerL      "    $(I- "&c*r%   rQ   c                   >    \ rS rSr% \S   \S'    \\S'    \\S'   Srg)Person.FutureRequirements.Error   ^information_missing&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_signator.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_authorizer_authority'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_owners0verification_rejected_ownership_exemption_reason;verification_requires_additional_memorandum_of_associations6verification_requires_additional_proof_of_registrationverification_supportabilitycodereasonrequirementr   Nr   r   r   r    r   r"   r#   r$   r   r%   r&   ErrorrT      6    ]/_ _@ K r%   r   alternativescurrently_dueerrorseventually_duepast_duepending_verificationr   r   r   Nr   r   r   r    r   rQ   r   r
   r	   r"   r#   r)   r$   r   r%   r&   FutureRequirementsrI          	, 	k	L k	Z tK011	 Cy 	 U	 S	!	 s)	 #3i'	 /:UKr%   r   c                       \ rS rSr% \\   \S'    \\   \S'    \\   \S'    \\   \S'    \\   \S'    \\   \S'   Srg	)
Person.RegisteredAddressi%  r.   r/   r0   r1   r2   r3   r   Nr4   r   r%   r&   RegisteredAddressr   %  r6   r%   r   c                       \ rS rSr% \\   \S'    \\   \S'    \\   \S'    \\   \S'    \\   \S'    \\   \S'    \\   \S'    \\   \S	'   S
r	g)Person.Relationshipi?  
authorizerdirector	executivelegal_guardianownerpercent_ownershiprepresentativetitler   N)
r   r   r   r    r
   boolr"   floatr#   r$   r   r%   r&   Relationshipr   ?  s    TN"	 4. 	 D>!	 !&	 ~	 $E?*	 !&	 }	r%   r   c                       \ rS rSr%  " S S\5      r " S S\5      r\\\      \	S'    \\
   \	S'    \\   \	S'    \\
   \	S	'    \\
   \	S
'    \\
   \	S'    \\S.rSrg)Person.Requirementsia  c                   8    \ rS rSr% \\   \S'    \\   \S'   Srg)Person.Requirements.Alternativeib  rN   rO   r   NrP   r   r%   r&   rQ   r   b  rR   r%   rQ   c                   >    \ rS rSr% \S   \S'    \\S'    \\S'   Srg)Person.Requirements.Erroril  rV   r   r   r   r   Nr   r   r%   r&   r   r   l  r   r%   r   r   r   r   r   r   r   r   r   Nr   r   r%   r&   Requirementsr   a  r   r%   r   c                       \ rS rSr%  " S S\5      r " S S\5      r\\   \S'    \\	   \S'    \\	   \S'    \\   \S	'   \	\S
'    \\S.r
Srg)Person.Verificationi  c                   h    \ rS rSr% \\S      \S'    \\   \S'    \\   \S'    \\S      \S'   Srg)	&Person.Verification.AdditionalDocumenti  r   backdetailsdetails_codefrontr   N	r   r   r   r    r
   r   r"   r#   r$   r   r%   r&   AdditionalDocumentr     P    ?6233 c]" #3-' OF344r%   r   c                   h    \ rS rSr% \\S      \S'    \\   \S'    \\   \S'    \\S      \S'   Srg)	Person.Verification.Documenti  r   r   r   r   r   r   Nr   r   r%   r&   Documentr     r   r%   r   additional_documentr   r   documentstatus)r   r   r   N)r   r   r   r    r   r   r   r
   r"   r#   r)   r$   r   r%   r&   Verificationr     sv    	 	$	| 	$ &&8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                     U R                   nU R                  n[        R                  R	                  5       nUc   e[        U5      n[        U5      nU< SU< SU< 3$ )N/z	/persons/)r   r(   striper'   	class_urlr   )selftokenr(   base	acct_extnextns         r&   instance_urlPerson.instance_url  sS    ,,~~'')"""(	5!%)9d;;r%   c                     [        S5      e)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&   modifyPerson.modify  s    !@
 	
r%   c                     [        S5      e)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&   retrievePerson.retrieve  s    !B
 	
r%   )
r   r   r   r   r   r   r	  r
  r  r  r   N) r   r   r   r    __doc__r   r   r   r"   r   r*   r5   r;   r@   rG   r   r   r   r   r   r
   r#   r!   r	   r   r   r  classmethodr   r#  r)   r$   r   r%   r&   r   r      s	    08K'(+,72< 2*, 4l <| <l PL\ PLdL 4 |  DPL| PLd9
| 9
v c] !))A BBg;'' L)) L 
#C=  c]" sm#  S	** ""455 SM 	G !& #+4.0 } SM! c]" # tCH~&& # H C= !);!<== !!2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.     s9     4 . A $ 1 1 4!r
"8, r
r%   