# v10 UAT Gate

This checklist decides whether the demo pack can move toward production.

## Must pass before live use

### Shipment workflow
- [ ] Admin can create shipment.
- [ ] Customer can create shipment.
- [ ] Shipment AWB is unique.
- [ ] Status history is recorded for every status change.
- [ ] Invalid status transition is rejected.

### Pickup
- [ ] Customer pickup request appears in admin.
- [ ] Admin assigns courier.
- [ ] AWB scan attaches shipment to pickup.
- [ ] Pickup close updates shipment status.

### Courier
- [ ] Courier sees only assigned shipments.
- [ ] Courier can mark delivered.
- [ ] Courier can mark postponed with reason.
- [ ] Courier can mark returned with reason.
- [ ] COD collection amount is displayed correctly.

### Accounting
- [ ] plus customer collection = COD + fees.
- [ ] without customer collection = COD only.
- [ ] without customer net = COD - fees.
- [ ] settlement cannot include same shipment twice.
- [ ] invoice cannot be generated twice for the same settlement.
- [ ] financial records are reversed, not deleted.

### Excel
- [ ] valid rows import.
- [ ] invalid rows are reported.
- [ ] duplicate AWB/reference logic is defined.
- [ ] final template matches customer agreement.

### Security
- [ ] auth is enabled.
- [ ] permissions are enforced through middleware/policies.
- [ ] customer cannot view another customer's shipment.
- [ ] courier cannot view another courier's shipment.

## Go/No-Go

If any accounting or security item fails, do not go live.
