Before payment
An abandoned or failed checkout releases its temporary capacity hold. No customer charge should be inferred from frontend state.
Before pickup
The final policy must define notice periods, recoverable provider/driver costs, cancellation eligibility and customer communication.
After pickup
A cancellation becomes an operations incident. Return-to-sender, retry, disposal and refund decisions must consider safety and the approved delivery agreement.
Refund processing
Full and partial refunds are initiated by authorized operations, recorded in an audit log, protected by idempotency and confirmed through Stripe provider state.
