Escrow System
Order payments are held in escrow until items are delivered, protecting both creator and deliverer. Escrow is always enabled and cannot be disabled.
Payment Flowโ
| Stage | Behavior |
|---|---|
| Order creation | If charge-on-creation enabled: payment deducted from creator, added to order's escrow_balance. |
| Delivery | If pay-on-delivery enabled: payment released from escrow to deliverer proportional to items delivered; escrow_balance decreases, paid_to_deliverers increases. |
| Completion | Any remaining escrow refunded; order marked completed and auto-deleted. |
| Cancellation / expiration | Escrow refunded automatically (if auto-refund enabled). |
Escrow Balanceโ
Each order tracks: money held, payments made to deliverers, and remaining available balance.
Securityโ
- Balance cannot go negative.
- Optimistic locking prevents race conditions on concurrent deliveries.
- All escrow operations are logged.
- Balance validated on every operation.
Key config: payment.charge-on-creation, payment.pay-on-delivery - see Economy Configuration.
See Alsoโ
- Economy Configuration - payment settings
- Order Lifecycle - order states
- Delivery System - delivery mechanics