> For the complete documentation index, see [llms.txt](https://docs.flowretail.com/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.flowretail.com/docs/october-2026.md).

# October 2026

## Monthly summary / tl;dr

October so far:

* **Assistant 3.0 brings inter-store trade to the app** — see what a sister store holds, buy from it, sell to it, send the goods with a tracking number and receive them, all with clear messages on a poor network.
* **Prepayment is simpler and safer in Assistant** — 20, 50 or 100 % of what is left, a payment history on the order, and a prepayment can never be taken or refunded twice.
* **Chain status in Assistant** — today's turnover for all stores against last week or last year, turnover per day with the stores stacked, and a compact card on the front page.
* **Order handling in Assistant is much richer** — a new-order alert, picked lines remembered on every device, several shipping labels per order, an order history, and the customer's SMS and e-mail status.
* **Assistant never loses work on a poor network** — counts are saved on the device every few seconds, and payments, sales, SMS and new customers are never sent twice after a timeout.
* **Text size and a customisable front page in Assistant** — pick Normal, Large or Extra large, and hide the front page cards a device doesn't need.
* **Sell smarter at the till** — sellers see a product's profit, add products with a confirmation and swipe a line away, and a product coming in at 0 kr asks for its price straight away.
* **Stores can refuse orders that mix sales and returns**, and a return at a Swedish till of a sale made on the same till is registered as a correction of that sale.
* **Orders can be blocked from hand-out, with a reason** — Client and Assistant refuse to hand the goods out, and an order shows a deviation when a delivery is late against the agreed date or a pickup deadline has passed.
* **Saved Z** [**reports**](#user-content-fn-1)[^1] **and an X report** — Flow can now save a numbered Z report that can never be changed every time a till is closed or a store cash reconciliation is completed, and show an X report for a till at any moment. Both can be downloaded as PDF or HTML, with a new layout built from Norwegian and Swedish requirements.
* **PayEx card terminals are no longer supported** — existing orders keep their history, but new PayEx card payments are refused.
* **External systems can print straight to a Flow printer**, and customer, product and supplier product updates that change nothing are no longer saved or synced.

Working with the API? See [For developers](#for-developers) at the bottom.

## 2026-10-13

### Added

* **Orders can now be blocked from hand-out, with a reason** — for example when an integration finds that the customer has no credit left. An order takes one blocking of each type, changing a blocking updates its reason, and blocking needs its own permission. **Client** and **Assistant** are told not to hand the goods out; **Assistant** refuses the hand-out and moves the order's "deliver now" lines to "deliver later" when it is paid, with the reason and a note that the order must be checked.
* **Orders now show a deviation** when a delivery is expected later than the date agreed with the customer, or when a pickup deadline has passed. Orders with an open deviation can be listed and counted by store, organization and type, and each deviation shows the expected, agreed and latest pickup dates.
* **Saved, numbered Z reports** — Flow can save a Z report that can never be changed afterwards every time a till is closed or a store cash reconciliation is completed. It stays switched off until a start date is set.
* With saved Z reports on, **a till can no longer be closed while a receipt has a payment in progress** (the error lists those orders), and **a store cash reconciliation can no longer be completed while one of its tills is open**.
* **List and open a till's Z reports** by number or by date, both the saved ones and the ones calculated for earlier dates. Closing a till and completing a reconciliation also tell you which Z report they made.
* **X report** — see what a till has sold so far, calculated when you ask and never saved. With saved Z reports switched on it covers everything since the till's last saved Z report, including the open session; without them it covers the day.
* **Z and X reports can be downloaded as PDF or HTML.** Saved Z reports have a new layout built from the Norwegian and Swedish lists of what the report must contain; the points Flow does not record yet are listed in the Z report documentation.
* **Z and X reports now show deleted or reduced order lines** at the till, with the amount and split by what was done — the older Z and X report and the SAF-T[^2] file count them too.
* **Z and X reports now show the number of sales per main group, the number of discounts and the payments per operator.**
* **Assistant** — **inter-store trade, buying side**: a purchase order bought from a sister store shows which store it was sent to and its order number, with each line showing how that store holds it (on stock, waiting for its supplier with the expected date, shipment confirmed, or not ordered). "Order in" on a sale line also lists the central warehouse and the other stores' incoming goods with how many are free, and picking one reserves it in one go.
* **Assistant** — **inter-store trade, selling side**: a sale to a customer that stands for a sister store says that the store gets a purchase order on confirm and the goods receipt on send. "To the stores" in Stock lists the sales with goods left to send, and "Settle and send" takes payment on invoice or the tenant's own external payment methods before going on to delivery.
* **Assistant** — **sending and receiving between stores**: confirming a delivery to a sister store registers the goods receipt with them at once and takes an optional tracking number, typed or scanned. When fewer arrive than the shipment says, "Complete receiving" asks whether to receive what came or count again. Flow's refusals are shown in plain words with what to do next.
* **Assistant** — **set shelf locations while counting** in goods receiving by scanning the shelf label, and afterwards from "Set shelf location" on the done screen. Unsent locations wait on the device and are sent when the network is back.
* **Assistant** — when a product has no purchase price, a **purchase order** sheet asks for the price for this order, with the sales price as a reference, and can save it as the supplier's fixed purchase price.

### Improved

* **Deliveries now keep the agreed delivery date, the pickup dates and the day they were delivered**, and a delivery can be changed between shipment and pickup. A delivery's expected date follows the purchase order's expected date or the confirmation's arrival date, and changes when they do.
* **A customer update that changes nothing is no longer saved**, so it no longer syncs to Omnium or Klaviyo, and an import counts such rows as ignored. The batch customer upsert still saves every customer it is sent.
* **A Finnish company customer's** [**EHF**](#user-content-fn-3)[^3] **address, and a Finnish store's, are now checked when saved.** Invoice is no longer offered when the address is not valid, and Finnish e-invoices without an EHF address go to the address built from the Business ID.
* **A purchase order's discount rate, and a supplier's fixed discount rate, must now be between 0 and 100 %**, instead of a rate over 100 % giving a negative line price.
* A purchase order line's unit discount is now **rounded to the nearest øre** instead of cut off, so it can be one øre higher than before on lines created or edited after this release.
* **A till that has Z reports can no longer be deleted.**
* **The main groups, the VAT and the payments on the Z and X reports now count sales only**; returns are shown on their own lines.
* **A device moved to another store now uses that store**: sessions from before the move are asked to log in again, and a device can no longer be moved from an open till or onto a till that another device is using.
* **Closing a till with saved Z reports switched on is faster** on tills with a long history. Set the start date for saved Z reports only after this release has been fully rolled out.
* **Assistant** — purchase order store and supplier are chosen in the standard picker sheet instead of fields that opened over the keyboard, and a foreign-currency supplier shows "Buys in EUR" and the rate field "Exchange rate EUR".
* **Assistant** — a purchase order line that is part of a package now explains that its quantity can't be changed there. Addresses read "Street address", "City" and "Company name" on purchase orders. Labels show the number of items on the title line with two equal buttons, and messages at the top of the screen are never cut off, also with large text.

### Fixed

* **An order can no longer both return and top up the same Flow gift card** — the line that would make it so is refused.
* **A delivery is now delivered only when every goods line on it is delivered**; a partly delivered delivery is shown as started, and a delivery Omnium reports as ready to ship is shown as started too.
* **Receiving goods on a new receivement now also releases order lines earmarked on another receivement** of the same purchase order line, so they become ready for delivery instead of waiting for goods that have already arrived.
* Purchase proposals generated from Min/Max no longer include products whose discontinued date has passed.
* **Crediting a line that was not yet delivered now also updates the delivery state on the original receipt**, so it no longer stays "not started" while the order shows delivered. Receipts that already show the wrong state are corrected when the release is installed.
* **A line paid on its own receipt can now be credited and refunded** while the rest of the order is still unpaid.
* A receipt with no lines, settled by a single invoice, no longer shows nothing remaining while an amount is still owed.
* **The Z and X reports for a day with many sales are made faster**, and a missing Z report or an unknown till now gives a clear message. Downloading a report as a file now needs the same permission as viewing it.
* With saved Z reports switched on, a sale whose payment completes while the till is being closed is counted on the next Z report instead of being left out, and a sale where a payment was started and abandoned on one till and then paid on another is counted on the till that took the payment.
* **The receipt report in Excel now shows the till and device the receipt was paid on**, even when an earlier payment attempt on another till was cancelled.
* A settlement posted on a receipt from outside a till, such as from an integration, no longer fails.
* **Visitor readings are imported correctly** — one row per store per hour whatever order kundetelling.no returns them in — and a store whose people-counter extension is switched off is no longer imported.
* **Product search no longer fails when the search text contains parentheses**, such as "AirPods Pro (2. gen)".
* Product labels in 40x27, 40x50 and 51x25 **print the serial number again**, except on a price label that also prints a comparison price such as an outlet price, where the variant line no longer prints over it.
* **Assistant** — the exchange rate on a purchase order is read as a decimal in the tenant's number format, so "11" is no longer sent as 0.11 and "11,50" is no longer lost. "Back" is as tall as "Hold to deliver" on the delivery confirmation, and secondary buttons grow instead of clipping a wrapped label at large text sizes.

### Removed

* **PayEx card terminals are no longer supported.** PayEx can no longer be added as a terminal, extension or payment method. Tenants and stores that already have it keep it for their past orders, but a new PayEx card payment is refused and a PayEx payment left in progress is cancelled.

## 2026-10-10

### Fixed

* **Assistant** — **German** now addresses the user formally ("Sie") everywhere; about 215 texts said "du".
* **Assistant** — about 90 texts corrected in Nynorsk, Danish, Swedish, German and Finnish (Bokmål and English words left in, typos and wrong meanings), Nynorsk uses its own day names, and "Quick totals" and "Offer" read the same wherever they appear.
* **Assistant** — Nynorsk texts with a count, such as Reminders on the front page, crashed and showed a tall grey box instead of the card.
* **Assistant** — "Close" in Customise front page now works also after a switch has been changed.

## 2026-10-08

### Added

* **Assistant** — **text size** per user under Settings: Normal, Large or Extra large. It comes on top of the phone's own text size and applies to every screen, dialog and banner.
* **Assistant** — **Customise front page**: hide the cards a device doesn't need (My page, Quick totals, Reminders, Stocktaking in progress, Order handling, Shortcuts) from the bottom of the front page or from Settings. It is saved on the device for everyone who logs in on it, a hidden card is not fetched, and "Show 3 more cards" brings them back in one tap.

### Improved

* **Assistant** — each language has its country's flag in the language sheet and in the user menu and Settings, and both say "Language".

### Fixed

* **Assistant** — big amounts such as "48 230 kr" no longer have a gap as wide as a digit between the thousands, in every language and on every screen that shows them, and an amount never breaks over two lines.
* **Assistant** — English dates written with numbers now name the month ("6 Oct 2026" instead of "06.10.2026") on gift cards, the order history, order handling, the product page, service and payment events, stocktaking and date fields. Other languages are unchanged.
* **Assistant** — the till card on the Sales tab keeps the name of whoever opened or closed the till together, and App info shows the till once, by name.
* **Assistant** — "Show only unconfirmed purchase orders" and "Show delivered items" in customer orders sit side by side from the left edge, like the filters on Purchase, and scroll sideways when the labels are long. The language in Settings is a row like the others and opens the same list as the account sheet.

## 2026-10-07

### Added

* **Assistant** — **shake the phone on the front page and it turns to My page**; shake again to go back. It works with fun mode off, never on scanning screens, in dialogs and while typing, and with reduced motion it swaps without the flip.
* **Assistant** — **Spill-lab** (fun mode only): a round of Stable pallen or Vekslemester pauses by itself when you step away and counts no play time, three perfect drops in a row earn a reinforced box, and the music has a volume slider.

### Improved

* **Assistant is faster on a slow connection**: long stock, supplier and product group lists load their later pages three at a time, picking opens as soon as the handling and shipments are read, long orders open and scroll lighter, and a purchase order asks for its supplier, receivements and warehouses at the same time.
* **Assistant** — **Delivery**: a scan or "Deliver" on a stock line counts at once and the warehouse is checked afterwards, so a burst of scans no longer queues up on a slow connection. It also works without a connection, and a unit is taken off with the usual "too little in stock" message if the warehouse has less.
* **Assistant** — the **product page** opens with fewer requests (supplier products, the all-time sold figure and the last receivement load when Details or Purchase is opened), and customer orders read stock only for newly loaded orders.
* **Assistant** — **My page** shows your total and your place in the store in one card at the top, and opens on the figures from last time while it refreshes in the background.
* **Assistant** — **English texts got a full round**: sentence case everywhere, one word per thing ("Goods receipt", "Till", "Stocktaking", "in stock", "excl. VAT"), and shorter texts where they were cut off on the Zebra. English dates drop the Norwegian dot after the day.
* **Assistant** — times are always on the 24-hour clock, and numbers have a space between the thousands in every language ("11 970").
* **Assistant** — the floating "New …" buttons at the bottom right are bigger and easier to hit (56 instead of 48 tall), and "Start return" above "New sale" is light red so it is easy to tell apart.
* **Assistant** — **product lists** say "25 in stock" instead of "25 here", the scan card follows the device (barcode icon and "Press the side button" on a hand terminal, camera on a phone), and the **SKU** at the top of a product is a larger button that copies it with one tap.
* **Assistant** — **Order from supplier** with a D-pak starts at the missing quantity rounded up to a whole D-pak, and the − / + buttons say how many they step. "Min" and "max" are written the same way wherever stock levels are shown.
* **Assistant** — **banners** are one compact dark pill at the very top with a badge for the type, so a banner never sits over a sheet's buttons any more.
* **Assistant** — onboarding "Start" logs in the user who just approved the device, so they go straight to the front page instead of picking themselves and typing the PIN again.

### Fixed

* **Assistant — stocktaking, goods receiving and internal purchase never lose counts**: counts are written to the device at the latest every ten seconds, nothing is sent when it cannot be saved on the device, and a red "Not saved" pill shows when a write fails while the app tries again by itself. A counted item that someone removed from the running stocktaking is kept on the device with a banner instead of dropped, and scans made without a network are counted when it is back.
* **Assistant — nothing is created or sent twice after a timeout or a double tap**: customers, contacts, service orders and events, internal orders, SMS, e-mails and receipt e-mails, parking or confirming a sale, and a stock adjustment after a timeout or a server error. The app looks on the server before trying again.
* **Assistant** — adding and removing products back and forth in a sale no longer ends in "Order item not found", and a discount on several lines says how many lines got it ("Discount added to 2 of 5 lines").
* **Assistant** — **Stock adjustment › Set cost price**: "450.50" is 450,50 (a dot was dropped, so the cost became 100 times too high).
* **Assistant** — large warehouses (over 10 000 stock lines), supplier lists and product group lists are read in full instead of being cut silently, so the replenishment and oversold reports are complete.
* **Assistant** — scanning an order number in the purchase order list opens the scanned order, and scanning a service number finds the service even when the list filter hides it.
* **Assistant** — new customer names are capitalised after a space as well as a hyphen, and prices and amounts follow the tenant you are logged in to, also after switching onboarding.
* **Assistant** — log out no longer says it closes the till, and putting the phone down on a table after a shake no longer swaps back.

### Removed

* **Assistant** — the dizzy Flowrex when shaking the phone on the front page. The tilt effect (the cards fall) is unchanged.

## 2026-10-06

### Added

* **Stores can now be set up to refuse orders that mix sales and returns.** Stores using fiscal receipts get this automatically.
* **A return at a Swedish till of a sale made on the same till is now registered with the fiscal control system as a correction of that sale**, instead of becoming a kontantnota. A receipt from a Swedish till also keeps the control system's full answer, including the reason when a receipt was refused.
* **An order line can now credit a line on an order in the external order system** without importing that order into Flow first. Flow checks the quantity against the external order before reporting the credit back there.
* **A buying store's order line in an inter-store purchase now shows the shipment its goods are coming with** at the selling store.
* **Customer imports can now set the EHF address** and switch EHF on or off.
* **External systems can print through Flow** — send data straight to one of Flow's printers, as long as the data is what the printer speaks.
* **Client** — a customer representing a store in inter-store trade now shows the represented store and an inter-store icon in the customer info dialog, with contacts and addresses taken from the store settings.
* **Assistant** — **prepayment is now its own button** under "Pay": with nothing prepaid it takes a prepayment of 20, 50 or 100 %, asking for a customer first, and with a prepayment it opens Add / Use / Refund. An order gets a "Prepayment" box with prepaid, used, refunded and left to pay, and a "Payments" list with one row per prepayment added, used and refunded.

![In Assistant: tap Prepayment under Pay, choose card, take 50 %, see the registered prepayment and then the Prepayment box and Payments list on the order](https://593715853-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0GCVniU8V4PZKEK4axWz%2Fuploads%2FwP9BLY61Bc3YmGCvsGND%2Foctober-2026-assistant-forskudd-88a61c08.webp?alt=media)

* **Assistant** — "Is this a prepayment?" is asked before a normal payment of less than what is left is taken on an order with nothing paid. Closing or parking with prepaid money left over asks "The customer has 1 510 left. Refund now?".
* **Assistant** — **Customer search**: "Change customer" on the customer card, right under the contact details, and the search runs again after saving.

### Improved

* **Supplier product errors are now translated and clearer**: a missing supplier, product or supplier product is "not found", a product already linked to the supplier is a conflict, and a second supplier on a product with commission is refused.
* **A product update that changes nothing is no longer saved**, so it sends no product update, and a supplier product update with the same SKU and purchase price is no longer saved either; imports count such rows as ignored.
* **A sale at a Swedish till paid wholly on invoice, and a prepayment or its refund, is no longer reported to the fiscal control system** and is printed as "Ej kvitto". When a sale is split between card and a Two invoice, the invoice part is reported as an invoice.
* **A printer is only printed on when it can be trusted**: a Flowbox must belong to the same tenant as the printer, and a network printer whose address turns out to be the server itself is refused.
* **Assistant** — **"Use" never locks the order**: "Pay" shows the prepayment in the payment window ("Items", "Prepaid −10 000", "To pay 39 900"), or "Complete" when it covers everything. Prepayment words are the same everywhere, and it asks the server for payment methods once instead of three or four times.
* **Assistant** — **banners** ("Added to the order", "Removed from the order · Undo", errors and warnings) are dark with a coloured badge and slide in from their edge, and a banner on its way out no longer takes taps, so a late "Undo" never undoes a delete that was already sent. A new sale line rises in at the bottom and the list scrolls to it.
* **Assistant** — **new order alert**: "Turn off" is now "Mute for 1 hour" (nothing is turned off), and untouched the card hides itself after eight seconds and flies into the Orders tab.

### Fixed

* **Dintero cancel and charge are safer**: a cancelled payment could leave the card charged, or charge a card that had already paid; the card transaction now decides whether the money moved, and a payment the card has already partly paid is never terminated or charged again. The order lines sent to Dintero also carry the right VAT.
* **An invoice whose amount has øre can now be settled in cash.** The till takes the rounded amount, the invoice is credited in full and the difference is booked as øre rounding, as on an ordinary cash sale. The accounting exports credit the customer and book the rounding on the rounding account.
* **A till's open status is now read from its cash register reports everywhere**, so a till with an open register cannot be opened twice, a till whose registers are all closed can always be opened again, and a till that has never been opened reports closed. Closing an older cash register report from back office no longer marks the till closed when a newer report has opened it since.
* **Force-deleting a payment now clears it** even when the payment provider is unreachable, and an invoiced order that mixes sales and returns shows the right remaining balance after a separate credit order.
* **A Nets card payment result is confirmed to Nets only once Flow has saved it**, so Nets sends it again if saving fails.
* **A discount on a sale from a Swedish till, such as loyalty points, is reported as part of the sale** instead of as a return.
* **Around a thousand more messages now appear in your own language**, in all six non-English locales, and messages about the tenant call it a company in the word each language uses. Receivements are no longer called receipts, and blank error messages are complete.
* **Credentials are kept out of the logs** — request headers, binary uploads and the kundetelling.no export login are no longer written in full. A chain's own kundetelling.no URL counts only together with the chain's own login and must be https.
* **Client** — the order delivery dialog no longer fails or picks the wrong method when two providers have a method with the same id, no longer lists methods that ship only from warehouses the store can't use, and the "Find delivery" shortcut no longer opens for methods without dynamic options. The app no longer turns all black after the internet connection comes back.
* **Assistant** — **refunding a prepayment** runs like a payment: with a terminal, Softpay or Vipps it waits for the customer, and "Prepayment refunded" shows only when the money has actually been paid back. Taking, using and refunding a prepayment can no longer happen twice on a poor network or if the app is closed halfway.
* **Assistant** — a prepayment refunded more than once, "Refund" on a confirmed order, "Can be refunded" per prepayment and "Left to pay" now show the right amounts, and "Delete sale" with prepaid money says "Refund the prepayment first".
* **Assistant** — adding and removing products back and forth no longer ends in an error, and "Undo" after swiping a line away is no longer hidden behind the new order alert.

## 2026-10-05

### Added

* **Assistant** — **Chain status** shows each store's number of sales next to its bar, and **Profit** is a new section on the product page: price ex VAT (the campaign price while a campaign runs) minus the average cost of the warehouse the item is taken from, plus the product's active subsidies, with the subsidies and the profit per warehouse below.
* **Assistant** — **"Added to the order"** confirmations when a product is added from the search, the product groups, the stock sheet and the quick-sale chips (with the quantity when it is one more), "Discount added" or "Discount removed" when the discount page closes, and "Added to the purchase" for a new purchase line.
* **Assistant** — **swipe a sale line to the left to remove it**: it follows the finger over a red "Remove" and slides out, and "Removed from the order" shows "Undo" for four seconds before the delete is sent.
* **Assistant** — the product page's **"On active orders"** shows how many of the store's orders with the product are not finished: open on a till, parked, confirmed, or completed but not fully delivered.

### Improved

* **Assistant** — **Chain status** opens from "Show on the front page" as a compact card at the top of the front page (turnover for all stores, profit, margin and number of sales) without replacing it, and the store chosen for sellers stays chosen across tabs and visits.
* **Assistant** — **Quick totals** shows the margin as Flow works it out (profit over turnover ex VAT) instead of over turnover incl. VAT, so it reads a few points higher and matches Flow.
* **Assistant** — the product page shows profit in one place: "Details and cost price" is now "Details", and the supplier's purchase price is shown behind a hold.
* **Assistant** — a sale or order line shows its product picture, product pictures at the top of the product page are swipeable with the cover shown first, and stock says "reserved" instead of "on sales order" in all languages.
* **Assistant** — removed lines fade and fold away instead of vanishing, the line only leaving once the delete has succeeded.
* **Assistant** — **login "Other user"**: the username field has a person icon, a label that stays above the text and a plain keyboard that offers saved usernames.

### Fixed

* **Assistant** — a product sold as variants (size, colour) could be put on the sale from "Add products", the quick chips or the advanced search and was then refused. Every way of adding it now opens "Choose variant" with each variant's picture and what makes it that variant.

## 2026-10-04

### Added

* **Assistant** — **Chain status** gets "Turnover per day" for 7 days, 14 days and This month: a bar per day with the stores stacked, where tapping a day shows every store's own turnover, highest first. Comparison now says what it compares with ("Against Tuesday last week") and lets you choose last week or last year, and the budget line reads "Daily budget 30 000 kr · sold 24 000 kr" marked ex VAT.

![In Assistant: open Chain status from the front page, see turnover per day with the stores stacked, tap a day and scroll to the stores with their number of sales](https://593715853-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F0GCVniU8V4PZKEK4axWz%2Fuploads%2FpZGDpRaI8Ex5hXku4qS1%2Foctober-2026-assistant-kjedestatus-d6ca9208.webp?alt=media)

* **Assistant** — **"Send to customer"** on a sale line sends the line, and other lines that can be sent, to the customer on a shipping delivery: the customer's address or another address, the carrier method, the delivery day and time window, and the items.
* **Assistant** — **orders and sale**: a product that comes in at 0 kr asks for its price right away ("Set price", "Give away (0 kr)" or "Remove item"); "Order" on a product not in stock adds it as a purchase request in one tap, asking for a customer first; "Last customers added here" lists the last three customers put on a sale; a company customer asks for a contact person on the sale; and consents can be turned on or off from the customer card when the customer says yes or no at the counter.
* **Assistant** — **new customers follow the company's own rules from Flow**: the fields the company requires get a red star and "Save" stops with "Required" under every empty one, instead of failing after the save. Customer and contact forms open the right keyboard for each field.
* **Assistant** — **order handling**: an alert when a new order comes in while the app is open, picked lines remembered on every device when an order is left on hold or in progress, a line waiting for a purchase order shows its number and expected date (and "Received" once it has arrived), and a completed handling shows the status of the SMS and e-mail to the customer.
* **Assistant** — **order details**: a "History" under ⋯ lists who did what, newest first, with the full date and time; a line with a warranty claim or service shows it under the line; and "Left to pay" shows once part of the order is paid or prepaid.
* **Assistant** — **delivery**: "Ready to deliver" shows which orders have nothing waiting on a purchase, the store can require the item's barcode to be scanned before it is handed over and a shipment shows as a "Pickup point" or "Home delivery" pill.
* **Assistant** — **prepayment made simpler**: it offers 20, 50 or 100 % of what is left with a round amount next to an odd share, a sheet after a prepayment offers e-mailing or printing the receipt, and Dintero terminal payments can be chosen when the store offers them and are never paid twice. When a task after the payment fails (gift card, loyalty points, stock, receipt print, EHF), the paid page waits with "Try again" or "Ignore and continue".
* **Assistant** — **goods receiving**: "Confirm receiving" shows lines that get more or fewer than ordered before the goods are received, and each line on a purchase order shows stock in the default warehouse and the other warehouses that have the product. A purchase order line can be linked to an existing customer order, so goods already ordered for the store go to the customer when they arrive.
* **Assistant** — **stocktaking and stock**: a line with a discrepancy can be corrected in the same stocktaking instead of making a recount, a fixed package can be moved to another warehouse as a whole, a stock history movement opens the order, purchase order, stocktaking or service behind it, and "Confirmed on its way" on the product page lists the supplier's confirmed deliveries, earliest first.
* **Assistant** — **My page and the front page**: a "Day by day" chart of your own sales against the previous period, the store ranking with a bar per seller, and a "My page" card at the top of the front page with your turnover today, profit and place among the store's sellers.
* **Assistant** — **old versions are caught**: when Flow requires a newer Assistant than the one installed, "This version is too old" is shown instead of the users, with a note that unfinished counts, receivings and picks are safe on the device.

### Improved

* **Assistant** — **negative lines stand out**: lines with a negative quantity (return, correction, exchange) are light red with a "Return" tag and the quantity in red, and the red payout button on a return says "Pay out" instead of "Pay". A line on a delivery that is being packed or shipped can no longer be credited and says "Under delivery", and an insurance follows the item it insures.
* **Assistant** — **orders show what the customer actually paid per unit**, with any discount on the line or on the whole order taken off, and the external order number from a web shop is shown as a framed label wherever orders are listed.
* **Assistant** — **delivery can't go wrong by a stray tap**: "Deliver", "All N" and scans only choose the items, and nothing is sent until you confirm. "Confirm delivery" lists what will be handed out.
* **Assistant** — **order handling**: both SMS and e-mail are ticked from the start when the tenant has SMS, a customer without a mobile number or e-mail says so and that choice is skipped, a package shows as a heading with its items indented below it, and lines sent from the central warehouse no longer stop "Complete" for a missing serial number.
* **Assistant** — **every picker looks the same**: radio rows, the current choice scrolled into view and a search field when there are more than four choices, as in Client. Warehouse lists are in the same order everywhere, with your own store and its default warehouse first.
* **Assistant** — **less to wait for on a poor network**: warehouse access, delivery methods and store lists are kept in memory and fetched again only when Flow says they changed, and searches no longer let an older answer replace the hits for what was typed last.
* **Assistant** — reports say "incl. VAT" on every amount that includes VAT, and the margin per seller is Flow's own figure. The Budget store picker lists only the stores you have report access to.
* **Assistant** — **service**: "New service" no longer asks for a workshop, since the choice was never saved. Inactive suppliers are no longer offered for new purchases.

### Fixed

* **Assistant** — **order lines can no longer be changed in ways that break the order**: the warehouse of a line that is already delivered or paid on its own receipt is locked, and a package is no longer a line to pick.
* **Assistant** — an SMS or e-mail that failed is no longer shown as sent: "Complete" treats it as a failed step and "Try again" sends only that one, and notifying customers after a receivement no longer stops at the first customer whose SMS failed.
* **Assistant** — **printing always names the printer**, chosen from the device's own printers, so a pickup label from order details goes to the device's label printer and not the store's.
* **Assistant** — **purchase requests added to an existing purchase order no longer order goods twice**, and "Sales per seller" in Quick totals and My page was shown 100 times too high.
* **Assistant** — scanning the same product many times in a row no longer makes extra lines, a payment with a method that must cover the whole amount says so with a lock, and the order list no longer empties when the next page brings nothing new.

## 2026-10-03

### Added

* **Assistant** — **several shipping labels on one order**, for example a new package sent to the customer weeks later: "⋯ › New shipping label" makes a new shipment to the same address with the same carrier and method as the last one, with its own tracking number.
* **Assistant** — **Fun mode**: late in the evening Flowrex gets sleepy and yawns three times between 22:00 and midnight, never on a scanning screen or while typing.

### Improved

* **Assistant** — **"Make a new one" is a button at the bottom right of every list that has one** ("New sale" with "Start return" above it, "New purchase", and so on), the same pill everywhere.
* **Assistant** — **More** has Purchase and Purchase requests at the top of Stock, and the Purchase tile is now Service.
* **Assistant** — the order handling footer says "Print pick note", "Print pickup note", "Make shipping label" and "Print shipping label" so the labels fit on one line on a Zebra.
* **Assistant** — a payment page swipes or goes back like "Back to the overview", and the front page cards fall like real cards when the phone is tilted in fun mode.
* **Assistant** — Spill-lab: the play-time card is a ring that empties as you play, and the customers in Vekslemester buy real products from the store's register.

### Fixed

* **Assistant** — a device without its own printer used to remember the first printer chosen and never ask again. It now asks every time for pick notes, shortage notes, pickup notes and labels after a receivement.

## 2026-10-02

### Added

* **Assistant** — **Find customer** under More looks a customer up without starting a sale: the customer card opens with points, orders, messages and addresses, an order opens its details, and "New customer" opens the new customer's card.
* **Assistant** — **goods receiving**: "Print labels" on the results prints shelf labels for everything received in one go, with label size, price and printer chosen once.
* **Assistant** — **SMS counter** under the message when sending an SMS: one bar per SMS up to four, characters left, and "The customer gets one message, but it costs 2 SMS" once it is split.
* **Assistant** — **Reports › Oversold products** replaces "Negative stock", which was always empty: products with more reserved for customer orders than on stock, the biggest shortage first. The product page's Reservations let you open an order and shows up to 100 orders instead of 20.
* **Assistant** — **order handling**: picked quantities and a delivery in progress are kept on the device per order, so leaving the order, putting it on hold or the app being killed no longer loses what was scanned or loses the signature's place.

### Improved

* **The invoice PDF now shows the delivery address**, receipt and invoice PDFs look alike, and a Norwegian store's organisation number is written "NO 123 456 789 MVA".
* **Assistant** — **less battery and fewer requests**: the accelerometer is read only on the front page and My page, switching tabs within a minute of the last refresh shows the figures without asking again, and Quick totals refreshes every minute only while the page is on screen.
* **Assistant** — grey text is easier to read (darker secondary greys at WCAG AA contrast), service photos are scaled down before they are sent and without GPS position, and Send message is a 2026 sheet.
* **Assistant** — **beta versions install as their own app**, "Assistant Beta", next to production, so a beta tester can have both.

### Fixed

* **Assistant** — **a payment is never taken twice** after a timeout or a server error: the attempt without an answer is remembered for the order, and the next attempt looks on the server first. Paying an invoice from the order details checks the invoice's payments first, and scans during payment no longer add items to the order being paid.
* **Assistant** — **stocktaking** can no longer double the counts after a send with no answer, a count with progress on the device can be opened without a network, a start that timed out no longer leaves a second half-made stocktaking, and unreadable saved progress is kept as a backup instead of deleted.
* **Assistant** — **goods receiving, the purchase order and the product finder** opened without a network no longer say "Product not found" for the rest of the session: a scan says there is no network and tries again by itself.
* **Assistant** — **order handling "Complete"** no longer sends the SMS or e-mail twice or makes a second shipping label when you try again after a partial failure; it says what failed and offers "Try again" or "Skip".
* **Assistant** — **Stock adjustment** is never saved twice and listens to the scanner itself, and a new purchase order line, a supplier confirmation and a new purchase order are never created twice.
* **Assistant** — **Send message** no longer reads a stored phone number without country code as foreign ("97504699" became +975, Bhutan), and "Send SMS" in order handling fills in the customer's mobile.
* **Assistant** — canceled orders no longer count anywhere in order handling or on the dashboard, "Start next" no longer says there are no more orders when the oldest new ones are open on a till, and the **Product page** says the right number of customers waiting.
* **Assistant** — wrong PINs are limited for the whole device (10 in 15 minutes), "Add store" logs the admin out first, and scanning no longer stops working after "Start next" or after opening another product.

## 2026-10-01

### Added

* **Assistant** — **"Till on this device"** on the Sales tab shows the till's name, whether it is open or closed with when and by whom, and Open / Close buttons. Payment asks to open the till when it is closed, with the float prefilled at 0.
* **Assistant** — **park with an expiry date**: a calendar button next to "Park" with No expiry, 1, 7 or 30 days or a date of your choice (stores with a parked-order lifespan only), and parked sales show "Expires …".
* **Assistant** — **gift cards can be scanned with the camera** in More › Gift cards and in gift card payment.
* **Assistant** — **Spill-lab** (More › Settings): two small games for a break, Stable pallen and Vekslemester, with personal bests per user, a hall of fame per store and a hint to go back to work after ten minutes of play a day.
* **Client** — sales order lines reserved on an inter-store purchase order now show the other store's purchase order number and its receivement status.

### Improved

* **Assistant** — **order handling** has 48 dp tall status and type buttons, queue rows with the status pill, number of items and exact created time, and a picking screen with the customer's name large under the header.
* **Assistant** — **notes in the 2026 style**: visible notes blue, internal notes amber, a pen when they can be edited, and "Clear" instead of an X inside the field so the only X closes the sheet.
* **Assistant** — customer search has a blue "Choose" button on each customer, discount "Select all" is a check box above the lines, and product groups with the most subgroups come first.
* **Client** — the purchase order confirmation dialog's notification can again be edited before sending when only one customer is selected.

### Fixed

* **Assistant** — **tenant admins** could not open Goods receiving, Stock, Purchase, Reports and some product actions; they now get everything, as in Flow. Logging out, auto logout and switching user no longer close the till.
* **Assistant** — taking payment on an invoice from the order details or a settled order no longer crashes, the PIN pad no longer drops digits on fast taps, and adding a product with accessories no longer stacks add-on dialogs.
* **Assistant** — stock history, deliveries, purchase order and order searches no longer fail with a date error, and one-tap park sets the store's default expiry at the end of the local day.

## For developers

API and integration changes released in October.

### Added

* Orders can be blocked: a `DELIVER_OUT` blocking tells Client and Assistant not to hand the goods out. An order takes one blocking of each type — blocking a type it already has answers `409`, and `PUT` on the blocking changes its reason. Needs the new `ORDER_BLOCKING` permission; blockings come back on the order, and changing them marks the order as modified.
* Orders carry `deviations` (open ones) for a delivery expected later than agreed or a passed pickup deadline. New list and count endpoints for orders with an open deviation, filtered on store, organization and type and sorted on when the deviation opened or on the agreed or expected delivery date. A deviation carries the expected date, the agreed date and the latest pickup date; deliveries carry the agreed delivery date, pickup dates and the day delivered.
* Saved Z reports: list a till's Z reports and get one by number or date (saved or `LIVE`/calculated); till close and store cash reconciliation completion answer with the Z report they made. `GET .../xreport` returns a till's X report, never saved (`source` is `LIVE` with saved Z reports on, otherwise `GENERATED` for the calendar day). `POST .../xzreport/download` returns a Z or X report as PDF or HTML and requires the same permission as viewing it. Z and X reports carry `lineCorrections`, sales counts per main group and payments per operator; amounts are in øre.
* Customer imports accept `ehfAddress` and `ehfEnabled`.
* `GET /tenants/{tenantUid}/stores/{storeUid}/receipts/{receiptUid}/tasks` accepts `waitSeconds` (up to 60) and answers as soon as every task is finished, or when the time runs out.
* `reservationDetails.interStorePurchaseOrderReceivement` on a buying store's order line in an inter-store purchase shows the shipment the goods come with at the selling store.
* `externalOrderLink` on an order item credits a line on an order in the external order system without importing it first; Flow checks the quantity against the external order before reporting the credit back.
* `POST /tenants/{tenantUid}/printers/{printerUid}/jobs` sends data straight to a printer, as a binary body or base64 in JSON. Flow renders nothing, so the data has to be what the printer speaks.

### Changed

* A customer update that changes nothing, from the API or an import row, is no longer saved: it does not touch `lastModifiedAt`, sends no `CUSTOMER_UPDATE` webhook and is not synced to Omnium or Klaviyo; the import counts such rows as ignored. The batch customer upsert still saves every customer it is sent.
* A product update that changes nothing, a text property update that sends the text the product already carries, and a supplier product update that sends the SKU and purchase price already stored are no longer saved and send no `PRODUCT_UPDATE` webhook. An empty text is refused, and supplier product imports count unchanged rows as ignored.
* A purchase order's discount rate and a supplier's fixed discount rate outside 0–100 % are refused with `400`. A purchase order line's unit discount is rounded to the nearest øre.
* Supplier product errors are translated: a missing supplier, product or supplier product answers `404`, a product already linked to the supplier `409`, and a second supplier on a product with commission `400`, instead of `403` or `500`.
* A delivery is `DELIVERED` only when every goods line on it is delivered; a partly delivered delivery is `STARTED` instead of `NEW`, and a delivery Omnium reports as ready to ship is `STARTED`.
* A device moved to another store now uses that store; a device can no longer be moved from an open till or onto a till another device uses.
* A device's open or closed status is read from its cash register reports everywhere (device token, till uid, device information); a till that has never been opened, or a device with no till, reports `CLOSED` instead of an empty value.
* A Finnish company customer's and store's EHF address is validated when saved.
* A printer whose path names a Flowbox is printed on only when the Flowbox belongs to the printer's tenant, and a network printer whose address is the server itself, a link-local or the unspecified address is refused as the connection is made.
* Softpay, Klaviyo, Dintero and Swish callbacks answer a bad signature with `401` and a payload that can never apply with `400`, and every error response carries the same generic message instead of the internal error text.
* A Dintero callback for a transaction that can still change, such as one on hold or partly captured, asks Dintero to send it again; a Klaviyo consent webhook is answered `200` instead of `204`, which Klaviyo retried.
* A Nets card payment result is confirmed to Nets only once saved; a result Flow could not save, or a callback that disagrees with an already settled payment, is recorded on the settlement.

### Fixed

* A customer could be saved without its `CUSTOMER_CREATE` or `CUSTOMER_UPDATE` webhook when queueing the webhook failed; the customer and its webhook are now saved together or not at all.
* An order can no longer both return and top up the same Flow gift card: the line that would make it so is refused with `422`.
* An unknown till on the X/Z report endpoint answers `404` instead of a server error.
* `remainingAuthorizedAmount` on a receipt with no lines settled by a single invoice is no longer `0` while an amount is still owed; a line paid on its own receipt offers `CREDIT` in `allowedActions` while the rest of the order is unpaid.
* `receivedAt` in an order line's `reservationDetails`, and in the seller line on a purchase order line, is `null` while goods are on their way, instead of 01.01.0001.
* Creating a supplier product with its own `supplierProductUid` always failed; sorting supplier products by `lastModifiedAt` sorted by `lastModifiedBy`, and sorting by `supplierUid` or `productUid` failed; those two are now refused with `400`.
* Setting all media on a product with a list that sends no `productMediaUid` no longer deletes and recreates every image: an item without a uid is matched to the stored media with the same `mainUrl`, and a list that changes nothing sends no webhook.
* Credentials are kept out of the outbound HTTP log headers (`Authorization`, `Cookie`, API-key headers, headers carrying a URL such as `Referer`, the Postmark server token and the PayEx gift card signature are replaced with `...`); a binary request body is logged by size only.
* Creating or updating a printer with a path Flow cannot use answers `400` instead of `500`.
* A discount on a Swedish till sale, such as loyalty points, is reported to the fiscal control system as part of the sale instead of as a return.
* Product search no longer fails when the search text contains parentheses.

### Deprecated and removed

* The PayEx terminal callback is deprecated, and the PayEx values `PAYEX_CARD`, `PAYEX_POS` and `PAYEX` are marked as discontinued in the API; they stay so past orders can still be read and filtered.
* PayEx card terminals are no longer supported: PayEx can no longer be added as a terminal, extension or payment method, a new PayEx card payment is refused, and a PayEx payment left in progress is cancelled without contacting the terminal.

[^1]: Z report = the end-of-day report that closes a till's trading period; X report = the same figures at any moment, without closing anything.

[^2]: SAF-T (Standard Audit File for Tax) — the standardised accounting export Norwegian businesses must be able to hand over to the tax authorities on request.

[^3]: EHF = Elektronisk Handelsformat, the Norwegian standard format for electronic invoices, used for invoicing public-sector and many B2B customers.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.flowretail.com/docs/october-2026.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
