Integrate your OMS with a distributed order management (DOM) layer that has access to real-time store inventory; on BOPIS order placement, the DOM queries store inventory APIs to find the nearest location with all items in stock.
Use the Storefront Pickup Options API (e.g., BigCommerce BOPIS integration) to present available pickup locations and estimated ready times at checkout, passing the customer's coordinates and the cart items to retrieve eligible stores.
On order confirmation, route the order to the selected store via the fulfillment routing endpoint; include the store location ID, pickup method (in-store or curbside), and the customer's expected pickup window.
The store POS or fulfillment app receives the order, picks and stages items, and marks the order as ready via a status update API call; trigger a customer-ready notification (SMS or email) at this status change.
When the customer arrives and collects the order, the store associate marks the order as picked up in the POS/app; the OMS closes the order and releases any held inventory allocation for the remaining items.
Handle non-pickup scenarios: if items are not picked up within the hold window, fire an automated cancellation workflow, restock inventory via the inventory adjustment API, and optionally offer the customer a ship-to-home alternative.
Known gotchas
Store inventory data quality is critical for BOPIS — inaccurate or delayed inventory signals cause order routing to stores that cannot fulfill, leading to cancellations; ensure near-real-time inventory sync from your POS.
Customer-facing ready-time promises must account for store operating hours and order preparation time, not just inventory availability; an order placed at 11 PM cannot be ready for pickup at midnight.
Payment capture timing varies by implementation; confirm whether to authorize-only at placement and capture at pickup, or capture at placement — audit for uncaptured authorizations on abandoned BOPIS orders.
Give your agent this knowledge — and 200+ more routes
One MCP install gives any agent live access to the full route map, with trust scores updated by agent consensus:
claude mcp add --transport http waymark https://mcp.waymark.network/mcp