{ "doc": "OTO · Run-sheet démo (méta-livrable)", "spec_version": "1.0.0", "roadmap_ref": "04_roadmap/ROADMAP_8_WEEKS_OR_LESS.md · Sprint 7 l.68 « CRM + Faisabilité : Scénarios démo (P07 pitch banquier · P05 client ready) »", "generated_at": null, "scenarios": [ { "id": "S-P07-BANQUIER", "projet": "P07", "projet_libelle": "Aqua Terra Las Terrenas", "audience": "banquier", "titre": "P07 Aqua Terra — Pitch banquier (bancabilité & gouvernance)", "objectif": "Démontrer qu'un dossier de vente OTO est bancable : pipeline structuré, conformité fiscale e-CF DGII, incitation CONFOTUR, gouvernance RBAC et gate qualité 4Big.", "duree_min": 12, "modules_cites": [ "crm/dossier_vente", "crm/workflow_vente", "fiscal/ecf_dgii", "legal/confotur", "qa/audit_4big", "rbac/apply_plan" ], "beats": [ { "ordre": 1, "id": "b1-pipeline", "titre": "Un pipeline de vente verrouillé de bout en bout", "role_narratif": "Ouvrir sur la traçabilité : la vente n'est pas un tableur, c'est un workflow ERPNext soumis (docstatus) piloté par rôle.", "duree_min": 2, "evidence": [ { "module": "crm/workflow_vente", "file": "out/workflow.json", "pointer": "/0/workflow_name", "label": "Nom du pipeline", "valeur": "OTO Vente Pipeline", "resolu": true }, { "module": "crm/workflow_vente", "file": "out/workflow.json", "pointer": "/0/document_type", "label": "DocType piloté", "valeur": "OTO Dossier Vente", "resolu": true } ] }, { "ordre": 2, "id": "b2-ecf", "titre": "Facturation fiscale conforme DGII (e-CF · Compupar)", "role_narratif": "Rassurer sur le risque fiscal : chaque encaissement est un e-CF certifié, pas une facture maison.", "duree_min": 2, "evidence": [ { "module": "fiscal/ecf_dgii", "file": "out/MANIFEST.json", "pointer": "/provider", "label": "Fournisseur e-CF", "valeur": "Compupar", "resolu": true }, { "module": "fiscal/ecf_dgii", "file": "out/MANIFEST.json", "pointer": "/counts/tipos_en_scope", "label": "Types e-CF en périmètre", "valeur": 5, "resolu": true } ] }, { "ordre": 3, "id": "b3-confotur", "titre": "Incitation CONFOTUR dé-risquée et outillée", "role_narratif": "Montrer l'avantage fiscal touristique comme un actif documenté : DocType soumis, dépôt outillé.", "duree_min": 2, "evidence": [ { "module": "legal/confotur", "file": "out/MANIFEST.json", "pointer": "/doctype_name", "label": "DocType CONFOTUR", "valeur": "CONFOTUR Application", "resolu": true }, { "module": "legal/confotur", "file": "out/MANIFEST.json", "pointer": "/is_submittable", "label": "Soumissible (verrou légal)", "valeur": true, "resolu": true }, { "module": "legal/confotur", "file": "out/MANIFEST.json", "pointer": "/counts/depot_events", "label": "Étapes de dépôt outillées", "valeur": 2, "resolu": true } ] }, { "ordre": 4, "id": "b4-rbac", "titre": "Séparation des pouvoirs (RBAC 50 rôles)", "role_narratif": "Répondre à la question d'audit du banquier : qui peut faire quoi ? Permissions dérivées, pas ad hoc.", "duree_min": 2, "evidence": [ { "module": "rbac/apply_plan", "file": "out/MANIFEST.json", "pointer": "/counts/roles", "label": "Rôles RBAC", "valeur": 50, "resolu": true }, { "module": "rbac/apply_plan", "file": "out/MANIFEST.json", "pointer": "/counts/custom_docperm", "label": "Permissions DocType (Custom DocPerm)", "valeur": 116, "resolu": true } ] }, { "ordre": 5, "id": "b5-qualite", "titre": "Un gate qualité 4Big, pas une promesse", "role_narratif": "Clore la confiance : la plateforme s'auto-note et bloque sous 95/100 sur 100 % des livrables.", "duree_min": 2, "evidence": [ { "module": "qa/audit_4big", "file": "out/quality_report.json", "pointer": "/pass_score", "label": "Seuil bloquant 4Big", "valeur": 95, "resolu": true }, { "module": "qa/audit_4big", "file": "out/quality_report.json", "pointer": "/coverage/ci_modules_count", "label": "Modules sous gate qualité", "valeur": 24, "resolu": true } ] }, { "ordre": 6, "id": "b6-dossier", "titre": "Le dossier de vente, pièce bancable finale", "role_narratif": "Refermer sur l'objet concret que le banquier instruira : un DocType riche et soumis.", "duree_min": 2, "evidence": [ { "module": "crm/dossier_vente", "file": "out/MANIFEST.json", "pointer": "/counts/fields", "label": "Champs du dossier de vente", "valeur": 30, "resolu": true }, { "module": "crm/dossier_vente", "file": "out/MANIFEST.json", "pointer": "/counts/pipeline_states", "label": "États de pipeline couverts", "valeur": 9, "resolu": true } ] } ] }, { "id": "S-P05-CLIENT", "projet": "P05", "projet_libelle": "Las Colinas Najayo Arriba", "audience": "client", "titre": "P05 Las Colinas Najayo Arriba — Parcours client (réservation prête)", "objectif": "Faire vivre le parcours d'un acheteur : découverte du portail, assistance OTOIA, pipeline lisible, dossier transparent, et comment le client nous a trouvés (SEO trilingue).", "duree_min": 12, "modules_cites": [ "crm/commissions", "crm/dossier_vente", "crm/workflow_vente", "frontend/chat_otoia", "frontend/portails", "seo" ], "beats": [ { "ordre": 1, "id": "b1-portail", "titre": "« Choisir mon unité » — 5 portails luxury", "role_narratif": "Poser l'expérience d'entrée : un portail par rôle, cohérent et couvert.", "duree_min": 2, "evidence": [ { "module": "frontend/portails", "file": "out/MANIFEST.json", "pointer": "/counts/workspaces", "label": "Portails (workspaces)", "valeur": 5, "resolu": true }, { "module": "frontend/portails", "file": "out/MANIFEST.json", "pointer": "/counts/roles_couverts", "label": "Rôles couverts par les portails", "valeur": 44, "resolu": true } ] }, { "ordre": 2, "id": "b2-otoia", "titre": "OTOIA répond dans le portail", "role_narratif": "Montrer l'assistance embarquée : le client n'est jamais seul face à l'écran.", "duree_min": 2, "evidence": [ { "module": "frontend/chat_otoia", "file": "out/MANIFEST.json", "pointer": "/deliverable", "label": "Assistant embarqué", "valeur": "Chat OTOIA embarqué par portail", "resolu": true } ] }, { "ordre": 3, "id": "b3-parcours", "titre": "Du premier contact à la réservation", "role_narratif": "Dérouler le pipeline côté client : Lead → … → Réservation confirmée, lisible et rassurant.", "duree_min": 2, "evidence": [ { "module": "crm/workflow_vente", "file": "out/workflow.json", "pointer": "/0/states/0/state", "label": "Première étape", "valeur": "Lead", "resolu": true }, { "module": "crm/workflow_vente", "file": "out/workflow.json", "pointer": "/0/states/3/state", "label": "Étape réservation", "valeur": "Réservation confirmée", "resolu": true } ] }, { "ordre": 4, "id": "b4-dossier", "titre": "Un dossier de vente transparent", "role_narratif": "Donner confiance : tout est consigné dans un dossier structuré que le client peut suivre.", "duree_min": 2, "evidence": [ { "module": "crm/dossier_vente", "file": "out/MANIFEST.json", "pointer": "/counts/fields", "label": "Champs du dossier de vente", "valeur": 30, "resolu": true } ] }, { "ordre": 5, "id": "b5-commissions", "titre": "Un conseiller rémunéré à la transparence", "role_narratif": "Aligner l'intérêt du conseiller et du client : barème de commissions traçable par événement.", "duree_min": 2, "evidence": [ { "module": "crm/commissions", "file": "out/MANIFEST.json", "pointer": "/bareme_name", "label": "Barème de commissions", "valeur": "OTO Barème Commissions Ventes", "resolu": true }, { "module": "crm/commissions", "file": "out/MANIFEST.json", "pointer": "/counts/evenements", "label": "Événements déclencheurs", "valeur": 5, "resolu": true } ] }, { "ordre": 6, "id": "b6-seo", "titre": "Comment le client nous a trouvés (SEO trilingue)", "role_narratif": "Refermer la boucle acquisition : indexation FR/EN/ES, le parcours commence bien avant le portail.", "duree_min": 2, "evidence": [ { "module": "seo", "file": "out/MANIFEST.json", "pointer": "/counts/keywords_total", "label": "Mots-clés indexés", "valeur": 258, "resolu": true }, { "module": "seo", "file": "out/MANIFEST.json", "pointer": "/langs", "label": "Langues", "valeur": [ "fr", "en", "es" ], "resolu": true } ] } ] } ] }