
    ChN                     |    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	  S SK
JrJrJr  S SKJr   " S S	\S	   5      rg
)    )Account)ExpandableField)StripeObject)UpdateableAPIResource)sanitize_id)ClassVarListOptional)Literalc                      \ rS rSr% SrSr\\S      \S'    " S S\	5      r
 " S S\	5      r\S	   \S
'    \\
   \S'   \\S'    \S   \S'    \\S'    \\   \S'    \\   \S'   \S   \S'    S r\S 5       r\S 5       r\
\S.rSrg)
Capability   z
This is an object representing a capability for a Stripe account.

Related guide: [Account capabilities](https://stripe.com/docs/connect/account-capabilities)

capabilityOBJECT_NAMEc                       \ rS rSr%  " S S\5      r " S S\5      r\\\      \	S'    \\
   \	S'    \\   \	S'    \\S	      \	S
'    \\   \	S'    \\   \	S'    \\   \	S'    \\   \	S'    \\S.rSrg)Capability.FutureRequirements   c                   8    \ rS rSr% \\   \S'    \\   \S'   Srg))Capability.FutureRequirements.Alternative   alternative_fields_dueoriginal_fields_due N__name__
__module____qualname____firstlineno__r	   str__annotations____static_attributes__r       U/home/kali/devsecops-assessor/venv/lib/python3.13/site-packages/stripe/_capability.pyAlternativer      "    $(I- "&c*r"   r$   c                   >    \ rS rSr% \S   \S'    \\S'    \\S'   Srg)#Capability.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_legal_entity_structure_mismatch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#   Errorr'       6    ^/` `B K r"   r   alternativescurrent_deadlinecurrently_due
otherzpaused.inactivityzpending.onboardingzpending.reviewplatform_disabledplatform_pausedzrejected.inactivityzrejected.otherzrejected.unsupported_businesszrequirements.fields_neededdisabled_reasonerrorseventually_duepast_duepending_verificationr   r   r   Nr   r   r   r   r   r$   r   r
   r	   r    intr   r   _inner_class_typesr!   r   r"   r#   FutureRequirementsr          	, 	l	L l	\ tK011	 #3-'	 Cy 	 "	.
 	
	 U	 S	!	 s)	 #3i'	 /:UKr"   r   c                       \ rS rSr%  " S S\5      r " S S\5      r\\\      \	S'    \\
   \	S'    \\   \	S'    \\S	      \	S
'    \\   \	S'    \\   \	S'    \\   \	S'    \\   \	S'    \\S.rSrg)Capability.Requirements   c                   8    \ rS rSr% \\   \S'    \\   \S'   Srg)#Capability.Requirements.Alternative   r   r   r   Nr   r   r"   r#   r$   r      r%   r"   r$   c                   >    \ rS rSr% \S   \S'    \\S'    \\S'   Srg)Capability.Requirements.Error   r)   r   r   r   r   Nr   r   r"   r#   r   r      r   r"   r   r   r   r   r   r   r   r   r   r   r   r   Nr   r   r"   r#   Requirementsr      r   r"   r   r   accountfuture_requirementsidobject	requestedrequested_atrequirements)activeinactivependingunrequestedstatusc                     U R                   nU R                  n[        R                  " 5       n[	        U[        5      (       a  UR                   n[        U5      n[        U5      nU< SU< SU< 3$ )N/z/capabilities/)r   r   r   	class_url
isinstancer   )selftokenr   base	acct_extnextns         r#   instance_urlCapability.instance_url  sY    ,,  "gw''jjG(	5!*.	4@@r"   c                     [        S5      e)NzCan't update a capability without an account ID. Update a capability using account.modify_capability('acct_123', 'acap_123', params)NotImplementedError)clssidparamss      r#   modifyCapability.modify  s    !H
 	
r"   c                     [        S5      e)NzCan't retrieve a capability without an account ID. Retrieve a capability using account.retrieve_capability('acct_123', 'acap_123')r   )r   r   r   s      r#   retrieveCapability.retrieve  s    !B
 	
r"   )r   r   r   N)r   r   r   r   __doc__r   r   r   r    r   r   r   r   r
   r   boolr   r   classmethodr   r   r   r!   r   r"   r#   r   r      s     4@K',/0?fL\ fLPfL| fLP Y'' ""455G L!! O 3- <((BCCA 
 
 
 
  2$r"   r   N)stripe._accountr   stripe._expandable_fieldr   stripe._stripe_objectr   stripe._updateable_api_resourcer   stripe._utilr   typingr   r	   r
   typing_extensionsr   r   r   r"   r#   <module>r      s3    $ 4 . A $ + + %O&|4 Or"   