Workflows
Workflow documents
Ce workflow couvre le dépôt, la validation, le refus et l'expiration d'un document.
Workflow documents
Ce workflow couvre le dépôt, la validation, le refus et l'expiration d'un document.
sequenceDiagram
participant U as Utilisateur
participant EP as Espace personnel
participant S as Stockage (URL signée)
participant AV as Antivirus
participant ADM as Admin
participant T as TARS
U->>EP: Dépose un document
EP->>T: Demande une URL signée pour le fichier
EP->>S: Envoie le fichier (PUT) sur l'URL signée
S->>AV: Déclenche le contrôle antivirus
AV-->>T: Résultat du contrôle
alt Fichier infecté
T-->>EP: DOCUMENT_HAS_VIRUS, dépôt rejeté
else Fichier sain
T->>T: Contrôle rattachement et visibilité
T->>T: Archive les anciens documents du même type
ADM->>T: Examine le document (statut TO_VALIDATE)
ADM->>T: Valide ou refuse (permission ORGANISATION.DOCUMENT.MANAGE requise)
T-->>EP: Met à jour le statut
T-->>ADM: Conserve la décision
end
Statuts fonctionnels
| Statut | Valeur technique (DocumentStatus) | Signification |
|---|---|---|
| Déposé | TO_VALIDATE | Le document existe mais n'est pas encore validé ; seuls les documents dans ce statut proposent les actions rapides « valider »/« refuser » |
| Validé | VALIDATED | Le document peut débloquer le parcours concerné |
| Refusé | REFUSED | L'utilisateur doit corriger ou remplacer ; un motif accompagne toujours ce statut |
| Expiré | EXPIRED | Le document n'est plus utilisable |
| Archivé | ARCHIVED | Le document n'est plus actif (remplacé ou supprimé côté utilisateur) mais reste consultable en historique |
| Supprimé | DELETED | Retrait explicite déclenché par un admin (appel de suppression réelle, distinct de l'archivage) |
Il n'existe pas de statut technique « en contrôle » distinct : entre le dépôt et la décision, le document reste au statut TO_VALIDATE (le contrôle antivirus a lieu avant l'enregistrement, pas après).
Règles
- Un document doit avoir un propriétaire fonctionnel: personne, organisation, facture, lot ou vente.
- Les documents personnels et financiers sont confidentiels.
- Un refus doit donner une raison exploitable, choisie parmi 3 valeurs prédéfinies (document illisible, non conforme, périmé) ; le champ est obligatoire dans le formulaire de refus.
- Un groupe de documents (ex. KBIS, pièce d'identité) est considéré comme rempli — et débloque donc le parcours associé — dès que ses fichiers sont au statut
VALIDATEDouTO_VALIDATE: le dépôt en attente de validation suffit déjà à lever le blocage fonctionnel, la validation effective n'est pas toujours nécessaire à ce stade. - Une validation peut débloquer un achat, une vente, un paiement ou une organisation.
- Une expiration peut rebloquer un parcours déjà ouvert.
- Les décisions doivent être tracées.
- Seul un admin avec la permission
ORGANISATION.DOCUMENT.MANAGEpeut valider, refuser ou changer le statut d'un document.
Règles observées
- Un document exige une URI, un type et un nom de fichier.
- Un document personnel exige une personne rattachée.
- Un document d'organisation exige une organisation rattachée.
- Un document de facture exige une facture rattachée.
- Le dépôt peut enregistrer l'auteur et la date.
- Le dépôt est bloqué (rejet immédiat,
DOCUMENT_HAS_VIRUS) si le fichier échoue au contrôle antivirus déclenché après l'envoi sur l'URL signée. - Le dépôt d'un nouveau document pour un type déjà couvert archive automatiquement l'ancien document (statut
ARCHIVED), sans suppression physique. - La taille du fichier est contrainte selon le type : 32 Ko à 7 Mo pour une pièce d'identité (personne ou représentant légal), 1 Ko à 7 Mo pour les autres documents Mangopay (KBIS, RIB, justificatif d'adresse).
- Valider un document non facture et non exemption longue durée exige une date d'expiration.
- Un document archivé ou supprimé perd sa date d'expiration.
- La suppression côté utilisateur passe le document au statut archivé ; la suppression côté admin (statut « supprimé ») déclenche un appel de suppression réelle qui retire le document.
- Un document d'identité peut mettre à jour le libellé d'identité de l'organisation.
- Un justificatif d'exemption TVA longue durée validé active l'exemption sur l'organisation.
- L'expiration, la suppression ou le passage en supprimé de ce justificatif désactive l'exemption.
- Les documents qui expirent dans 7 jours sont détectés pour notification.
- Les documents expirés la veille sont détectés comme expirés.
- Les KBIS proches de l'expiration sont détectés sur une fenêtre de 10 jours.
- Pour un groupe soumis à obligation légale par pays (KBIS), le groupe n'est proposé au dépôt que si le pays et le type de société de l'organisation sont reconnus dans le référentiel légal ; le RIB n'est proposé que si le flag KYB est désactivé ou si l'organisation a un accès KYB interne.
Métadonnées de décision observées
| Décision | Métadonnées ajoutées |
|---|---|
| Validation | Date et personne |
| Archivage | Date et personne |
| Refus | Date, personne et motif (1 des 3 valeurs de DocumentRefusedReason) |
| Expiration | Date et personne |
Permissions et rôles observés
| Action | Permission / condition requise |
|---|---|
| Valider / refuser / changer le statut (admin) | Permission ORGANISATION.DOCUMENT.MANAGE sur l'entité concernée |
| Voir les groupes KBIS ou RIB (organisation) | Rôle BUYER ou SELLER sur l'organisation |
| Voir le référentiel légal par pays (accepted paper documents) | Flag KYB actif et utilisateur vendeur |
| Consulter la liste des documents d'une organisation (front client) | Ne pas être le vendeur propriétaire de la boutique consultée (garde spécifique au composable de listing) |