Code source de henrri_connect.models.payments

"""
Modèles Pydantic représentant les entités de paiement dans l'API Henrri.

Attributs:
- PaymentMilestone: Représente une étape de paiement dans l'API Henrri Connect.
- TaxDetail: Représente les détails de taxe dans l'API Henrri Connect.
- TaxDetailArray: Représente un tableau de détails de taxe dans l'API Henrri Connect.
"""

from __future__ import annotations

from .base import CamelModel, Link

[docs] class PaymentMilestone(CamelModel): """ Représente une étape de paiement dans l'API Henrri Connect. Attributs: - id: Identifiant unique de l'étape de paiement. - amount: Montant de l'étape de paiement. - percentage: Pourcentage de l'étape de paiement. - due_date: Date d'échéance de l'étape de paiement. - is_paid: Indique si l'étape de paiement est payée. - document_id: Identifiant du document associé à l'étape de paiement. - payment_id: Identifiant du paiement associé à l'étape de paiement (si applicable). - links: Liste de liens associés à l'étape de paiement (si applicable). """ id: int | None = None amount: float | None = None percentage: float | None = None due_date: str is_paid: bool = False document_id: int payment_id: int | None = None links: list[Link] | None = None
[docs] class TaxDetail(CamelModel): """ Représente les détails de taxe dans l'API Henrri Connect. Attributs: - rate: Taux de taxe. - price_before_tax: Prix total avant taxe. - tax_amount: Montant total de la taxe. - price_after_tax: Prix total après taxe. """ rate: float = 0.0 price_before_tax: float = 0.0 tax_amount: float = 0.0 price_after_tax: float = 0.0
[docs] class TaxDetailArray(CamelModel): """ Représente un tableau de détails de taxe dans l'API Henrri Connect. Attributs: - tax_detail_array: Liste des détails de taxe. - document_id: Identifiant du document associé aux détails de taxe. - links: Liste de liens associés au tableau de détails de taxe (si applicable). """ tax_detail_array: list[TaxDetail] | None = None document_id: str | None = None links: list[Link] | None = None