Aller au contenu principal
Guides & Stratégie• 7 min de lecture

SLA et temps de réponse WhatsApp : définir et respecter les engagements

Définissez des SLA réalistes pour votre service client WhatsApp africain. Temps de première réponse, temps de résolution, KPIs et outils de monitoring pour respecter vos engagements.

Un SLA (Service Level Agreement) WhatsApp est l'engagement que vous prenez envers vos clients sur les délais de réponse. Sans SLA défini, votre équipe n'a pas d'objectif clair, vos clients n'ont pas d'attente établie, et vous ne pouvez pas mesurer si votre service client est bon ou mauvais. Avec un SLA bien calibré, tout le monde sait où on va.

Pour les marchés africains, les SLA WhatsApp doivent tenir compte des réalités locales : horaires décalés, volume variable selon les jours de fête, connectivité parfois instable. Voici comment définir des engagements réalistes et les tenir.

Les métriques SLA du service client WhatsApp

Métrique 1 : Temps de première réponse (TFR)

C'est le délai entre le premier message d'un client et la première réponse (bot ou humain). C'est la métrique la plus importante pour la satisfaction client.

Benchmarks africains 2025 :

  • Bot automatique : <30 secondes (idéalement <5 secondes)
  • Premier message humain (heures ouvrables) : <5 minutes = excellent, <15 minutes = bon, <30 minutes = acceptable, >30 minutes = mauvais
  • Nuit/weekend : <2h si bot actif + message d'attente clair

Métrique 2 : Temps de résolution (TTR)

Délai entre le premier message et la fermeture de la conversation avec le problème résolu. Varie énormément selon la complexité.

Objectifs par type de demande :

  • FAQ / question simple : <5 minutes (bot)
  • Suivi commande : <5 minutes (bot avec API)
  • Réclamation simple : <30 minutes (agent)
  • Réclamation complexe : <2 heures (agent + backoffice)
  • Litige : <24h (escalade management)

Métrique 3 : Taux de respect du SLA

Pourcentage de conversations traitées dans les délais définis.

Objectifs recommandés :

  • Taux de respect SLA premier contact : >90%
  • Taux de respect SLA résolution : >85%

Métrique 4 : CSAT post-interaction

Satisfaction client mesurée après fermeture de la conversation. Directement liée au respect des SLA.

Définir vos SLA selon votre contexte africain

Template SLA pour e-commerce africain

# SLA Service Client WhatsApp — [Nom Entreprise]
Version 1.2 | Révisé le [Date]

