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 17-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 review
  • backordered — Insufficient inventory, waiting for stock
  • partially_shipped — Some packages shipped, others pending
  • failed_delivery — Carrier couldn’t deliver
  • cancelled — Order cancelled before shipment

Order Sources

Orders enter Vectis from:

Sales Channels

Available now:

  • Shopify — Via OAuth integration, real-time webhooks
  • WooCommerce — Via REST API, webhooks or polling

Coming soon:

  • Amazon — Via SP-API
  • eBay — Via OAuth
  • TikTok Shop, Etsy, Walmart

Manual Entry

  • Create orders directly in Vectis UI
  • Useful for phone orders, wholesale, or testing

API

  • POST /api/v1/orders — Create order programmatically
  • Used for custom integrations, B2B portals, EDI

Order Detail View

Click any order to see:

  • Order number (internal and external)
  • Customer name and email
  • Order date and channel
  • Current status with timestamp

Items

  • Line items with SKU, name, quantity, price
  • Allocation status per item
  • Backorder status if applicable

Packages

  • Packages created for this order
  • Package status, tracking number, carrier
  • Items in each package

Shipping

  • Ship-to address
  • Requested shipping method
  • Actual carrier and service used

Timeline

  • Full history of status changes
  • Who made each change and when
  • System events (allocation, label generation)

Allocation

Allocation reserves inventory for an order. Until allocated, inventory isn’t committed.

Automatic Allocation

By default, orders allocate automatically when:

  1. Order status is confirmed
  2. Sufficient inventory exists
  3. Routing rules determine the warehouse

Manual Allocation

For orders requiring review:

  1. Set order to on_hold initially
  2. Review in Orders dashboard
  3. Click Allocate to reserve inventory
  4. Or click Cancel to reject

Allocation Failures

Orders fail allocation when:

  • Insufficient inventory (→ backordered)
  • No warehouse matches routing rules
  • Product not found in catalog

Failed allocations appear in the Exceptions queue.

Routing

Routing determines which warehouse fulfills an order.

Default Routing

  1. Find warehouses with inventory for all items
  2. Among those, pick the closest to shipping address
  3. If tie, pick the warehouse with most inventory

Custom Routing Rules

Configure in Settings → Routing Rules:

  • By product type — Hazmat only from certified warehouses
  • By shipping speed — Express orders from closest warehouse
  • By channel — Specific channel orders from specific warehouse
  • By region — West Coast orders from LA, East Coast from Atlanta

Rules evaluate in order. First match wins.

Split Orders

When no single warehouse has all items:

  1. Vectis creates multiple packages
  2. Each package routes to a warehouse with its items
  3. Order status reflects aggregate package status

Split orders cost more (multiple shipments) but ensure faster fulfillment than waiting for transfers.

Fulfillment Workflow

1. Pick

Generate pick list from Orders or Packages view:

  1. Select orders/packages
  2. Click Generate Pick List
  3. Print or view on screen
  4. Pick items in warehouse
  5. Mark as picked in Vectis

Pick lists can be:

  • Per-order (one list per order)
  • Batch (multiple orders, grouped by location)
  • Wave (time-based batches)

2. Pack

After picking:

  1. Open package in Vectis
  2. StoaPack suggests optimal box
  3. Confirm or override box selection
  4. Scan/enter items packed
  5. Mark as packed

3. Ship

Generate shipping label:

  1. Select carrier and service
  2. Click Generate Label
  3. Label created via EasyPost integration
  4. Print label
  5. Mark as shipped

Tracking number syncs back to sales channel automatically.

Bulk Operations

Bulk Allocate

Select multiple pending orders → Allocate All

Bulk Ship

Select multiple packed orders → Generate LabelsMark Shipped

Bulk Cancel

Select multiple orders → Cancel

Cancelled orders release inventory reservations automatically.

Order Edits

Before Allocation

  • Add/remove items
  • Change quantities
  • Update shipping address
  • Change shipping method

After Allocation

  • Cancel and re-create (releases inventory)
  • Or: Release allocation, edit, re-allocate

After Shipment

  • Cannot edit shipped orders
  • Create return/exchange instead

Exceptions Handling

Orders requiring attention appear in Orders → Exceptions:

ExceptionCauseResolution
Allocation failedNo inventoryWait for stock or cancel
Address invalidCarrier rejectedUpdate address, retry
Payment holdFraud flag from channelReview and release or cancel
DuplicateSame external IDMerge or cancel duplicate

Exports

Export orders to CSV:

  1. Apply filters (date range, status, channel)
  2. Click Export
  3. Download CSV

Exports include all order fields, line items, and current status.

API Operations

Common API operations:

# List orders
GET /api/v1/orders?status=pending&channel=shopify

# Get order detail
GET /api/v1/orders/ord_abc123

# Create order
POST /api/v1/orders

# Cancel order
POST /api/v1/orders/ord_abc123/cancel

# Allocate order
POST /api/v1/orders/ord_abc123/allocate

See API Reference for full documentation.