Aller au contenu

Émission de la police

flowchart TD
  subgraph systeme["Système"]
    a["Premier paiement réussi"]:::status
    b["Tâche d'émission<br/>3 essais"]:::action
    chk["Vérifications<br/>offre non rejetée, email de contact,<br/>contrat pas déjà signé"]:::action
    f1["Échec après 3 essais<br/>alerte Slack à l'équipe"]:::problem
    pol["Police créée et active<br/>première période"]:::status
    ctr["Contrat généré et signé par Inqase<br/>modèle Word converti en PDF"]:::action
    iss["Offre : police émise"]:::done
    com["Commission et bordereau"]:::action
    ds["DocuSign confirme la signature<br/>contrat signé enregistré"]:::external
    x1["Pas d'email d'émission<br/>ni de notification courtier"]:::problem
  end
  subgraph equipe["Équipe Inqase"]
    ad1["Parcours manuel<br/>générer le contrat"]:::action
    ad2["Signature par DocuSign, SMS,<br/>signature manuelle ou dépôt"]:::action
    ad3["Émettre la police"]:::action
  end
  subgraph client["Client"]
    m1["EMAIL : Police active<br/>À : contact de l'offre<br/>Type : transactionnel, contrat joint"]:::email
  end
  subgraph courtier["Courtier"]
    m2["EMAIL ou PORTAIL : Police émise<br/>À : chaque utilisateur du cabinet<br/>Type : notification portail, email sauf si désactivé"]:::email
  end
  a --> b
  b --> chk
  b -->|échec| f1
  chk --> pol
  pol --> ctr
  ctr -->|police signée| iss
  iss -->|envoie à l'émission| m1
  iss -->|envoie à l'émission| m2
  iss --> com
  ad1 --> ad2
  ad2 -->|DocuSign| ds
  ds -->|offre : police émise| x1
  ad2 -->|SMS ou dépôt, offre signée| ad3
  ad3 --> iss
  classDef action fill:#ffe86d,stroke:#a28e26,color:#574900
  classDef status fill:#9ce6ff,stroke:#2c97bb,color:#1c4657
  classDef done fill:#b3e65f,stroke:#6f9a24,color:#2c4300
  classDef problem fill:#ffb575,stroke:#b8742f,color:#5a2d00
  classDef email fill:#b8acfb,stroke:#8a7be0,color:#231266
  classDef external fill:#e5e7eb,stroke:#9ca3af,color:#374151

Deux chemins mènent à « police émise » ; seuls l’automatique et le bouton « Émettre » envoient les emails, pas la signature DocuSign.

  1. Le premier paiement réussi lance la tâche d’émission, une seule à la fois par paiement.
  2. La tâche vérifie que l’offre n’est pas rejetée, qu’un email de contact existe et que le contrat n’est pas déjà signé.
  3. Elle crée la police et sa première période, génère le contrat en PDF et le signe pour Inqase.
  4. L’offre passe à police émise : l’email d’émission part au contact de l’offre (contrat joint) et chaque utilisateur du cabinet est notifié.
  5. La commission du courtier est rattrapée au bordereau, voir Commissions et bordereau.
  6. Parcours manuel : l’équipe génère le contrat, le fait signer (DocuSign, SMS ou dépôt), puis clique sur « Émettre la police ». DocuSign marque la police émise tout seul à la signature.
  • Une signature DocuSign émet la police sans email d’émission, sans notification au courtier et sans rattrapage de commission. Faut-il émettre le même événement qu’en automatique ?
  • Marquer à la main un paiement par virement déclenche aussi l’émission automatique, qui signe pour Inqase : le parcours manuel ne sert alors qu’en repli. Est-ce voulu ?
  • Si la génération du contrat échoue trois fois, la police existe déjà et l’offre est déjà « police émise », sans contrat ni email. Le bouton de génération n’est plus proposé ensuite (lecture du code, à confirmer). Comment relance-t-on ?
  • Sans email de contact, la tâche s’arrête avec un simple avertissement dans les journaux : pas d’alerte Slack, pas de police. Qui le détecte ?
  • Aucun fournisseur SMS n’est branché : en production le code de signature n’est pas envoyé. Retire-t-on cette option ?

Numérotation, conditions figées, signature DocuSign et liens de connexion sont dans Polices et renouvellements. Le paiement qui précède est dans Du clic au paiement.

  • app/Jobs/ProcessPolicyAfterPayment.php
  • app/Services/PolicyService.php, PolicyDocumentService.php, DocuSignService.php
  • app/Http/Controllers/Admin/Pipeline/ActionController.php
  • app/Listeners/Broker/NotifyBrokerOfPolicyIssued.php, SendPolicyIssuedNotification.php