A message was not delivered
A message that never arrives is caused by one of six things, checked in order: consent, sender registration, template approval, the messaging window, handset/carrier issues, or a genuine platform fault. Work through the list below from the top — the first four explain the large majority of non-delivery cases and can each be confirmed from the console in under a minute.
Reading the status correctly
Every message carries a status that tells you which layer to look at:
| Status | What it means | Where to look |
|---|---|---|
| Queued | Accepted, waiting to be sent (throughput or scheduling) | Sending rate, scheduled time |
| Sent | Left Arino One and the channel provider | Handset, carrier, network |
| Delivered | Confirmed received by the device | No action needed |
| Failed | Rejected before dispatch | Sender, template, consent, window |
| Rejected | Provider (Meta/Infobip) refused it | Sender registration, template category |
A message stuck at "queued" for more than a few minutes is a throughput or scheduling issue, not a delivery issue — check whether you have hit a sending-rate limit or the send was scheduled for a future time by mistake. "Sent but never delivered" almost always sits downstream of Arino One, in the handset or carrier network. "Failed" or "rejected" is nearly always a configuration problem on your side, and is the fastest to fix.
Cause and fix
| Cause | Symptom | Fix |
|---|---|---|
| Contact opted out | Failed immediately, no provider error code | Confirm consent status; re-obtain opt-in before resending |
| Sender not registered for destination country | Rejected with a routing error | Check sender registration under Settings → Channels |
| Template mismatch or not approved | Rejected referencing template name | Confirm template status is Approved, not Pending or Rejected |
| Outside 24-hour window | Rejected, free-form send only | Resend using an approved template to reopen the window |
| Handset off / number invalid | Sent but not delivered, no further update | No fix available; wait for handset to come online or verify the number |
| Carrier filtering (SMS/RCS) | Sent but not delivered, sporadic pattern | Escalate with message ID for carrier trace |
Escalation path by connection status
Every client owns and pays for their own Infobip account directly — Arino never holds client Infobip keys. Once the console-side checks are exhausted, who you escalate to depends on whether your instance has the optional $50/month Arino Core connection.
| Connection status | First-line diagnostics | Escalate to |
|---|---|---|
| Connected ($50/month Arino Core) | Your team, using the console | Arino support, who trace against your own Infobip account on your behalf |
| Unconnected | Your team | Infobip and/or Meta Business Support directly, using your own account credentials |
When escalating to Arino support, include the message ID, the contact's phone number (masked if required by your policy), the exact timestamp, and a screenshot of the status shown in the console. This is the same information unconnected clients should have ready when opening a ticket directly with Infobip or Meta, since neither will trace a delivery without a message ID and timestamp.
Preventing repeat failures
Most repeat non-delivery patterns trace back to stale consent data or a template that was edited after approval without resubmission. Review your contact list's opt-out flags periodically, and treat any template edit — even a punctuation change — as requiring re-approval before it is trusted for production sends.
Steps at a glance
- Read the delivery statusOpen the conversation and check whether the message is queued, sent, failed, or rejected. Each status points at a different layer of the pipeline.
- Check consentA marketing or template message to a contact who has opted out is blocked before it ever leaves the platform. Confirm consent status on the contact record.
- Check the sender and templateConfirm the sending number or channel identity is registered for the destination country and that the template is approved for the category it is being used in.
- Check the messaging windowOn WhatsApp, a free-form (non-template) message sent outside the 24-hour customer service window is rejected outright; only an approved template can reopen the conversation.
- Check handset and carrier signalsIf the report shows sent but not delivered, the failure is downstream of Arino One — a switched-off handset, blocked number, or carrier filtering.
- Escalate with the message IDIf the first five checks are clean, raise a ticket with Arino support if your instance is connected, or contact Infobip/Meta directly using your own account if it is unconnected, with the message ID and timestamp for carrier-level tracing.
Frequently asked
What does a 'failed' status actually mean?
Failed means the platform accepted the send request but the channel provider rejected it before delivery attempt — usually consent, sender registration, template mismatch, or the messaging window. It is different from 'sent', which means it left the provider and delivery is now outside Arino One's control.
Why did a message that worked yesterday fail today?
The most common cause is a contact re-entering an opted-out state, a template being re-reviewed by Meta after edits, or the 24-hour window closing since the customer's last inbound message. Check the timestamp of the customer's last message against the send time.
Does a green tick mean the customer read the message?
No. Delivered means the handset received it. Read receipts are a separate status and depend on the customer's privacy settings — many disable read receipts entirely, so a message can be fully delivered with no read status ever appearing.
Can I retry a failed send automatically?
Ping Me and workflow automations can retry, but retrying a message that failed for consent or template reasons will fail again for the same reason. Fix the underlying cause first, then resend.
Who do I contact if the message ID trace shows a carrier-side block?
That depends on whether your instance is connected to Arino Core — see the escalation table below. Connected clients go through Arino support; unconnected clients contact Infobip or Meta support directly using their own account credentials, since every client owns their own Infobip account regardless of connection status.
Apply this to your own deployment
This guide describes decisions we make on live instances. Tell us your channels, systems and region and we will map it to an architecture outline, a provisioning plan and an indicative commercial model — usually within one business day.