Moral Accounts by rogelioLpz · Pull Request #373 · cuenca-mx/cuenca-python
@@ -0,0 +1,69 @@
import datetime as dt
from typing import List, Optional
from cuenca_validations.types import Address, CurpField, PhoneNumber, Rfc from pydantic import BaseModel, EmailStr
class BusinessDetails(BaseModel): business_description: str account_usage_description: str
class TransactionalProfile(BaseModel): currency: str monthly_amount: str recipients_num: int payers_num: int internal_transfers_amount: int internal_transfers_num: int spei_transfers_amount: int spei_transfers_num: int
class LicenseDetails(BaseModel): license_required: bool supervisory_entity: Optional[str] = None license_type: Optional[str] = None license_date: Optional[dt.date] = None
class AuditDetails(BaseModel): has_audit: bool audit_provider: Optional[str] = None audit_date: Optional[dt.date] = None audit_comments: Optional[str] = None
class VulnerableActivityDetails(BaseModel): is_vulnerable_activity: bool has_sat_register: bool = None sat_registered_date: Optional[dt.date] = None is_in_compliance: Optional[bool] = None
class PhysicalPerson(BaseModel): # Usar curp_validation? names: str first_surname: str second_surname: Optional[str] = None curp: CurpField rfc: Rfc
class LegalRepresentative(PhysicalPerson): job: str phone_number: Optional[PhoneNumber] email_address: Optional[EmailStr] address: Optional[Address]
class ShareholderPhysical(PhysicalPerson): percentage: str
class ShareholderMoral(BaseModel): name: str percentage: str shareholders: List[ShareholderPhysical] legal_representatives: List[LegalRepresentative]
from cuenca_validations.types import Address, CurpField, PhoneNumber, Rfc from pydantic import BaseModel, EmailStr
class BusinessDetails(BaseModel): business_description: str account_usage_description: str
class TransactionalProfile(BaseModel): currency: str monthly_amount: str recipients_num: int payers_num: int internal_transfers_amount: int internal_transfers_num: int spei_transfers_amount: int spei_transfers_num: int
class LicenseDetails(BaseModel): license_required: bool supervisory_entity: Optional[str] = None license_type: Optional[str] = None license_date: Optional[dt.date] = None
class AuditDetails(BaseModel): has_audit: bool audit_provider: Optional[str] = None audit_date: Optional[dt.date] = None audit_comments: Optional[str] = None
class VulnerableActivityDetails(BaseModel): is_vulnerable_activity: bool has_sat_register: bool = None sat_registered_date: Optional[dt.date] = None is_in_compliance: Optional[bool] = None
class PhysicalPerson(BaseModel): # Usar curp_validation? names: str first_surname: str second_surname: Optional[str] = None curp: CurpField rfc: Rfc
class LegalRepresentative(PhysicalPerson): job: str phone_number: Optional[PhoneNumber] email_address: Optional[EmailStr] address: Optional[Address]
class ShareholderPhysical(PhysicalPerson): percentage: str
class ShareholderMoral(BaseModel): name: str percentage: str shareholders: List[ShareholderPhysical] legal_representatives: List[LegalRepresentative]