Genuka WA docs

Erreur WhatsApp 141010 : entreprise non vérifiée, solution

Erreur WhatsApp 141010 « The Business has not passed business verification » : pourquoi vos templates OTP sont refusés, et comment les débloquer.

L'erreur WhatsApp 141010 signifie que l'entreprise propriétaire du compte WhatsApp n'a pas passé la vérification d'entreprise de Meta. Elle s'affiche dans l'état de santé du compte, pas dans la réponse d'un envoi. Conséquence concrète : les templates d'authentification (codes OTP) sont refusés, alors que les templates marketing et utilitaires continuent de fonctionner.

Que signifie l'erreur 141010 ?

Vous ne la trouverez pas dans la liste publique des codes d'erreur de la Cloud API. Elle vient du champ health_status, que Meta expose sur le compte WhatsApp, le numéro et les templates. Pour chaque entité concernée (numéro, compte, portefeuille d'entreprise, application), Meta peut y joindre une liste errors dont chaque élément porte un error_code, une error_description et une possible_solution (Meta, Health status).

Sur les comptes connectés à Genuka WA dont l'entreprise n'est pas vérifiée, nous y lisons :

Extrait de health_status
{
  "error_code": 141010,
  "error_description": "The Business has not passed business verification"
}

La vérification d'entreprise se fait sur le portefeuille Meta Business qui possède le compte WhatsApp. Elle n'a rien à voir avec le statut de fournisseur de Genuka : Genuka est Meta Tech Provider, c'est votre entreprise qui doit être vérifiée.

Quand l'erreur 141010 apparaît-elle ?

Dès qu'un numéro est connecté sous un portefeuille non vérifié. L'Embedded Signup de Meta permet de connecter un numéro sans vérification, et beaucoup d'entreprises démarrent ainsi. Le code reste silencieux jusqu'au jour où vous créez un template d'authentification :

Ce que vous faitesEntreprise non vérifiéeEntreprise vérifiée
Créer un template MARKETING ou UTILITYAcceptéAccepté
Créer un template AUTHENTICATION (OTP)Refusé : erreur 10, « Application does not have permission for this action »Accepté une fois le plafond passé à 2 000
Joindre des destinataires uniques hors fenêtre de service, par 24 heures250 au départ2 000 si Meta valide la qualité de vos envois, puis relèvement automatique

Les plafonds viennent de Meta : un portefeuille récent démarre à 250, et la vérification est l'une des voies pour passer à 2 000 (Meta, Messaging limits).

Pourquoi les codes OTP ? Meta réserve la catégorie AUTHENTICATION aux entreprises qui ont franchi une de ses voies de montée en charge, comme la vérification d'entreprise, avec une limite d'au moins 2 000 conversations initiées par jour ; les deux conditions sont exigées ensemble (360dialog, Authentication messages). La vérification seule ne suffit donc pas : après une voie de montée en charge, Meta analyse la qualité de vos envois et peut refuser le relèvement, auquel cas le plafond reste à son niveau (Meta, Messaging limits). Sur 60 comptes clients de Genuka WA audités en septembre 2026, aucun des 45 comptes non vérifiés ne détient de template d'authentification ; le seul du lot appartient à un compte vérifié.

Où la voir dans Genuka WA ?

CanalCe que vous voyez
POST /api/v1/templates avec "category": "AUTHENTICATION"403 meta_rejected, meta.code: 10, message « Application does not have permission for this action »
Meta Business SuiteL'état de vérification du portefeuille, section Centre de sécurité
Serveur MCP de Genuka, outil create_templateL'erreur arrive accompagnée d'une explication de ce cas pour votre agent IA — voir Agents IA

L'API Genuka WA ne relaie pas health_status lui-même : vous n'avez pas de jeton Meta pour l'interroger, et l'état de vérification se lit plus simplement dans Meta Business Suite.

Comment corriger l'erreur 141010 ?

