Uktupus Docs
Modules

Inventory & WMS

Every stock screen — levels, planning (reorder, ATP, demand forecasts, MRP, APS, consensus IBP/S&OP), quality and traceability, valuation and layers, warehouse execution (LPN, directed tasks, cartonization, 3PL billing, device adapters, bins, put-away, waves, packing, dock), stock documents, counts, consignment, ABC/cycle counting and silage.

Available with the Inventory module. Bins, put-away, replenishment, pick waves, packing, carriers, dock & yard, stations, labor, and the warehouse map need WMS; the weighbridge needs Silage.

Visibility

Overview (/inventory/overview)

Stock home: stock value, SKUs on hand / out of stock, interactive warehouse value chart and availability mix. Quick links to levels, valuation, reorder and pick waves.

Stock Levels (/inventory/stock-levels)

On-hand quantities and weighted-average cost by product and warehouse for the whole catalogue. Each row, and the page total, show the stock value without tax and with the product’s tax. A product with no tax code shows the same amount in both. As of defaults to today (live balances); pick a past date to see quantities and value as they were at the end of that day (rebuilt from stock movements). Click a product for its stock card and Stock journey for a date range (from / to): the card lists each movement chronologically with In, Out, and running Balance after the line (opening / period in / period out / closing in the header). Journey shows the Sankey (inbound sources → warehouse opening/closing → outbound sinks, count adjustments as red unreconciled variance); click a flow band to filter the same card to those movements, still with the true balance after each line. Filters: as of, warehouse, category, below-minimum, zero stock. Export (PDF / Excel / CSV) uses the same as-of date: choose Full (includes both values) or Simple (code, product, unit, qty).

Flow (/inventory/flow)

Live warehouse pipeline — inbound (POs → receipts → put-away), internal (transfers, replenishments, counts), outbound (reservations → pick waves → packs → deliveries). Click a stage to filter; drill into a chain.

Stock Movements (/inventory/stock-movements)

Audit trail of every increase/decrease/transfer with source document, lot/serial, bin, cost and user.

Warehouse and POS scanners can send GS1 barcodes (GTIN + lot/expiry/serial AIs). Product lookup decodes these fields into a scan object so mobile WMS flows can pre-fill quantity and show lot/serial context from the label.

Valuation (/inventory/valuation)

Stock value by warehouse and product (quantity × weighted-average, standard cost, or layer cost). Reconciles to the inventory GL account.

Costing methods

Set the company default on Stock Layers (/inventory/stock-layers); products and warehouses can override.

MethodBehaviour
AverageWeighted-average unit cost on the stock level (and valuation report). Issues still consume layers in pick order (FIFO, or FEFO when picking is on) and book cost of sales at the consumed layer cost, so stock value stays aligned with the inventory GL account.
StandardStock and movements use the product standard cost (master data). Receipt layers are created at standard cost even when the PO unit price differs. On goods receipt, Orka posts a memo journal for purchase price variance (actual PO price vs standard) to purchase_price_variance and purchase_expense — goods receipt does not capitalize inventory to GL.
FIFO / LIFO / FEFOLayered consumption order; issue cost comes from consumed layers. Costing FEFO still values from earliest-expiry layers. Separately, FEFO picking (company/warehouse, default on) picks earliest-expiry lots whenever layers have an expiry — even under average/standard costing.

Stock Layers (/inventory/stock-layers)

Receipt layers with remaining quantity and unit cost — what layered methods consume, what landed costs re-value, and the audit trail for lot/serial tracking (including under standard cost).

Lots & Serials (/inventory/stock-lots)

Lot and serial balances with quality status (available / quarantine / failed), expiry, supplier lot. Serial trace shows where a unit is now and every movement it made. A serial can be on hand in only one warehouse at a time (company-wide); transfers move it, and a second receipt of the same serial while it is still in stock is rejected.

Expiry radar

