borkoldocs

Selling

Orders

Track, create, and manage orders from the Commerce module.

View as Markdown

Orders live under Webshop → Orders. Most orders arrive through your storefront, but you can also create one by hand for phone or email sales. The list screens in this chapter need an active business selected in the header; without one they only show "Select a business first."

The orders list

The list shows every order for the active business, 25 per page, with Previous / Next buttons and a total count at the bottom.

  • Search filters orders as you type.
  • Status filter narrows the list to one status (or All).
  • Placed filter limits the list to a date range (from/to).
  • Click the #, Total, Status, or Placed column header to sort by that column.
ColumnDescription
#Order number, shown as #1042
TotalOrder total
StatusStatus badge
PlacedDate the order was placed
CustomerThe order's email address

Click any row to open the order's detail page. If you have no orders yet, the empty state offers a New order button and an API docs button that opens the storefront API reference in a new tab.

Order statuses

StatusMeaning
Pending paymentOrder placed, payment not yet received
PaidPayment received
ShippedOrder handed to the carrier
CompletedOrder delivered and closed
CancelledOrder cancelled; sold stock was restocked
RefundedOrder refunded; sold stock was restocked

Cancelled and Refunded are terminal: once an order reaches either status it cannot change again.

Change status in bulk

Tick the checkbox on one or more rows (or the select-all checkbox in the header) to reveal the bulk actions:

  • Mark paid
  • Mark shipped
  • Cancel (destructive)

Every bulk action asks for confirmation first ("Apply "Mark paid" to N items?"). Note that bulk Mark shipped does not ask for carrier or tracking details; to record tracking, mark the order shipped from its detail page instead.

Create an order manually

  1. Click New order on the orders list.
  2. Customer (optional): type 2 or more characters in Search customers... and pick a customer from the results. Picking one fills the Email field if it is still empty. Click Change to unlink the customer again.
  3. Email is required, even without a linked customer.
  4. Lines: for each line choose a Product, a Variant (the dropdown only appears when the product has active variants), and a Qty. The quantity follows the product's unit: a Piece product takes a whole number, other units take up to 3 decimals with a dot or a comma (0,75 kg). For a Made to measure product, click Configure (see Configure a made-to-measure line). Click Add line for more lines, or Remove to drop one (you cannot remove the last remaining line). Lines where you never picked a product are silently dropped when you submit.
  5. Fulfilment: choose a Shipping method (or leave No shipping) and a Status. Only Pending payment (the default) and Paid are available at creation; every other status is reached later through transitions.
  6. Addresses (optional): click Show to expand the billing and shipping address fields (Name, Street, Postal code, City, Country). An address is only saved if you fill in at least one of its fields.
  7. Click Create order. On success you land directly on the new order's detail page. Validation problems appear under the matching field or line.

A line the platform cannot sell is refused with a message under that line, and nothing is created: a product that is not active or has no price, a variant that is missing or inactive, a made-to-measure product you did not configure, or a product whose way of selling is switched off (for example Made to measure while the Configurator module is off). Fix or remove the line and click Create order again.

Configure a made-to-measure line

A Made to measure product cannot go on an order unconfigured. After picking one, click Configure next to the line to open the Configure {name} dialog: "Enter the measurements and choose the options. The price updates as you go."

  • Dimensions: one field per dimension, with its unit and allowed range ("{min} to {max} {unit}"). Dimensions are whole numbers: a value like 120,5 shows "Use a whole number." and is not priced.
  • Option groups: one choice per Required group, or several in a Multiple group. An optional single-choice group also offers None.
  • Unit price: the live price with its breakdown. Until everything needed is filled in, the box says what is missing ("Enter {labels} to see the price." or "Choose {groups} to continue."). "Customer group pricing is applied when the order is created."

Click Confirm to put the configuration on the line. The line then shows its description (name, dimensions and choices) and "{price} per unit"; the button reads Edit configuration to change it. Picking another product on the line drops the configuration. The order prices, reserves stock for the components, and records the configuration exactly as a storefront checkout would.

Order detail

The detail page shows the order number, email, placed date, status badge, and (when the order is linked to a customer) a Customer: link to that customer's page.

Documents and email

  • Invoice opens the invoice PDF in a new tab. The page then reloads the order, because generating the first invoice assigns the invoice number.
  • Packing slip opens the packing-slip PDF in a new tab.
  • View email opens a preview of the order confirmation email.
  • Resend email queues the confirmation email again; you'll see the notice "Confirmation email queued." and a new entry in the timeline.

Lines, totals, and addresses

The lines table shows Product (with variant label and, for configured products, a configuration snapshot such as "width: 200 x depth: 300" with a price breakdown), SKU, Qty, Unit, VAT (rate and tax amount), and line Total. Below it, the totals block lists the Subtotal, a Shipping ({method}) row when a shipping method is set, one VAT {rate}% row per tax rate, and the Total.

The Billing address and Shipping cards render each address on a single line. When tracking exists, the Shipping card also shows Tracking: {carrier} {number}.

Change an order's status

The available buttons depend on the current status:

Current statusAvailable actions
Pending paymentMark paid, Cancel order
PaidMark shipped, Refund, Cancel order
ShippedMark completed, Refund
CompletedRefund
Cancellednone (terminal)
Refundednone (terminal)

Mark shipped opens a dialog where you can optionally add a Carrier (for example PostNL or DHL) and a Tracking number before confirming.

Cancel order and Refund ask for confirmation and warn you exactly what happens: sold stock is restocked and the order cannot be reopened. There is no undo. Restocking returns exactly what the order took from stock, never more: a line that was sold without tracked stock (or converted from a quote without stock) puts nothing back.

Timeline

The timeline card lists every event on the order with its date and time, and who triggered it (Merchant, Storefront, or System). Status changes appear as "Status: {from} → {to}"; tracking appears as "Tracking added ({carrier} {number})". When an accepted quote became this order and one of its lines could not take stock (for example the product was drafted or its way of selling switched off in the meantime), the line is still on the order and the timeline shows "Stock not reserved for {name} ({code})", so you know to check that line's stock by hand. See Quotes.