Back-office screens

The back office (/manage) offers seven screens around stock and supplier orders. They all read the same data (stock, its movement journal and supplier orders), but they do not all write. When they do, every movement follows the platform's write paths: stock and its journal line are recorded together, and a product without stock tracking gets no movement (the one exception: editing a simple product's stock from the Stocks grid first switches its tracking on). This page tells you which screen to open for which need, and what each button does.

Which screen to open

flowchart TD
  Q0{"What do you want to do?"}
  Q0 --> A["Fix a stock figure"]
  Q0 --> B["Understand a stock figure"]
  Q0 --> C["Drive replenishment"]
  A --> A1{"How big?"}
  A1 -->|"A few products"| S1["Vendor stocks<br/>inline editing"]
  A1 -->|"Full count"| S2["Counts"]
  B --> B1{"Which angle?"}
  B1 -->|"Line-by-line journal"| S3["Stock movements"]
  B1 -->|"Timeline + indicators"| S4["Stock ledger"]
  C --> C1{"What exactly?"}
  C1 -->|"What will run out?"| S5["My stock"]
  C1 -->|"Review supplier emails"| S6["Email review queue"]
  C1 -->|"Suspicious stock figures"| S7["Stock gaps"]

To check that everything is fine: the Inventory health dashboard (read-only) and the "Cron 5" chip on the Stock ledger screen.

At a glance

Screen Route Shows Changes Key permission
Vendor stocks /manage/ecommerce/vendors/stocks product × vendor grid, valuation inline stock, bulk import, snapshots vendors:read + stock:write
Stock ledger /manage/ecommerce/inventory/stock-ledger indicators, product timeline, divergences manual movements, reconciliation, confirmations stock:read / stock:write, vendors:write
My stock /manage/ecommerce/inventory/mon-stock 30-day "will run out" projection, stock to check supplier drafts and one-off orders, stock entry stock:read, vendors:write, stock:write
Counts /manage/ecommerce/inventory/counts counting sessions adjustments at finalization stock:read / stock:write
Stock movements /manage/ecommerce/inventory/stock-actions the full movement journal deletion with or without stock effect stock:read / stock:write
Supplier orders /manage/ecommerce/vendors/orders calendar, statistics, email queue, stock gaps send, defer, cancel, stock correction and validation vendors:*, stock:write
Inventory health /manage/inventory/health alerts and indicators nothing (read-only) inventory:read

Vendor stocks: /manage/ecommerce/vendors/stocks

The working grid: every product with its default vendor, current stock, on-order and draft quantities. This is the spot-correction screen.

The screen also shows the stock valuation: total value at purchase price of the products in stock (stock above 0), with the number of those missing a purchase price (and therefore not valued).

Action Permission Effect
Edit a stock figure in the grid stock:write Manual increase or decrease movement depending on the difference with the journal's stock, optional reason; the entered stock is also marked as validated
Bulk CSV/XLSX import inventory:write One movement per changed product, applied as a single batch
Inventory snapshot stock:write Freezes a dated valuation (products and value), no stock movement
Delete a snapshot stock:write Removes the snapshot, no effect on stock

You enter the actual stock, not a difference. A value equal to the current stock writes nothing. The edit is refused on a generic or composite product; on a simple product that had no stock tracking, it switches tracking on.

The import file (first sheet for an XLSX) has one row per product with these columns:

Column Accepted names Content
Product productId (or id, product_id), otherwise reference (or sku, ref) product ID, or its reference
New stock newStock (or stock) whole number, zero or more
reference,newStock
CAFE-250,42
THE-VERT-100,0

A preview shows, row by row, the matched product and the planned change before anything is applied. The reason is entered once in the import dialog and applies to the whole file ("Import fichier" by default).

Snapshots keep a dated valuation history, with a name and an optional note, a per-vendor breakdown and a CSV export, useful for month-end accounting. When the grid is filtered on a vendor, the snapshot only covers that vendor's products.

Tip

Inline editing is built for fast, repeated corrections: the value must be a whole number, zero or more; Enter saves, Escape cancels.

Stock ledger: /manage/ecommerce/inventory/stock-ledger

