Order Flow
This document describes the complete lifecycle of an order in the Goods/Switchyard system, from customer placement through robot delivery.Overview
Orders in Goods can be fulfilled from two sources:- RFC (Warehouse) - Items stocked in our fulfillment center, available for immediate picking
- Retailers - Items sourced from partner retailers (HEB, Target, Walmart, Central Market, Whole Foods, Costco, Trader Joes)
Order Flow Diagram
Order Statuses
| Status | Description |
|---|---|
pending | Order just placed, awaiting processing |
processing | Being allocated to sweeps and/or RFC pick queue |
sweep_in_progress | Driver is shopping at retailer(s) |
intake | Items returned to RFC, being sorted |
picking | RFC items being picked by warehouse staff |
staged | Order assembled in tote, ready for robot |
delivering | Robot en route to customer |
delivered | Customer has received order |
Detailed Flow
1. Order Placement
Customer places an order through the Goods mobile app. The app handles:- Product browsing and selection
- Cart management
- Payment processing (Stripe)
- Delivery window selection
2. Source Analysis
When an order arrives, the system analyzes each line item to determine sourcing: Decision Factors:- RFC inventory availability
- Retailer pricing (we track costs at each retailer)
- Retailer availability
- Route optimization (consolidate items to minimize trips)
- If item is in RFC stock → add to RFC pick queue
- If item needs retailer sourcing → assign to appropriate sweep
- If item available at multiple retailers → choose based on price and route efficiency
3. RFC-Only Orders
Orders containing only RFC-stocked items can be fulfilled within 10 minutes:- Order enters RFC pick queue
- Picker receives pick list on Zebra scanner
- Scanner app guides picker through efficient warehouse route
- Items picked and scanned
- Order staged in tote with QR code
4. Sweep Operations
Orders requiring retailer items follow the sweep process: Daily Sweeps:- One scheduled sweep per retailer per day
- Cutoff time determines which orders are included
- Additional sweeps can be added manually for high-volume days
- Aggregates ALL items needed from a retailer across ALL orders
- Not per-order picking - batch shopping trip
- Driver receives manifest on their device
- Driver shops the manifest
- If item is out of stock:
- Check if another sweep (different retailer) hasn’t left yet
- If yes, dynamically push item to that sweep
- If no, driver substitutes and system notifies customer
- Customer can accept substitute or request refund
5. Intake Processing
When drivers return from sweeps:- Items scanned at intake station
- System matches items to orders
- Items sorted and staged for order assembly
- Any sweep items + RFC items combined per order
6. Order Picking
Pickers use Zebra scanners with the picking app:- Picker assigned to order(s)
- App generates optimized pick path through warehouse
- Picker scans each item as picked
- Validates correct item via UPC
- Places items in order tote
7. Staging
Completed orders are staged in totes:- Each tote has a QR code
- QR links tote to order
- Totes placed in staging area for robot pickup
8. Robot Delivery
Robot system (out of Switchyard scope):- Robot scans tote QR
- Robot delivers tote to customer location (~100 feet)
- Customer picks up order
- Order marked as delivered
Fulfillment Types
| Type | Items From | Fulfillment Time |
|---|---|---|
| RFC-Only | Warehouse stock | ~10 minutes |
| Sweep-Only | Retailer(s) | Next available pickup window |
| Hybrid | RFC + Retailer(s) | Next available pickup window |
Key Entities
| Entity | Purpose |
|---|---|
| Order | Customer order with line items |
| Sweep | Daily shopping trip to a retailer |
| SweepItem | Item on a sweep manifest |
| PickList | RFC picking assignment |
| PickListItem | Item to pick from warehouse |
| Driver | Person performing sweeps |
| Tote | Container for staged order |
Integration Points
| System | Integration |
|---|---|
| Goods Mobile App | Places orders via Switchyard API |
| Zebra Scanners | Use Scanner API for picking operations |
| Robot System | Reads tote QR codes (out of scope) |
| Customer Notifications | Webhooks from Switchyard to app |
Future Considerations
- Third-party delivery options (robots still stage orders)
- Multiple pickup/delivery locations
- Real-time inventory sync with retailers
- Predictive stocking based on order patterns