# WhatsApp Cloud API error codes: causes and fixes

URL: https://wa.genuka.com/en/docs/errors
Language: English

> WhatsApp Cloud API error codes explained: what 131047, 131026, 130429, 132001, 141010 and the others mean, and whether to retry.

A WhatsApp error code is the number Meta returns when the Cloud API refuses a call or cannot
deliver a message. With Genuka WA, you read it in the `meta.code` field of the error response, or
in `data.errors[].code` of the `failed` status webhook. The tables below give, for each code, what
it means and whether to retry.

*Last updated October 8, 2026*

## Which WhatsApp error codes are documented here?

The families follow
[Meta's official list](https://developers.facebook.com/documentation/business-messaging/whatsapp/support/error-codes)
(authorization, throttling, integrity, other errors), with the "other errors" grouped here by
topic. Meta's messages are quoted verbatim, as they arrive in API responses.

### Authorization and access tokens

| Code                       | Meta's message                                                             | What it means                                                                                                    | Retry?                                                                         |
| -------------------------- | -------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------ |
| [0](https://wa.genuka.com/en/docs/errors/0)     | "We were unable to authenticate the app user."                             | The access token expired, was invalidated, or its owner cut off app access.                                      | No: a new token is needed. With Genuka WA that token is ours: contact support. |
| [3](https://wa.genuka.com/en/docs/errors/3)     | "Capability or permissions issue."                                         | The app lacks the capability or permission this specific endpoint requires.                                      | No: grant the missing permission.                                              |
| [10](https://wa.genuka.com/en/docs/errors/10)   | "Permission is either not granted or has been removed."                    | A permission is missing. Common case: an OTP template for a business Meta has not verified.                      | No.                                                                            |
| [190](https://wa.genuka.com/en/docs/errors/190) | "Your access token has expired."                                           | The access token expired or is no longer valid.                                                                  | No: replace the token. With Genuka WA you never handle a Meta token.           |
| [200](https://wa.genuka.com/en/docs/errors/200) | "Permission is either not granted or has been removed." (range 200 to 299) | Missing token, revoked permission, or a system user with no access to the account. Unrelated to HTTP status 200. | No: restore the access.                                                        |

### Throttling

| Code                             | Meta's message                                                                                                      | What it means                                                                                    | Retry?                                      |
| -------------------------------- | ------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------ | ------------------------------------------- |
| [4](https://wa.genuka.com/en/docs/errors/4)           | "The app has reached its API call rate limit."                                                                      | The whole app went over its Meta API call limit.                                                 | Yes, later, with fewer calls.               |
| [80007](https://wa.genuka.com/en/docs/errors/80007)   | "The WhatsApp Business Account has reached its rate limit."                                                         | Too many management calls (templates, numbers) on one WhatsApp Business account within the hour. | Yes, later.                                 |
| [130429](https://wa.genuka.com/en/docs/errors/130429) | "Cloud API message throughput has been reached."                                                                    | The number is sending faster than its message throughput.                                        | Yes, with growing delays.                   |
| [131048](https://wa.genuka.com/en/docs/errors/131048) | "Message failed to send because there are restrictions on how many messages can be sent from this phone number…"    | Meta restricts the number's sends after too many blocks or spam reports.                         | Only later, once your sends are cleaned up. |
| [131056](https://wa.genuka.com/en/docs/errors/131056) | "Too many messages sent from the sender phone number to the same recipient phone number in a short period of time." | Too many messages to the same recipient in a short time.                                         | Yes, to that recipient, after a pause.      |

### Integrity and account health

| Code                             | Meta's message                                                                                                           | What it means                                                                                                                                                                            | Retry?                          |
| -------------------------------- | ------------------------------------------------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------- |
| [368](https://wa.genuka.com/en/docs/errors/368)       | "The WhatsApp Business Account associated with the app has been restricted or disabled for violating a platform policy." | The WhatsApp Business account is restricted or disabled for breaking a Meta policy.                                                                                                      | No: request a review from Meta. |
| [141010](https://wa.genuka.com/en/docs/errors/141010) | "The Business has not passed business verification"                                                                      | The business has not passed Meta verification, so its OTP templates are refused. This code shows up in the account's health status (`health_status`), not in Meta's list of error codes. | No: get the business verified.  |

### Request and phone number

| Code                       | Meta's message                                                           | What it means                                                                      | Retry?                                  |
| -------------------------- | ------------------------------------------------------------------------ | ---------------------------------------------------------------------------------- | --------------------------------------- |
| [33](https://wa.genuka.com/en/docs/errors/33)   | "The business phone number has been deleted."                            | The phone number ID you use no longer points to an active number.                  | No: check the ID, reconnect the number. |
| [100](https://wa.genuka.com/en/docs/errors/100) | "The request included one or more unsupported or misspelled parameters." | A parameter is unknown, misspelled or too long. The cause is usually in `details`. | No: fix the request.                    |

### Delivery and payment

| Code                             | Meta's message                                                                                                                  | What it means                                                                                         | Retry?                                                              |
| -------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------- |
| [131026](https://wa.genuka.com/en/docs/errors/131026) | "Unable to deliver message. Reasons can include: The recipient phone number is not a WhatsApp phone number…"                    | The recipient is not on WhatsApp, has not accepted the terms, or runs an app that is too old.         | No: check the number, use another channel.                          |
| [131042](https://wa.genuka.com/en/docs/errors/131042) | "There was an error related to your payment method."                                                                            | The WhatsApp Business account has no valid payment method with Meta, which bills the client directly. | Once the payment method is added or fixed with Meta.                |
| [131047](https://wa.genuka.com/en/docs/errors/131047) | "More than 24 hours have passed since the recipient last replied to the sender number."                                         | The 24-hour customer service window is closed: only an approved template can go out.                  | No: resend the content as a template.                               |
| [131049](https://wa.genuka.com/en/docs/errors/131049) | "This message was not delivered to maintain healthy ecosystem engagement."                                                      | Meta held back a marketing template, most often because the recipient hit their marketing limit.      | Not before 24 hours (US numbers are a separate case, see the page). |
| [131050](https://wa.genuka.com/en/docs/errors/131050) | "Unable to deliver the message. This recipient has chosen to stop receiving marketing messages on WhatsApp from your business." | The recipient stopped your marketing messages.                                                        | Never.                                                              |

### Templates and Flows

| Code                             | Meta's message                                                                                                                             | What it means                                                                                                    | Retry?                                          |
| -------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------- | ----------------------------------------------- |
| [132000](https://wa.genuka.com/en/docs/errors/132000) | "The number of variable parameter values included in the request did not match the number of variable parameters defined in the template." | The number of values sent does not match the template's variables.                                               | No: send one value per variable.                |
| [132001](https://wa.genuka.com/en/docs/errors/132001) | "The template does not exist in the specified language or the template has not been approved."                                             | No approved template with that name in that language. Common trap: `en` and `en_US` are two different templates. | No: check the name, language and status.        |
| [132015](https://wa.genuka.com/en/docs/errors/132015) | "Template is paused due to low quality so it cannot be sent in a template message."                                                        | Meta paused the template for low quality.                                                                        | Once the pause lifts, or with another template. |
| [132069](https://wa.genuka.com/en/docs/errors/132069) | "Flow is in throttled state and 10 messages using this flow were already sent in the last hour."                                           | The Flow is capped at 10 sends per hour because its endpoint is unhealthy.                                       | Once the endpoint is fixed.                     |

## Where do I find the error code in Genuka WA?

In two places, depending on when Meta refuses.

**During the call.** When Meta refuses the request, the Genuka WA error response carries a `meta`
object: Meta's code, its class, `retryable` saying whether another attempt makes sense, and
`traceId`, the identifier Meta support asks for. Example from the
[API reference](https://wa.genuka.com/en/docs/api):

```json title="422 — refused by Meta"
{
  "error": "meta_rejected",
  "message": "Invalid parameter",
  "meta": {
    "errorClass": "template",
    "retryable": false,
    "code": 100,
    "details": "body_text example count does not match the number of variables",
    "traceId": "AbC…"
  }
}
```

**After the send.** An accepted message can still fail to deliver (131026, 131049, 131050…). The
failure then reaches your [webhooks](https://wa.genuka.com/en/docs/webhooks): a `message_status` event, status `failed`,
with Meta's code in `data.errors`:

```json title="message_status webhook (excerpt)"
{
  "type": "message_status",
  "field": "messages",
  "connection_id": "con_1",
  "data": {
    "id": "wamid.HBgLMjM3...",
    "status": "failed",
    "recipient_id": "237690000001",
    "errors": [{ "code": 131026, "title": "…", "message": "…" }]
  }
}
```

## My code is not in this list: where do I look?

Meta publishes the full list of Cloud API codes, with its suggested fix for each:
[Cloud API error codes](https://developers.facebook.com/documentation/business-messaging/whatsapp/support/error-codes).
The `meta.details` field carries the detail Meta gave for your request. If the refusal still makes
no sense, send support the `meta.traceId` and the response's `x-request-id` header.

## FAQ

### What is the difference between errors 4, 80007 and 130429?

They do not limit the same thing. Error [4](https://wa.genuka.com/en/docs/errors/4) caps the whole app's calls,
[80007](https://wa.genuka.com/en/docs/errors/80007) the management calls on one WhatsApp Business account (templates,
numbers), and [130429](https://wa.genuka.com/en/docs/errors/130429) the message throughput of one number. All three are
retried later, with growing delays.

### Should I retry WhatsApp errors automatically?

Only when `meta.retryable` is `true`, and with growing delays. Authorization, template and
recipient errors fail the same way until their cause is fixed. One special case:
[131048](https://wa.genuka.com/en/docs/errors/131048) is marked retryable, but that means "later", not "right now".

### Why "Application does not have permission for this action" on an OTP template?

Because the business has not passed Meta verification: its authentication templates are refused,
and the account's health status carries error [141010](https://wa.genuka.com/en/docs/errors/141010). The message blames
the app by mistake. See also [error 10](https://wa.genuka.com/en/docs/errors/10).

### Does error 131047 mean my number is blocked?

No. It only means the contact has not written to you in more than 24 hours. Resend the content as
an approved template; free-form conversation resumes as soon as they reply.

## Sources

Read on October 8, 2026.

* Meta — [Error codes (Cloud API)](https://developers.facebook.com/documentation/business-messaging/whatsapp/support/error-codes)
* Meta — [Health status](https://developers.facebook.com/documentation/business-messaging/whatsapp/support/health-status)
