# 🎯 Cahier des charges — Ticket WhatsApp

## 1. Le projet en une phrase

Permettre à n'importe qui d'acheter un ticket de **cinéma** ou de **concert** directement dans **WhatsApp**, sans site, sans application et sans compte à créer, en payant par **carte ou Mobile Money** (Paystack).

## 2. Objectifs


1. **Simple** : acheter un ticket en moins de 2 minutes, en écrivant normalement ou en cliquant sur des boutons.
2. **Fiable** : chaque paiement donne un ticket ou un remboursement automatique. Jamais d'argent perdu.
3. **Rentable** : 200 FCFA de frais de service par ticket, affichés clairement avant le paiement.
4. **Transparent** : le projet est documenté et partagé publiquement (build in public).

## 3. Ce qu'on va faire (périmètre)

### Modèle (Phase 1 — concierge)

Le client **paie son ticket directement chez le partenaire** (Majestic/Tikerama). Nous ne touchons pas l'argent du ticket : pas de préfinancement, pas de risque juridique de revente. Le bot aide à choisir, donne le lien de paiement officiel, puis propose de **soutenir le projet (200 FCFA, volontaire)**. L'achat intégré dans WhatsApp est prévu en **Phase 2**, après accords partenaires.

### Inclus dans la première version

* Un **numéro WhatsApp** connecté à Meta (WhatsApp Cloud API) et à notre CRM **Perfect CX**.
* Un **bot** qui :
  * accueille le client et comprend ses demandes (« je veux aller au ciné ce soir ») ;
  * affiche les **films et séances Majestic** (5 salles d'Abidjan) et les **événements Tikerama** ;
  * envoie le **lien de paiement officiel du partenaire** pour la séance choisie ;
  * envoie ensuite un **lien Paystack de 200 FCFA « pour soutenir le projet »** (volontaire, carte + Mobile Money) ;
  * propose un **rappel avant la séance**.
* Un accès opérateur dans Perfect CX pour reprendre une conversation à la main.
* Une **réconciliation quotidienne** des paiements de soutien.

### Exclu de la première version

* Achat du ticket et paiement **dans** WhatsApp (→ Phase 2).
* Choix de la place sur le plan de salle ; confiserie, fidélité, codes promo.
* Autres pays que la Côte d'Ivoire.

## 4. Ce qu'on va implémenter

| \#  | Livrable | Contenu | Fait quand… |
|-----|----------|---------|-------------|
| 1   | **Socle technique** | Projet Bun + Elysia, PostgreSQL + Redis, CI, déploiement Dokploy (staging) | Le service répond en ligne et la CI passe |
| 2   | **Connexion WhatsApp** | Webhook Perfect CX (multi-client), réponses texte/boutons/listes, déduplication | Un message WhatsApp reçoit une réponse du bot |
| 3   | **Catalogue** | Synchro Majestic (séances, tarifs) et Tikerama (événements), cache Redis | Le bot liste les vraies séances et les vrais événements |
| 4   | **Compréhension du langage** | Gemini extrait l'intention (film, date, événement) | 95 % de bonnes réponses sur 200 phrases de test |
| 5   | **Lien de paiement partenaire** | Deep-link Majestic / lien Tikerama pour la séance choisie | Le client reçoit le bon lien pour payer son ticket |
| 6   | **Soutien Paystack** | Lien 200 F (volontaire), webhook `charge.success` vérifié, réconciliation | Un soutien en mode test est confirmé et enregistré |
| 7   | **Tests de bout en bout** | Scénarios automatisés (avec/sans soutien, doublons) | Tous les scénarios passent en CI |
| 8   | **Bêta** | 50 testeurs de la communauté | Retours collectés, bugs bloquants corrigés |
| 9   | *(Phase 2)* **Achat intégré** | Encaissement ticket + achat + PDF + remboursement, sous accord partenaire | Reporté après accords |

## 5. Contraintes

* **Partenaires (Phase 1)** : comme le client paie directement chez le partenaire, il n'y a **ni revente ni préfinancement**, donc pas de blocage juridique pour démarrer. Les accords partenaires ne deviennent nécessaires que pour la **Phase 2** (achat intégré).
* **Soutien volontaire** : les 200 FCFA sont un **don**, présenté comme tel (jamais obligatoire pour obtenir le ticket). Revenu à suivre comme KPI.
* **Meta** : respect des règles WhatsApp Business, opt-in pour les messages promotionnels.
* **Données personnelles** : collecte minimale (numéro WhatsApp), conformité ARTCI.

## 6. Critères de réussite de la bêta

* 100 clients orientés vers un paiement de ticket partenaire.
* Temps médian « 1er message → lien de paiement » inférieur à 2 minutes.
* Au moins 25 % des conversations commencées aboutissent à un lien de paiement envoyé.
* Taux de soutien (clients qui paient les 200 F) mesuré — repère à fixer après les premiers jours.

## 7. Documents liés

* PRD : besoins détaillés, risques, modèle économique.
* Tech Spec : architecture, intégrations (Paystack, Tikerama, Majestic, Meta), tests.