Orders
Report a per-item issue
Damaged, refused, wrong, or short — flag the affected items and reschedule the rest.
Per-item issues can be raised from two places: the driver's app (on the order or at confirm time — see Drivers → When something goes wrong) and the operator's order-detail page (handy for customer callbacks). Both feed the same dialog and produce the same outcome.
Pick the affected item(s), enter how many had a problem, choose a reason (damaged, wrong item, customer refused, spoiled, short on stock, temperature excursion, returned, or other), and add an optional note. For reasons that roll forward, pick a rollover date for when the replacement should arrive.
The OK portion still confirms as delivered; the issue is recorded against the affected items. The order's status flips to partially_delivered, attempt_count bumps, delivery_date advances to the rollover date, and a dispatch_flag auto-creates so the dashboard's Needs Attention panel surfaces it. Terminal reasons (customer refused, returned) don't roll forward — the qty is resolved, not rescheduled.
The same order ref is preserved across attempts. The customer's tracking link shows "Some items rescheduled — your replacement arrives on [date]". Once the replacement is delivered, the order auto-completes as delivered_with_issues — that flag is for analytics, never something you assign manually.