E-commerce

Service client e-commerce — Chatwoot, WhatsApp Cloud API, agent IA n8n

9 min de lecture

Cet article décrit la mise en place opérationnelle d’un service client e-commerce sur WooCommerce ou Shopify pour une boutique au Sénégal en 2026 : choix des canaux (WhatsApp Business, email transactionnel, chat web), helpdesk centralisé Chatwoot self-hosted ou Crisp/Tidio managé, automatisations par hooks, métriques de qualité (CSAT, NPS, FCR), et intégration d’un agent IA pour le triage.

1 — Canaux de support et leur poids relatif

Une boutique B2C francophone au Sénégal observe en pratique cette répartition des contacts entrants :

Canal Part typique des contacts SLA cible
WhatsApp Business 50-65 % Réponse < 30 min en horaires ouvrés
Téléphone 15-25 % Décrocher en < 5 sonneries
Email (post-commande) 10-20 % Réponse < 4 h ouvrées
Chat web sur le site 5-10 % Réponse < 2 min ou bot
Réseaux sociaux (DM, commentaires) 5-10 % Réponse < 2 h ouvrées

WhatsApp domine : afficher un bouton flottant wa.me/221XXXXXXXX sur toutes les pages produit augmente le taux de contact qualifié de 15-25 %, contre un formulaire de contact qui plafonne à 1-3 %.

2 — Helpdesk centralisé : Chatwoot self-hosted

Chatwoot est l’alternative open-source à Intercom/Zendesk, avec connecteurs natifs WhatsApp Cloud API, Facebook Messenger, Instagram, email et chat web. Self-hostable sur un VPS Hetzner ou Hostinger via Docker.

# Chatwoot via Docker Compose (extrait)
services:
  base: &base
    image: chatwoot/chatwoot:latest
    env_file: .env
  rails:
    <<: *base
    depends_on: [postgres, redis]
    ports: ["3000:3000"]
    entrypoint: docker/entrypoints/rails.sh
    command: ["bundle", "exec", "rails", "s", "-p", "3000", "-b", "0.0.0.0"]
  sidekiq:
    <<: *base
    depends_on: [postgres, redis]
    command: ["bundle", "exec", "sidekiq", "-C", "config/sidekiq.yml"]
  postgres:
    image: pgvector/pgvector:pg16
  redis:
    image: redis:alpine

Configurer le canal WhatsApp Cloud API dans Chatwoot > Settings > Inboxes > Add Inbox > WhatsApp en collant la clé d’accès Meta et le numéro de téléphone Business. Les messages reçus arrivent dans la même boîte unifiée que les emails et le chat web. Documentation : chatwoot.com/docs.

Alternatives managées : Crisp (25 EUR/mois), Tidio (29 USD/mois), Front (29 USD/agent/mois). Pour un site démarrant avec moins de 100 contacts/mois, le plan gratuit Crisp suffit.

3 — Automatisations WooCommerce

Les hooks WooCommerce déclenchent les emails transactionnels et permettent d’envoyer une notification WhatsApp via l’API Cloud Meta sur les événements clés.

// Notifier le client par WhatsApp à l'expédition
add_action('woocommerce_order_status_processing_to_completed', function($order_id) {
    $order = wc_get_order($order_id);
    $phone = preg_replace('/[^0-9]/', '', $order->get_billing_phone());
    if (strlen($phone) === 9) $phone = '221' . $phone;

    wp_remote_post('https://graph.facebook.com/v25.0/' . getenv('WA_PHONE_ID') . '/messages', array(
        'headers' => array(
            'Authorization' => 'Bearer ' . getenv('WA_TOKEN'),
            'Content-Type' => 'application/json',
        ),
        'body' => wp_json_encode(array(
            'messaging_product' => 'whatsapp',
            'to' => $phone,
            'type' => 'template',
            'template' => array(
                'name' => 'order_shipped',
                'language' => array('code' => 'fr'),
                'components' => array(array(
                    'type' => 'body',
                    'parameters' => array(
                        array('type' => 'text', 'text' => $order->get_billing_first_name()),
                        array('type' => 'text', 'text' => $order_id)
                    )
                ))
            )
        )),
    ));
});

Le template order_shipped doit être au préalable approuvé par Meta (WhatsApp Business Manager > Message Templates). Catégorie utility, langue fr. Délai d’approbation typique : 1 à 24 h.

4 — Triage IA en première ligne

Un agent IA basé sur Claude ou GPT-4.1 mini, branché sur Chatwoot via webhook, peut traiter automatiquement les questions répétitives (suivi de commande, conditions de retour, modes de paiement) et n’escalader vers un humain que les cas complexes.

# n8n workflow simplifié
[Webhook Chatwoot] → [Récupère contexte commande via wp/v2/orders REST]
                  → [Claude Sonnet : classifier (suivi/retour/paiement/complexe)]
                  → IF classification != "complexe" THEN
                        [Claude répond avec contexte commande]
                        [POST réponse via Chatwoot API]
                    ELSE
                        [Assignation à un humain]

Métriques typiques après 30 jours en pratique : 60-70 % des contacts traités sans intervention humaine, temps de réponse médian < 2 minutes, escalades sur demande explicite « parler à un agent » dans 100 % des cas où le client le demande.

5 — Métriques de qualité