The most complete screen: the ledger made readable. Four areas:

  1. Indicators: physical stock (with the backorder quantity when signed stock is negative), reserved, available, pending outflows (undelivered orders) and virtual stock.
  2. Overview table: one product per row, with filters kept in the URL (category, vendor, critical products, health, divergences only, products without stock tracking included or excluded, sorting, date range, today to +14 days by default).
  3. Product timeline: a product's inflows and outflows, line by line, with details of customer orders and supplier orders.
  4. "Cron 5" chip: shows whether automatic validation is running, based on the age of its last run (green up to 5 h, amber up to 12 h, red beyond that or when no run is recorded) and, as secondary information, when it last sealed something on the reception side (⇣) and the delivery side (⇡). See Daily timeline.

The "Assumed receptions" panel lists supplier receptions that automatic validation sealed (last 30 days by default, adjustable), with a button to cancel those that did not actually arrive (see A typical week). Viewing the panel requires vendors:read.

Action Permission What happens
Manual movement stock:write Records an increase or a decrease (positive quantity, required reason, optional date) and its journal line; refused on a product without stock tracking
Reconciliation stock:read (preview), stock:write (apply) Lists products whose displayed stock diverges from the journal; each fix adds an inventory adjustment that brings the journal onto the displayed stock
Delete a movement from the timeline stock:write Removes the movement and reverses its effect on stock
Confirm a supplier reception vendors:write Records the reception: the movement is applied to stock
Confirm a customer delivery orders:write Records the delivery: the stock decrement is applied
Cancel an assumed reception vendors:write Removes the stock, restores the projections and reopens the order; the next pass will not seal it again
Warning

Reconciliation is for repairing a divergence, not for editing stock. A preview always shows before anything is applied, and you can fix only a selection. A backordered product (displayed stock 0, negative signed stock) is not a divergence and does not appear in the preview. If divergences keep coming back, report it to support.

My stock: /manage/ecommerce/inventory/mon-stock

The day-to-day view: what will run out, and what is on the way? It has two tabs.

Replenishment (default) is a rolling 30-day projection, as product cards, with:

  • the uncovered demand panel (customer orders with no matching supplier order), where you can delete a supplier draft (vendors:write);
  • group by vendor (?group=true, shareable as a link), where you can also switch a vendor to made-to-order, so its products order the full demand without deducting stock, except those whose stock has been validated (vendors:write);
  • one-off supplier-order creation (vendors:write), also driven by the URL: ?newOrder=1 opens a blank order, ?orderVendor=<id> targets a vendor (and switches to the grouped view), and ?orderSlot=yyyy-MM-dd targets one of its slots (none for unscheduled orders). These orders go through the same checks as automatic ordering;
  • on a product card, validate the stock (stock:write) so the ordering engine deducts it from the next orders, or withdraw that validation.

The search (?q=) is shared by both tabs, and ?all=true shows every product.

Stock control (?tab=controle) lists the figures to check or enter. You type the quantity actually on the shelf, not a difference: it is recorded in the journal as an inventory adjustment and the stock is marked as validated (stock:write). The entry is refused on a product without stock tracking. From the same tab you can stop tracking stock for a product that should not be counted (stock:write).

Someone with stock:read and vendors:write, without stock:write, can handle orders from this screen without changing stock.

Counts: /manage/ecommerce/inventory/counts

Counting in three steps. Creating and filling a session requires stock:write, even though nothing is written to stock before finalization.

Choose the scope by searching for products. You can add or remove products until the session is finalized. The session is a draft: nothing is written to stock.

Enter the quantity actually counted for each line. You can stop, resume, correct. Still no stock write. A line left empty will not be adjusted (it is not treated as 0).

Finalizing is the only step that writes. For each counted line, the difference is computed against the journal's signed stock, an increase or decrease movement is recorded according to its sign, and the displayed stock takes the counted value. Products without stock tracking are skipped. Finalizing is refused if no line has been counted. It also records a dated valuation snapshot.

Note

When backorders are enabled, a product can have a signed stock of −3 and a displayed stock of 0. Counting "5" on that product records a movement of +8, not +5: signed stock holds authority. This is the expected behavior.

