Envoyez devis et factures via WhatsApp directement depuis Odoo Sans API Meta · Sans abonnement · Compatible WhatsApp personnel et Business
Message pré-rempli avec numéro de devis, montant et liens sécurisés pour signer, refuser ou poser une question.
Envoi de la facture avec montant dû, date d'échéance et lien de paiement en ligne vers le portail client Odoo.
Boutons de relance dédiés pour les devis (avez-vous vu ?) et les factures (veuillez régler), avec liens de réponse interactifs.
Chaque lien portail (refus, question, vu, paiement) dispose de son propre token UUID unique, régénéré à chaque envoi WhatsApp. Les tokens expirent après un nombre de jours configurable.
Un cron journalier crée une activité de relance pour le commercial si un devis reste sans réponse, ou si une facture est en retard de paiement. Délais configurables — mettre 0 pour désactiver.
Le lien "Poser une question" est limité à un nombre d'utilisations configurable (défaut 3). Un bouton rouge "Révoquer les liens" invalide immédiatement tous les liens portail actifs.
Le lien "Poser une question" est limité à un nombre d'utilisations configurable (défaut 3). Un bouton rouge "Révoquer les liens" invalide immédiatement tous les liens portail actifs.
Chaque envoi est journalisé dans le chatter avec expéditeur, numéro et message. Les activités sont créées et clôturées automatiquement.
Chaque commercial renseigne son numéro WhatsApp dans sa fiche. Numéro société utilisé en repli si aucun numéro n'est configuré.
WhatsApp Sales Free ajoute des boutons verts « Envoyer via WhatsApp » et « Relancer via WhatsApp » directement sur vos devis et factures client dans Odoo. En un clic, WhatsApp s’ouvre avec le message pré-rempli incluant des liens portail sécurisés — sans API Meta Business, sans webhook, sans coût mensuel.
Le module utilise le protocole gratuit wa.me : Odoo construit le message, le commercial clique une fois pour ouvrir WhatsApp (web ou application), puis envoie. Tout est tracé dans le chatter et clôturé en activité faite automatiquement.
Bonjour Jean Dupont,
Veuillez trouver ci-dessous votre devis *S00042* d’un montant de *12 500,00 EUR*.
N’hésitez pas à me contacter pour toute question.
Cordialement,
Alice Martin
Acme SARL
——————————–
✅ Signer et confirmer
https://votre-odoo.com/my/orders/42?access_token=…
❌ Refuser le devis
https://votre-odoo.com/sale/whatsapp/refuse/42?token=…
💬 Poser une question
https://votre-odoo.com/sale/whatsapp/question/42?token=…
Bonjour Jean Dupont,
Nous vous contactons au sujet de votre devis *S00042* d’un montant de *12 500,00 EUR*.
Avez-vous eu l’occasion de le consulter ?
Cordialement,
Alice Martin
Acme SARL
━━━━━━━━━━━━━━━━━━━━
👀 Oui, je l’ai consulté
https://votre-odoo.com/sale/whatsapp/seen/42?token=…
✅ Je souhaite le signer
https://votre-odoo.com/my/orders/42?access_token=…
💬 J’ai une question
https://votre-odoo.com/sale/whatsapp/question/42?token=…
❌ Je refuse
https://votre-odoo.com/sale/whatsapp/refuse/42?token=…
Bonjour Jean Dupont,
Nous nous permettons de vous rappeler que votre facture *FAC/2025/00042* d’un montant de *12 500,00 EUR* est en attente de règlement.
Date d’échéance : *31/03/2025* Merci pour votre confiance.
Cordialement,
Alice Martin
Acme SARL
━━━━━━━━━━━━━━━━━━━━
💳 Régler en ligne
https://votre-odoo.com/my/invoices/42?access_token=…
✅ J’ai déjà effectué le virement
https://votre-odoo.com/invoice/whatsapp/paid/42?token=…
Toutes les pages portail sont légères, publiques (sans connexion requise) et accessibles depuis n’importe quel appareil.
| Action du client | Ce qui se passe dans Odoo |
|---|---|
| ✅ Signe le devis | Redirigé vers la page de signature du portail Odoo |
| ❌ Refuse le devis | Note dans le chatter + activité « À faire » pour le commercial + tous les tokens du devis invalidés |
| 💬 Pose une question | Formulaire HTML → message sauvegardé dans le chatter + activité (max N utilisations par lien) |
| 👀 Confirme avoir consulté | Note dans le chatter + activité de relance clôturée |
| 💳 Paye en ligne | Redirigé vers le portail de paiement Odoo |
| ✅ Confirme le virement | Note dans le chatter + activité « Vérifier le paiement » |
| Fonctionnalité | Détail |
|---|---|
| Tokens UUID par action | Chaque type de lien (refus, question, vu, paiement) dispose de son propre token UUID unique. Un lien divulgué ne peut pas être utilisé pour une autre action. |
| Rotation des tokens | Tous les tokens sont régénérés à chaque envoi WhatsApp. Les anciens liens sont immédiatement invalidés. |
| Expiration des tokens | Les liens expirent après un nombre de jours configurable (défaut : 7). Un lien expiré affiche une page d’erreur conviviale. |
| Bouton Révoquer les liens | Bouton rouge sur le devis / la facture pour invalider immédiatement tous les liens portail actifs. |
| Invalidation sur refus | Quand le client refuse, tous les tokens restants du devis (question, vu) sont effacés en une seule opération. |
| Anti-spam questions | Le lien « Poser une question » est limité à N utilisations par envoi (configurable, défaut 3). Remis à zéro au prochain envoi. |
Paramètres → Utilisateurs → [Commercial] → WhatsApp
Saisir le numéro au format international : +33612345678
Paramètres → Ventes → WhatsApp → Numéro WhatsApp de la société
Utilisé quand le commercial n’a pas de numéro configuré.
Contacts → [Contact] → case « Utilise WhatsApp »
Le bouton d’envoi n’est actif que pour les contacts cochés comme utilisateurs WhatsApp.
Paramètres → Ventes → WhatsApp
| Paramètre | Défaut | Description |
|---|---|---|
| Token Expiration (days) | 7 | Jours avant expiration des liens portail. Mettre 0 pour désactiver. |
| Max questions per link | 3 | Nombre max d’utilisations du lien « question » par envoi. Mettre 0 pour illimité. |
Paramètres → Ventes → WhatsApp → Relances automatiques
| Paramètre | Défaut | Description |
|---|---|---|
| Quotation follow-up after (days) | 0 (désactivé) | Jours après l’envoi WhatsApp sans réponse avant création d’une activité de relance pour le commercial. |
| Invoice overdue follow-up after (days) | 0 (désactivé) | Jours après la date d’échéance avant création d’une activité si la facture est encore impayée. |
ℹ️ Activités, pas envois automatiques. Le cron crée une activité Odoo pour le commercial — il n’envoie pas de messages WhatsApp automatiquement (ce qui nécessiterait l’API Meta). Le commercial voit l’activité dans sa boîte de réception et clique lui-même le bouton WhatsApp
Paramètres → Ventes → WhatsApp
| Template | Langue | Utilisé par |
|---|---|---|
| Template devis 🇫🇷 | Clients français | Bouton Envoyer sur le devis |
| Template devis 🇬🇧 | Autres clients | Bouton Envoyer sur le devis |
| Relance devis 🇫🇷 | Clients français | Bouton Relancer sur le devis |
| Relance devis 🇬🇧 | Autres clients | Bouton Relancer sur le devis |
| Template facture 🇫🇷 | Clients français | Bouton Envoyer sur la facture |
| Template facture 🇬🇧 | Autres clients | Bouton Envoyer sur la facture |
| Relance paiement 🇫🇷 | Clients français | Relance paiement sur la facture |
| Relance paiement 🇬🇧 | Autres clients | Relance paiement sur la facture |
| Variable | Description |
|---|---|
{partner_name} |
Nom du client |
{order_name} |
Numéro du devis (ex. S00042) |
{amount_total} |
Montant total (formaté) |
{invoice_name} |
Numéro de la facture |
{amount_due} |
Montant restant dû |
{currency} |
Code devise (EUR, USD…) |
{due_date} |
Date d’échéance facture (JJ/MM/AAAA) |
{salesperson_name} |
Nom complet du commercial |
{company_name} |
Nom de la société |
{order_url} |
Lien portail pour signer le devis |
{refuse_url} |
Lien de refus (crée une activité, invalide tous les tokens) |
{question_url} |
Lien vers le formulaire de question (utilisations limitées) |
{seen_url} |
Lien pour confirmer la consultation du devis (relance uniquement) |
{invoice_url} |
Lien portail pour payer en ligne |
{paid_url} |
Lien pour confirmer le paiement effectué (relance uniquement) |
⚠️ Longueur recommandée : moins de 600 caractères. Les messages plus longs peuvent être tronqués par la barre d’adresse du navigateur ou certains clients WhatsApp. Un avertissement s’affiche dans les paramètres si un template dépasse cette limite.
Non. Le commercial clique sur le bouton, Odoo ouvre WhatsApp avec le message pré-rempli,
et le commercial clique sur Envoyer manuellement. C’est voulu — cela évite de nécessiter
une approbation Meta ou une API payante. La fonctionnalité de relance automatique crée
des activités Odoo pour le commercial, pas des envois WhatsApp automatiques.
Oui ! wa.me fonctionne avec n’importe quel compte WhatsApp — personnel, WhatsApp Business
(app gratuite), ou WhatsApp Business Platform. La seule condition est que le commercial ait
WhatsApp installé sur son téléphone ou son ordinateur.
Il arrive sur une page portail Odoo légère (sans connexion requise). Son action
(refus, question, vu, confirmation de paiement) est immédiatement enregistrée dans
le chatter et une activité est créée pour le commercial. Si le client refuse, tous les
liens portail restants (question, vu) sont immédiatement invalidés.
Oui. Chaque action (refus, question, vu, paiement) utilise son propre token UUID unique,
distinct du token générique d’Odoo. Les tokens sont régénérés à chaque envoi WhatsApp,
expirent après un nombre de jours configurable (défaut 7), et sont invalidés quand le client
refuse. Un bouton « Révoquer les liens WhatsApp » permet également d’invalider manuellement
tous les liens actifs depuis le devis ou la facture.
Le module est développé et testé pour Odoo 19. Il peut fonctionner en 17/18 avec
des ajustements mineurs mais ce n’est pas officiellement supporté.
Oui. Les 8 templates (devis/facture × envoi/relance × FR/EN) sont entièrement
personnalisables dans Paramètres → Ventes → WhatsApp. Les modifications s’appliquent
immédiatement, sans redémarrage. Un avertissement s’affiche si un template dépasse
600 caractères.
| Fonctionnalité | WhatsApp Sales Free | API Meta WABA — Odoo natif (payant) |
|---|---|---|
| Coût | 🆓 Gratuit à vie | 💰 Facturation au message + setup |
| Compte Meta requis | ❌ Non | ✅ Oui — compte Meta Business vérifié |
| Approbation de template | ❌ Non requise | ✅ Requise par template (24–72 h) |
| WhatsApp personnel | ✅ Oui (personnel ou Business app) | ❌ Non — WABA uniquement |
| Envoi | 1 clic manuel — le commercial envoie depuis son téléphone | Entièrement automatique via API Meta |
| Envoi automatique (sans clic) | ❌ Non — la relance crée des activités Odoo | ✅ Oui |
| Réponses clients dans Odoo | Via liens portail sécurisés (refus, question, vu, paiement) | Via webhook bidirectionnel |
| Temps de mise en place | 5 minutes | Jours / semaines |
Notre équipe d'experts Odoo est à votre service
Support téléphonique pour toutes vos questions techniques
| Cookie | Durée | Description |
|---|---|---|
| cookielawinfo-checkbox-analytics | 11 months | This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Analytics". |
| cookielawinfo-checkbox-functional | 11 months | The cookie is set by GDPR cookie consent to record the user consent for the cookies in the category "Functional". |
| cookielawinfo-checkbox-necessary | 11 months | This cookie is set by GDPR Cookie Consent plugin. The cookies is used to store the user consent for the cookies in the category "Necessary". |
| cookielawinfo-checkbox-others | 11 months | This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Other. |
| cookielawinfo-checkbox-performance | 11 months | This cookie is set by GDPR Cookie Consent plugin. The cookie is used to store the user consent for the cookies in the category "Performance". |
| viewed_cookie_policy | 11 months | The cookie is set by the GDPR Cookie Consent plugin and is used to store whether or not user has consented to the use of cookies. It does not store any personal data. |