A Delivery Receipt (DLR), also known as Delivery Report, is a special type of message which indicates the final state of a SMS.
A Delivery Receipt is not requested by default for every SMS submission. The DLR parameter must set to ‘1’ in your Ginota SMS API request:
| Parameter | Description | Example Values |
|---|---|---|
| dlr | Indicates whether a delivery receipt (DLR) is requested for this message where:
|
0 |
In order to receive a DLR, Ginota is required to create a HTTP GET request (by default) to your application or web system. A DLR Callback URL must be configured under your Ginota account Profile > API Settings.
Once Ginota receives a delivery receipt, a HTTP DLR callback request will be made to your DLR Callback URL with following parameters described below:
| Parameter | Description |
|---|---|
| messageId | Unique ID to match against the ID returned in the SMS API response. |
| deliveryStatus | Delivery Receipt status code. (For other DLR status codes, please refer to DLR Status Code section below) |
| desc | Description of DLR status code. |
| srcAddr | Sender ID of the message. |
| dstAddr | Destination mobile number. |
| txnRef | Unique internal transaction reference supplied by user in the API request. |
| Sample DLR Callback Request of a Delivered SMS |
|---|
<Your_DLR_Callback_URL>?messageId=18D64EC1EADD&deliveryStatus=0&desc=Delivered&dstAddr=60123456789&srcAddr=MyCampany |
| Status Code | Description | Definition |
|---|---|---|
| 0 | Delivered | Message is successfully delivered to handset. |
| 1 | Expired | Message has expired and could not be delivered within validity period. |
| 3 | Undeliverable | Message cannot be sent. This could happen due to various reasons such as queue overflow, unreachable/unknown destination handset and etc. |
| 4 | Accepted | Message is successfully accepted by the mobile operator. |
| 5 | Unknown | Unknown status. This could happen when mobile operator returned a non-standard status code or no status has been returned. |
| 6 | Rejected | Message is rejected. This usually happens due to invalid message or insufficient balance. |