Order Management
Orders are the core of Vectis. This guide covers the order lifecycle, status management, and fulfillment workflows.
Order Lifecycle
Orders in Vectis follow a 16-state lifecycle:
Happy Path
pending → confirmed → allocated → sent_to_wms → picking → picked → packing → packed → shipped → in_transit → out_for_delivery → delivered
Exception States
on_hold— Order paused, requires manual reviewpartially_shipped— Some packages shipped, others pendingdelivery_exception— Carrier couldn’t delivercancelled— Order cancelled before shipment
Order Sources
Orders enter Vectis from:
Sales Channels
Native integrations:
- Shopify — OAuth, real-time webhooks
- WooCommerce — REST API, webhooks or polling
- TikTok Shop (Growth+ tier) — Order import
Also via API2Cart (add the store under Integrations → Add Store, then paste the webhook URL Vectis shows into API2Cart): other carts and marketplaces connect through your own API2Cart account. Orders come in from the API2Cart webhooks you set up; tracking goes back to the store. Which platforms and operations work depends on API2Cart.
Roadmap: Deeper first-party connectors for specific marketplaces where operators ask for them.
Manual Entry
- Create orders directly in Vectis UI
- Useful for phone orders, wholesale, or testing
- Import many orders at once from a CSV file (Orders → Import)
API
POST /api/orders— Create order programmatically (API-client tokens are read-only on orders, products, and inventory today; contact support@stoalogistics.com to create orders through the API)- Used for custom integrations, B2B portals, EDI
Order Detail View
Click any order to see:
- Overview: customer name and email, item count, total, order date, channel and channel order ID.
- Items: SKU, product, quantity, unit price, and line total.
- Fulfillment: the order’s packages, with status, items, carrier, and tracking number.
- Activity & Timeline: order status changes and package creation, with who made each change when it’s recorded.
- Addresses: shipping and billing.
Reservation
There is no separate Allocate step: Vectis allocates stock to an order’s packages when they’re generated. Vectis generates an order’s packages when the order is created in the app or confirmed. If an order has no packages, use Generate Packages on the order page. That step picks the warehouse and, through StoaPack, the boxes.
Holding an order
To review an order before it moves on, put it on hold with a reason, then resume it or cancel it.
Note: There is no automatic backorder status. Place the order on hold or cancel it until stock arrives.
Routing
Routing determines which warehouse fulfills an order.
How Vectis picks a warehouse
Vectis picks the warehouse automatically from where the stock is, and, with two or more warehouses (Growth and above; Starter includes one warehouse), can split an order across them.
There are no routing rules to configure. Fulfillment Rules (under Configuration) change order lines, such as replacing or adding items, adding channel packaging, or blocking a recalled SKU. They don’t choose a warehouse.
Split Orders
When no single warehouse has all items:
- Vectis creates multiple packages
- Each package routes to a warehouse with its items
- Order status reflects aggregate package status
Automatic splitting runs on any plan with two or more warehouses (Growth and above; Starter includes one warehouse). Reviewing the warehouse options for an order and choosing one by hand requires the Pro plan or above.
Split orders cost more (multiple shipments) but ensure faster fulfillment than waiting for transfers.
Fulfillment Workflow
1. Release and pick
There is no separate Allocate step: Vectis allocates stock to an order’s packages when they’re generated.
- Open Release Queue
- Select packages and click Create Batch
- Pickers work the batch from Floor and confirm each item
2. Pack
- Open the package on the packing screen
- Confirm the box (StoaPack chose it when the package was generated) or pick another
- Mark as packed
3. Ship
Generate shipping label:
- Select carrier and service
- Click Generate Label
- Label created via EasyPost integration
- Print label
- Mark as shipped
For Shopify, WooCommerce, and API2Cart stores, the tracking number syncs back to the store automatically.
Bulk Operations
Select orders on the Orders list to Confirm, Start Processing, or Cancel them together, or to export them to CSV.
Cancelled orders release inventory reservations automatically.
Order Edits
While pending
- Add, remove, or change line items
After confirmation
- Cancel specific items (at least one must remain)
- Or cancel the whole order
After Shipment
- Cannot edit shipped orders
- Create a return or exchange instead (Growth plan and above)
Exceptions Handling
Packages that need attention appear in Fulfillment → Exceptions:
| Exception | What it means |
|---|---|
| On hold | The package is on hold |
| Aged picking | Picking has been open too long |
| Aged ready to ship | Packed but not shipped for too long |
Orders that need review show under the Needs Attention filter on the Orders list (pending and on-hold orders).
Exports
Export orders to CSV:
- Filter the Orders list (quick filter, status, or search)
- Select the orders you want
- Choose Export to download a CSV with order ID, customer, email, item count, status, total, and date.
Package Lifecycle
Packages follow a 14-state lifecycle:
Happy Path
pending → allocated → sent_to_wms → picking → picked → packing → packed → shipped → in_transit → out_for_delivery → delivered
Exception States
failed_delivery— Carrier delivery attempt failedreturned— Package returned to sendercancelled— Package cancelled before shipment
API Operations
Common API operations:
# List orders
GET /api/orders?status=pending&channelType=shopify
# Get order detail
GET /api/orders/{orderId}
# Create order
POST /api/orders
# Cancel order
POST /api/orders/{orderId}/cancel
# Put an order on hold
POST /api/orders/{orderId}/hold
API-client tokens are read-only on orders, products, and inventory today. To create or change orders through the API, contact support@stoalogistics.com.
See API Reference for authentication and the documented endpoints.