A session that has not been finalized can be cancelled without leaving any trace on stock. A finalized session can no longer be cancelled or edited.

Stock movements: /manage/ecommerce/inventory/stock-actions

The journal. Each row is a movement: type (increase, decrease, adjustment), origin (manual, order, supplier reception, inventory…), status (pending, applied, cancelled), before, difference and after quantities, author, reason. Filters and per-row details with stock:read.

The journal only allows deletion, and this is the tricky part:

  • Single delete (stock:write): the dialog asks whether stock should be reversed (the movement is physically undone) or whether only the journal line is removed (stock stays as is). That choice is the confirmation.
  • Bulk delete (stock:write, up to 200 rows): the same choice applies to the whole selection. Rows are processed one by one, in order, so two deletions on the same product never collide; a failed row does not stop the others.
Warning

Deleting with stock effect physically undoes the movement. Deleting without stock effect deliberately breaks the link between the journal and stock: keep it for rows already known to be wrong (import duplicates, for example), otherwise the consistency checks will flag the divergence.

Supplier orders: /manage/ecommerce/vendors/orders

The replenishment hub. Tabs: orders, history, per-site view, per-vendor view and a calendar of slots. In the orders and history tabs you can drag a product line from one slot to another (vendors:write); only orders that are still drafts can be rescheduled. Statistics summarize activity at the top of the page.

Email review queue: /manage/ecommerce/vendors/orders/email-review

Guarantees that what you review is what gets sent (see email preparation on the daily timeline). The queue lists prepared emails, with filters (vendor, dates, today only, deferred, modified, group by vendor). Each row shows the effective values and flags an order whose lines changed since preparation. Actions require vendors:write.

Action Effect
Send Rebuilds the email from the current lines; refuses to send if they or the send slot changed since preparation (re-prepare, then send again)
Re-prepare Regenerates the preview and its fingerprint
Edit the subject or recipients Saves your changes, used as-is when sending
Defer / undo defer Moves the send date; undoing puts the email back in the queue without losing your edits
Cancel the order Cancels the order and records where the cancellation came from; a cancelled order is never emailed, and the freed customer demand is rescheduled on a later slot

Stock gaps (« Écarts de stock »): /manage/ecommerce/vendors/orders/phantom-stock

For spotting stock figures that call for a recount: negative stock (more went out than came in) and abnormally high stock, typically fictional stock inherited from the online shop (see PrestaShop synchronization). The screen shows suspects only by default, with a search (?q=) and a switch to show all products (?suspects=false). For each product it shows stock, weekly consumption and coverage; the used column shows the stock the ordering engine will actually use: the stock as it is, never below zero. Viewing requires products:read.

Two actions (stock:write):

  • fix the figure: records the counted quantity and its journal line, marks the stock as validated and protects it from being overwritten by a stock sync from the online shop; refused on a product without stock tracking;
  • mark as trusted or not: without touching the figure, confirms that the stock is real; a product marked as trusted is no longer flagged as a suspect.

Work through this screen before letting stock drive ordering more: every unresolved suspect turns into an order of the wrong size.

Inventory health: /manage/inventory/health

A read-only dashboard (inventory:read): stock alerts and aggregated indicators. It is the visual companion to the safety nets and to the "Cron 5" chip on the Stock ledger screen.

Permissions

Each action is protected by a permission, assigned per role:

Permission Unlocks
stock:read journal, Stock ledger, overviews, My stock, list of counts, reconciliation preview
stock:write inline editing, manual movements, reconciliation, count sessions, journal deletions, snapshots, stock entry and trust on My stock, Stock gaps actions
vendors:read / vendors:write Vendor stocks grid, supplier orders, email review queue, supplier-reception confirmation and cancellation, supplier drafts and one-off orders on My stock
orders:write confirming a customer delivery
inventory:read Inventory health
inventory:write bulk stock import
products:read viewing the Stock gaps screen

A view-only profile works with stock:read and vendors:read. Keep stock:write for people who understand the difference between deleting a journal line with and without stock effect.

See also