Sales orders is where you pick a customer's order from the warehouse and hand it off to be invoiced. It works just like store transfers, same picking screen, but the order is for a customer rather than another store. Each order gets a short ID like SO1042, and tabs split them into Open, Completed, and Archived.
Open an order and the top of the page shows Created and Created by, so you can see who raised it. Bear in mind this names the account that was signed in, which for a shared store login is the store rather than the person.
Got a customer order as a PDF, a photo, a spreadsheet, or an email? Tap Upload with AI, pick the customer, then drop in the file (or paste the text). Stokk reads the line items with AI and matches each one to a product. You get a quick review screen: confirm or fix any line it wasn't sure about, adjust quantities, then Create order. The customer always comes from your pick, never from the file.
It learns as you go. Whatever you confirm is remembered for that customer: the codes and product names on their document get tied to your products. Next time the same customer sends the same file, those lines come back already matched (shown as Remembered), so a weekly order needs little or no re-mapping. Learning is per customer, so one customer's codes never affect another's. An admin can let fully confident uploads skip the review under Admin → Integrations → Sales-order upload.
Closed SKUs are flagged, not silently ordered. If a line matches a product that is closed in your ERP, the review screen marks it Closed in DK (or whichever ERP you are on) and asks what to do: use the replacement SKU if your catalogue records one, Pick another SKU yourself, or Order it anyway when you still want to ship what is left. You cannot create the order until every closed line has an answer, and an upload with a closed SKU always stops at the review screen even when auto-create is on.
Teach it how a customer's orders are laid out. If the AI reads something into the wrong place (say it captures the printed footer instead of the delivery store in the notes), open Teach the AI on the review screen and write a short instruction, for example “put the ship-to store name in the notes, ignore the footer.” It is saved for that customer and applied to every future upload of theirs, so you only correct it once.
Tap New order, search for the customer by name or ID, and add an optional reference / notes. The order starts as New so you can build the list: each scan shows a preview card with the item that matched (SKU, name, barcode and how many are available at the warehouse) with Qty pre-selected to 1. Tap −/+ or type over it for more, then tap Add line(scanning the next item also confirms the staged one at ×1, so you can scan straight through a shelf). If the item is already on the order, the card says so and the quantity is added to the existing line (the scan box won't open the on-screen keyboard; it's reserved for the scanner). To add by name instead of scanning, use Browse & add products (below). Edit a quantity inline and use × to remove a line. When it looks right, tap Send to warehouse (moves it to To pick), or if you're picking it yourself on the spot, Pick all & complete.
Taking a bigger order by phone? Tap Browse & add products. Search once (e.g. a brand or range name) to list every match with its price and warehouse stock, set quantities across as many rows as you like with −/+ or by typing, then add them all in one go. Quantities are kept as a running basket while you search, so you can gather several ranges before adding. It adds to any lines already on the order rather than duplicating them.
The Reference (the customer's PO number) and Notes on an order stay editable on the order itself right up until it's invoiced, handy for orders that arrived without them. The reference is carried onto the DK invoice.
Open an order and tap Start picking. Scanning an item that's on the order jumps to its line and selects it (it does not add a quantity); you can also tap a line. Then Pick all, Change QTY, or Not avail.; the list is colour-coded as you go (green = fully picked, orange = partial/over, yellow = not available). Found an extra item that isn't on the order? Tap Add item. When a selected line has a product photo, the action bar shows a Photo button; tap it to see the picture (handy for a new item or one you cannot place), then close it and carry on. The photo only loads when you open it. When the pick is done, tap Complete picking.
Very occasionally the stock numbers fail to load when you open an order. You get an amber notice at the top saying so, with a Try againbutton. While it's showing, ignore the "avail" column, it isn't real. Picking still works normally.
If you mark a line Not avail. but the system still shows stock at the picking location, you're asked whether the shelf is empty. Confirming pulls it from sellable stock at once and sends it to stock discrepancies for a manager to confirm, count, or restore.
An order that's been picked but not yet invoiced still holds its stock. Those items count as unavailable on other orders, because they're on the packing bench. Only stock somebody actually picked counts, so an order still waiting to be picked holds nothing, however long it has been queued. The hold clears once the order is invoiced or cancelled. Invoicing removes the stock for real: DK reduces the on-hand as soon as the invoice is created, whether or not it has been posted.
Availability comes from Stokk's own numbers, which are refreshed overnight. If the shelf and the screen disagree, tap the refresh button next to the scan box to re-read stock straight from the ERP. Select a line first and it checks just that item, which is quick; with nothing selected it checks the whole order, so on a large one select the line you're unsure about instead. For why picking and purchasing can show different figures, see how stock numbers work.
The invoice is created in DK automatically the moment an order is picked, so there's nothing to tap. Orders that came from DK are invoiced against the existing DK order, so DK keeps its own prices. Either way the invoice uses the picked quantities, not the ordered ones: lines you picked short are billed at what you picked, and lines marked not available drop off the invoice. Orders you built in Stokk are invoiced from your product prices at the customer's price level (1–3, synced from DK), so set a customer with a DK id before you finish picking one of these.
By default the invoice lands in DK as an unposted draft for you to review and post there. An admin can switch this to post invoices automatically under Admin → Integrations → Sales-order invoicing. Once done, the order shows the DK invoice number and whether it was posted or left as a draft. If the automatic attempt fails (for example a manual order with no customer DK id), the order stays Picked with the error shown and a Retry invoice button.
Once an order is picked, a Delivery note button appears on the order: a packing document listing each line with quantities ordered and delivered (no prices). Lines delivered short of the ordered quantity are flagged with a *. If a printer is set up it prints straight to your chosen printer; otherwise Open PDF opens it for your browser's print dialog. Your printer choice is remembered per person.
Shipping an order yourself rather than through a carrier? Tap Print labels on the order, pick how many parcels you're sending, and Stokk prints 9×15 cm packing labels, each numbered 1/3, 2/3, 3/3 so the recipient can check the whole shipment arrived. Each label shows the customer and their delivery address, the sending location, the order number, and a barcode of that number. No printer set up? Tap Download PDF instead. It uses the same label printer as store transfers, remembered per person.
If a carrier is connected, a Ship via button lets you create a shipment, print the carrier label, and track it. See Shipping with Dropp or Shipping with Pósturinn.
Open an order and tap Cancel order if it won't happen; it moves to Archived and can be Restore d if that was a mistake. Once an order is picked or invoiced you can Archive it to tidy it out of Completed.