Lots with stock that expire within the company lead days (default 14, overridable per product category) — or sooner when less than 25% of the product’s shelf life remains — alert warehouse and sales managers. Thresholds live under Inventory → Stock layers. Open the product dialog for Create discount / Show buyers / Transfer / Write off (scrap, reason expiry). Writing off or clearing the lot resolves the alert. With FEFO picking on (default), issues auto-pick the earliest-expiry lot regardless of costing method.

Lot genealogy (/inventory/lot-genealogy)

Graph of a lot's origins (supplier lots, components) and destinations (production outputs, deliveries, customers).

Supply network (/inventory/supply-network)

Map of warehouses, suppliers, customers and the flows between them. Warehouse nodes show on-hand quantity; suppliers show inbound volume. Health highlights nodes with open exceptions (overdue POs on suppliers, low-stock products on warehouses) as watch/critical — open Control Tower to act on them.

Planning

Reorder Suggestions (/inventory/reorder-suggestions)

Products below reorder point, safety stock or min stock right now — with lead time and preferred supplier. One-click draft POs grouped by supplier.

Available to promise (/inventory/available-to-promise)

Per product and date: on-hand − reservations + inbound POs + open production. Used by sales orders to confirm dates.

  • Global ATP — check across an ATP check group (or all warehouses); optional CTP and substitutions
  • ATP check groups (/api/v1/inventory/atp_check_groups) define plant set, CTP flag, and substitution policy
  • Sales order ATP uses the global engine and returns recommended plant / substitute SKU

Pass mode=ctp (or use APS → ATP/CTP) for capable-to-promise with BOM and capacity.

APS planning (/inventory/aps)

Advanced planning (MRP II / APS) cockpit on top of MRP:

  • Scenarios / versions — named what-if plans with demand and capacity factors (optional link to a published IBP plan so MRP uses S&OP consensus); copy a scenario, re-run, archive.
  • Full pegging — demand→supply links (sales orders, forecast, safety stock, dependent demand ↔ on-hand, PO, MO, planned make/buy).
  • Exception monitor — past-due, shortage, late MO, capacity overload, BOM issues; actions: expedite, reschedule (finite capacity), create PO/MO, dismiss.
  • Finite capacity — same engine as Manufacturing schedule, with scenario capacity factor; overloads feed the monitor.
  • ATP / CTP — capable-to-promise checks stock ATP, BOM components and work-center load, with a planner trust score.

Permissions: inventory.aps_scenarios.*. Linked MRP run remains on /inventory/mrp; finite Gantt on /manufacturing/schedule.

Demand forecasts (/inventory/demand-forecasts)

Statistical demand planning that feeds consensus S&OP (not open-order buckets alone):

  • Seasonality from posted sales-invoice history (deseasonalized baseline × monthly factors; fallback retail curve when history is thin).
  • Promo lift from approved active promotions (planned_promo_qty − planned_baseline_qty, or a discount-% heuristic).
  • MAPE / WMAPE / bias backtesting over recent weeks before you publish.
  • Publish marks the run as the source for the next IBP/S&OP generate. Permissions: inventory.demand_forecast_runs.*.

MRP planning (/inventory/mrp)