## PLAGES HORAIRES DE SERVICE
- Lundi à Vendredi : 8h00 - 19h00 (GMT+0)
- Samedi : 9h00 - 16h00
- Dimanche et jours fériés : Bot uniquement (pas d'agent humain)
- Pendant Tabaski/Aïd : Jours fériés communiqués 2 semaines à l'avance

## TEMPS DE RÉPONSE ENGAGÉS

### Pendant les heures de service
| Type de demande | Premier contact | Résolution |
|-----------------|-----------------|------------|
| FAQ/Question simple | <5 min (bot) | <5 min |
| Suivi commande | <2 min (bot) | <2 min |
| Réclamation | <10 min (agent) | <2h |
| Demande remboursement | <15 min (agent) | <24h |
| Problème technique | <10 min (agent) | <4h |

### En dehors des heures de service
| Type | Premier contact | Résolution |
|------|-----------------|------------|
| Toute demande | Message auto <30s | Premier jour ouvrable |
| Urgence déclarée | Notification astreinte | <2h |
| Client VIP | Bot + SMS astreinte | <1h |

## ESCALADES ET EXCEPTIONS
- Client VIP : SLA réduit de 50% sur toutes les métriques
- Période de pointe (Noël, Tabaski, Black Friday) : SLA augmenté de 30%
- Panne de système : communication proactive + SLA suspendu le temps de la panne

Implémenter le monitoring SLA en temps réel

// Monitoring SLA en temps réel
class SLAMonitor {
  constructor(slaConfig) {
    this.config = slaConfig;
    this.breaches = [];
  }
  
  async checkConversation(conversation) {
    const now = new Date();
    const checks = [];
    
    // Check 1 : Temps de première réponse
    if (!conversation.first_response_at && conversation.is_open) {
      const waitTime = getMinutesDiff(conversation.created_at, now);
      const slaLimit = this.getSLALimit('first_response', conversation.type);
      
      if (waitTime > slaLimit) {
        checks.push({
          type: 'first_response_breach',
          conversation_id: conversation.id,
          minutes_overdue: waitTime - slaLimit,
          severity: this.calculateSeverity(waitTime, slaLimit)
        });
      } else if (waitTime > slaLimit * 0.8) {
        // Alerte préventive à 80% du SLA
        checks.push({
          type: 'first_response_warning',
          conversation_id: conversation.id,
          minutes_remaining: slaLimit - waitTime
        });
      }
    }
    
    // Check 2 : Temps de résolution
    if (conversation.is_open) {
      const totalTime = getMinutesDiff(conversation.created_at, now);
      const resolutionLimit = this.getSLALimit('resolution', conversation.type);
      
      if (totalTime > resolutionLimit) {
        checks.push({
          type: 'resolution_breach',
          conversation_id: conversation.id,
          minutes_overdue: totalTime - resolutionLimit
        });
      }
    }
    
    // Notifier si violations
    for (const check of checks) {
      if (check.type.includes('breach')) {
        await this.notifySLABreach(check);
      } else {
        await this.notifySLAWarning(check);
      }
    }
    
    return checks;
  }
  
  getSLALimit(metricType, conversationType) {
    return this.config.sla[conversationType]?.[metricType] || 
           this.config.sla.default[metricType];
  }
  
  calculateSeverity(actual, limit) {
    const ratio = actual / limit;
    if (ratio > 3) return 'critical';
    if (ratio > 2) return 'high';
    if (ratio > 1.5) return 'medium';
    return 'low';
  }
  
  async notifySLABreach(breach) {
    // Alerte Slack/email au manager
    await sendAlert('sla_breach', breach);
    
    // Si breach sur conversation urgente : SMS astreinte
    if (breach.severity === 'critical') {
      await sendSMSAlert(process.env.SLA_MANAGER_PHONE, 
        `SLA BREACH CRITIQUE: Conversation ${breach.conversation_id} - ${breach.minutes_overdue} min de retard`
      );
    }
    
    this.breaches.push({ ...breach, notified_at: new Date() });
  }
}

Dashboard SLA pour management

// Rapport SLA quotidien pour management
async function generateDailySLAReport(date) {
  const conversations = await getConversationsForDate(date);
  
  const stats = {
    total: conversations.length,
    
    first_response: {
      within_sla: conversations.filter(c => isWithinSLA(c, 'first_response')).length,
      average_time_min: average(conversations.map(c => c.first_response_time_min)),
      p90_time_min: percentile90(conversations.map(c => c.first_response_time_min)),
      breach_count: conversations.filter(c => !isWithinSLA(c, 'first_response')).length
    },
    
    resolution: {
      within_sla: conversations.filter(c => c.resolved && isWithinSLA(c, 'resolution')).length,
      average_time_min: average(conversations.filter(c => c.resolved).map(c => c.resolution_time_min)),
      breach_count: conversations.filter(c => c.resolved && !isWithinSLA(c, 'resolution')).length
    },
    
    compliance_rate: {
      first_response: (within_sla_first / total * 100).toFixed(1) + '%',
      resolution: (within_sla_resolution / resolved * 100).toFixed(1) + '%'
    }
  };
  
  return stats;
}

Pour approfondir, consultez notre guide sur la formation des équipes support WhatsApp et notre article sur les KPIs du chatbot WhatsApp.

FAQ

Q: Quels SLA sont réalistes pour une petite équipe de 2-3 agents en Afrique ?

A: Avec 2-3 agents et un bon chatbot, ces SLA sont réalistes en heures ouvrables : premier contact <10 minutes (human), résolution standard <1h, résolution complexe <4h. La clé est d'avoir un chatbot qui traite les cas simples automatiquement pour que les agents se concentrent sur les 20-30% de cas complexes.

Q: Faut-il communiquer publiquement ses SLA aux clients ?

A: Oui, de façon simplifiée. Un message d'accueil ou une page "Contact" qui dit "Nous répondons en moins de 10 minutes du lundi au vendredi 8h-19h" crée une attente claire. Les clients sont moins frustrés quand ils savent à quoi s'attendre. Ne promettez que ce que vous pouvez tenir — un SLA non respecté est pire que pas de SLA du tout.

Q: Comment gérer les SLA pendant les périodes de forte demande (Tabaski, Black Friday) ?

A: Communiquez proactivement AVANT la période de pointe. Un message à vos clients actifs : "En raison du Tabaski, les délais de réponse peuvent être de 2-3h cette semaine. Merci de votre compréhension." La transparence sur les délais réduit la frustration de 60-70%. En interne, planifiez des renforts temporaires (heures supplémentaires, agents saisonniers).

Q: Les SLA doivent-ils être différents pour les clients B2B et B2C sur WhatsApp ?

A: Oui. Les clients B2B ont généralement des enjeux financiers plus élevés et une tolérance moins grande aux délais. Un client business qui signale un bug bloquant a besoin d'une réponse en moins d'une heure, pas dans les 4h standard. Créez des tiers de SLA : "Premium" (B2B, VIP), "Standard" (B2C régulier), "Basic" (nouvelles inscriptions).


Des SLA bien définis sont la fondation d'un service client WhatsApp professionnel. Ils créent de la confiance, motivent les équipes et permettent une amélioration continue.

Démarrez votre service client WhatsApp avec Whakup et accédez à nos outils de monitoring SLA intégrés pour respecter vos engagements client.

#whatsapp-business-api-guide#automatisation-whatsapp-flows#chatbot-whatsapp-guide
Arthur Lyonnet
Arthur LyonnetCo-fondateur & CEO

Co-fondateur de Whakup, Arthur accompagne les entreprises africaines dans leur transformation digitale via WhatsApp depuis 2022. Passionné par le growth marketing et l'entrepreneuriat en Afrique francophone.

🚀

Prêt à passer à l'action ?

Essayez Whakup gratuitement pendant 15 jours. Aucune carte bancaire requise.

Démarrer l'essai gratuit