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

# Receive delivery receipts

> Phonovation sends this webhook when the mobile network returns a delivery result.

Delivery receipts work across all send methods, including the OAuth API and legacy APIs.

Set `callbackHost` to your callback hostname before sending a test request. Do not include `https://`.


Delivery receipts confirm whether the mobile network delivered or failed a message.

<Note>
  Delivery receipts work across all send methods, including the OAuth API and legacy APIs.
</Note>

```mermaid title="Delivery receipt flow" theme={"dark"}
sequenceDiagram
  participant Gateway as Phonovation gateway
  participant Network as Mobile network
  participant Endpoint as Your webhook endpoint

  Gateway->>Network: Submit SMS
  Network-->>Gateway: Delivery result
  Gateway->>Endpoint: Delivery receipt
  Endpoint-->>Gateway: 200 OK
```

## Quick facts

| Item                 | Detail                                                         |
| -------------------- | -------------------------------------------------------------- |
| **Format**           | `application/x-www-form-urlencoded`                            |
| **Timing**           | Usually seconds to minutes; can be delayed                     |
| **Verification**     | `SMS-Verify = MD5(SMS-NotifyId + SMS-Success + client secret)` |
| **Success response** | `200 OK`                                                       |


## OpenAPI

````yaml openapi/delivery-receipt-webhook.yaml POST /
openapi: 3.1.2
info:
  title: Phonovation SMS Delivery Receipt Webhook
  version: 1.0.0
  description: Delivery receipt webhook payload sent by Phonovation to your callback URL.
  contact:
    name: Phonovation Support
    email: support@phonovation.com
servers:
  - url: https://{callbackHost}
    description: Customer-provided callback server
    variables:
      callbackHost:
        default: callback.yourcompany.com
        description: Callback hostname only. Do not include `https://` or a trailing path.
security: []
tags:
  - name: Delivery Receipts
    description: Delivery receipt webhook payloads sent by Phonovation.
paths:
  /:
    post:
      tags:
        - Delivery Receipts
      summary: Receive delivery receipts
      description: >
        Phonovation sends this webhook when the mobile network returns a
        delivery result.


        Delivery receipts work across all send methods, including the OAuth API
        and legacy APIs.


        Set `callbackHost` to your callback hostname before sending a test
        request. Do not include `https://`.
      operationId: receiveDeliveryReceipt
      requestBody:
        required: true
        content:
          application/x-www-form-urlencoded:
            schema:
              $ref: '#/components/schemas/DeliveryReceiptWebhook'
            examples:
              delivered:
                summary: Message delivered
                value:
                  SMS-Type: Notification
                  SMS-NotifyId: '321354'
                  SMS-Success: 'True'
                  SMS-To: '353861234567'
                  SMS-From: '353871234568'
                  SMS-Verify: 5fb4926bd7e461eddc6dc629f472bab4
                  SMS-TotalToSend: 1
                  SMS-TotalSent: 1
                  SMS-TotalFailed: 0
                  SMS-TimeStamp: '2026-04-09 16:03:16'
              failed:
                summary: Message not delivered
                value:
                  SMS-Type: Notification
                  SMS-NotifyId: '321354'
                  SMS-Success: 'False'
                  SMS-To: '353861234567'
                  SMS-From: '353871234568'
                  SMS-Verify: 9db038748b3088971d913616c13e769b
                  SMS-TotalToSend: 1
                  SMS-TotalSent: 0
                  SMS-TotalFailed: 1
                  SMS-TimeStamp: '2026-04-09 16:03:16'
      responses:
        '200':
          description: Your webhook endpoint accepted the delivery receipt.
      security: []
components:
  schemas:
    DeliveryReceiptWebhook:
      type: object
      required:
        - SMS-Type
        - SMS-NotifyId
        - SMS-Success
        - SMS-To
        - SMS-From
        - SMS-Verify
        - SMS-TotalToSend
        - SMS-TotalSent
        - SMS-TotalFailed
        - SMS-TimeStamp
      properties:
        SMS-Type:
          type: string
          const: Notification
          description: Always `Notification` for delivery receipts.
        SMS-NotifyId:
          type: string
          description: The recipient-level `notifyId` assigned when sending the message.
          default: '321354'
        SMS-Success:
          type: string
          enum:
            - 'True'
            - 'False'
          description: Whether the message was delivered.
          default: 'True'
        SMS-To:
          type: string
          description: Destination mobile number in Irish international format.
          default: '353861234567'
        SMS-From:
          type: string
          description: Sender ID as it appeared on the recipient handset.
          default: '353871234568'
        SMS-Verify:
          type: string
          description: >-
            MD5 verification hash built from `SMS-NotifyId + SMS-Success + your
            Client Secret`.
          default: 5fb4926bd7e461eddc6dc629f472bab4
        SMS-TotalToSend:
          type: integer
          description: Total number of messages in the send.
          default: 1
        SMS-TotalSent:
          type: integer
          description: Number of messages successfully delivered.
          default: 1
        SMS-TotalFailed:
          type: integer
          description: Number of messages that failed.
          default: 0
        SMS-TimeStamp:
          type: string
          pattern: ^[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}:[0-9]{2}$
          description: Delivery time in UTC, formatted as `yyyy-MM-dd HH:mm:ss`.
          default: '2026-04-09 16:03:16'

````