> ## Documentation Index
> Fetch the complete documentation index at: https://docs.xpressbot.org/llms.txt
> Use this file to discover all available pages before exploring further.

# Message Failed to Send

> A WhatsApp message shows Failed — find the reason and fix it.

## What is this?

When a WhatsApp message can't be delivered, it stays in the conversation with a red **Failed** mark. The reason is always shown — you just have to open it.

## What can I do here?

* Find the exact reason for a failed message
* Match it to the most common causes and fixes
* Know which failures are worth retrying

## How to use it

### Find the reason

* **In the Inbox:** click the red **Failed** mark next to the message time. You'll see the **Error Code** and **Reason**.
* **In a campaign:** open the campaign's results — failed recipients list the reason.
* **In an automation:** open its [Automation Report](https://docs.xpressbot.org/workspace/automation/automation-report.md) and the failing step.
* **From the API or your webhook:** the response, or the `message.status` update with `status.value` `failed`, carries the code and message. See [API and webhook problems](https://docs.xpressbot.org/troubleshoot/api-and-webhooks.md).

Then look up the code in the [Error code reference](https://docs.xpressbot.org/troubleshoot/whatsapp/error-codes.md) or the table below.

### The most common reasons

| What you see | What it means | What to do |
| - | - | - |
| **Invalid country code** | The phone has no country code | [Fix the number](https://docs.xpressbot.org/troubleshoot/whatsapp/invalid-country-code.md) |
| `131047` — more than 24 hours since the customer last replied | You can only send free-form messages within **24 hours** of the customer's last message | Send an **approved template** instead, or wait for the customer to message you |
| `132001` / `132000` / `132012` | The template isn't approved, is in another language, or the variables don't match | [Template problems](https://docs.xpressbot.org/troubleshoot/whatsapp/template-problems.md) |
| `131026` — undeliverable | The number isn't on WhatsApp, the customer hasn't accepted WhatsApp's terms, or their app is very old | Check the number; nothing else can be done — it won't succeed on retry |
| `131050` — recipient opted out of marketing | The customer stopped marketing messages from you | Don't send marketing to them. Utility messages may still go through |
| `131049` — not delivered to keep engagement healthy | WhatsApp limits how many marketing messages one person receives | Wait; don't retry straight away. Send more relevant, less frequent messages |
| `130403` — the business has blocked this recipient | You blocked this contact | **Unblock** the contact |
| `131021` — sender and recipient are the same | You messaged your own number | Use the customer's number |
| `131042` — payment method problem | No working payment method, or billing isn't set up (Direct numbers) | Add a payment method in Meta billing — [Number and account problems](https://docs.xpressbot.org/troubleshoot/whatsapp/number-and-account.md) |
| `WALLET_EXHAUSTED` — wallet balance is insufficient | A credit line number has no wallet balance. The send never reached WhatsApp | Recharge your wallet — [Transactions](https://docs.xpressbot.org/workspace/transactions.md) |
| `CREDIT_LINE_NOT_ATTACHED` | A credit line number's credit line isn't attached yet | **Channels → WhatsApp → Retry** — [WhatsApp channel](https://docs.xpressbot.org/workspace/channels/whatsapp.md#how-the-channel-is-billed) |
| `130429`, `131056`, `131048`, `80007`, `4` — limits | Too many messages too fast, or too many to the same person | Wait and retry; slow your sends down |
| `190`, `0`, `10`, `200`–`299` | The access token expired or a permission is missing | **Settings** on the card to paste a new token, or **Reconnect** |

### Which failures to retry

* **Temporary** (limits, maintenance, "try again"): safe to retry after a few minutes. Campaigns retry many of these automatically.
* **Permanent** (invalid number, not approved, opted out, restricted): retrying won't help — fix the cause first.

Each code in the [Error code reference](https://docs.xpressbot.org/troubleshoot/whatsapp/error-codes.md) says which kind it is.

## Troubleshooting / Technical Notes

* **Only some messages in a campaign failed.** Look at each failure reason — a few bad numbers, opt-outs or the per-person marketing limit are normal. The rest are unaffected.
* **Every message fails with the same code.** The cause is on the number or account (token, payment, restriction, template) — check **WhatsApp Health**.
* **It says sent, but the customer never got it.** Look at the delivery status: **sent**, **delivered**, **read**. A message that stays at *sent* may be waiting on the customer's phone being online.
* **The customer replied, but I still can't send a normal message.** The 24-hour window starts again at their **latest** reply. Check the time in the conversation.

## Related docs

* [Troubleshoot overview](https://docs.xpressbot.org/troubleshoot/overview.md)
* [Error code reference](https://docs.xpressbot.org/troubleshoot/whatsapp/error-codes.md)
* [Invalid country code](https://docs.xpressbot.org/troubleshoot/whatsapp/invalid-country-code.md)
* [Template problems](https://docs.xpressbot.org/troubleshoot/whatsapp/template-problems.md)
* [Conversation View](https://docs.xpressbot.org/workspace/inbox/conversation-view.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.