# Delivery in Progress (Issues)

### <i class="fa-calendar-xmark">:calendar-xmark:</i> Delivery delay

Explain the delay with empathy, share the latest ETA, and provide clear next steps to reduce anxiety and support tickets.

<details>

<summary>Subject line &#x26; preview</summary>

Example subject variants:

* `Delivery delay: order {{orderNo}}`
* `Update: your delivery is running late`
* `We’re sorry—your {{shopName}} delivery is delayed`

Example preview text variants:

* `Here’s the updated estimate and the latest tracking status.`
* `Track your parcel and see delivery options if available.`

</details>

<details>

<summary>Recommended content</summary>

* **Acknowledge the delay**: short apology and clear status.
* **Updated ETA**: show the latest estimate (and note it can change).
* **Reason (if known)**: keep it factual; avoid over-explaining.
* **Primary CTA**: tracking link for the latest updates.
* **Options**: reroute/reschedule/pickup (if available).
* **If urgent**: provide a clear support path for time-sensitive cases.
* **Next update promise**: when the customer can expect another update.

</details>

<details>

<summary>Useful placeholders</summary>

* `{{orderNo}}`
* `{{shopName}}`
* `{{courier/pretty}}`
* `{{plSpecificsScheduled/locale}}`
* `{{plSpecificsScheduled/timewindow}}` (if available)
* `{{plMessage/locale}}` (if available)
* `{{trackingUrl}}`
* `{{trackingButton}}`
* `{{courierRerouteButton/locale}}`

</details>

<details>

<summary>Useful snippets</summary>

* Tracking CTA: `{% partial trackingButton %}` or `{% partial TrackingButton %}`
* Delivery options CTA: `{% partial courierRerouteButton %}`

</details>

<details>

<summary>Loyalty/ Conversion target <i class="fa-rectangle-ad">:rectangle-ad:</i></summary>

Keep it careful and optional:

* **Goodwill gesture**: points/credit to acknowledge the inconvenience (if your policy allows).
* **Preference center**: opt into proactive delay alerts.

</details>

### Failed delivery attempt

A failed delivery attempt occurs when a carrier is unable to successfully deliver a package to the recipient's address. This can happen for various reasons such as the recipient not being available to accept the package, inaccessible delivery location, or incorrect address details. Different carriers handle failed delivery attempts in various ways. Some may make multiple delivery attempts, while others might redirect the package to a nearby collection point or return it to the sender. It's important to check with your carrier for their specific policies on handling failed deliveries.

