init doc rubis
This commit is contained in:
commit
89ca81d839
137
CLAUDE.md
Normal file
137
CLAUDE.md
Normal file
@ -0,0 +1,137 @@
|
||||
# Rubis Sur l'Ongle
|
||||
|
||||
> **Le SaaS de relance de factures impayées pour TPE-PME françaises.** Drag-and-drop, OCR, plans de relance automatiques. 1 rubis = 10 minutes libérées.
|
||||
|
||||
Ce fichier est le contexte top-level. Il est court, dense, scannable. Pour les détails, voir `/docs/`.
|
||||
|
||||
---
|
||||
|
||||
## En une phrase
|
||||
|
||||
Vos factures se relancent toutes seules pendant que vous travaillez.
|
||||
|
||||
## Cible
|
||||
|
||||
TPE-PME françaises, 5 à 50 salariés, qui émettent 10 à 200 factures par mois, sans crédit manager dédié. Le décideur teste lui-même le produit (pas de cycle de vente long).
|
||||
|
||||
## Promesse de valeur
|
||||
|
||||
- **5 heures par semaine récupérées** (benchmark : 8h → <3h après automatisation).
|
||||
- **Tonalité émotionnelle** : on vend du temps libéré, pas de la trésorerie. Le rubis gagné est la métrique-héros, pas le DSO.
|
||||
- **2 à 3 clics maximum** pour lancer une relance sur une nouvelle facture.
|
||||
|
||||
## Principes produit (toujours valides)
|
||||
|
||||
1. **3 clics maximum** pour lancer une relance sur une facture neuve. Idéalement 2 si bien configuré.
|
||||
2. **Mobile et desktop** — la photo de facture depuis le téléphone est un usage clé.
|
||||
3. **Pure-player relance** — on ne fait pas CRM, pas facturation, pas comptabilité. On fait une chose et on la fait bien.
|
||||
4. **Respectueux du client final** — le ton monte avec le retard, jamais avant. Pas d'agressivité par défaut.
|
||||
5. **Le rubis est une vraie devise produit** — 1 rubis = 10 min libérées. La gamification doit être tangible et défendable.
|
||||
|
||||
## Identité de marque (TLDR)
|
||||
|
||||
| | |
|
||||
|---|---|
|
||||
| **Logo** | Direction A — gem facetté géométrique. Le ◆ est un symbole produit autant qu'un logo. |
|
||||
| **Couleur primaire** | `#9F1239` — rubis profond légèrement violacé. *Anti-Coca-Cola.* |
|
||||
| **Couleur secondaires** | `#771328` (deep), `#C9415C` (light), `#FBE4EA` (glow) |
|
||||
| **Neutres** | Crème `#FAF7F2`, encre chaude `#1A1410`. Jamais de blanc pur, jamais de noir pur. |
|
||||
| **Typo display** | Bricolage Grotesque (500–800), Google Fonts |
|
||||
| **Typo body** | Inter (400–700), Google Fonts |
|
||||
| **Icônes** | Lucide (regular weight) |
|
||||
| **Pas de** | or, bleu, vert, violet, emojis joaillerie 💎💰, mot "recouvrement" en com publique |
|
||||
|
||||
Voir `/docs/marque.md` pour la référence complète et `/brand-identity.html` pour la présentation visuelle (note : la mention de l'or accent dans ce fichier est obsolète, à ignorer).
|
||||
|
||||
## Voix
|
||||
|
||||
Direct, concret, chaleureux, précis, empathique. *On parle comme un bon associé, pas comme une DAF.*
|
||||
|
||||
- ✓ "Vos factures relancées toutes seules."
|
||||
- ✗ "Optimisez votre processus de recouvrement amiable."
|
||||
|
||||
## Glossaire
|
||||
|
||||
- **Rubis** : unité de gamification. **1 rubis = 10 minutes libérées** = 1 relance qu'on n'a pas eu à faire à la main.
|
||||
- **Plan de relance** : cadence d'emails automatisés (ex. J+3, J+10, J+20). Chaque facture est associée à un plan.
|
||||
- **Étape** : un email programmé dans un plan (ex. "J+10 — relance ferme").
|
||||
- **Check-in** : email envoyé **à l'utilisateur** (pas au client) pour confirmer si une facture a été payée avant l'envoi de la prochaine relance. Remplace l'intégration banking en V1.
|
||||
- **Mise en demeure** : étape ferme du plan. **Toujours sous validation manuelle** via modale de confirmation, jamais auto.
|
||||
- **DSO** : Days Sales Outstanding. Métrique secondaire dans l'app, jamais dans la com publique.
|
||||
- **LME** : loi de modernisation de l'économie (2008). Plafonne les délais de paiement à 60 jours (ou 45 jours fin de mois). Sanctions DGCCRF jusqu'à 2 M€.
|
||||
|
||||
## Périmètre V1
|
||||
|
||||
### IN
|
||||
|
||||
- Auth email/password + Google SSO
|
||||
- Onboarding 3 étapes (compte, entreprise, signature email)
|
||||
- Upload drag-and-drop + OCR factures (PDF, PNG, JPG)
|
||||
- Saisie manuelle (fallback)
|
||||
- Bibliothèque de plans (4 plans fournis par défaut)
|
||||
- Éditeur de plan (cadence + templates email avec variables)
|
||||
- Check-in email à l'utilisateur (cadence configurable) → confirme si payé → relance ou stop
|
||||
- Dashboard avec compteur rubis + KPIs (à relancer, encaissé, DSO)
|
||||
- Liste filtrable des factures
|
||||
- Détail facture avec timeline des relances
|
||||
- App mobile (web responsive)
|
||||
|
||||
### OUT (V2 ou plus tard)
|
||||
|
||||
- **SMS** — uniquement plan le plus cher en V2
|
||||
- **Multi-utilisateurs** — uniquement plans payants en V2
|
||||
- **Intégration banking / réconciliation auto** — l'architecture V1 doit l'anticiper, mais l'implémentation est V2+
|
||||
- Multi-langues, multi-devises (FR/EUR only en V1)
|
||||
- Intégration ERP/comptable (Sage, Pennylane, Quickbooks)
|
||||
|
||||
## Pricing (esquisse, à valider)
|
||||
|
||||
| Plan | Prix | Limite |
|
||||
|---|---|---|
|
||||
| **Free** | 0 € | 5 factures actives en relance, 1 utilisateur |
|
||||
| **Pro** | 19 €/mois | Factures illimitées, OCR illimité, 1 utilisateur |
|
||||
| **Business** | 49 €/mois | + multi-utilisateurs, + branding email, + SMS (V2) |
|
||||
|
||||
Argument de vente : *"moins cher qu'une heure de votre temps mensuel"*.
|
||||
|
||||
## Décisions clés validées (résumé)
|
||||
|
||||
Voir `/docs/decisions.md` pour le log complet avec rationale.
|
||||
|
||||
- 1 rubis = 10 minutes libérées
|
||||
- Logo direction A (gem facetté), wordmark à monter en parallèle plus tard
|
||||
- Palette rubis chaude, sans or, sans bleu
|
||||
- Typo Bricolage Grotesque + Inter
|
||||
- Iconographie Lucide
|
||||
- Mise en demeure : validation manuelle obligatoire (modale)
|
||||
- SMS et multi-users : V2 + plans payants seulement
|
||||
- Banking intégration : pas en V1, remplacée par check-in emails
|
||||
|
||||
## Stack technique
|
||||
|
||||
À confirmer avec Arthur. Stack choisie mais pas encore documentée. *À remplir lors de la prochaine session technique.*
|
||||
|
||||
Ce qu'on sait : TypeScript, le reste à formaliser (framework, DB, OCR provider, email provider, hosting, jobs).
|
||||
|
||||
## Documents associés
|
||||
|
||||
| Fichier | Rôle |
|
||||
|---|---|
|
||||
| `/CLAUDE.md` (ce fichier) | Contexte top-level, toujours en tête |
|
||||
| `/docs/produit.md` | Spec produit détaillée (features, flows, IN/OUT V1) |
|
||||
| `/docs/marque.md` | Référence marque écrite (palette, typo, voix, do/don't) |
|
||||
| `/docs/decisions.md` | Log de décisions avec rationale (format ADR-light) |
|
||||
| `/wireframes-mvp.html` | Wireframes low-fi des 13 écrans MVP |
|
||||
| `/brand-identity.html` | Présentation visuelle de la marque (4 logos, applications) |
|
||||
| `/munitions-marketing.md` | Stats marché, concurrents, positionnement, copy |
|
||||
|
||||
## Questions ouvertes
|
||||
|
||||
- **Stack technique** à formaliser
|
||||
- **Tagline finale** : 5 candidates dans `/munitions-marketing.md`, pas encore tranchée
|
||||
- **Conversion 1 rubis = 10 min** validée mais à confirmer en user testing après MVP
|
||||
- **Wordmark "rubis" avec gem-i** (direction C) à monter en complément du logo A à un moment
|
||||
|
||||
---
|
||||
|
||||
*Dernière mise à jour : 2026-05-05 · Maintenu par Arthur + Claude.*
|
||||
1130
docs/brand-identity.html
Normal file
1130
docs/brand-identity.html
Normal file
File diff suppressed because it is too large
Load Diff
213
docs/decisions.md
Normal file
213
docs/decisions.md
Normal file
@ -0,0 +1,213 @@
|
||||
# Log de décisions — Rubis Sur l'Ongle
|
||||
|
||||
> Format ADR-light. Chaque décision : contexte, décision, rationale, alternatives, statut. Append-only — on n'efface jamais une décision passée, on en ajoute une nouvelle qui l'annule si besoin.
|
||||
|
||||
---
|
||||
|
||||
## ADR-001 · Conversion 1 rubis = 10 minutes libérées
|
||||
|
||||
- **Date** : 2026-05-05
|
||||
- **Statut** : ✅ Validée
|
||||
- **Contexte** : la gamification "rubis gagnés" a besoin d'une conversion défendable et tangible.
|
||||
- **Décision** : 1 rubis = 10 minutes libérées (≈ une relance manuelle complète).
|
||||
- **Rationale** :
|
||||
- Cohérent avec le bench *5h gagnées par semaine* (8h → <3h après automatisation).
|
||||
- 10 min est un chiffre rond mémorisable dans la copy.
|
||||
- Borne basse défensible — beaucoup d'études parlent de 15-20 min, on est conservateur, donc incontestable.
|
||||
- Permet ~30 rubis/mois pour une PME type, ~150 pour les power users — bon flywheel de gamification.
|
||||
- **Alternatives écartées** :
|
||||
- 1 rubis = 1 € de trésorerie débloquée → trop financier, rompt la promesse temps
|
||||
- 1 rubis = 1 facture encaissée → trop discret pour les utilisateurs faible volume
|
||||
- 1 rubis = 12 ou 15 minutes → moins mémorisable, pas plus défendable
|
||||
- **À reconfirmer** : après MVP, via user testing — si les utilisateurs disent "10 min c'est trop" ou "trop peu", on ajustera.
|
||||
|
||||
---
|
||||
|
||||
## ADR-002 · Direction de logo : A (gem facetté)
|
||||
|
||||
- **Date** : 2026-05-05
|
||||
- **Statut** : ✅ Validée
|
||||
- **Contexte** : 4 directions explorées (A gem facetté, B rubis brut, C wordmark, D ongle littéral).
|
||||
- **Décision** : Direction A (gem facetté géométrique) en logo principal V1.
|
||||
- **Rationale** :
|
||||
- Iconique, scalable de 16 px à billboard
|
||||
- Naturellement cohérent avec le ◆ utilisé dans les wireframes pour la gamification
|
||||
- Marche en mono, knockout, filigrane
|
||||
- Symbole autonome — fonctionne en favicon et app icon sans wordmark
|
||||
- **Alternatives** :
|
||||
- B (rubis brut) : trop joaillerie, risque Cartier
|
||||
- D (ongle littéral) : polarisante, risque "manucure / cosmétique"
|
||||
- C (wordmark) : retenue mais à monter en complément plus tard, pas en V1
|
||||
- **Suivi** : à monter le wordmark direction C en V2 pour signature email, doc, contextes éditoriaux.
|
||||
|
||||
---
|
||||
|
||||
## ADR-003 · Couleur primaire #9F1239
|
||||
|
||||
- **Date** : 2026-05-05
|
||||
- **Statut** : ✅ Validée
|
||||
- **Contexte** : choisir le rouge de la marque parmi plusieurs options.
|
||||
- **Décision** : `#9F1239` — rubis profond légèrement violacé.
|
||||
- **Rationale** : sophistiqué, distinctif, anti-Coca-Cola. Évoque le rubis "pigeon blood" (vivid red avec hints purple). Différencie radicalement des rouges tech génériques.
|
||||
- **Alternatives** :
|
||||
- `#B91C3C` (rose 700) : plus punchy, plus tech
|
||||
- `#881337` : plus dark, plus austère
|
||||
- `#BE123C` : Tailwind rose-700, plus standard
|
||||
- **À surveiller** : le contraste sur blanc pur peut être limite pour texte <14 px → utiliser `#771328` (rubis profond) dans ces cas.
|
||||
|
||||
---
|
||||
|
||||
## ADR-004 · Pas d'or accent
|
||||
|
||||
- **Date** : 2026-05-05
|
||||
- **Statut** : ✅ Validée
|
||||
- **Contexte** : la palette initiale incluait un or `#B89F6B` comme accent rare.
|
||||
- **Décision** : abandon total de l'or dans la marque.
|
||||
- **Rationale** : "fait très cheap" (Arthur). Risque d'évoquer banque ou bling-bling. La marque tient sans or — rubis + neutres chauds suffit.
|
||||
- **Conséquence** : tout document antérieur mentionnant l'or est obsolète sur ce point. La règle devient *rubis + neutres chauds, point*.
|
||||
|
||||
---
|
||||
|
||||
## ADR-005 · Typographies Bricolage Grotesque + Inter
|
||||
|
||||
- **Date** : 2026-05-05
|
||||
- **Statut** : ✅ Validée
|
||||
- **Contexte** : choisir une paire display + body, libre et accessible.
|
||||
- **Décision** :
|
||||
- **Display** : Bricolage Grotesque (500-800)
|
||||
- **Body** : Inter (400-700)
|
||||
- Les deux sur Google Fonts.
|
||||
- **Rationale** :
|
||||
- Bricolage apporte un caractère "français contemporain" qui différencie de la galaxie Stripe/Linear/Notion sans tomber dans le designer-flex
|
||||
- Inter est le workhorse incontesté pour l'UI moderne, hyper-lisible, neutre
|
||||
- Les deux sont gratuites, installables en 30 secondes
|
||||
- **Alternatives** :
|
||||
- General Sans : retenue mais plus neutre, moins ownable
|
||||
- Söhne : payante, hors scope MVP
|
||||
- Inter Display + Inter : trop monochrome, pas de personnalité
|
||||
|
||||
---
|
||||
|
||||
## ADR-006 · Iconographie : Lucide
|
||||
|
||||
- **Date** : 2026-05-05
|
||||
- **Statut** : ✅ Validée (tranche-claude)
|
||||
- **Contexte** : choisir un set d'icônes pour l'UI.
|
||||
- **Décision** : Lucide en regular weight (1.5px stroke).
|
||||
- **Rationale** :
|
||||
- 1 400+ icônes, couvre tous les use cases
|
||||
- Licence MIT, pas de dépendance commerciale
|
||||
- Cohérent avec le ton "précis pas froid"
|
||||
- Bien intégré dans l'écosystème JS (React, Vue, Svelte, Vanilla)
|
||||
- **Alternatives** :
|
||||
- Phosphor Icons : très joli mais moins universel
|
||||
- Heroicons : trop associé Tailwind
|
||||
- Custom set : hors scope MVP, retour sur investissement faible
|
||||
- **Règle** : le ◆ (gem) reste un SVG custom, jamais une icône Lucide.
|
||||
|
||||
---
|
||||
|
||||
## ADR-007 · Mise en demeure : validation manuelle obligatoire
|
||||
|
||||
- **Date** : 2026-05-05
|
||||
- **Statut** : ✅ Validée
|
||||
- **Contexte** : l'étape J+20 (ou équivalent) du plan ferme est une mise en demeure. Doit-elle être envoyée automatiquement comme les autres relances ?
|
||||
- **Décision** : **non**. Toute mise en demeure passe par une **modale de confirmation** où l'utilisateur clique explicitement "Envoyer la mise en demeure".
|
||||
- **Rationale** :
|
||||
- Risque légal : la mise en demeure a des conséquences juridiques
|
||||
- Risque relationnel : peut casser une relation client durablement
|
||||
- Le moment où l'utilisateur veut reprendre le contrôle, c'est exactement à cette étape
|
||||
- **UX** : la modale rappelle le contexte légal (loi LME), affiche le contenu de l'email, et propose deux boutons distincts ("Envoyer maintenant" / "Reporter à plus tard").
|
||||
- **Anti-pattern à éviter** : checkbox d'auto-envoi, même opt-in. Pas négociable.
|
||||
|
||||
---
|
||||
|
||||
## ADR-008 · Banking V1 : check-in email à l'utilisateur
|
||||
|
||||
- **Date** : 2026-05-05
|
||||
- **Statut** : ✅ Validée
|
||||
- **Contexte** : sans intégration bancaire en V1, comment éviter de relancer un client qui a déjà payé hors plateforme ?
|
||||
- **Décision** : avant chaque envoi de relance, Rubis envoie un email **à l'utilisateur** (pas au client) demandant : "Avez-vous été payé pour la facture X ?" avec deux boutons (Oui / Non).
|
||||
- L'utilisateur configure la cadence et le timing (ex. T-2 jours avant la relance suivante)
|
||||
- "Oui" → facture marquée encaissée, plan stoppé
|
||||
- "Non" ou pas de réponse → la relance part comme prévu
|
||||
- **Rationale** :
|
||||
- Évite les relances fantômes sur factures déjà payées
|
||||
- Garde l'utilisateur informé sans le surcharger
|
||||
- Architecture compatible V2 banking : le check-in V1 devient simplement un fallback quand on ajoutera Bridge / Tink / GoCardless
|
||||
- **Contrainte architecturale** : modèle d'événement abstrait `payment_status_check` qui peut être déclenché par email-réponse OU webhook bancaire. L'app ne doit pas savoir d'où vient le signal.
|
||||
|
||||
---
|
||||
|
||||
## ADR-009 · SMS et multi-utilisateurs : V2, plans payants
|
||||
|
||||
- **Date** : 2026-05-05
|
||||
- **Statut** : ✅ Validée
|
||||
- **Contexte** : décider du périmètre V1 vs V2 sur deux features demandées.
|
||||
- **Décision** :
|
||||
- **SMS** : V2 uniquement, **plan le plus cher seulement** (Business)
|
||||
- **Multi-utilisateurs** : V2 uniquement, **plans payants seulement** (Pro et Business, pas Free)
|
||||
- **Rationale** :
|
||||
- SMS = coût marginal direct (Twilio/OVH/etc.) → doit être monétisé sur le palier le plus rentable
|
||||
- Multi-utilisateurs ajoute de la complexité (rôles, invitations, audit) → out of MVP, et c'est un argument upgrade naturel pour les plans payants
|
||||
- **Conséquence sur l'archi** :
|
||||
- DB structurée multi-tenant dès V1 (`organization` → `users` → `invoices`) pour ne pas refactorer
|
||||
- Modèle d'envoi message abstrait (un message peut être email V1, ou SMS/email V2)
|
||||
|
||||
---
|
||||
|
||||
## ADR-010 · Pas d'intégration banking en V1
|
||||
|
||||
- **Date** : 2026-05-05
|
||||
- **Statut** : ✅ Validée
|
||||
- **Contexte** : l'intégration banking (Bridge / Tink / Powens) automatiserait la réconciliation des paiements.
|
||||
- **Décision** : pas en V1. Remplacée par check-in email (ADR-008).
|
||||
- **Rationale** :
|
||||
- Coût d'implémentation important (DSP2, agréments, gestion des erreurs banking)
|
||||
- Impose de toucher aux données financières du client → friction RGPD/sécurité
|
||||
- Le check-in email résout 80 % du problème pour 10 % du coût
|
||||
- **À prévoir en V1** : architecture événementielle qui rendra l'intégration V2 mécanique (cf. ADR-008).
|
||||
|
||||
---
|
||||
|
||||
## ADR-011 · "3 clics maximum" est une règle de design, pas un compteur
|
||||
|
||||
- **Date** : 2026-05-05
|
||||
- **Statut** : ✅ Validée (clarification)
|
||||
- **Contexte** : la promesse "3 clics" est dans le pitch et la landing. Doit-on la respecter strictement à chaque parcours ?
|
||||
- **Décision** : c'est une **règle de design** (l'utilisateur doit faire le minimum d'actions possible) plus qu'un compteur strict. Si le plan par défaut est bien configuré, 2 clics suffisent. Si le contexte demande plus, on peut aller à 4.
|
||||
- **Rationale** : "3 clics" est une promesse marketing claire et mémorable. Le vrai principe sous-jacent est "minimum d'actions utilisateur".
|
||||
- **Application** :
|
||||
- Le storyboard hero (drop → valider → récompense) doit absolument tenir en 3 clics ou moins
|
||||
- Les flows secondaires (changer un plan, archiver) peuvent dépasser sans casser la promesse
|
||||
- On ne sacrifie pas la clarté pour économiser un clic
|
||||
|
||||
---
|
||||
|
||||
## Décisions à venir (en attente)
|
||||
|
||||
| # | Sujet | Pourquoi en attente |
|
||||
|---|---|---|
|
||||
| 012 | Stack technique (framework, DB, OCR provider, email provider, hosting) | À formaliser avec Arthur |
|
||||
| 013 | Tagline finale | 5 candidates dans `/munitions-marketing.md`, pas tranchée |
|
||||
| 014 | Structure DB / domain model | Dépend de 012 |
|
||||
| 015 | Pricing exact (Free 5 factures ? Pro 19 € ?) | À tester avant figer |
|
||||
| 016 | Provider OCR (Mindee, Document AI, Textract, open-source) | Dépend de coût/qualité — à benchmarker |
|
||||
|
||||
---
|
||||
|
||||
## Comment ajouter une décision
|
||||
|
||||
```markdown
|
||||
## ADR-XXX · Titre court
|
||||
|
||||
- **Date** : YYYY-MM-DD
|
||||
- **Statut** : ✅ Validée | 🟡 En cours | ❌ Annulée par ADR-YYY
|
||||
- **Contexte** : la situation qui appelle la décision
|
||||
- **Décision** : ce qu'on fait
|
||||
- **Rationale** : pourquoi (avec preuves/data si possible)
|
||||
- **Alternatives écartées** : ce qu'on n'a pas fait, et pourquoi
|
||||
- **Conséquences** : impact sur l'archi, le produit, la marque
|
||||
```
|
||||
|
||||
Quand une décision est remise en cause, on **ajoute** un ADR qui annule l'ancien (jamais éditer rétroactivement). C'est ça qui rend le log fiable comme mémoire d'équipe.
|
||||
242
docs/marque.md
Normal file
242
docs/marque.md
Normal file
@ -0,0 +1,242 @@
|
||||
# Référence de marque — Rubis Sur l'Ongle
|
||||
|
||||
> Version : 0.1 · Dernière maj : 2026-05-05
|
||||
|
||||
Ce document est la source de vérité écrite pour la marque. Pour la présentation visuelle, voir `/brand-identity.html`. Quand les deux divergent, ce fichier gagne.
|
||||
|
||||
---
|
||||
|
||||
## 1. Quatre principes fondateurs
|
||||
|
||||
Ils ne décrivent pas la marque comme elle est aujourd'hui — ils décrivent **comment trancher quand on hésite**.
|
||||
|
||||
1. **Chaleureux, pas corporate.** Couleurs chaudes, neutres crème, typographie humaniste. On parle à un boulanger ou une consultante, pas à une DAF.
|
||||
2. **Précis, pas froid.** Les chiffres sont nets. Les marges sont disciplinées. Mais on garde toujours un peu d'âme — un détail typo, un mot bien placé.
|
||||
3. **Action, pas finance.** On dit "lancer", "récupérer", "gagné". Jamais "DSO", "créances", "AR aging" en com publique.
|
||||
4. **Le rubis est central, pas décoratif.** Une couleur, une forme. Pas trois rouges, pas dix variantes du logo.
|
||||
|
||||
## 2. Logo
|
||||
|
||||
### Direction validée : A — Le gem facetté
|
||||
|
||||
Un rubis géométrique vu de dessus, kite/diamond shape avec facettes suggérées.
|
||||
|
||||
**Caractéristiques** :
|
||||
- Polygone à 4 pointes (rhombus)
|
||||
- Ligne horizontale médiane (la "table" du gem) en blanc semi-transparent
|
||||
- 4 lignes diagonales internes pour suggérer les facettes (haut clair, bas sombre)
|
||||
- Couleur : `#9F1239` plein, ou dégradé `#C9415C` → `#9F1239` pour les grands formats
|
||||
|
||||
**Usages** :
|
||||
- Favicon (16-32 px)
|
||||
- App icon
|
||||
- Picto réseaux sociaux / avatar
|
||||
- Lockup horizontal avec wordmark "Rubis"
|
||||
- Compteur de gamification dans l'app (◆ + nombre)
|
||||
|
||||
**À ne jamais faire** :
|
||||
- Rotation rapide ou scintillement disco
|
||||
- Variantes "ouvertes" (juste le contour) en dessous de 32 px → illisible
|
||||
- Mélange avec d'autres formes géométriques (étoile, cœur, etc.)
|
||||
|
||||
### Wordmark (direction C — à compléter plus tard)
|
||||
|
||||
À monter en complément en V2 : `rubis` en Bricolage Grotesque 800 italic, avec le point du `i` remplacé par un petit ◆. Servira de signature dans la doc, les emails, certains contextes éditoriaux.
|
||||
|
||||
### Direction écartée : B (rubis brut organique) et D (sur l'ongle littéral)
|
||||
|
||||
- B : trop joaillerie, risque de glisser vers Cartier
|
||||
- D : polarisante, risque de "manucure / cosmétique" hors contexte. Garder éventuellement pour de la com éditoriale (ads, illustrations) plus tard.
|
||||
|
||||
## 3. Couleurs
|
||||
|
||||
### Palette de marque
|
||||
|
||||
| Rôle | Nom | Hex | Usage |
|
||||
|---|---|---|---|
|
||||
| Primaire | Rubis | `#9F1239` | CTA, accents, ◆ gamification, jamais en grand aplat |
|
||||
| Secondaire | Rubis profond | `#771328` | Hover, pressed, headers sombres |
|
||||
| Secondaire | Rubis clair | `#C9415C` | Survol, dégradés, illustrations |
|
||||
| Tertiaire | Rubis glow | `#FBE4EA` | Backgrounds doux, panneaux mis en avant, états succès |
|
||||
|
||||
### Neutres chauds
|
||||
|
||||
| Rôle | Nom | Hex | Usage |
|
||||
|---|---|---|---|
|
||||
| Page | Crème | `#FAF7F2` | Fond principal — **jamais de blanc pur (#FFF)** |
|
||||
| Surface 2 | Crème 2 | `#F5EFE7` | Sidebar, surfaces secondaires |
|
||||
| Lignes | Lignes | `#E8E0D6` | Bordures, séparateurs |
|
||||
| Texte muted | Encre 3 | `#8A7F76` | Métadonnées, labels |
|
||||
| Texte body | Encre 2 | `#4F4640` | Corps de texte |
|
||||
| Texte fort | Encre | `#1A1410` | Titres, logo mono — **jamais de #000** |
|
||||
|
||||
### Couleurs interdites
|
||||
|
||||
- ~~Or accent~~ : abandonné (paraît cheap)
|
||||
- Bleu, vert, violet : aucune autre famille colorée n'entre dans la marque
|
||||
- Orange ou écarlate : si on veut un rouge, c'est rubis ou rien
|
||||
|
||||
### Règle d'or
|
||||
|
||||
> Le rubis est rare — c'est ce qui le rend précieux. **Une page = un seul aplat fort de rubis maximum.** Tout le reste = neutres chauds.
|
||||
|
||||
## 4. Typographie
|
||||
|
||||
### Pair principale
|
||||
|
||||
| Usage | Typo | Source | Poids utilisés |
|
||||
|---|---|---|---|
|
||||
| Display (titres) | **Bricolage Grotesque** | Google Fonts | 500, 600, 700, 800 |
|
||||
| Body (texte courant, UI) | **Inter** | Google Fonts | 400, 500, 600, 700 |
|
||||
|
||||
### Échelle typographique
|
||||
|
||||
| Rôle | Taille | Poids | Letter-spacing | Line-height |
|
||||
|---|---|---|---|---|
|
||||
| Display | 56 px | 700 | -0.025em | 1.05 |
|
||||
| H1 | 36 px | 700 | -0.022em | 1.1 |
|
||||
| H2 | 24 px | 600 | -0.015em | 1.2 |
|
||||
| H3 | 18 px | 600 | -0.01em | 1.3 |
|
||||
| Body | 15 px | 400 | normal | 1.55 |
|
||||
| Small | 13 px | 400 | normal | 1.5 |
|
||||
| Caps | 11 px | 600 | 0.12em | 1.4 |
|
||||
|
||||
### Règles
|
||||
|
||||
- Titres en italic rubis sur le mot-clé (`em` color: `#9F1239`) pour casser l'austérité — **un seul mot par titre**
|
||||
- Caps (Eyebrow) toujours en `#9F1239`, jamais en gris
|
||||
- Inter pour tous les chiffres (rubis comptés, montants, dates) — features `tabular-nums` pour aligner
|
||||
- Bricolage en italic réservé aux moments de personnalité, jamais en bloc de texte
|
||||
|
||||
## 5. Iconographie
|
||||
|
||||
### Set : Lucide
|
||||
|
||||
- Source : [lucide.dev](https://lucide.dev) · MIT · 1 400+ icônes
|
||||
- Poids par défaut : **regular** (1.5px stroke)
|
||||
- Taille standard UI : 16 px (inline), 20 px (boutons), 24 px (sidebar)
|
||||
- Couleur : `currentColor` — hérite du contexte texte
|
||||
|
||||
### Pourquoi Lucide
|
||||
|
||||
- Cohérent avec le ton "précis pas froid" — moderne mais pas designer-flex
|
||||
- Couvre tous les use cases UI sans gymnastique
|
||||
- Pas de dépendance commerciale, MIT
|
||||
- Bien intégré React/Next/Vue/Vanilla
|
||||
|
||||
### Icônes spéciales
|
||||
|
||||
- **◆ (rubis/gem)** : SVG custom (le logo lui-même), JAMAIS une icône Lucide. C'est notre signe distinctif.
|
||||
- **Drag handle, dropzone** : peuvent utiliser Lucide `upload-cloud`, `move`, `grip-vertical`
|
||||
- **Statuts factures** : utiliser des chips colorés (cf. wireframes), pas des icônes seules
|
||||
|
||||
## 6. Voix & ton
|
||||
|
||||
### Caractéristiques
|
||||
|
||||
| Trait | On dit | On ne dit pas |
|
||||
|---|---|---|
|
||||
| **Direct** | "Vos factures relancées toutes seules." | "Optimisez votre processus de recouvrement amiable." |
|
||||
| **Concret** | "5 heures par semaine récupérées." | "Améliorez significativement votre productivité." |
|
||||
| **Chaleureux** | "Bonjour Arthur 👋" | "Bienvenue dans votre espace client." |
|
||||
| **Précis** | "Plus de 67 % des PME respectent les délais." | "De nombreuses entreprises sont sérieuses." |
|
||||
| **Empathique** | "On sait que c'est pénible. C'est pour ça qu'on le fait à votre place." | "Notre solution résout efficacement votre douleur." |
|
||||
| **Fier (sans arrogance)** | "Notre OCR comprend les factures françaises mieux que personne." | "Une intelligence artificielle révolutionnaire." |
|
||||
|
||||
### Vocabulaire
|
||||
|
||||
**À utiliser** : relance, temps libéré, récupéré, sérénité, rubis gagnés, vos factures, travailler.
|
||||
|
||||
**À éviter dans la com publique** :
|
||||
- ~~Recouvrement~~ → trop juridique, fait penser huissier
|
||||
- ~~Créances~~ → jargon DAF
|
||||
- ~~AR / Accounts Receivable~~ → anglo
|
||||
- ~~DSO~~ → réservé au dashboard interne
|
||||
- ~~Mauvais payeur~~ → trop accusateur (OK en interne app)
|
||||
- ~~Mise en demeure~~ → présent dans l'app mais pas dans la landing
|
||||
|
||||
**À manier avec précaution** :
|
||||
- *Impayés* → OK pour la stat, pas le cœur de la promesse (la majorité des cas sont des "retards", pas des "impayés")
|
||||
- *Mise en demeure* → présent mais désamorcé visuellement, jamais en pop-up promotionnel
|
||||
|
||||
### Emojis
|
||||
|
||||
- **OK** : 👋 (accueil), ✓ (succès), ↘ (delta négatif positif comme baisse de DSO)
|
||||
- **Pas OK** : 💎, 💰, 🚀, 🔥, 💪 — trop crypto / startup-bro
|
||||
|
||||
## 7. Microcopy & state messages
|
||||
|
||||
### Notifications & feedback
|
||||
|
||||
| Situation | Message |
|
||||
|---|---|
|
||||
| Inscription réussie | "Bienvenue. Votre compte est prêt." |
|
||||
| Première facture importée | "Première facture en route. + 1 rubis." |
|
||||
| Relance envoyée | "Relance envoyée à {{client}}. Vous pouvez retourner travailler." |
|
||||
| Facture marquée encaissée | "Encaissée. + {{X}} rubis bien mérités." |
|
||||
| Erreur OCR | "On n'a pas tout compris. Vous pouvez compléter à la main ?" |
|
||||
| Erreur technique | "Quelque chose a coincé. On a noté, on regarde." |
|
||||
|
||||
### Empty states
|
||||
|
||||
- Pas de factures : "Glissez vos PDF ici. L'OCR fait le reste."
|
||||
- Pas encore de rubis : "Vos premiers rubis arrivent dès la première relance lancée."
|
||||
- Pas de plans personnalisés : "4 plans standards déjà prêts. Vous pouvez en créer un sur-mesure."
|
||||
|
||||
## 8. Do & Don't
|
||||
|
||||
### À faire
|
||||
|
||||
- Utiliser le rubis avec parcimonie — un seul aplat fort par écran maximum
|
||||
- Préférer le crème `#FAF7F2` au blanc pur partout
|
||||
- Garder les titres en Bricolage 600/700, jamais en regular
|
||||
- Aligner les chiffres (montants, rubis, dates) en colonnes nettes
|
||||
- Touche d'italique rubis sur le mot-clé d'un titre pour casser l'austérité
|
||||
- Utiliser le ◆ comme marqueur de gamification, jamais comme bullet générique
|
||||
|
||||
### À éviter
|
||||
|
||||
- Le rouge en aplat sur plus de 30 % d'un écran
|
||||
- Le noir pur (#000) — toujours `#1A1410`
|
||||
- Le blanc pur (#FFF) sur grande surface — toujours `#FAF7F2`
|
||||
- Mélanger le rubis avec d'autres rouges (orange, écarlate)
|
||||
- Les emojis joaillerie 💎 ou financiers 💰
|
||||
- Le mot "recouvrement" dans la copy publique
|
||||
- Ajouter du bleu, vert, violet pour "varier" — Rubis = rubis et neutres, point
|
||||
- Animer le gem en rotation rapide ou en sparkle disco
|
||||
|
||||
## 9. Application sur les supports
|
||||
|
||||
### Email transactionnel
|
||||
|
||||
- Header : logo (gem + wordmark) sur crème
|
||||
- Corps : Inter 15 px, ligne 1.55, encre `#1A1410`
|
||||
- CTA principal : bouton plein rubis, blanc dessus
|
||||
- Footer : adresse postale (LME requis), lien désabonnement, mention "Envoyé via Rubis"
|
||||
|
||||
### Landing page
|
||||
|
||||
- Background page : crème `#FAF7F2`
|
||||
- Hero : titre Bricolage 700 56px, italique rubis sur 1 mot
|
||||
- CTA primaire : `#9F1239` plein, ombre douce `0 2px 6px rgba(159,18,57,0.25)`
|
||||
- Sections : alternance crème / crème 2 (pas de gris), séparées par 1px ligne `#E8E0D6`
|
||||
|
||||
### Carte de visite, papeterie
|
||||
|
||||
- Format européen 85 × 54 mm
|
||||
- Logo gem + wordmark en haut-droite
|
||||
- Texte aligné à gauche, Inter 11 pt
|
||||
- Verso : aplat crème ou rubis (au choix), pas les deux
|
||||
|
||||
### Réseaux sociaux
|
||||
|
||||
- Avatar : gem facetté blanc sur fond rubis (cf. app icon)
|
||||
- Bannière : phrase courte Bricolage sur crème, gem en watermark à 18 % opacité
|
||||
- Posts ads : titre fort Bricolage, ◆ en eyebrow, CTA URL en bas
|
||||
|
||||
## 10. Notes ouvertes
|
||||
|
||||
- **Custom font** : à long terme, considérer une typo custom dérivée de Bricolage pour gagner en ownability. Pas en V1.
|
||||
- **Animation logo** : potentiel gem animé sur la landing (rotation lente, micro-scintillement). À scoper plus tard.
|
||||
- **Variantes saisonnières** : la marque pourrait avoir des moods (Noël, fin d'année fiscale). À évaluer post-MVP.
|
||||
- **Accessibilité** : vérifier les contrastes — `#9F1239` sur crème = AAA pour le texte, OK ; `#9F1239` sur blanc pur peut être limite pour le texte de petite taille → préférer `#771328` dans ces cas.
|
||||
254
docs/munitions-marketing.md
Normal file
254
docs/munitions-marketing.md
Normal file
@ -0,0 +1,254 @@
|
||||
# Rubis Sur l'Ongle — Munitions marketing
|
||||
|
||||
> Recherche datée du 5 mai 2026 · sources : Banque de France (Observatoire des délais de paiement 2024), Altares, Sénat, INSEE, AFDCC, Sidetrade/Médiateur des entreprises, DGCCRF.
|
||||
|
||||
---
|
||||
|
||||
## 1 · Les 5 chiffres-choc pour la landing
|
||||
|
||||
À mettre en avant dans le hero / first scroll. Choisis ceux qui résonnent le mieux avec le ton final.
|
||||
|
||||
| Stat | Punch line possible | Source |
|
||||
|---|---|---|
|
||||
| **15 Md€ de trésorerie bloquée** chez les PME françaises à cause des retards de paiement | *« 15 milliards d'euros que les PME devraient toucher. Et qu'elles courent après. »* | Observatoire BdF 2024 |
|
||||
| **+25 % de risque de faillite** quand une entreprise subit des retards de paiement | *« 1 entreprise sur 4 qui fait faillite paie le prix d'une facture jamais relancée. »* | Banque de France |
|
||||
| **44 jours** : retard moyen de paiement pour une TPE en France | *« En France, on paie ses TPE 44 jours en retard. La loi en autorise 0. »* | Altares 2024 |
|
||||
| **−26 %** de taux de recouvrement si la première relance arrive 30 jours après l'échéance | *« Chaque jour sans relance, c'est de l'argent qui s'évapore. »* | AFDCC |
|
||||
| **5h / semaine** gagnées par les PME qui automatisent leurs relances (8h → <3h) | *« 5 heures de votre semaine récupérées. À chaque semaine. »* | Bench logiciels relance client |
|
||||
|
||||
**Recommandation :** ouvrir la landing sur **les 5h/semaine** (bénéfice utilisateur direct, émotionnel) et garder les **15 Md€** comme chiffre de magnitude pour la crédibilité, plus bas dans la page.
|
||||
|
||||
---
|
||||
|
||||
## 2 · Le détail des chiffres (par thème)
|
||||
|
||||
### 2.1 — État des paiements en France
|
||||
|
||||
- **Délai moyen de paiement fournisseurs interentreprises** : **14,1 jours** (2025) au-delà du délai contractuel.
|
||||
- **Retard moyen** : **13,6 jours** fin 2024 (en hausse de +1 jour vs 2023). Niveau supérieur à la moyenne européenne.
|
||||
- **Délai global moyen** : **44 jours** entre entreprises, pour une limite légale de 30 jours par défaut (LME).
|
||||
- **TPE** : retard moyen de **44 jours**.
|
||||
- **Grandes entreprises (>1000 salariés)** : retard moyen de **18 jours** — *« les grandes entreprises sont les moins bons payeurs »* (Altares).
|
||||
- **Discipline relative** : >67 % des PME et >75 % des microentreprises paient sous 60 jours. Seule **1 grande entreprise sur 2** y arrive.
|
||||
|
||||
### 2.2 — Coût et impact
|
||||
|
||||
- **15 Md€ de trésorerie bloquée** pour les PME et microentreprises (jusqu'à **17 Md€** dans certaines estimations 2024).
|
||||
- **5 Md€ supplémentaires** côté secteur public (retards de l'État et collectivités).
|
||||
- **+25 %** : augmentation du risque de faillite pour une entreprise subissant des retards de paiement (Banque de France).
|
||||
- **70 000 entreprises** en procédure (sauvegarde, redressement, liquidation) en 2025 — **+3,1 %** vs 2024.
|
||||
- **68 296 défaillances** cumulées sur 12 mois (fin nov. 2025), **+4,4 %** sur un an.
|
||||
- **47 % des dirigeants de PME** ont déjà eu recours à un financement court terme pour pallier un retard de paiement.
|
||||
- **+18 %** de contrats d'affacturage signés entre 2024 et 2025.
|
||||
|
||||
### 2.3 — Cadre légal (loi LME)
|
||||
|
||||
- Délai plafond : **60 jours** à compter de l'émission de la facture, ou **45 jours fin de mois**.
|
||||
- Sanctions DGCCRF : jusqu'à **75 000 €** (personne physique) ou **2 M€** (personne morale), doublées en cas de récidive.
|
||||
- **2025** : 409 entreprises contrôlées, **~47 M€** de sanctions prononcées (Sanofi 1,65 M€, LCL 1,5 M€, Fnac Darty 3,9 M€…).
|
||||
- Sénat : proposition de loi (2025) pour durcir encore les sanctions, votée à l'unanimité — climat politique favorable au discours « stop aux retards ».
|
||||
|
||||
### 2.4 — Temps passé à relancer
|
||||
|
||||
- Avant automatisation : **~8 h / semaine** consacrées aux relances manuelles dans une PME type.
|
||||
- Après automatisation : **<3 h / semaine** — **5 h gagnées chaque semaine**, soit **~21 h / mois**.
|
||||
- Étude AFDCC : le taux de recouvrement chute de **26 %** quand la première relance dépasse 30 jours post-échéance → l'argument timing est le plus fort.
|
||||
- Recommandation des experts : première relance **dès J+1**, idéalement **J0** (le jour de l'échéance) — quasiment infaisable à la main, complètement automatisable avec Rubis.
|
||||
|
||||
### 2.5 — Taille du marché
|
||||
|
||||
- **4,2 millions de TPE-PME** en France (microentreprises incluses) :
|
||||
- 4,3 M microentreprises (<10 salariés)
|
||||
- 159 000 PME stricto sensu (10–250 salariés)
|
||||
- **99,9 %** des entreprises françaises.
|
||||
- **6,9 M de salariés en ETP** (45 % des salariés du privé).
|
||||
- **35,8 %** du chiffre d'affaires marchand français.
|
||||
|
||||
> **Implication go-to-market** : le marché total est gigantesque, mais très fragmenté. Le bon segment d'attaque, c'est probablement les **PME 5–50 salariés** qui émettent ~10–200 factures/mois (segment chip "10–50 / 50–200" du wizard d'onboarding) — assez de volume pour ressentir la douleur, pas assez pour avoir un crédit manager dédié.
|
||||
|
||||
---
|
||||
|
||||
## 3 · Calibration de la conversion « rubis ↔ temps »
|
||||
|
||||
### Hypothèse de base
|
||||
|
||||
D'après les benchmarks (8h → 3h) → **5h gagnées par semaine** = **300 min / semaine** = **~1 200 min / mois** = **~75 min / jour ouvré**.
|
||||
|
||||
### Conversion proposée
|
||||
|
||||
**1 rubis = 10 minutes libérées** (≈ le temps d'une relance manuelle complète : ouvrir l'email, retrouver la facture, rédiger, envoyer, suivre).
|
||||
|
||||
| Métrique | Valeur |
|
||||
|---|---|
|
||||
| 1 rubis | 10 minutes |
|
||||
| 1 facture relancée auto | ≈ 1 rubis |
|
||||
| Mois moyen d'une PME (~10 factures à relancer × 3 relances) | **~30 rubis = 5 h gagnées** |
|
||||
| PME plus active (50 factures × 3 relances) | **~150 rubis = 25 h gagnées** |
|
||||
| Ce que dit la maquette dashboard (124 rubis = 24 h 48) | **cohérent** ✓ |
|
||||
|
||||
### Pourquoi 10 minutes plutôt que 12 ou 15 ?
|
||||
|
||||
- **10 min** = chiffre rond facilement mémorisable dans la copy (« 1 rubis = 10 minutes de votre journée »).
|
||||
- C'est la **moyenne basse défendable** — beaucoup d'études parlent de 15-20 min par relance, donc on est conservateur. Un client peut difficilement contester « j'ai mis 5 minutes ».
|
||||
- Permet aux power users d'accumuler vite des rubis (effet flywheel de la gamification).
|
||||
|
||||
### Variantes possibles
|
||||
|
||||
- **1 rubis = 1 € de trésorerie débloquée** : trop financier, rompt avec la promesse temps.
|
||||
- **1 rubis = 1 facture encaissée** : trop discret pour les utilisateurs avec faible volume.
|
||||
- **1 rubis = 1 relance évitée à la main** (= 10 min) : ✓ recommandé.
|
||||
|
||||
---
|
||||
|
||||
## 4 · Concurrents & positionnement
|
||||
|
||||
### Carte du marché
|
||||
|
||||
| Solution | Cible | Focus | Pricing | Positionnement Rubis |
|
||||
|---|---|---|---|---|
|
||||
| **Dunforce** | ETI / scale-ups B2B | Recouvrement IA multicanal (email, SMS, courrier RAR) | Opaque (« sur demande » à partir d'un seuil) | Trop technique, trop cher pour TPE |
|
||||
| **Upflow** | PME B2B mid-market | AR / recouvrement intégré ERP | À partir de plusieurs centaines €/mois | Trop orienté DAF, pas mobile-first |
|
||||
| **Sellsy** | TPE-PME | Tout-en-un (CRM + facturation + relance + tréso) | À partir de ~30 €/mois | Trop large, la relance est diluée |
|
||||
| **Axonaut** | TPE-PME | Tout-en-un, alternative Sellsy | À partir de 34 €/mois | Idem — pas un outil de relance dédié |
|
||||
| **Agicap** | PME | Gestion de trésorerie | Opaque, B2B sales | Bénéfice connexe, pas le même use case |
|
||||
| **Henrri / Abby / Cegid Business** | TPE | Facturation | Variable | Pas de moteur de relance vrai |
|
||||
|
||||
### Le wedge de Rubis
|
||||
|
||||
Quatre angles différenciants à articuler dans la copy :
|
||||
|
||||
1. **TPE-PME exclusivement** — on ne fait pas semblant de servir les ETI. Notre UX, notre pricing, notre OCR sont calibrés pour le boulanger qui fait 15 factures/mois, pas pour le DAF d'une scale-up.
|
||||
2. **Pure-player relance** — pas un module noyé dans un CRM ou un logiciel de facturation. *« On fait une seule chose et on la fait bien. »*
|
||||
3. **Mobile-first + 3 clics** — concurrents = web app pensée desktop, dashboards complexes. Rubis = la photo de facture depuis le tel, et c'est lancé.
|
||||
4. **Tonalité émotionnelle / gamification** — concurrents parlent « recouvrement », « créances », « DSO », « AR aging ». Rubis parle **temps libéré, sérénité, fierté**. C'est le positionnement « Notion vs SAP » du marché.
|
||||
|
||||
### Phrase-tagline candidate
|
||||
|
||||
- *« Rubis Sur l'Ongle. Vos factures relancées toutes seules pendant que vous travaillez. »*
|
||||
- *« Arrêtez de courir après votre argent. Rubis le fait pour vous. »*
|
||||
- *« 3 clics. Plus jamais de relance manuelle. »*
|
||||
- *« Ne mendiez plus jamais ce qu'on vous doit. »* (plus agressif, polarisant — testable)
|
||||
- *« L'argent, c'est sérieux. La relance, ça ne devrait plus l'être. »*
|
||||
|
||||
> Recommandation : tester en A/B la **1ère** (douce, optimiste) contre la **4ème** (agressive, identitaire) sur Google Ads avant de figer.
|
||||
|
||||
---
|
||||
|
||||
## 5 · Squelette de landing recommandé
|
||||
|
||||
```
|
||||
HERO
|
||||
Tagline (cf. ci-dessus)
|
||||
Sous-titre : "L'app de relance de factures pensée pour les TPE-PME françaises.
|
||||
Glissez-déposez vos factures, choisissez un plan, oubliez-les."
|
||||
CTA primaire : "Démarrer gratuitement" (essai sans CB)
|
||||
CTA secondaire : "Voir la démo en 30 secondes" (storyboard 3 clics animé)
|
||||
Visual : storyboard 3.3 du wireframe (drop → valider → +1 rubis)
|
||||
|
||||
BLOC CHIFFRES (3 stats)
|
||||
44 jours de retard moyen pour une TPE
|
||||
15 Md€ bloqués chez les PME françaises
|
||||
-26% de chances de récupérer si vous attendez 30 jours
|
||||
|
||||
PROMESSE
|
||||
"Votre temps vaut plus que ça."
|
||||
Texte court : 5h/semaine récupérées en moyenne avec Rubis. À 50€/h facturés, c'est 1000€/mois de votre temps que vous récupérez.
|
||||
|
||||
3 ÉTAPES (storyboard détaillé)
|
||||
1. Glissez vos factures (drag & drop, OCR auto)
|
||||
2. Choisissez votre plan de relance (4 modèles fournis)
|
||||
3. C'est tout. Rubis envoie, suit, relance.
|
||||
|
||||
GAMIFICATION (la grosse différenciation)
|
||||
"Compteur rubis"
|
||||
Chaque relance automatisée = 1 rubis = 10 minutes de votre vie récupérées.
|
||||
Visuel : compteur animé "124 rubis ce mois → 24h48 libérées"
|
||||
Bonus social : "Vous êtes dans le top 15% des utilisateurs"
|
||||
|
||||
TÉMOIGNAGES (à constituer post-MVP)
|
||||
Profils visés : artisan, prestataire B2B, freelance, TPE service.
|
||||
Format vidéo court (30s) > photo + verbatim.
|
||||
|
||||
CADRE LÉGAL (rassurer)
|
||||
Bandeau court rappelant : la LME autorise jusqu'à 75 000€ d'amende, le Sénat durcit la loi en 2025. Vous êtes dans votre droit. Rubis le fait pro et sans agressivité.
|
||||
|
||||
PRICING (3 paliers)
|
||||
À cadrer — voir section 6 ci-dessous.
|
||||
|
||||
FAQ
|
||||
(1) Et si mon client paye après ma relance — que se passe-t-il ?
|
||||
(2) Mes factures restent-elles privées ?
|
||||
(3) Et si je veux relancer manuellement ?
|
||||
(4) Puis-je personnaliser les emails ?
|
||||
(5) Combien de temps pour démarrer ?
|
||||
|
||||
CTA FOOTER : "Récupérez vos premières heures cette semaine."
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 6 · Pistes pricing (à confirmer)
|
||||
|
||||
Pas de chiffres figés tant qu'on n'a pas testé, mais les bornes du marché donnent une fenêtre :
|
||||
|
||||
| Concurrent | Prix d'entrée |
|
||||
|---|---|
|
||||
| Henrri | gratuit (facturation seule) |
|
||||
| Axonaut | 34 €/mois |
|
||||
| Sellsy | ~30 €/mois |
|
||||
| Upflow / Dunforce | sur devis (plusieurs centaines €) |
|
||||
|
||||
**Hypothèse à tester :**
|
||||
|
||||
- **Free** : jusqu'à 5 factures actives en relance (attire les freelances, montre la valeur).
|
||||
- **Pro** : 19 €/mois (10–50 factures, OCR illimité, 4 plans, 1 utilisateur) → **prix d'entrée agressif** vs Sellsy/Axonaut, défensable car on est mono-produit.
|
||||
- **Business** : 49 €/mois (illimité, multi-utilisateurs, branding email, intégration banking).
|
||||
|
||||
> Le sweet spot du discours : *« moins cher qu'une heure de votre temps mensuel »*. À 50 €/h facturés, 19 €/mois est trivial à vendre.
|
||||
|
||||
---
|
||||
|
||||
## 7 · Vocabulaire à privilégier / à éviter
|
||||
|
||||
### À privilégier
|
||||
- **Relance** (terme universel et clair)
|
||||
- **Temps libéré / récupéré**
|
||||
- **Sérénité**
|
||||
- **Rubis gagnés**
|
||||
- **Vos factures se relancent toutes seules**
|
||||
- **Travailler, pas relancer**
|
||||
|
||||
### À éviter
|
||||
- ~~Recouvrement~~ → trop juridique, fait peur (associé à huissier)
|
||||
- ~~Créances clients~~ → jargon DAF, pas TPE
|
||||
- ~~AR / Accounts Receivable~~ → anglo, pas le ton
|
||||
- ~~DSO~~ → réservé au dashboard, pas à la landing
|
||||
- ~~Mauvais payeur~~ → trop accusateur côté grand public, OK en interne app
|
||||
- ~~Recouvrement amiable~~ → connotation contentieux
|
||||
|
||||
### À manier avec précaution
|
||||
- **Mise en demeure** : présent dans le produit (étape 3 du plan) mais pas dans la landing — risque de rebuter l'utilisateur qui ne veut pas être un "harceleur" de clients.
|
||||
- **Impayés** : OK pour la stat ("17 Md€ d'impayés") mais ne pas en faire le cœur de la promesse — beaucoup d'utilisateurs ont des retards, pas des "impayés".
|
||||
|
||||
---
|
||||
|
||||
## 8 · Sources (pour citation dans la landing si besoin)
|
||||
|
||||
- **Banque de France** — Observatoire des délais de paiement 2024 (rapport publié 10 juillet 2025)
|
||||
- **Altares** — Délais de paiement interentreprises 2024 (publié 28 juillet 2025)
|
||||
- **INSEE** — Statistiques entreprises 2024 (référentiel TPE-PME)
|
||||
- **AFDCC** (Association Française des Credit Managers) — études formation recouvrement
|
||||
- **DGCCRF** — Bilan contrôles 2025 délais de paiement
|
||||
- **Sénat** — Proposition de loi Olivier Rietmann (2025) contre les retards de paiement
|
||||
- **Sidetrade / Médiateur des entreprises** — Baromètre des factures bloquées 2024
|
||||
- **Allianz Trade**, **Coface** — études récurrentes risque-crédit B2B France
|
||||
|
||||
---
|
||||
|
||||
## 9 · Questions ouvertes à trancher
|
||||
|
||||
1. **Verrouille la conversion rubis** : 1 rubis = 10 minutes ou autre ? Si on bouge ce chiffre, tout le storytelling bouge.
|
||||
2. **Tonalité tagline** : optimiste/douce ou identitaire/polarisante ? Différents archétypes de marque.
|
||||
3. **Place du chiffre € dans le hero** : on parle uniquement temps, ou on chiffre aussi le manque à gagner en € (ex. *« 1000 €/mois récupérés »*) ?
|
||||
4. **Pricing freemium ou trial 14 jours** ? Free attire mais peut cannibaliser le payant si la limite est mal placée.
|
||||
5. **Faut-il un mot fort sur la dimension "made in France"** ? Aujourd'hui pas exploité, mais pertinent pour la cible TPE et les enjeux légaux LME.
|
||||
194
docs/produit.md
Normal file
194
docs/produit.md
Normal file
@ -0,0 +1,194 @@
|
||||
# Spécification produit — Rubis Sur l'Ongle
|
||||
|
||||
> Version : 0.1 (MVP) · Dernière maj : 2026-05-05
|
||||
|
||||
Ce document est la source de vérité produit. Il décrit ce qu'on fait, pour qui, comment, et **ce qu'on ne fait pas**. Quand un wireframe et ce document divergent, ce document gagne.
|
||||
|
||||
---
|
||||
|
||||
## 1. Vision
|
||||
|
||||
Rubis Sur l'Ongle libère le temps des dirigeants de TPE-PME en automatisant la relance des factures impayées. Là où les concurrents proposent des outils de "recouvrement" complexes pour DAF d'ETI, on propose un outil **émotionnellement orienté temps libéré**, conçu pour qu'un boulanger ou une consultante puisse l'utiliser en autonomie en moins de 5 minutes.
|
||||
|
||||
## 2. Cible
|
||||
|
||||
### Profil principal
|
||||
|
||||
- **Taille** : TPE-PME, 5 à 50 salariés
|
||||
- **Volume** : 10 à 200 factures émises par mois
|
||||
- **Décideur** : le dirigeant lui-même, ou son comptable interne (1 personne max)
|
||||
- **Pas de** : crédit manager, DAF, équipe finance dédiée
|
||||
- **Outils existants** : facturation déjà gérée ailleurs (Sage, Pennylane, Henrri, Excel) — **on ne remplace pas** le logiciel de facturation, on relance ce qui sort de là
|
||||
|
||||
### Persona type
|
||||
|
||||
> "Sophie, 42 ans, gérante d'une SARL de prestation B2B (5 salariés). Elle émet 30 factures/mois, 6 sont en retard à tout moment. Elle relance le lundi soir entre 19h et 20h, à la main, en pestant. Elle a essayé un Excel de suivi qui n'a pas tenu 3 mois. Elle gagne 80 €/h facturés. Sa douleur : ne pas pouvoir oublier les retards mentalement."
|
||||
|
||||
### Anti-persona
|
||||
|
||||
- DAF d'ETI > 250 salariés (use case Dunforce/Upflow)
|
||||
- Freelance unique avec 3 factures/mois (volume insuffisant pour ressentir la douleur)
|
||||
- Pure facturation B2C (pas notre cas d'usage)
|
||||
|
||||
## 3. Principes UX
|
||||
|
||||
1. **3 clics maximum** pour lancer une relance sur une nouvelle facture. Idéal : 2 si plan par défaut bien configuré.
|
||||
2. **Mobile first** sur le geste rapide (photo de facture en déplacement). Desktop pour la config et le suivi.
|
||||
3. **L'OCR fait 90 %, l'humain 10 %** — l'utilisateur corrige, ne saisit pas.
|
||||
4. **Plans pré-fournis** — 4 modèles par défaut, l'utilisateur n'arrive jamais sur une page blanche.
|
||||
5. **Le ton monte progressivement** — rappel doux → relance ferme → mise en demeure (jamais auto).
|
||||
6. **Toute action irréversible passe par une modale de confirmation** — envoyer une mise en demeure, supprimer un plan utilisé, archiver une facture en cours.
|
||||
|
||||
## 4. Fonctionnalités V1 (IN)
|
||||
|
||||
### 4.1 Authentification & onboarding
|
||||
|
||||
- Inscription email/password (2 champs minimum)
|
||||
- Google SSO en option
|
||||
- Onboarding 3 étapes au max :
|
||||
1. Compte (email, mot de passe)
|
||||
2. Entreprise (nom, SIRET facultatif, secteur, volume mensuel via chips)
|
||||
3. Signature email (nom, fonction, coordonnées) — sera utilisée dans tous les emails de relance
|
||||
|
||||
### 4.2 Gestion des factures
|
||||
|
||||
- **Drag & drop** : zone d'upload acceptant PDF, PNG, JPG, jusqu'à 20 fichiers en simultané
|
||||
- **OCR automatique** sur l'upload — extrait : client, email, numéro de facture, montant TTC, date d'échéance
|
||||
- **Vérification OCR** : interface split (PDF à gauche, formulaire pré-rempli à droite). Tous les champs déjà remplis, l'utilisateur corrige uniquement
|
||||
- **Saisie manuelle** : modale 6 champs avec recherche client autocomplete
|
||||
- **Liste filtrable** : par statut (toutes, à relancer, en relance, encaissées, litige) via chips
|
||||
- **Actions en lot** : checkboxes pour relancer manuellement, changer le plan, archiver
|
||||
|
||||
### 4.3 Plans de relance
|
||||
|
||||
- **Bibliothèque** : 4 plans pré-fournis par défaut
|
||||
- *Standard B2B* : J+3, J+10, J+20 (mise en demeure brouillon)
|
||||
- *Premium clients VIP* : J+7, J+15, J+30 — ton doux
|
||||
- *Court cash flow tendu* : J+1, J+5, J+10 — ton ferme
|
||||
- *Personnalisable* : à créer par l'utilisateur
|
||||
- **Éditeur** : cadence à gauche, contenu email à droite. Variables sous forme de chips drag-to-insert (`{{prenom_client}}`, `{{numero}}`, `{{montant}}`, `{{date_echeance}}`, `{{signature}}`)
|
||||
- **Tonalité** affichée comme tag visible (Doux / Standard / Ferme)
|
||||
|
||||
### 4.4 Check-in email (réconciliation V1)
|
||||
|
||||
> Remplace l'intégration banking en V1.
|
||||
|
||||
**Comment ça marche** :
|
||||
1. L'utilisateur configure dans son plan : "Vérifier auprès de moi avant chaque relance" (oui/non + délai en jours, ex. T-2 jours avant la relance suivante)
|
||||
2. À T-2 du prochain envoi prévu, Rubis envoie un email **à l'utilisateur** : *"Avez-vous été payé pour la facture F-2024-0042 (1 240 €, Boulangerie Martin) ?"* avec deux boutons : **Oui (stopper le plan)** / **Non (continuer la relance)**
|
||||
3. Si l'utilisateur répond "Oui" → la facture est marquée encaissée, le plan est arrêté
|
||||
4. Si l'utilisateur répond "Non" ou ne répond pas dans le délai → la relance part comme prévu
|
||||
|
||||
**Pourquoi cette mécanique** :
|
||||
- Évite les relances "fantômes" sur des factures déjà payées hors plateforme
|
||||
- Conserve l'utilisateur en boucle sans le surcharger
|
||||
- Architecture compatible avec le futur banking : à terme, le check-in sera automatique via la banque, l'email user devient fallback
|
||||
|
||||
**À prévoir côté architecture V1** :
|
||||
- Modèle d'événement réutilisable (`payment_status_check`) qui peut être déclenché par email-réponse OU plus tard par webhook bancaire
|
||||
- Le statut de la facture (`pending`, `paid`, `awaiting_user_confirmation`, `cancelled`) doit être pivotable, pas spécifique au flow email
|
||||
|
||||
### 4.5 Mise en demeure
|
||||
|
||||
- **Toujours validation manuelle** via modale de confirmation. Pas de checkbox d'auto-envoi, c'est une décision produit forte.
|
||||
- Modale affiche : montant, client, contenu de l'email, conséquences légales rappelées (loi LME)
|
||||
- Utilisateur doit explicitement cliquer "Envoyer la mise en demeure" pour activer l'envoi
|
||||
- Email envoyé en accusé de réception possible (option), pas par défaut
|
||||
|
||||
### 4.6 Dashboard & rubis
|
||||
|
||||
- **Hero** : compteur de rubis du mois en cours, conversion en heures libérées
|
||||
- **KPIs** : factures à relancer, en relance, encaissé du mois, DSO moyen
|
||||
- **Activité du jour** : flux des actions automatiques exécutées par Rubis
|
||||
- **Top mauvais payeurs** : top 3 clients avec le plus de retards (interne uniquement, jamais visible côté client)
|
||||
|
||||
### 4.7 Détail facture
|
||||
|
||||
- Timeline mixant passé (plein) et futur (estompé) des étapes du plan
|
||||
- Tracking d'ouverture des emails (X ouvertures)
|
||||
- Bouton "Relancer maintenant" pour envoi manuel hors cadence
|
||||
- Notes internes en libre
|
||||
|
||||
### 4.8 Mobile
|
||||
|
||||
- Responsive web (pas d'app native en V1)
|
||||
- Action prioritaire : "Photo de facture" (use de la caméra → OCR)
|
||||
- Tab bar 4 entrées max : Accueil · Factures · Plans · Réglages
|
||||
- Le rubis reste hero du mobile
|
||||
|
||||
## 5. Fonctionnalités OUT (V2+)
|
||||
|
||||
### V2 (planifié)
|
||||
|
||||
- **SMS** : étape de relance par SMS, **réservé au plan le plus cher**
|
||||
- **Multi-utilisateurs** : invitations, rôles (admin / éditeur / lecteur), **réservé aux plans payants**
|
||||
- **Personnalisation avancée des emails** : signature HTML, logo client, branding sortant
|
||||
- **Wordmark logo** (direction C) : à monter en complément du logo A
|
||||
|
||||
### V3+ (plus tard, à anticiper en archi)
|
||||
|
||||
- **Intégration banking** : Bridge / GoCardless / Tink, réconciliation automatique. Le check-in V1 devient un fallback
|
||||
- **Intégrations comptable** : Sage, Pennylane, Quickbooks, Pennylane, Cegid
|
||||
- **Multi-devises et multi-langues**
|
||||
- **API publique** pour les ERP partenaires
|
||||
- **App native** iOS/Android
|
||||
|
||||
### Hors scope définitif
|
||||
|
||||
- Émission de factures (on ne devient pas un Henrri-bis)
|
||||
- CRM / pipeline commercial (on ne devient pas Sellsy)
|
||||
- Gestion de trésorerie complète (on ne devient pas Agicap)
|
||||
|
||||
## 6. User flows clés (résumé)
|
||||
|
||||
### Flow 1 — Première facture (onboarding hot path)
|
||||
|
||||
1. Inscription (2 champs) → setup wizard 3 étapes → arrivée sur Factures (vide)
|
||||
2. Drag PDF dans la dropzone → OCR → vérification 30 sec → "Valider"
|
||||
3. Plan par défaut sélectionné → "Lancer la relance" → écran récompense rubis
|
||||
|
||||
**Cible** : moins de 4 minutes du début de l'inscription au premier rubis.
|
||||
|
||||
### Flow 2 — Routine hebdomadaire
|
||||
|
||||
1. Lundi matin, l'utilisateur reçoit un email check-in : "3 factures en attente — avez-vous été payé ?"
|
||||
2. L'utilisateur clique "Oui" sur 1, "Non" sur 2 → les 2 relances partent automatiquement
|
||||
3. Total temps utilisateur : <60 secondes
|
||||
|
||||
### Flow 3 — Mise en demeure
|
||||
|
||||
1. Étape J+20 d'un plan → notification dans l'app : "Brouillon prêt"
|
||||
2. L'utilisateur ouvre la facture → relit le contenu → clique "Envoyer la mise en demeure"
|
||||
3. Modale de confirmation avec rappel légal → confirme → envoi
|
||||
|
||||
## 7. Pricing (esquisse à tester)
|
||||
|
||||
| Plan | Prix | Cible | Limites | V1 |
|
||||
|---|---|---|---|---|
|
||||
| **Free** | 0 € | Freelance, test | 5 factures actives en relance, 1 utilisateur, plans standards seulement | ✓ |
|
||||
| **Pro** | 19 €/mois | TPE 1-5 salariés | Illimité factures + OCR + plans, 1 utilisateur | ✓ |
|
||||
| **Business** | 49 €/mois | PME 5-50 salariés | + multi-utilisateurs, + branding email, + SMS (V2) | partiel |
|
||||
|
||||
**Stratégie** : prix d'entrée agressif vs Sellsy/Axonaut (~30 €) défendable parce qu'on est mono-produit. Argument : *"moins cher qu'une heure de votre temps mensuel"*.
|
||||
|
||||
**Trial** : 14 jours offerts sans CB, puis fallback automatique sur Free.
|
||||
|
||||
## 8. Notes architecture (à formaliser avec stack)
|
||||
|
||||
Quelques contraintes produit qui doivent guider l'architecture :
|
||||
|
||||
- **Statuts de facture pivotables** : `pending`, `awaiting_user_confirmation`, `paid`, `relanced`, `litigation`, `cancelled` — pas hardcodés au flow email
|
||||
- **Modèle d'événement abstrait** pour le check-in : un `payment_status_check` peut être déclenché par email-réponse en V1, par webhook banking en V2 — l'app ne doit pas savoir d'où vient le signal
|
||||
- **Multi-tenant dès le jour 1** : même si V1 est mono-user par compte, la structure DB doit supporter `organization` → `users` → `invoices` pour ne pas refactorer en V2
|
||||
- **OCR** : provider abstrait derrière une interface — on doit pouvoir switcher Mindee → Document AI → Tesseract sans toucher au reste
|
||||
- **Email outbound** : provider abstrait (Resend / Postmark / SendGrid) avec retry et tracking
|
||||
- **Jobs/scheduler** : la cadence des relances et check-ins est un job persistant — préférer Inngest/Trigger.dev/queue dédiée à `setTimeout`
|
||||
|
||||
## 9. Métriques produit à instrumenter
|
||||
|
||||
- **Activation** : % d'utilisateurs ayant lancé leur 1ère relance dans les 7 jours suivant l'inscription
|
||||
- **Engagement** : nombre de rubis gagnés par utilisateur par mois
|
||||
- **Rétention** : MAU / WAU
|
||||
- **Conversion business** : taux de passage Free → Pro
|
||||
- **Satisfaction métier** : DSO moyen des comptes (avant/après Rubis)
|
||||
- **Anti-métrique** : taux de "non" sur les check-in emails (si trop bas, on relance trop tôt et c'est inutile)
|
||||
1424
docs/wireframes-mvp.html
Normal file
1424
docs/wireframes-mvp.html
Normal file
File diff suppressed because it is too large
Load Diff
Loading…
x
Reference in New Issue
Block a user