Delivery Log
The Delivery Log records every message sent by Kiwire — emails, SMS messages, and WhatsApp messages — with full delivery status, error details, and timestamps. It is the definitive source of truth for troubleshooting communication failures.
'alt' => 'Dashboard overview', 'caption' => 'The default Kiwire dashboard layout', 'screenshot' => true, 'class' => '', ]) Drop images into: public/assets/img/docs/{page}/{filename} --}}public/assets/img/docs/report-delivery-log/overview.png
What It Shows
The Delivery Log captures every outbound message dispatched by Kiwire, regardless of whether it originated from a campaign, an automated trigger (OTP, account activation, password reset), or a manual admin action. Each row represents a single message to a single recipient.
Log Record Fields
| Field | Description |
|---|---|
type | Delivery channel: email, sms, or whatsapp |
recipient | Destination email address or phone number |
subject | Email subject line (email messages only) |
message | Preview of the message body (truncated; click a row to see the full content) |
status | Delivery outcome: sent · delivered · failed · bounced |
error | Error message returned by the delivery provider if the message failed or bounced |
sent_at | Date and time the message was dispatched by Kiwire's queue worker |
campaign_id | The campaign that triggered this message — blank for system-triggered messages (OTPs, password resets, etc.) |
Status Values
| Status | Meaning |
|---|---|
sent | Message was accepted by the delivery provider (SMTP server or SMS gateway). Delivery to the recipient's inbox/device is not yet confirmed. |
delivered | The delivery provider confirmed the message reached the recipient's inbox or device (requires delivery receipt support from the provider). |
failed | Kiwire could not submit the message to the provider — connection error, authentication failure, or provider rejection. See error field for details. |
bounced | The provider accepted the message but it was rejected by the recipient's mail server (hard bounce = invalid address; soft bounce = mailbox full or temporarily unavailable). |
sent and delivered are distinct statuses. A message marked sent
has left Kiwire successfully but may still be in transit or in the recipient's spam folder. Only messages
with provider-level delivery confirmation are marked delivered — this depends on your SMTP
or SMS provider's capabilities.
Filters
| Filter | Description |
|---|---|
| Date Range | Narrow log entries by sent_at timestamp |
| Type | Show only email, sms, or whatsapp records |
| Status | Filter to a specific delivery outcome — e.g. show only failed rows |
| Recipient | Search by email address or phone number (partial match supported) |
Retrying Failed Messages
Failed messages can be retried manually from the Delivery Log. Select one or more failed rows and click Retry Selected. Kiwire will re-queue each message and attempt delivery again using the current connector configuration. Retry attempts create new log entries — the original failed record is preserved.
Before retrying, check whether the failure was caused by a configuration issue (wrong SMTP credentials, expired API key) — if so, fix the connector configuration first. Otherwise you will generate the same failure again.
Troubleshooting with the Delivery Log
The Delivery Log is the fastest way to diagnose common user-reported issues:
- "I didn't receive my OTP" — Search by the user's phone number or email. Check whether
a record exists with status
sentorfailed. Iffailed, theerrorfield will explain why — common causes include an invalid phone number format or an SMS provider credit issue. - "I didn't receive the campaign email" — Filter by the campaign ID and the user's
email. If the record shows
bounced, the user's email address may be invalid or their mailbox was full at the time of delivery. - No record found at all — The message may still be queued (check queue worker status) or the user's contact details (email/phone) may not be on their account.
public/assets/img/docs/report-delivery-log/failed-detail.png
The Delivery Log retains records for a rolling period defined by your system retention policy. Export logs regularly if you need to retain delivery records for compliance or audit purposes beyond the default retention window.
Required Permissions
view-delivery-log