Multi-level, time-phased planning over a horizon (7–365 days) for one warehouse (its stock, orders and production orders) or all. Horizons up to 14 days plan in daily buckets, longer ones in weekly buckets.

  • Gross requirements per product and bucket: open sales order lines (remaining qty on the expected delivery date), published S&OP consensus when an IBP plan has Feeds MRP (preferred), else forecast (sales history × seasonality, or sensed demand, spread over the horizon), unissued components of open production orders, and dependent demand from planned parents.
  • Netting: available on-hand (quarantined/failed lots excluded) minus safety stock (or the reorder point if higher), plus scheduled receipts — open PO lines on their expected date and the remaining output (and co-products) of open production orders on their due date. Past-dated demand and receipts count on day one; anything after the horizon is ignored.
  • Make or buy follows the product's procurement method. A shortfall becomes one proposal per bucket. The quantity is raised to the product's min order qty (if set) and then rounded up to the next order multiple (if set); leave both at zero for lot-for-lot. Set them on the product in Master Data. Make: start date = need date − manufacturing lead time (total routing hours for the quantity ÷ the lowest work-center hours per day, else the product lead time); the default BOM version is exploded — component qty = parent qty × line qty ÷ BOM output qty × (1 + scrap %). Phantom components pass straight through to their own components; by-products and co-products are not demand. Buy: order date = need date − product lead time, preferred supplier attached.
  • Products are planned in low-level-code order, so each item is netted once with all of its parents' demand. Each proposal shows its level, need date, order/start date and what it is pegged to (parent proposal, sales order, production order, forecast or safety stock).
  • Exceptions: past-due proposals (order date before the run date), BOM cycles (the closing link is not exploded), items without a BOM or supplier, and make items without a BOM.
  • Create PO / Create MO per line: the draft PO gets the need date as expected delivery; the production order is planned with the need date as due date and the start date as planned start. Running MRP again for the same warehouse scope marks older runs' unconverted suggestions as skipped, and orders you converted count as supply.

IBP / S&OP (/inventory/ibp)

Mid-market integrated business planning — not SAP IBP Cloud. Weekly buckets (Monday week start) over a 1–52 week horizon for one warehouse or all. Consensus demand feeds MRP and APS when published.

  • Demand signals: open orders, statistical qty and promo lift from a published (or selected) demand forecast run; if no forecast exists, fresh sensed daily demand × 5 working days. Seed demand / consensus = max(open orders, statistical + promo) so firm orders are not double-counted with the forecast.
  • Supply: open PO lines (confirmed / partially received) and open production order output (remaining qty on due date).
  • Inventory: running projected on-hand from starting stock (quarantined/failed lots excluded); shortage when projected < 0, overstock when above max stock.
  • RCCP: required hours from open MO operations vs work-center available hours (5 × capacity per day, downtime deducted) — overload weeks flagged.
  • Generate saves a draft plan linked to the forecast; adjust consensus qty on lines; Publish to MRP freezes the snapshot and sets feeds MRP so the next MRP/APS run uses consensus instead of history-only forecast. Permissions: inventory.ibp_plans.*.

Shelf life rules (/inventory/shelf-life-rules)

Minimum remaining shelf life per customer and product; enforced when posting deliveries and when receiving.

Quality & traceability

Quality

Inspections, NCRs, CAPA and usage decisions on quarantined lots live in Safety & Quality. Perishable mode still auto-creates receiving checklists and holds lots in quarantine until passed.

Lot Recalls (/inventory/lot-recalls)

Trace a lot forward to customers and backward to suppliers; optionally quarantine remaining stock; export the recall report.

Warehouse execution (WMS)

Reservations (/inventory/reservations)

Soft holds created by draft deliveries and invoices; hard allocations from pick waves. Release or re-prioritise.

Pick Waves (/inventory/pick-waves) — PW · stock ↓

Group reserved stock into pick lists. Statuses draft → released → picking → completed | cancelled. Completing a wave decreases stock from bins and feeds Packs. The warehouse map's pick-path lens can reorder lines.

Warehouse tasks (/inventory/tasks)

"What to do next" queue for floor staff. When a directed interleave exists for the warehouse, the queue prefers atomic pick/put/replen steps; otherwise it falls back to put-aways, pick waves, replenishments, cross-dock receipts, and packs. Filter by station. Claiming starts the labor clock.

Directed tasks (/inventory/directed-tasks) — WTSK

Build an interleaved path from open put-aways, pick waves, and replenishments. Tasks are sequenced by aisle travel score with pick/put alternation in the same zone band. Claim also claims nearby path siblings; Complete posts quantity back onto the source document line.

License plates (/inventory/license-plates) — LPN