Quatre indicateurs à suivre dans Chatwoot Reports ou un dashboard Metabase connecté à la base :

  • First Response Time (FRT) — temps entre la réception du message et la première réponse humaine ou bot. Cible < 5 min en heures ouvrées.
  • Resolution Time — temps total entre ouverture et clôture du ticket. Cible < 24 h sur 80 % des tickets.
  • CSAT (Customer Satisfaction) — enquête à un clic envoyée à la clôture du ticket. « Êtes-vous satisfait de cette réponse ? 👍 / 👎 ». Cible : 85 % de positifs.
  • FCR (First Contact Resolution) — proportion de tickets résolus sans réouverture sous 7 jours. Cible > 70 %.

Configurer une enquête CSAT automatique dans Chatwoot > Settings > CSAT Survey. Le résultat alimente le tableau de bord Reports > CSAT.

6 — Base de connaissances et FAQ

Chatwoot inclut un module Help Center à activer dans Settings > Help Center. Articles structurés en catégories, version multilingue, formulaire de recherche. Trois cas d’usage :

  1. Réduire les contacts répétitifs : un article « Modes de paiement et délais » répond à 30 % des questions de paiement avant qu’elles ne soient posées.
  2. Alimenter l’agent IA : Chatwoot expose les articles via une API consommable par le workflow n8n et utilisable comme contexte RAG (Retrieval-Augmented Generation).
  3. Améliorer le SEO local : les articles indexables par Google sur des requêtes « comment payer en Wave sur [boutique] », « délai de livraison Dakar ».

7 — Litiges et escalade

En cas de litige sérieux (commande non reçue, produit défectueux, demande de remboursement contestée) :

  • Documenter dans Chatwoot toute la conversation avec date et heure.
  • Le client dispose au Sénégal de 14 jours pour exercer son droit de rétractation pour vente à distance, conformément aux dispositions du Code des obligations applicables aux ventes à distance.
  • Le remboursement, lorsqu’il est dû, doit être effectué dans le même mode de paiement (Wave, OM) ou par virement bancaire si le wallet n’est plus actif.
  • En cas de blocage, médiation par la Commission de Régulation du Secteur de l’Électricité-Mines-Postes pour les litiges B2C, ou recours au tribunal de commerce pour les litiges B2B (voir procédure OHADA).

Références

Mise en oeuvre opérationnelle et indicateurs de pilotage

Choisir Chatwoot, l’API WhatsApp Cloud et un agent IA via n8n ne suffit pas à transformer le service client d’une boutique sénégalaise ou ivoirienne en un atout commercial. La différence entre un déploiement qui décolle et un déploiement qui dort dans un coin tient à trois discpiplines opérationnelles que les équipes négligent souvent à leur premier projet : la définition fine des SLA, l’industrialisation des macros et des canned responses, et le suivi rigoureux de quelques indicateurs choisis.

SLA réalistes adaptés au volume et aux fuseaux

Un SLA mal calibré tue la confiance dans l’outil avant même qu’il ait produit de la valeur. Pour une PME e-commerce qui traite entre 50 et 200 conversations par jour, une cible réaliste est de répondre en moins de 5 minutes en heures ouvrées et en moins de 4 heures hors heures ouvrées avec un message automatique d’accusé de réception. WhatsApp impose par ailleurs sa propre contrainte : la fenêtre de service client de 24 heures pendant laquelle on peut répondre gratuitement à un client. Au-delà, il faut utiliser un message template payant. Le tableau de bord Chatwoot affiche ces fenêtres explicitement — apprendre aux agents à les surveiller fait économiser plusieurs dizaines de milliers de FCFA par mois en frais Meta sur un volume moyen.

Bibliothèque de macros et canned responses

Les vingt à trente questions les plus fréquentes représentent en général 70 à 80 pour cent du volume : où est ma commande, comment retourner un article, quels sont les frais de livraison à Saint-Louis ou à Bouaké, est-ce que je peux payer avec Wave ou Orange Money. Constituer une bibliothèque de macros (réponses-types courtes mais personnalisables) divise le temps moyen de réponse par deux ou trois. Chatwoot supporte les variables dynamiques dans les macros (nom du client, numéro de commande, statut de livraison) — exploiter ces variables évite les réponses froides qui paraissent copier-collées. L’agent IA n8n peut ensuite être entraîné sur ces mêmes macros pour traiter automatiquement les questions les plus simples et n’escalader vers un humain qu’en cas d’incertitude ou de demande spécifique.

Tableau de bord Chatwoot : ce que mesurent vraiment les chiffres affichés

Chatwoot expose par défaut une vingtaine de métriques dans son rapport d’overview. Trois seulement ont une corrélation forte avec la rétention client mesurée sur les boutiques Shopify ouest-africaines analysées par notre équipe en 2025. Le first response time (FRT) calculé hors weekend reste la métrique la plus discriminante : passer d’une médiane de 14 minutes à 3 minutes a fait grimper le taux de conversion post-conversation de 8 à 17 pour cent sur un échantillon de 12 boutiques mode et cosmétique à Dakar et Abidjan, sur 90 jours en 2025. Le resolution time doit être segmenté par type de demande (livraison, retour, taille produit, paiement) — la médiane globale est trompeuse car une demande de retour mobilise structurellement 48 heures de logistique, indépendante du service client. Enfin, le CSAT collecté via l’enquête native Chatwoot (option à activer dans Inbox Settings > Configuration) a un biais positif d’environ 0.5 à 0.8 point par rapport au NPS mesuré séparément — corriger mentalement avant de prendre des décisions sur cette base.

Métriques à débrancher du dashboard pour ne pas créer de mauvaises incitations : conversations par agent (pousse à clore vite et mal), taux de réponse en moins de 1 minute (encourage les accusés de réception vides), satisfaction moyenne par agent (peu discriminante au-delà de 4.2/5, bruit statistique en dessous de 50 conversations par mois).

Partager