SDOperationsDemo data

How the website connects to the rest of the business

Integrations

SD's stock and accounting software haven't been confirmed yet, so nothing here pretends to be connected. Each one plugs in behind a defined connector — the ordering system and this dashboard don't change when it does.

Demo data

Stock system

Demo stock data (no stock system connected). Which system SD uses is still to be confirmed.

  • Pull products and SKUs listProducts()
  • Show stock availability getStock(skus)
  • Allocate stock when an order is sent allocate(order)
  • Receive stock changes POST /api/integrations/inventory/webhook
  • Customer-specific product lists getCustomerProductList()
Not connected

Accounting

Xero, MYOB or something else — to be confirmed. Nothing is assumed.

  • Match website customers to accounts findCustomer()
  • Send delivered orders as invoices createInvoice(order)
  • Pass PO numbers and order numbers through InvoiceRequest.purchaseOrder
  • Account-specific pricing, if held there getCustomerPrices()
  • Reconciliation — paid / unpaid getInvoiceStatus()
Browser printing on

Pick slips print from any computer — home or warehouse — through the normal print dialog.

  • This computer's printer — activeUses the browser print dialog — works from home or the warehouse.
  • Warehouse printer (remote) — plannedFuture: send pick slips straight to the warehouse from anywhere.

Outbox — work kept for when systems are connected 18 waiting

Every order records what it needs from the stock and accounting systems. Nothing gets lost while they're not connected; once a connector is added, waiting jobs are replayed.

WhenJobOrderStatusResult
Today 12:31 amMatch / create customerSD-10495waitingNew customer — needs an account set up
Thu 24 Sept, 12:55 amCreate invoiceSD-10486waitingNo accounting system connected yet
Tue 22 Sept, 8:55 pmCreate invoiceSD-10485waitingNo accounting system connected yet
Mon 21 Sept, 4:55 amCreate invoiceSD-10484waitingNo accounting system connected yet
Sun 20 Sept, 12:55 amCreate invoiceSD-10483waitingNo accounting system connected yet
Sat 19 Sept, 2:55 amCreate invoiceSD-10482waitingNo accounting system connected yet
Thu 17 Sept, 10:55 amCreate invoiceSD-10481waitingNo accounting system connected yet
Thu 17 Sept, 12:55 amCreate invoiceSD-10480waitingNo accounting system connected yet
Wed 16 Sept, 2:55 amCreate invoiceSD-10479waitingNo accounting system connected yet
Mon 14 Sept, 10:55 pmCreate invoiceSD-10478waitingNo accounting system connected yet
Mon 14 Sept, 12:55 pmCreate invoiceSD-10476waitingNo accounting system connected yet
Sun 13 Sept, 6:55 amCreate invoiceSD-10472waitingNo accounting system connected yet
Sun 13 Sept, 12:55 amCreate invoiceSD-10477waitingNo accounting system connected yet
Thu 10 Sept, 12:55 amCreate invoiceSD-10474waitingNo accounting system connected yet
Mon 7 Sept, 12:55 amCreate invoiceSD-10471waitingNo accounting system connected yet
Sun 6 Sept, 12:55 amCreate invoiceSD-10473waitingNo accounting system connected yet
Thu 3 Sept, 12:55 amCreate invoiceSD-10470waitingNo accounting system connected yet
Fri 28 Aug, 12:55 amCreate invoiceSD-10475waitingNo accounting system connected yet

Print log 0 print runs

No print runs yet in this demo. Use “Print new orders” on the Orders screen.

Try the stock webhook (demo)

A stock system can push changes to the website. With the dev server running, this marks a product as out of stock on the public catalogue:

curl -X POST http://localhost:3000/api/integrations/inventory/webhook \
  -H "content-type: application/json" \
  -d '{"events":[{"sku":"HC-DW12-KR","availability":"out_of_stock"}]}'