SSCC handling units (pallet/carton/tote/mixed) with contents, nest/unnest, and bin moves. Cartonization and packs can attach LPNs as shipping identities.

Cartonization (/inventory/cartonization) — CZN / CTN

Configure carton types (dims + max weight), run first-fit decreasing on a pick wave, then Apply to create carton LPNs and a draft pack.

3PL billing (/inventory/three-pl-billing) — 3PLA / 3PLB

Client warehouse agreements with storage (pallet-day), inbound, pick, pack, and detention accessorial rates. A new agreement is saved as draft. Activate makes it active, and close closes an active agreement. The status field itself is not edited. Period billing runs calculate charge lines from LPN stock, receipts, picks, packs, and dock dwell.

Device adapters (/inventory/device-adapters) — WDEV

Voice, pick-to-light, put-to-light, ASRS, and conveyor adapters with webhook secrets. Inbound telegrams claim/complete directed tasks; outbound acks turn lights off. Authenticated RF can also ingest events from the ERP UI.

Offline RF (Warehouse app)

Go offline downloads tasks, LPNs, and bins; mutations queue locally and Sync queue pushes idempotent commands (client_command_id) to /warehouse_offline/push. If a push was interrupted mid-apply (accepted), the next sync finishes that command instead of leaving it queued forever.

Stations (/inventory/stations) — WST

Workstations for pick, put-away, replenish, pack, or count with an equipment mode (manual, conveyor, asrs, voice). Route next claims the oldest open document of that kind. Pair a station with a device adapter for voice/P2L telegrams.

Labor (/inventory/labor)

Engineered standards (fixed seconds + seconds per line, company-wide or per warehouse) and a productivity board (actual vs standard, lines/hour) for completed waves, put-aways, replenishments, and packs. Operators can pause/resume the clock from the Warehouse app while a task is in progress.

Warehouse map (/inventory/warehouse-map)

3D map (dimensions from warehouse layout settings) with live stock and work. Slotting lens proposes swaps → Apply creates a draft replenishment. Pick-path lens walks open pick-wave lines → Apply reorders line positions. Shift simulator estimates workload.

Bin Locations (/inventory/bins)

Bin master data: zone, aisle, rack, level, type (storage/picking/receiving/shipping), capacity, min/max for picking bins.

Put-Away Rules (/inventory/put-away-rules)

Suggest bins by product, category or default zone; strategies (fixed bin, nearest empty, same-lot consolidation).

Put-Aways (/inventory/put-aways) — PA

Assign received stock to bins after a goods receipt; confirm per line.

Replenishments (/inventory/replenishments) — RPL

Directed moves from storage bins into picking bins below min quantity. Created manually, from the slotting lens, or automatically.

Packing (/inventory/packs) — PCK

Pack picked lines into cartons/pallets, record weights, print shipping labels (SHL) via carriers.

Carriers (/inventory/carriers)

Carrier accounts; enable Live API for DHL, UPS, FedEx or GLS to buy labels and get tracking.

Dock & Yard (/inventory/dock-appointments) — DA / WD / YS

Schedule inbound/outbound appointments (with purpose and free-time minutes), check in at the gate (optional yard slot), assign dock (blocks overlapping windows on the same door), complete work, then gate depart. Appointment status changes only through those actions. The Yard board shows dock occupancy, trailers on yard, dwell vs free time (detention), and parking/staging/reefer yard slots.

Return Receipts (/inventory/return-receipts) — WRR · stock ↑

Inspect returned goods; restock (increase into stock) or scrap; linked to sales returns.

Stock documents

Status changes only through the document actions (post, ship, receive, start, cancel). A second post of the same document is rejected. A pick or replenishment move locks the bin balance: two people cannot take the same quantity from one bin while it is already claimed on an open task. Stock movements — issues, transfers, counts, receipts, and landed-cost updates — are rejected when their date falls in a closed or locked accounting period, including movements that do not create a journal.

