project· maintenu
Proposals · La proposition commerciale comme produit
Le portail privé où mes prospects reçoivent leur proposition, versionnée, commentable, avec devis à l'écran et en PDF générés depuis la même source. Démo publique, passphrase « atelier ».
Démo ouverte à tous : proposals.horiot.studio/demo,
code d’accès atelier.
Contexte
Une proposition commerciale classique, c’est un PDF envoyé en pièce
jointe. Il meurt dans une boîte mail : les retours arrivent dans un
fil d’emails éclaté, les versions se confondent
(proposition_v3_final_OK.pdf), et le prix vit dans un document
séparé du cadrage.
Ce système prend le contre-pied. Chaque prospect reçoit une URL et une passphrase, transmises par des canaux séparés, et retrouve dans un espace privé le cadrage, le plan, le prix et parfois une démo, au même endroit. C’est l’étape 03 de mon approche, et c’est un produit à part entière.
Essaie-le
Une proposition de démonstration est ouverte, pour une maison de
céramique fictive, Maison Verel. Rends-toi sur proposals.horiot.studio/demo et entre le code d’accès atelier : tu y verras la gate, le
contenu, les retours ancrés et le devis, exactement comme un
prospect. Sur cette démo, la soumission des retours est désactivée
côté serveur ; l’interface reste entière.
Un espace privé, réellement privé
L’accès est protégé par une passphrase propre à chaque proposition, avec un cookie signé côté serveur. Le point important est architectural : tant que l’accès n’est pas déverrouillé, le contenu n’est jamais sérialisé dans la réponse. Ce n’est pas un overlay qui masque une page déjà chargée ; le serveur ne livre rien, et chaque endpoint sensible refait sa propre vérification.
Des retours ancrés au bon endroit
La proposition embarque des questions et des zones de notes, et le prospect peut commenter directement une section ou une ligne du devis. Les réponses sont persistées (Cloudflare D1) et pré-remplies à la visite suivante : on peut s’arrêter et reprendre. Chaque soumission me notifie par email, et je relis tout dans un espace d’administration séparé, lui aussi protégé.
L’itération se fait donc dans la proposition elle-même, pas dans un fil d’emails.
Versionnée comme du code
Chaque publication est un instantané explicite du contenu et du prix. Quand un prospect revient après une révision, il voit un bandeau « Mis à jour » et un diff structurel de ce qui a changé. Ses retours restent épinglés à la version qu’il commentait : pas d’ambiguïté sur « de quelle version on parle ».
Un devis, deux rendus, zéro dérive
Un seul bloc de pricing par proposition alimente à la fois le rendu riche à l’écran et un devis A4 traditionnel en PDF, tous deux calculés par le même module. Le devis en ligne et le PDF ne peuvent pas diverger, c’est le même calcul. Le PDF est généré au moment de la rédaction puis servi derrière la même protection que le reste. L’espace d’administration convertit ensuite un devis accepté en facture, sur la même numérotation que le reste de l’activité.
Une proposition peut aussi embarquer une démo protégée : un prototype hébergé ou un lien externe, déverrouillé en même temps que la proposition. On décide sur du concret.
Stack
- SvelteKit + Cloudflare Pages : rendu serveur, edge
- Cloudflare D1 : retours, versions, factures
- Resend : notifications email
- Chrome headless : génération des PDF à la rédaction
- Design tokens par client : chaque proposition reprend l’univers visuel de la marque à qui elle s’adresse
Pourquoi c’est ici
Ce système est dans l’atelier parce qu’il incarne une conviction : l’expérience commerciale fait partie du travail. Le soin qu’un prospect voit dans sa proposition, avant toute signature, est le même que celui qu’il retrouvera dans son projet. Et c’est le cycle complet de l’atelier : un outil construit pour mon propre usage, éprouvé en conditions réelles, chaque proposition que j’envoie passe par lui.







