Food Drop

Customer storefront ยท region us

Dev-time journey map until a marketing homepage is designed. Two actors (vendor / customer), chronological order, touchpoints + roadmap status. V2+ scope is omitted.

โœ… Live๐ŸŸก V1๐Ÿ”ต V1.5Partial

Vendor journey โ€” supply side

From signup to getting paid.

#StepWhereStatus
1
Sign up (phone OTP)
โœ… Live
2
KYC + payout bank (Stripe Connect Express)
Launched inline from the Account sidebar card โ€” no separate onboarding page.
โœ… Live
3
Owner profile
โœ… Live
4
Customize public storefront (slug, About, banner URL)
Theme palette + logo + banner upload still V1.5+
โœ… Live
5
Build menu library (Medusa products)
List page live; new + edit pages pending
Partial
6
Create drop (schedule, visibility)
Currently only inline via /drops/{id}
๐ŸŸก V1
7
Attach items, pickup windows, inventory limits
All inline today
โœ… Live
8
Publish drop
โœ… Live
9
Drop opens at orders_open_at
SMS fanout via platform-services dispatcher (dry-run by default; flip ENABLE_SMS_SEND=true + Twilio creds to send for real)
cron โ†’ drop.opened event โ†’ SMS fanout
โœ… Live
10
Watch orders come in
โœ… Live
11
Print prep tickets (per day)
Screen-friendly aggregate; thermal print Phase 7
โœ… Live
12
Print packing ticket (per order)
Phase 5.5 / Phase 7 (thermal templates)
๐ŸŸก V1
13
Walk order through prep โ†’ packed โ†’ ready โ†’ picked-up
7-state machine (paid โ†’ in_prep โ†’ packed โ†’ ready_for_pickup โ†’ picked_up + no_show + canceled)
โœ… Live
14
Drop closes at orders_close_at
cron OR /drops/{id} close button
โœ… Live
15
Refund an order
Phase 7
๐ŸŸก V1
16
See payouts
Phase 7
๐ŸŸก V1
17
Pull fee-report CSV
Phase 7
๐ŸŸก V1
18
Run ops via AI (Claude Desktop โ†” MCP)
Bring-your-own LLM
MCP server (stdio / SSE)/vendor/api-keys
๐Ÿ”ต V1.5

Customer journey โ€” demand side

From discovery to pickup.

#StepWhereStatus
1
Discover a vendor (bio link / QR / share)
Per-vendor public storefront (dynamic; click a slug to enter)
/{vendor-slug}
โœ… Live
2
Browse drops (per-vendor or cross-vendor)
/{vendor-slug}/us/drops
โœ… Live
3
Subscribe for SMS alerts
Inline form on the per-vendor page โ†’ platform-services /comms/subscribers
/{vendor-slug}
โœ… Live
4
Receive drop.opened SMS
Welcome SMS fires on subscribe; broadcast SMS fires on open-drop workflow
platform-services dispatcher โ†’ Twilio (dry-run by default)
โœ… Live
5
View drop, pick items + pickup window
Dynamic โ€” click /drops to enter
/us/drops/{drop_id}
โœ… Live
6
Cart (drop-aware add-to-cart)
โœ… Live
7
Checkout (Stripe Connect Direct Charges)
โœ… Live
8
See confirmation
Dynamic โ€” created post-checkout
/us/order/{order_id}/confirmed
โœ… Live
9
Receive order.placed SMS + email
Order placed event โ†’ Medusa intent handler โ†’ platform-services
platform-services dispatcher โ†’ Twilio + SendGrid (dry-run by default)
โœ… Live
10
Receive pickup reminder SMS
Template seeded; T-2h scheduled job wiring is Phase 7 / 5.5 (data is ready)
platform-services scheduled job โ†’ Twilio
๐ŸŸก V1
11
Pick up food at the window
in-person
โ€”
12
View order history
/us/account/orders/us/account/orders/details/{id}
โœ… Live
13
One-click unsubscribe (10DLC)
Signed JWT (itsdangerous) โ†’ platform-services flips subscriber.status
โœ… Live

Other local apps