A product, warehouse, or company costing method cannot be changed while that product, warehouse, or company still has stock on hand. Clear the stock first, then change the method. Existing layers are not revalued in place.

Goods Issues (/inventory/goods-issues) — GDI · stock ↓

Record decreases for consumption, scrap, samples, internal use or other outbound movements, with a reason and optional cost center/project. New companies post the issue to the general ledger. The reason is a type — consumption, sample, internal use, or scrap — and each type posts to its role: expense for consumption, sample and internal use, scrap for scrap, and credit inventory. A missing account rejects the post. A company that already set this document type to no GL keeps that setting. Older issues that had a free-text reason keep that text as the original reason on the document and on the PDF. Posted journals are not rewritten.

Processing (/inventory/processings) — PRC · convert / repack

Light A→B (or 1→many) conversion without a manufacturing order. Consume inputs and optional packaging from a warehouse, produce outputs into a warehouse (same or different), and optionally record a loss line with reason. Statuses draft → posted; Storno reverses stock and the journal.

Optional Conversion templates (/inventory/conversion-templates) store ratios (e.g. 1 × L30 → 3 × L10) and an expected loss %. Applying a template prefills lines from the input qty; documents can also be filled manually. Loss up to the expected % is absorbed into output cost (normal loss); only the excess is written off via the scrap posting role. Input + packaging + normal loss + optional labour/overhead costs allocate to outputs by quantity or by ratio. Labour/overhead posts Dr inventory / Cr production cost absorbed (overridable per document type). Output lots inherit the earliest input lot expiry. Stock journey shows Processing as its own source — never as unreconciled variance.

Landed Costs (/inventory/landed-costs) — LC

Allocate freight, duty and insurance (from purchase invoices or manual) onto posted goods receipts and their cost layers by value, quantity or weight.

Stock Transfers (/inventory/stock-transfers) — STK · transfer

Move stock between warehouses at weighted-average cost. Statuses draft → in_transit → posted | cancelled: Ship decreases the source (stock sits in transit), Receive increases the destination. Used for store replenishment and van stock.

Intercompany transfers (/inventory/intercompany-stock-transfers) — IST · transfer + bill

Cross-company stock movement (seller → buyer) with automated AR/AP. Requires an active IC partner link (Finance → Consolidation) where the seller partner is a client and the counterparty partner is a supplier. Buyer product is resolved by the same product code in the buying company.

Statuses draft → in_transit → posted | cancelled. Ship moves seller stock into in-transit; Receive clears in-transit, receipts into the buyer warehouse, then creates and posts a seller Sales Invoice and buyer Purchase Invoice (billing status pending / billed / failed). Line unit price defaults to seller inventory cost × (1 + IC transfer markup %) from the link; editable. Ship, receive & bill does ship+receive in one step. If billing fails after stock is posted, use Retry billing (no stock replay). Generated SI/PI skip a second stock movement and enter IC matching / eliminations like any other invoices. Same currency on both companies required (v1).

Permissions: inventory.intercompany_stock_transfers.*.

Stock Counts (/inventory/stock-counts) — SCT · GL post

Physical, cycle and annual (попис) counts.

  • Build from a warehouse (all products or a filter) with count kind full, cycle or annual.
  • Annual: a committee (≥ 2 members: chair, secretary, members), Start & freeze stock (warehouse frozen; system quantities snapshotted; counted quantities zeroed), blank count sheets PDF for the committee, enter counts, then Post adjustments.
  • Posting writes increase/decrease movements per difference. When the stock-count document type posts to the general ledger, a missing inventory, shortage, or surplus account rejects the post. Set that document type to no GL to adjust stock only. The person who started the count or entered a counted quantity cannot post it while Post a stock count you started or counted is on under Segregation of Duties (on by default). Entering the counted quantity on the count, including by editing the line, records who counted it. A count with no starter and no counter is not blocked. The freeze is released on post. Cancelling also releases the freeze.
  • Why the difference? On lines where counted ≠ system, open the investigation panel. It lists deterministic hypotheses from the last 30 days (draft deliveries/issues/receipts, posted outbound not on a cargo manifest or van trip, in-transit transfers, recent movements) with links to the documents — it does not auto-correct stock.
  • Statuses draft → in_progress → posted | cancelled.

