Part of #1.
- Reuse commerce
placeOrder(idempotent, transactional) with businessId scoping; single-business carts - Structured OrderItemModifier rows so an order line's price is reconstructable
- Fee engine: distance-based delivery fee (haversine), platform take rate, tips (delivery/table), tax per market (added vs VAT-inclusive), all in cents;
recomputeOrderTotalsalignment - Scheduled orders (order for later) + prep-time-based ready-at estimate from Product.preparationTime
- Stripe (sandbox): destination charge to the merchant's connected account with application fee via the new @stacksjs/payments connect module; webhook wiring; refund path
- Order lifecycle events -> notifications (database + email/SMS to test recipients only)
- Feature tests: money paths, idempotency, EUR market fixture with VAT-inclusive pricing