Vérifiez l'état actuel. Dans Meta Business Suite, ouvrez Centre de sécurité > Vérification de l'entreprise sur le portefeuille qui possède le compte WhatsApp (Meta, erreurs de l'Embedded Signup). Si vous appelez Graph vous-même, GET /{WABA_ID}?fields=business_verification_status,health_status renvoie les deux informations ; Meta documente notamment les valeurs VERIFIED, PENDING et NOT_VERIFIED pour la première (Meta, WhatsApp Business Account API). Comparez sans tenir compte de la casse : l'API nous a renvoyé not_verified, en minuscules.

Lancez la vérification. Elle se demande depuis Meta Business Suite, sur ce même portefeuille (Meta, Faire vérifier votre entreprise). Genuka n'intervient pas dans cette démarche : elle concerne votre entreprise et Meta.

Recréez le template d'authentification. Une fois l'entreprise vérifiée et le plafond passé à 2 000 (visible dans WhatsApp Manager, Account tools > Messaging limits, ou par le champ whatsapp_business_manager_messaging_limit du numéro), soumettez à nouveau le même template. Meta rédige lui-même le texte des templates d'authentification : vous ne fournissez que la structure.

const response = await fetch("https://wa.genuka.com/api/v1/templates", {
  method: "POST",
  headers: {
    Authorization: `Bearer ${process.env.GENUKA_WA_API_KEY}`,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
    connectionId: "con_1",
    name: "verification_code",
    language: "fr",
    category: "AUTHENTICATION",
    messageSendTtlSeconds: 600,
    components: [
      { type: "BODY", add_security_recommendation: true },
      { type: "FOOTER", code_expiration_minutes: 10 },
      { type: "BUTTONS", buttons: [{ type: "OTP", otp_type: "COPY_CODE", text: "Copier le code" }] },
    ],
  }),
});
const json = await response.json();

if (response.status === 403 && json.meta?.code === 10) {
  // Entreprise non vérifiée (141010) : rien à corriger dans le code ni dans la clé.
  throw new Error("Vérification d'entreprise Meta requise pour les templates OTP");
}
if (!response.ok) throw new Error(`${response.status} ${json.error}: ${json.message ?? ""}`);
console.log(json.data.id, json.data.status);

Et si l'entreprise ne peut pas être vérifiée tout de suite ?

Meta décrit deux autres voies pour monter à 2 000 destinataires par jour : la vérification menée par le partenaire qui vous a onboardé, et 2 000 messages délivrés hors fenêtre de service à des destinataires uniques sur 30 jours glissants, avec des templates bien notés (Meta, Messaging limits). Elles relèvent votre plafond d'envoi. D'après 360dialog, la condition des codes OTP porte sur une voie de montée en charge franchie, pas sur la seule vérification ; mais aucun des comptes non vérifiés que nous avons audités ne détient de template d'authentification. En attendant, envoyez vos codes par SMS ou par e-mail, et gardez WhatsApp pour vos notifications : voir API WhatsApp sans vérification Meta.

Comment éviter l'erreur 141010 ?

  • Lancez la vérification dès que vous prévoyez des codes OTP, avant d'écrire le code du parcours de connexion : c'est la seule étape que vous ne contrôlez pas.
  • Faites vérifier le bon portefeuille. Celui qui possède le compte WhatsApp connecté, pas un autre portefeuille de la même société.
  • Testez la création du template AUTHENTICATION sur le compte de production : un compte de test non vérifié échouera toujours, quel que soit votre code.

Quels codes sont liés ?

  • 10 : la réponse que renvoie Meta à la création du template OTP.
  • 200 : un vrai problème de permission ou d'accès au compte, à ne pas confondre.
  • 2388098 : pendant l'Embedded Signup, Meta limite le nombre de comptes WhatsApp qu'une entreprise non vérifiée peut créer (Meta, erreurs de l'Embedded Signup).

FAQ

Peut-on envoyer des messages WhatsApp sans vérification d'entreprise ?

Oui. Les templates marketing et utilitaires, et les réponses dans la fenêtre de service de 24 heures, fonctionnent sans vérification, dans la limite de 250 destinataires uniques par jour au départ. Seuls les codes OTP l'exigent.

Pourquoi l'erreur parle-t-elle d'une permission de l'application ?

Parce que Meta répond à la création du template par une erreur de permission générique, code 10. La vraie cause est l'entreprise : le même compte crée sans problème des templates marketing.

Pourquoi 141010 n'est-il pas dans la liste des codes d'erreur de Meta ?

C'est un code de diagnostic de health_status, qui décrit pourquoi une entité est limitée, et non un code renvoyé par un appel d'API. La liste publique de Meta ne couvre que les seconds.

Faut-il recréer le template après la vérification ?

Oui. Un template refusé à la création n'existe pas chez Meta : soumettez-le à nouveau une fois l'entreprise vérifiée et le plafond du compte passé à 2 000.

Sources

Sur cette page