Consignment (/inventory/consignment) — CAG / CMV

Customer and supplier consignment agreements and movements (ship, return, receive, consume). Activate a draft agreement before posting a movement. Consigned stock stays visible and valued correctly; consumption triggers invoicing.

Returnable containers (/inventory/returnable-containers) — RCX

Pallets, crates, gas bottles tracked per customer with deposits — issue, return, settle.

Counting programmes

ABC Classification (/inventory/abc-classification) — ABC

Rank products by revenue or usage and assign A/B/C classes by cumulative thresholds; writes the class to products.

Cycle Counting (/inventory/cycle-counting) — CCP

ABC-driven schedules (A monthly, B quarterly…) that generate cycle stock counts automatically.

Silage (/inventory/silage)

Weighbridge intake: weighments (gross/tare/net), clients, materials; history from the Uktupus Scale desktop app. Requires the silage entitlement.

  • Retail store replenishment: Retail

On this page

VisibilityOverview (/inventory/overview)Stock Levels (/inventory/stock-levels)Flow (/inventory/flow)Stock Movements (/inventory/stock-movements)Valuation (/inventory/valuation)Costing methodsStock Layers (/inventory/stock-layers)Lots & Serials (/inventory/stock-lots)Expiry radarLot genealogy (/inventory/lot-genealogy)Supply network (/inventory/supply-network)PlanningReorder Suggestions (/inventory/reorder-suggestions)Available to promise (/inventory/available-to-promise)APS planning (/inventory/aps)Demand forecasts (/inventory/demand-forecasts)MRP planning (/inventory/mrp)IBP / S&OP (/inventory/ibp)Shelf life rules (/inventory/shelf-life-rules)Quality & traceabilityQualityLot Recalls (/inventory/lot-recalls)Warehouse execution (WMS)Reservations (/inventory/reservations)Pick Waves (/inventory/pick-waves) — PW · stock ↓Warehouse tasks (/inventory/tasks)Directed tasks (/inventory/directed-tasks) — WTSKLicense plates (/inventory/license-plates) — LPNCartonization (/inventory/cartonization) — CZN / CTN3PL billing (/inventory/three-pl-billing) — 3PLA / 3PLBDevice adapters (/inventory/device-adapters) — WDEVOffline RF (Warehouse app)Stations (/inventory/stations) — WSTLabor (/inventory/labor)Warehouse map (/inventory/warehouse-map)Bin Locations (/inventory/bins)Put-Away Rules (/inventory/put-away-rules)Put-Aways (/inventory/put-aways) — PAReplenishments (/inventory/replenishments) — RPLPacking (/inventory/packs) — PCKCarriers (/inventory/carriers)Dock & Yard (/inventory/dock-appointments) — DA / WD / YSReturn Receipts (/inventory/return-receipts) — WRR · stock ↑Stock documentsGoods Issues (/inventory/goods-issues) — GDI · stock ↓Processing (/inventory/processings) — PRC · convert / repackLanded Costs (/inventory/landed-costs) — LCStock Transfers (/inventory/stock-transfers) — STK · transferIntercompany transfers (/inventory/intercompany-stock-transfers) — IST · transfer + billStock Counts (/inventory/stock-counts) — SCT · GL postConsignment (/inventory/consignment) — CAG / CMVReturnable containers (/inventory/returnable-containers) — RCXCounting programmesABC Classification (/inventory/abc-classification) — ABCCycle Counting (/inventory/cycle-counting) — CCPSilage (/inventory/silage)Related