Skip to main content
When a WhatsApp message, template, or broadcast fails, Meta returns a numeric error code. The same codes show up across the whole WhatsApp Business Platform, so they look identical whether the message was sent by Invent, by another tool, or directly through Meta’s Cloud API. This page explains what each code means and what to do about it, framed for what you actually see inside Invent.
You almost never need to handle these codes by hand. Invent surfaces the failure reason on the affected chat or broadcast recipient. This page is for understanding why a send failed and what to change so the next one succeeds.

How WhatsApp reports errors

Meta’s Cloud API is built on the Graph API, so every error follows the same shape:
A few things worth knowing:
  • The code is what matters. Build your understanding around the numeric code and the details text. The human-readable title inside message (for example Rate limit hit) is informational and Meta plans to deprecate titles eventually.
  • Errors arrive two ways. Some come back immediately as the API response when a send is rejected outright. Others arrive later through a webhook, when a message was accepted but then failed to deliver (the recipient blocked you, their number is not on WhatsApp, and so on). Invent listens to both and attaches the reason to the chat or broadcast recipient.
  • fbtrace_id is your support ticket key. If you ever escalate to Meta Direct Support, include this value. It lets them find the exact request.

Codes you’ll most likely see

These are the handful that come up in normal day-to-day use of WhatsApp in Invent.
A Meta-side restriction on cross-country messaging, not a problem with your connection. Business-initiated messages that cross a border into Brazil (BR) or Indonesia (ID) are blocked. Same-country messaging (Brazil to Brazil, Indonesia to Indonesia) still works, and inbound messages are never affected. The only reliable way to message users inside those countries is a WhatsApp Business account whose business is registered locally there. Full table and details in the channel guide: Business account is restricted from messaging users in this country.
WhatsApp only lets you send free-form messages inside a 24-hour customer service window that opens each time the user messages you. Once 24 hours pass with no reply from them, free-form text is blocked and you must use an approved template message to re-open the conversation. In Invent this is the most common reason an assistant reply silently fails on an older chat. Send a template, or wait for the user to message again.
The message could not be delivered. Common reasons: the recipient’s number is not a WhatsApp number, they have not accepted WhatsApp’s latest Terms of Service, or they are on a very old WhatsApp version. Confirm the number is correct and actually on WhatsApp. There is nothing to fix on your side if the recipient simply does not use WhatsApp.
This user chose to stop receiving marketing template messages from your business on WhatsApp. Do not retry, the message will never be delivered. You can still send utility and authentication templates, and you can still reply inside the 24-hour window. Respect the opt-out.
Meta throttled a marketing template to this specific user to protect engagement quality (the per-user marketing limit). Wait at least 24 hours before resending. Retrying sooner just produces the same error.
You sent too many messages from your number to the same recipient in a short window. Wait and retry for that contact. You can keep messaging other numbers normally, so this rarely affects a broadcast as a whole.
The template name or language locale is wrong, or the template has not been approved yet. Check the exact template name and language in WhatsApp Manager, and confirm its status is Approved before sending. Newly created templates can take a few minutes to become sendable.
The template was rejected on review for a policy reason. Read Meta’s template review guidance, edit the content to comply, and resubmit. Until it is approved again it cannot be sent.
132015 means the template was paused because recipients reacted poorly (blocks, reports, low read rates). Improve the content and it can be re-enabled once approved. 132016 means it was paused too many times and is now permanently disabled. Create a fresh template with better content.
These all mean slow down or improve quality, but for different reasons:
  • 80007: your WhatsApp Business account hit its messaging rate limit. Retry later or send less frequently.
  • 130429: Cloud API throughput limit reached. Same fix: spread sends out over time.
  • 131048: sends are restricted because too many earlier messages were blocked or flagged as spam. Check your quality rating in WhatsApp Manager.
  • 131064: messaging limit reached due to template classification violations. Make sure your templates are categorized correctly (marketing vs utility vs authentication).
190 means the access token behind the connection has expired. In Invent, reconnect the WhatsApp connection from Settings → Connections to refresh it. 368 means the whole WhatsApp Business Account has been restricted or disabled for a policy violation. This is serious: review Meta’s Policy Enforcement page and resolve the violation in WhatsApp Manager. No message will send until the account is reinstated.
Something is wrong with billing on the WhatsApp Business account: no payment method attached, credit line over its limit or inactive, currency or timezone not set, or the account is suspended. Fix billing in WhatsApp Manager and try again.
Your business blocked this WhatsApp user, so the message cannot be delivered. Do not retry. Unblock them first if you want to resume messaging.

Full error code reference

Every code from Meta’s Cloud API error reference, grouped the way Meta groups them. The common ones above are repeated here for completeness.

Authorization errors

These mean the request was not allowed to run at all, usually a token or permission problem. In Invent the fix is almost always to reconnect the WhatsApp connection.

Integrity errors

Account-level enforcement. These block sending until the underlying issue is resolved with Meta.

Throttling and rate limits

Everything here means send slower or improve quality. None require a structural fix, only pacing.

Sending and delivery errors

The most common day-to-day failures when a specific message cannot be delivered.

Template errors

Creating, sending, and quality issues with message templates.

Template insights errors

Niche; only relevant if you toggle template analytics directly.

Phone number registration and migration errors

These appear during number setup and migration between accounts, not during normal messaging.

WhatsApp Business Account and ownership errors

Rare; tied to the deprecated On-Behalf-Of (OBO) ownership model.

Onboarding synchronization errors

Only relevant during Coexistence onboarding, when contacts and history sync.

General and server errors

Catch-alls for malformed requests and platform outages.

Marketing Messages API errors

Only relevant if you use Meta’s Marketing Messages (MM) API, which reuses Cloud API codes plus these additions.

Still stuck?

  • For send failures, the fastest signal is usually your quality rating and messaging limits in WhatsApp Manager.
  • For account-level restrictions (368, 130497, 131031), the resolution lives with Meta, not inside Invent.
  • When escalating to Meta, include the fbtrace_id from the error so Direct Support can trace the exact request.
  • For connection or token issues (0, 190, 200, 131005), reconnect WhatsApp from Settings → Connections.