# Erreur WhatsApp 132015 : template en pause

URL: https://wa.genuka.com/docs/errors/132015
Language: French

> Erreur WhatsApp 132015 : template mis en pause par Meta pour mauvaise qualité. Durée des pauses (3 h, 6 h, puis désactivation 132016) et comment reprendre.

L'erreur WhatsApp 132015 signifie que le template est en pause : sa note de qualité est tombée au
plus bas après des retours négatifs ou de faibles taux de lecture, et Meta l'a suspendu. Il ne peut
pas être envoyé tant que la pause dure. Attendez sa levée ou modifiez-le, et basculez entre-temps
sur un autre template.

## Que signifie l'erreur 132015 ?

> « Template is paused due to low quality so it cannot be sent in a template message. »
> — [Meta, codes d'erreur de la Cloud API](https://developers.facebook.com/documentation/business-messaging/whatsapp/support/error-codes#other-errors)

La solution de Meta : modifier le template pour améliorer sa qualité, puis réessayer une fois qu'il
est approuvé. Son code voisin marque l'étape suivante :

> « Template has been paused too many times due to low quality and is now permanently disabled. »
> — Meta, code 132016

Pour 132016, il n'y a plus qu'une issue : créer un nouveau template, avec un contenu différent.

### Comment fonctionne la pause ?

Chaque template a une note de qualité, calculée sur son usage, les retours des utilisateurs et
l'engagement : `GREEN`, `YELLOW`, `RED`, ou `UNKNOWN` tant qu'il n'y a pas assez de données
([Meta, Template quality](https://developers.facebook.com/documentation/business-messaging/whatsapp/templates/template-quality)).
Selon la page de Meta sur la pause, un template qui atteint la note la plus basse (`RED` via
l'API) est mis en pause automatiquement
([Meta, Template pausing](https://developers.facebook.com/documentation/business-messaging/whatsapp/templates/template-pausing)).
Sa page sur la qualité dit pourtant qu'un template `RED` « can be sent, but is in danger of being
paused or disabled soon ». Meta n'est pas cohérent d'une page à l'autre : traitez `RED` comme une
pause imminente. Le calendrier des pauses :

| Occurrence | Conséquence               |
| ---------- | ------------------------- |
| 1re fois   | En pause pendant 3 heures |
| 2e fois    | En pause pendant 6 heures |
| 3e fois    | Désactivé : erreur 132016 |

Pendant la pause, Meta ne vous facture pas les tentatives d'envoi et ne les compte pas dans votre
limite d'envoi, mais l'API les rejette. À la fin de la pause, le template redevient actif tout seul
et sa note est recalculée. Meta vous prévient par notification du WhatsApp Manager, par email et
par le webhook `message_template_status_update`.

Une pause ne touche pas d'abord le numéro : ses autres templates de bonne qualité continuent de
partir. Mais un numéro qui envoie régulièrement des templates de mauvaise qualité peut finir par
être affecté.

## Quand l'erreur 132015 apparaît-elle ?

* **En pleine campagne**, quand le template a accumulé les retours négatifs sur les premiers
  envois.
* **Sur un template automatique** (relance de panier, rappel) qui part à des personnes qui ne
  l'attendaient pas.
* **Juste après une pause**, si la cause n'a pas été traitée : la pause suivante dure plus
  longtemps, et la troisième est définitive.

### Où la voir dans Genuka WA ?

| Canal                                    | Ce que vous recevez                                                                                                       |
| ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- |
| Réponse de `POST /api/v1/messages`       | `400`, `"error": "send_template"`, `meta.code: 132015`                                                                    |
| Lancement de campagne                    | Si Genuka WA sait déjà le template en pause : un refus unique avant le premier envoi, au lieu d'un échec par destinataire |
| `GET /api/v1/templates/{id}`             | `status` et `qualityScore` relus en direct chez Meta                                                                      |
| Webhook `message_template_status_update` | L'événement de pause, transmis tel que Meta l'envoie                                                                      |

Dès que Genuka WA sait le template en pause, après `GET /api/v1/templates/{id}` ou
`GET /api/v1/templates?sync=true`, il refuse l'envoi **avant** Meta, avec le même code 132015 pour
que votre gestion d'erreur réagisse de la même façon :

```json title="400 — POST /api/v1/messages"
{
  "error": "send_template",
  "message": "Template \"promo_octobre\" is paused by Meta after negative recipient feedback and cannot be sent. Wait for the pause to lift or edit the template",
  "meta": { "errorClass": "template", "retryable": false, "code": 132015 }
}
```

Un template désactivé est refusé de la même façon avec le code 132016. Attention : Genuka WA
enregistre aussi comme désactivé un template que Meta a seulement **signalé** (événement `FLAGGED`
du webhook, « at risk of being disabled » selon
[Meta](https://developers.facebook.com/documentation/business-messaging/whatsapp/webhooks/reference/message_template_status_update)),
alors qu'il peut encore partir. Avant de recréer un template refusé en 132016, relisez-le avec
`GET /api/v1/templates/{id}` : si Meta le donne toujours approuvé, Genuka WA le repasse en
`approved` et le refus disparaît.

## Comment corriger l'erreur 132015 ?

1. **Arrêtez les envois automatiques qui utilisent ce template.** Meta le recommande : ils seront
   rejetés de toute façon pendant la pause.
2. **Basculez sur un template de secours** pour les messages qui ne peuvent pas attendre, comme une
   confirmation de commande.
3. **Choisissez entre attendre et modifier.** Chez Meta, la pause se lève seule après 3 ou 6 heures.
   Modifier le contenu (`PATCH /api/v1/templates/{id}` avec de nouveaux `components`) le renvoie en
   examen : il ne pourra pas partir avant d'être à nouveau approuvé.
4. **Une fois la pause levée, faites relire le template à Genuka WA** avec
   `GET /api/v1/templates/{id}`, `GET /api/v1/templates?sync=true` ou `POST /api/v1/templates/sync`.
   Seule cette relecture garantit que Genuka WA lève son propre refus 132015 : l'avis de
   réactivation reçu par webhook ne suffit pas toujours à mettre à jour son statut. Sans cette
   relecture, il peut continuer à répondre 132015 alors que Meta a déjà réactivé le template.
5. **Traitez la cause avant de reprendre** : ciblage, fréquence, pertinence du message. Sinon la
   pause suivante dure plus longtemps, et la troisième désactive le template.

Meta permet aussi de réactiver manuellement un template en pause, depuis le WhatsApp Manager ou
par son API `unpause`, et l'exige pour les pauses liées au *template pacing*. Genuka WA n'expose
pas cette action : passez par le WhatsApp Manager.

**curl**

```bash
curl https://wa.genuka.com/api/v1/templates/tpl_123 \
  -H "Authorization: Bearer $GENUKA_WA_API_KEY"
# { "data": { "name": "promo_octobre", "status": "paused", "qualityScore": { "score": "RED", ... }, ... } }
```

**Node.js**

```ts
/** À appeler avant un envoi groupé : ne partez pas sur un template en pause ou en zone rouge. */
export async function templateIsSafe(templateId: string): Promise<boolean> {
  const response = await fetch(`https://wa.genuka.com/api/v1/templates/${templateId}`, {
    headers: { Authorization: `Bearer ${process.env.GENUKA_WA_API_KEY}` },
  });
  const { data } = await response.json();
  return data.status === "approved" && data.qualityScore?.score !== "RED";
}
```

**Python**

```python
import os
import requests


def template_is_safe(template_id: str) -> bool:
    """À appeler avant un envoi groupé : ne partez pas sur un template en pause ou en zone rouge."""
    response = requests.get(
        f"https://wa.genuka.com/api/v1/templates/{template_id}",
        headers={
            "Authorization": f"Bearer {os.environ['GENUKA_WA_API_KEY']}",
            "User-Agent": "acme-crm/1.0 (+https://example.com)",
        },
        timeout=30,
    )
    response.raise_for_status()
    data = response.json()["data"]
    return data["status"] == "approved" and (data.get("qualityScore") or {}).get("score") != "RED"
```

## Comment éviter l'erreur 132015 ?

* **Surveillez la note avant la pause.** En `YELLOW`, Meta prévient que le template risque la
  pause ; en `RED`, traitez-la comme imminente. C'est le moment de ralentir.
* **N'envoyez qu'aux personnes qui ont accepté** vos messages, et au bon moment.
* **Rendez chaque message utile et attendu** : un rappel de rendez-vous est rarement signalé, une
  promotion générique envoyée à tout le fichier l'est souvent.
* **Gardez un template de secours** pour chaque message critique, sous un autre nom.

## Quels codes sont liés ?

* [131048](https://wa.genuka.com/docs/errors/131048) : ce n'est plus un template, c'est **le numéro** qui est restreint
  pour mauvaise qualité.
* [132001](https://wa.genuka.com/docs/errors/132001) : le template est introuvable dans cette langue, ou pas approuvé.
* [131049](https://wa.genuka.com/docs/errors/131049) : un template marketing retenu pour un destinataire précis.

## FAQ

### Combien de temps dure la pause d'un template ?

3 heures la première fois, 6 heures la deuxième. À la troisième, le template est désactivé
(erreur 132016) et il faut en créer un nouveau. Après la levée, relisez le template avec
`GET /api/v1/templates/{id}` pour que Genuka WA cesse de le refuser.

### Les tentatives d'envoi pendant la pause sont-elles facturées ?

Non. Meta précise que vous n'êtes pas facturé pour une tentative d'envoi d'un template en pause, et
qu'elle ne compte pas dans votre limite d'envoi. Elle est simplement rejetée.

### Modifier le template lève-t-il la pause ?

Pas immédiatement : la modification le renvoie en examen, et il ne peut pas être envoyé avant
d'être approuvé à nouveau. C'est utile si le contenu est la cause, pas pour gagner du temps.

## Sources

* [Meta — Error codes](https://developers.facebook.com/documentation/business-messaging/whatsapp/support/error-codes)
* [Meta — Template pausing](https://developers.facebook.com/documentation/business-messaging/whatsapp/templates/template-pausing)
* [Meta — Template quality rating](https://developers.facebook.com/documentation/business-messaging/whatsapp/templates/template-quality)
* [Meta — Webhook message\_template\_status\_update](https://developers.facebook.com/documentation/business-messaging/whatsapp/webhooks/reference/message_template_status_update)
