Selling physical products
ListBee handles payment. You handle shipping. Use external fulfillment with a checkout schema to collect the buyer’s shipping address, then ship the order and update its status via the API.
How it works
- Create a listing with
fulfillment: "external"and acheckout_schemathat includes an address field. - Buyer visits the product page, fills in their shipping address, and pays.
- ListBee fires an
order.paidwebhook with the buyer’s address incheckout_data. - You ship the product and call
POST /v1/orders/{id}/shipwith tracking info. - ListBee fires an
order.shippedwebhook. - When the buyer receives the product, call
POST /v1/orders/{id}/fulfillto mark it complete.
Walkthrough: selling shoes
Step 1: Create the listing
Step 2: Receive the order webhook
When a buyer pays, ListBee sends an order.paid event to your webhook endpoint. The order includes checkout_data with the buyer’s responses and shipping_address parsed from the address field.
Step 3: Ship the order
After you ship, call POST /v1/orders/{id}/ship with tracking info:
This fires an order.shipped webhook event.
Step 4: Mark as fulfilled
When the buyer receives the product:
Order lifecycle for physical products
Next steps
- Fulfillment modes — managed vs external, full comparison.
- Checkout schema — all field types you can collect at checkout.
- Webhooks — handle
order.paid,order.shipped, andorder.fulfilledevents.
Copy for AI assistants
Cursor / Claude Code