Communications
Duty Pro sends notifications to consignees to inform them of shipment fees and provide a link to the payment page. Communications are sent automatically after shipment creation when the total amount is greater than zero.
Channels
Section titled “Channels”- When: Sent promptly after shipment creation.
- From:
noreply@dutypro.exelot.com - Subject:
"{Brand Name} — Customs Payment Required" - Content: Consignee name, brand name, shipment reference, total amount, payment deadline, and a payment link.
- When: Scheduled for the next daytime window in the consignee’s timezone (derived from the destination country). This prevents messages from being sent at inconvenient hours.
- Content: A brief message with the brand name, total amount, and a shortened payment link.
Channel configuration
Section titled “Channel configuration”Each brand controls which channels are enabled:
| Setting | Default | Effect |
|---|---|---|
email_enabled | true | When enabled and consignee_email is provided, an email is sent |
sms_enabled | true | When enabled and consignee_phone is provided, an SMS is scheduled |
Configure these settings in the dashboard under Brands > [Your Brand].
Both channels require the corresponding contact information in the shipment request. If consignee_email is missing, no email is sent regardless of the brand setting. The same applies to consignee_phone and SMS.
Communication statuses
Section titled “Communication statuses”Each communication (email or SMS) has a status that tracks its delivery lifecycle:
| Status | Description |
|---|---|
SCHEDULED | Queued for delivery |
SIMULATED | Test mode — not actually sent (content viewable in dashboard) |
SENT | Delivered to the email/SMS provider |
DELIVERED | Confirmed delivered to the recipient |
FAILED | Delivery failed (error message recorded) |
Processing schedule
Section titled “Processing schedule”Pending email and SMS communications are processed every 5 minutes:
- Emails: All
SCHEDULEDemails are picked up and sent (up to 500 per batch). - SMS: All
SCHEDULEDSMS messages are picked up. SMS delivery is additionally gated by working-day checks for the consignee’s country — messages are held until the next working day if the current day is a weekend or holiday.
Failed deliveries are retried up to 3 times.
Opt-out mechanism
Section titled “Opt-out mechanism”Consignees can opt out of future communications on a per-channel, per-brand basis. For example, a consignee may opt out of SMS for one brand while continuing to receive emails.
- Opt-out preferences are checked before every communication send.
- Opt-outs are scoped per brand — opting out of one brand’s communications does not affect other brands.
- Opt-out records can be viewed and managed in the dashboard under Brands > [Your Brand] > Opt-Outs.
Removing opt-outs
Section titled “Removing opt-outs”If a consignee requests to be re-subscribed, you can delete their opt-out record from the dashboard. This will allow future communications to be sent to them.
Test mode behavior
Section titled “Test mode behavior”When a shipment is created with a test API key:
- Emails are not sent. They are logged in the dashboard as
SIMULATEDwith the full rendered content available for review. - SMS messages are not sent. They are logged as
SIMULATEDwith the message content and scheduling metadata visible. - Opt-out records created by test shipments are isolated from live opt-outs and do not affect live communications.
This lets you verify the communication flow without sending real messages or affecting production opt-out preferences.
Viewing communication history
Section titled “Viewing communication history”Communication history is visible in the shipment detail view in the dashboard. Each communication shows:
- Channel (email or SMS)
- Recipient (email address or phone number)
- Status and timestamp
- Template content (for simulated/sent communications)
- Error message (for failed deliveries)