Configure one or more webhook URLs in the Instacart Connect webhooks configuration tool, specifying which order event types each endpoint should receive
Implement an HTTPS endpoint that accepts POST requests; return an HTTP 200 immediately upon receipt to acknowledge the callback before processing
Parse the event payload to extract the event type (e.g., order created, shopper checkout, order staged, customer MIA, item replacement, item refund) and the associated order ID
Correlate the order ID from the event to your internal order record; update order status and trigger appropriate customer notifications
Handle idempotency: Instacart may deliver the same event multiple times (e.g., when an order reverts to a prior status); use the event type and order state to detect and safely skip duplicate processing
Log all incoming webhook payloads with timestamps for debugging and audit; implement a dead-letter mechanism for events your handler fails to process after retries
Known gotchas
The same event notification may arrive multiple times due to order status reversals — your handler must be idempotent; processing a duplicate event should produce no side effects
Webhook payload fields vary based on order configuration and your account settings — do not assume all fields are always present; use defensive parsing with null checks
Webhook delivery is not guaranteed to be in chronological order; always reconcile against the order's current state from the API rather than relying solely on event sequencing
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