Mobile Delivery Receipts
What is a delivery receipt (DLR)?
A delivery receipt, sometimes abbreviated as DLR, is a packet of information that contains the delivery status of the message. DLR’s are invaluable in determining the status of your messages, as delivery receipts allow you to check whether your SMS has ultimately been received at the destination handset, or whether it never reached the handset and why.
-
There are a number of potential statuses that messages can display in our reporting.
- The perfect message will show ‘Queued’ then ‘Sent’ then ‘Submitted’ then ‘Received’
-
In Mobile Report, these are displayed (timestamped) in order from the bottom up.
- Each status is timestamped and shows exactly what happened to the message.
-
There are a few ’tips’ beneath each status to explain some differences in other countries, or carrier specific quirks.
Status Matrix
Status | MT Message Flow Description | MO Message Flow Description |
---|---|---|
Queued | Messages have not left the platform gateway - the application that is sending the message is queuing it in our gateway. | The platform has received the message from the carrier, and routing the message to the customer’s application has been completed. |
Sent | Messages have been sent from the platform gateway, but not yet acknowledged by the carrier SMSC. | The platform has completed the callback request to your configured MO callback URL. |
Failed/Frozen | These are messages that failed to be ‘sent’ to the carrier. This can consist of numbers that have opted out of previous campaigns, messages that ‘failed’ because of invalid formatting, or if there was a connectivity issue, or a system issue preventing the messages leaving our gateway. If a message Fails enough times it will move to a Frozen status and will not be sent to the carrier. At the moment we will retry 50 times before freezing the message. | N/A |
These are statuses generated by the carrier. The messages have left our gateway.
Status | Description |
---|---|
Submitted | Submitted = (in Campaign Manager it’s listed as ‘Submitted for Delivery’) The total number of messages that have been sent to the carrier. It simply means the carrier has acknowledged they have got the messages from our gateway. Note : This is not a handset delivery status. This is a system status DLR. It will only tell you the carrier has received the message. We do not know what they have done with the message until we receive an updated handset DLR. |
Received | Received = is provided by the carrier delivering the message. It means the message was sent to the handset and the carrier has supplied us with a ‘Received’ status. TIP: *** ** In the majority of cases, a RECEIVED status means the handset has got the message, but sometimes it can be handed to us by the carrier if it has been queued or can’t be delivered immediately (rare). * |
Rejected | Rejected = is provided by the carrier attempting to deliver the message. It means the message could not be sent to the handset because the number is invalid on the carriers network. TIP: This can be caused by an expired number, closed account, a ported number not listed in a number portability look up, a number not on that carriers network, or if the number is international, if the carrier does not support masked messages. Rejected messages are counted in volume reports, and they are billed. This is because we have passed the message to the carrier for delivery, so it is a ‘sent’ message. |
Status | Description |
---|---|
Pending | Pending is a transitional status. Once the message progresses, a new status is usually provided. Pending status is provided by the carrier attempting to deliver the message. It means the carrier has acknowledged they have got the messages from our gateway, but have yet to deliver the message to the handset. (ie ‘Received’). TIP : Messages can remain in the pending status if the carrier is not able to immediately deliver the message because the phone is unavailable (eg: out of range, switched off, load issues on the carrier network etc). Each carrier has a set of rules for retrying messages. If the message is still undeliverable after the number of days determined by the carrier, they may send a final status of ‘Failed’… Sometimes they do not. |
Expired | Expired indicates that the carrier was unable to deliver the MT message within the Validity Period (VP), defined for the message. Not all carriers supply an expired notification. There are a number of reasons why the carrier was unable to deliver the MT message within the validity period set, some of which are detailed below:
|
Deficient | Deficient = credit limit of your account has been exhausted. This means your account has a cap on the number of SMS that can be sent, for example trial accounts. |
Blocked | Messages that have been blocked due to the usage of incorrect/protected masks. |
Diverted | A message that has been held and delayed from sending due to a pause in message processing. |
Deleted | Message processing has been stopped and the message has been prevented from being sent |
Status | Description |
---|---|
Read | Read is a WhatsApp-specific status. It is not available for SMS. |
How do DLRs work?
SMS are submitted to a network element called short message service centres (SMSC), which are responsible for final delivery to destination handsets. When messages are submitted by us for delivery, they are submitted with a request for a delivery receipt for that message.
Once a message has been submitted to the SMSC, delivery is attempted. If the delivery is successful, the message will be received and the SMSC will send back a delivery receipt to us, confirming delivery was successful. Where message delivery is not immediately successful, the SMSC will temporarily store the message and reattempt delivery for a maximum period of time. In the case of permanent failure, a delivery receipt will be sent back stating the message was not able to be delivered.
The availability of delivery receipts depends on whether they are supported by the destination network.
We rely on this delivery information being sent by the telco’s. We cannot provide any information after it has been submitted to the telco’s, if that information is not passed back. As a result, we cannot guarantee that delivery receipts will be available for all destinations, but will provide them wherever they are available.
Related Info
In Campaign Manager for example… if at the end of a campaign, if there is no handset DLR passed back to us (after the ‘sent’ status), the final message status is labelled ‘Unknown’ because the carrier failed to provide an updated, final delivery status. In many cases the message was delivered, but our gateway didn’t get an updated DLR, so it is technically ‘unknown’.
In Dominican Republic for example, the carrier Orange, does not send DLR’s, so all the messages sent via that carrier have a final DLR of ‘sent’. We know the message was received by the carrier, but we have no visibility of what happens to the message past that point.