> For messages about packages having to be collected from a carrier location refer to this section: [#customer-to-collect-from-carrier-location](https://docs.parcellab.com/docs/resources/delivery#customer-to-collect-from-carrier-location "mention")

#### <i class="fa-door-closed">:door-closed:</i> First failed delivery attempt

Explain why delivery failed and guide customers to the fastest path to receiving their parcel (redelivery, pickup, or delivery options).

<details>

<summary>Subject line &#x26; preview</summary>

Example subject variants:

* `We missed you—delivery attempt for {{orderNo}}`
* `Delivery attempt failed: {{orderNo}}`
* `Action needed to receive your parcel`

Example preview text variants:

* `See what happened and what you can do next.`
* `Choose redelivery, pickup, or another option if available.`

</details>

<details>

<summary>Recommended content</summary>

* **What happened**: “delivery attempt failed” with a short reason if available.
* **What happens next**: next attempt date or default carrier process.
* **Customer actions**: reschedule, reroute, pickup, safe place (if available).
* **Primary CTA**: manage delivery / tracking link.
* **Support**: clear path if the customer needs help.

</details>

<details>

<summary>Useful placeholders</summary>

* `{{orderNo}}`
* `{{courier/pretty}}`
* `{{plMessage/locale}}` (if available)
* `{{trackingUrl}}`
* `{{trackingButton}}`
* `{{courierRerouteButton/locale}}`
* `{{plNextAction/locale}}` (if available)
* `{{plSpecificsScheduled/timewindow}}` (if available)

</details>

<details>

<summary>Useful snippets</summary>

* Delivery options CTA: `{% partial courierRerouteButton %}`
* Tracking CTA: `{% partial trackingButton %}` or `{% partial TrackingButton %}`

</details>

<details>

<summary>Loyalty/ Conversion target <i class="fa-rectangle-ad">:rectangle-ad:</i></summary>

Due to the friction moment, keep this minimal:

* **App / notifications opt-in**: get delivery attempt alerts and reminders.

</details>

#### <i class="fa-circle-exclamation">:circle-exclamation:</i> Second failed delivery attempt

Warn customers that only one more attempt (or pickup) remains and help them take action now to avoid a return-to-sender.

<details>

<summary>Subject line &#x26; preview</summary>

Example subject variants:

* `Second delivery attempt failed: {{orderNo}}`
* `One more attempt left for {{orderNo}}`
* `Action recommended: choose a delivery option`

Example preview text variants:

* `Reschedule or choose pickup to avoid return to sender.`
* `Track your parcel and select the best option.`

</details>

<details>

<summary>Recommended content</summary>

* **What happened**: second attempt failed + short reason if available.
* **What happens next**: expected next attempt or carrier process.
* **Customer actions**: reroute/reschedule/pickup/safe place (if available).
* **Primary CTA**: manage delivery / tracking link.
* **If pickup becomes the next step**: include pickup point details + deadline.
* **Prevent RTS**: concise warning and timeline.

</details>

<details>

<summary>Useful placeholders</summary>

* `{{orderNo}}`
* `{{courier/pretty}}`
* `{{plMessage/locale}}` (if available)
* `{{trackingUrl}}`
* `{{trackingButton}}`
* `{{courierRerouteButton/locale}}`
* `{{plNextAction/locale}}`
* `{{plSpecificsScheduled/timewindow}}` (if available)

</details>

<details>

<summary>Useful snippets</summary>

* Delivery options CTA: `{% partial courierRerouteButton %}`
* Tracking CTA: `{% partial trackingButton %}` or `{% partial TrackingButton %}`

</details>

<details>

<summary>Loyalty/ Conversion target <i class="fa-rectangle-ad">:rectangle-ad:</i></summary>

* **App / notifications opt-in**: delivery attempt alerts.

</details>

#### <i class="fa-triangle-exclamation">:triangle-exclamation:</i> Final failed delivery attempt

Clarify final options (pickup/return) and prevent a return-to-sender by making the required next step unmistakable.

<details>

<summary>Subject line &#x26; preview</summary>

Example subject variants:

* `Final delivery attempt failed: {{orderNo}}`
* `Important: pickup required for {{orderNo}}`
* `Action needed—your parcel may be returned`

Example preview text variants:

* `Collect your parcel before the deadline to avoid return to sender.`
* `Pickup location and next steps inside.`

</details>

<details>

<summary>Recommended content</summary>

* **What happened**: final attempt failed (short and factual).
* **Required next action**: pickup instructions and deadline.
* **Pickup details**: location, hours, what to bring.
* **Consequences**: what happens after the deadline.
* **Help**: support path if pickup isn’t possible.

</details>

<details>

<summary>Useful placeholders</summary>

Pickup details:

* `{{orderNo}}`
* `{{courier/pretty}}`
* `{{lastStorageDate/courier}}`
* `{{storageTime/courier}}`
* `{{plPickupAddressMap/locale}}` (if available)
* `{{plMap/locale}}` (fallback)
* `{{plMessage/locale}}` (if available)
* `{{collectionCode}}` / `{{collectionCode/spaced}}` (if available)
* `{{pickupConfirmationCode/customField}}` (if available)
* `{{barCode.url/customField}}` (if available)

Tracking:

* `{{trackingUrl}}`
* `{{trackingButton}}`

</details>

<details>

<summary>Useful snippets</summary>

* Pickup CTA variants (optional): `{% partial CTAcarrierReroutePickupNL %}` / `{% partial CTAcarrierReroutePickupES %}` / `{% partial CTAcarrierReroutePickupPL %}`
* Tracking CTA (optional): `{% partial trackingButton %}` or `{% partial TrackingButton %}`

</details>

<details>

<summary>Loyalty/ Conversion target <i class="fa-rectangle-ad">:rectangle-ad:</i></summary>

Skip or keep extremely subtle due to urgency:

* **App / notifications opt-in**: pickup reminders and deadline alerts.

</details>

### Return to Sender (RTS)

Return to Sender (RTS) refers to the process where a package is returned to its original sender when delivery is unsuccessful. This can occur due to various reasons such as incorrect address details, refusal by the recipient, or failing to collect within a specified timeframe. The consequence of RTS usually involves additional costs or delays, and the sender may need to arrange an alternative solution for redelivery.

#### <i class="fa-truck">:truck:</i> RTS due to carrier issue

Explain that the parcel is returning due to a carrier-side problem and clearly outline reship/refund next steps.

<details>

<summary>Subject line &#x26; preview</summary>

Example subject variants:

* `Update: your parcel is being returned to sender`
* `Return to sender for order {{orderNo}}`
* `We’re sorry—delivery couldn’t be completed`

Example preview text variants:

* `We’ll arrange a replacement or refund—details inside.`
* `Track the return and see next steps.`

</details>

<details>

<summary>Recommended content</summary>

* **What happened**: short explanation (carrier issue).
* **What happens now**: return-to-sender process and expected timing.
* **Resolution**: reship vs refund policy, and how the customer confirms preference (if applicable).
* **Timing**: when a reship/refund is typically initiated after the return is received/confirmed.
* **Primary CTA**: tracking link (if return tracking is visible).
* **Help**: support contact for urgent needs.

</details>

<details>

<summary>Useful placeholders</summary>

* `{{orderNo}}`
* `{{shopName}}`
* `{{trackingUrl}}`
* `{{trackingButton}}`
* `{{courier/pretty}}`
* `{{plMessage/locale}}` (if available)

</details>

<details>

<summary>Useful snippets</summary>

* Tracking CTA (optional): `{% partial trackingButton %}` or `{% partial TrackingButton %}`
* Alternatives (optional): `{% partial productRecommendations %}`

</details>

<details>

<summary>Loyalty/ Conversion target <i class="fa-rectangle-ad">:rectangle-ad:</i></summary>

* **Reship faster**: offer expedited replacement (if possible).
* **Goodwill gesture**: credit/points to recover trust (optional).

</details>

#### <i class="fa-user">:user:</i> RTS due to recipient issue

Clarify the recipient-related reason (e.g. not collected/refused) neutrally and explain how the customer can still receive the order or reorder.

<details>

<summary>Subject line &#x26; preview</summary>

Example subject variants:

* `Delivery couldn’t be completed — parcel returning`
* `Return to sender: order {{orderNo}}`
* `Action needed to receive your order`

Example preview text variants:

* `Reason and next steps inside (reship, reorder, or refund policy).`
* `Check your delivery details to prevent this next time.`

</details>

<details>

<summary>Recommended content</summary>

* **Reason**: state the cause without blame (not collected, refused, address issue).
* **What happens now**: return-to-sender process and timeline.
* **Customer options**: reship to corrected address, reorder, or refund policy.
* **Prevention**: encourage verifying address/contact details.
* **Help**: support contact for edge cases.

</details>

<details>

<summary>Useful placeholders</summary>

* `{{orderNo}}`
* `{{shopName}}`
* `{{courier/pretty}}`
* `{{trackingUrl}}`
* `{{trackingButton}}`
* `{{plMessage/locale}}` (if available)

Reason conditionals (if available):

* `{{#returnReason=NotCollected/reporting}}...{{/returnReason=NotCollected/reporting}}`
* `{{#returnReason=CustomerRefusal/reporting}}...{{/returnReason=CustomerRefusal/reporting}}`
* `{{#returnReason=AddressIssue/reporting}}...{{/returnReason=AddressIssue/reporting}}`

</details>

<details>

<summary>Useful snippets</summary>

* Tracking CTA (optional): `{% partial trackingButton %}` or `{% partial TrackingButton %}`
* Alternatives (optional): `{% partial productRecommendations %}`

</details>

<details>

<summary>Loyalty/ Conversion target <i class="fa-rectangle-ad">:rectangle-ad:</i></summary>

* **Account creation**: save address/contact details to reduce delivery issues.
* **Preference center**: choose pickup/home delivery when available.

</details>

#### <i class="fa-ban">:ban:</i> RTS due to retailer or policy issue

Explain the policy reason for return-to-sender (recall/prohibited/etc.) and clearly communicate refund/replacement handling.

<details>

<summary>Subject line &#x26; preview</summary>

Example subject variants:

* `Order update: return to sender for policy reasons`
* `Important update about your order {{orderNo}}`
* `We can’t deliver this item—next steps`

Example preview text variants:

* `Refund/replacement details inside.`
* `Contact us if you have questions about the policy.`

</details>

<details>

<summary>Recommended content</summary>

* **Clear reason category**: brief explanation of the policy constraint.
* **What happens now**: return handling and expected timing.
* **Outcome**: refund/replacement policy and amounts if applicable.
* **Next steps**: recommended alternatives if relevant.
* **Help**: support contact with a clear escalation path.

</details>

<details>

<summary>Useful placeholders</summary>

* `{{orderNo}}`
* `{{shopName}}`
* `{{courier/pretty}}`
* `{{trackingUrl}}`
* `{{plMessage/locale}}`
* `{{trackingButton}}`

</details>

<details>

<summary>Useful snippets</summary>

* Tracking CTA (optional): `{% partial trackingButton %}` or `{% partial TrackingButton %}`
* Alternatives (optional): `{% partial productRecommendations %}`

</details>

<details>

<summary>Loyalty/ Conversion target <i class="fa-rectangle-ad">:rectangle-ad:</i></summary>

* **Alternative products**: suggest compliant replacements.
* **Join loyalty**: member-only restock/alternative notifications.

</details>
