📦 Warehouse & Stock

The Warehouse part of TSync answers three everyday questions for you:

  • What do I have in stock?
  • Where is it? (which warehouse, and even which shelf or bin)
  • What is it worth?

You record goods coming in (from suppliers) and goods going out (to customers), and TSync keeps the quantities and the stock value up to date for you. It also warns you before you run out, helps you find items by lot or expiry date, and lets you do a clean stock count.

You can have as many warehouses as you like — a main store, a second shop, a van, anything — and move stock between them.

💡 You decide which items are tracked. When you turn on stock tracking for an item, TSync starts counting it. Services (things you sell but don't keep on a shelf) are never counted — so consulting hours or a subscription won't affect your stock.


Turning it on

If you don't see a Warehouse entry in your menu yet, ask whoever manages your TSync to enable it (Setup → Modules → TSync Warehouse → Install). The first time it's switched on, TSync automatically:

  • creates one warehouse for you to start with (named PRINCIPAL — you can rename it),
  • adds a "track stock" checkbox on each item, for when you want to decide yourself — an item that already holds stock is tracked either way.

The big idea: documents and stock value

Documents are how stock moves

You never edit stock numbers by hand. Instead, you create a short document for each thing that happens, and posting that document updates your stock. The Warehouse offers a document for every situation:

Document Menu item When you use it What it does to stock
Goods receipt (NIR) Receipts (NIR) Goods arrive from a supplier Adds to stock
Delivery note (AVIZ) Deliveries (AVIZ) You send goods to a customer Removes from stock
Transfer / Internal delivery Internal transfer You move stock between two of your warehouses Removes from one, adds to the other
Packing list Packing Lists You group several deliveries into one shipment Nothing — it's a shipping wrapper
Return Returns A customer returns goods (or you send goods back to a supplier) Adds back (if restocked) or removes
Adjustment Loss & Adjustment A manual correction — breakage, loss, shrinkage found at a count Adjusts up or down
Opening stock Opening stock You're setting your starting balances when you begin using TSync Sets the balance
Inventory count Documents You counted the shelves and need to correct the numbers Adjusts up or down

Every document goes through two simple stages:

  1. Draft — you're still editing it. Nothing has happened to your stock yet, and you can change or delete it freely.
  2. Posted — you've confirmed it. Stock is now updated. A posted document is locked so the history stays trustworthy — it can't be edited or deleted.

So the rhythm is always: create → check → Post.

TSync numbers documents for you automatically (for example NIR-00001, AVZ-00001, TRF-00001). You can change these number prefixes in settings to match your own paperwork.

How TSync values your stock (in plain terms)

By default TSync uses average cost. Here's the idea: if you bought 10 units at €10 and later 10 more at €12, your stock isn't "10 at €10 and 10 at €12" — it's 20 units at €11 each (the blended average). When you then sell or use some, they leave at that average price. This keeps your stock value stable and fair even when prices change between deliveries, and it's the method most small businesses are happy with.

You can change the costing method in settings if your accountant prefers a different one, but average cost is the sensible default — leave it unless you have a specific reason.


What would you like to do?


How do I receive goods? 📥

When a delivery arrives from a supplier, you create a goods receipt — known here as a NIR (the standard goods-received note).

  1. Go to Warehouse → Receipts (NIR) and click NIR nou (new GRN). (You can also create one from the general Documents list.)
  2. Pick the warehouse the goods go into and the supplier.
  3. Add a line for each item — the quantity received and the cost per unit. (For lot- or serial-tracked items you record the lot/serial here too.)
  4. Click Salvează NIR (Save GRN). It's now a draft — nothing has touched your stock yet.
  5. Check it against the supplier's delivery note, then click Postează în stoc (Post to stock).

That's it — stock goes up instantly, and the stock value is recalculated using average cost.

What happens in the accounts. If you also use the Accounting module, posting the GRN puts the goods into stock and opens a clearing account (goods received, invoice not yet arrived). When the supplier's invoice arrives it closes that clearing and records the payable. That way the goods are counted once and the supplier is shown owed exactly what the invoice says. You can see and change the account in Accounting → Mapare GL.

Save typing: fill a receipt from a purchase order

If you use the Purchases module, you don't have to retype anything. When you receive against a purchase order, TSync builds the NIR for you — warehouse, supplier, currency, and every line (quantity and unit price copied straight from the PO). You'll see the message "NIR created from PO #N — verify the lines and post." Just check the quantities you actually received, adjust if a line came short, and Post.

Fill a delivery from a posted invoice

The same shortcut works the other way for outgoing goods: from a customer invoice, TSync can build a delivery note (AVIZ) for you — customer, currency and all the invoiced lines. You'll see "AVIZ created from invoice #N — verify and post." Check the lines, allocate lots if needed, and Post.


How do I ship to a customer? 📤

You have two easy ways, depending on how you work:

Automatically, from the invoice (the usual way). When you mark a customer's invoice as Sent or Paid, TSync removes the items on that invoice from your main warehouse for you — no extra step. It only does this for items you've set to track stock, and it's careful never to remove the same items twice for the same invoice. This is on by default; you can turn it off in settings if you'd rather handle deliveries yourself.

By hand, with a delivery note. If you ship goods separately from invoicing:

  1. Go to Warehouse → Deliveries (AVIZ) and click to create a new one.
  2. Pick the warehouse and the customer.
  3. Add the items and quantities going out. For lot- or serial-tracked items, choose which lots/serials are leaving.
  4. Click Salvează AVIZ (Save AVIZ) to keep a draft, then Postează în stoc (Post to stock). Stock comes down.

Where do I actually work? — the stock workspace 🖥️

Warehouse → Stock workspace is the screen to keep open. The list of articles is on the left, the full card of whichever one you select is on the right, and moving between products does not reload anything.

The list tells you enough to decide

Each row carries the numbers you would otherwise open three pages to assemble:

Column What it means
Physical what is on the shelf
Reserved already promised to somebody
Free physical minus reserved — the number that decides whether you can promise it
Expected still to arrive on open goods receipts
Cost weighted average cost
Margin against the sale price
Days how long the free stock lasts at the last 90 days' rate

The Free figure carries a coloured pill and a word — "ok", "below min", "out" — so it reads the same for anyone who cannot tell the two greens apart. A negative figure means more is reserved than is on the shelf; the screen shows it rather than hiding it behind a zero.

Filter by warehouse, or narrow to below minimum / with reservations. Sort by any column, including the computed ones. Search is instant.

The category tree, on the left

The same tree you see in Articles (explorer) — not a copy. What you move here shows up there, and the other way round.

Pick a category and the list shows everything below it, subcategories included. The number beside each category is the total for the whole branch, not just the items filed directly on it — otherwise a parent would read as empty exactly when its subcategories hold everything. Press the same category again to go back to all.

The tree works from the keyboard:

Key What it does
move between categories
open / close a branch (on a category with none, takes you to its parent)
Home End first / last category
Enter pick the category (again: back to all)
Insert add a subcategory under the one you are on
F2 rename
Shift+← move the category one level out
Shift+→ put it under the category above it
Esc leave the tree, back to the list

One Tab enters the whole tree — you do not have to step through every category to get past it.

Deleting a category is deliberately not done here: it would leave every item filed under it with no category, and those items are not on this screen for you to move somewhere else.

The card, without leaving

Select an article and its card appears at once: stock in every warehouse, the reorder point, and the last movements with the running balance after each. Nothing reloads.

From the keyboard

Key Does
/ jump to the search box
previous / next article — the card follows
Home End first / last
Enter move into the card
Esc back to the list

What this screen does not do yet

The category tree is not yet an operating surface — you filter here, you do not add or move articles from a tree. There is no price or cost history: the system keeps the current average cost and overwrites it, so there is nothing older to show. Lots are still on their own page.

Does an invoice take goods off the shelf? 📄📤

Yes, if you switch it on: Settings → Deduct stock automatically on invoicing.

Goods leave the warehouse when the invoice is issued, not when it is paid. That is the ordinary rule — you delivered the goods; whether the customer has paid yet is a different question, and it belongs to the ledger, not to the shelf.

  • A draft takes nothing. It is not a document yet. The moment you issue it, the stock moves.
  • Cancelling the invoice puts the goods back, as a matching inbound movement so the history still reads as one story. Un-cancelling takes them out again.
  • Deleting the invoice puts them back too.
  • Doing any of these twice changes nothing the second time.

⚠️ If sales are not lowering stock and the "deduct stock automatically on invoicing" box LOOKS ticked (Warehouse → Settings): until v10.8.5 that box displayed as on while the program read it as off, on any install where nobody had ever pressed Save on that page. The sign: open the settings, press Save without changing anything, and it starts working. Fixed — but on an older version that is the workaround.

Two conditions decide whether anything moves at all — check both before concluding it is broken:

  1. The article must be stock as far as the system is concerned — and usually it already is. An article the warehouse already holds (it has a balance, or any movement) is deducted on a sale with nothing for you to do. The "Track stock" checkbox on the article stays, and if you tick it yourself it takes precedence.

    Until v10.8.4 that checkbox was REQUIRED, and nothing in the product ever set it. A receipt raises stock for any article without asking — so goods that arrived by receipt showed a balance on screen and were never deducted on a sale, silently. If you have older articles in that state, the update ticks them.

  2. The invoice line must be the article. A line added from the catalogue remembers which article it is, so you can rewrite its description however you like and the stock still moves. A hand-typed line whose text matches no article — "Transport", "Labour", a discount line — is free text, and free text is not goods: it moves nothing, which is correct.

    When a line moves no stock, the invoice says so. A note appears in the invoice's activity log saying how many lines and which. It is not an error — it is so you do not have to guess.

    Lines written before this update still match by text, exactly as before.

Invoices issued before this was fixed are not corrected retroactively. They have no stock movement and will not grow one. If your balances need to account for goods already invoiced, that is a data correction to agree with us separately.

How do I set my starting balances? 🏁

When you first start using TSync, you'll want to tell it what you already have on the shelves — without inventing a fake supplier receipt for everything.

Go to Warehouse → Opening stock. You get a simple table: for each row, pick the warehouse and item, and enter the quantity you have on hand (and optionally the unit cost, date, and lot/serial/expiry). Click Salvează (Save), then Postează (Post) when you're ready.

Unlike a receipt, opening stock sets the balance to the figure you enter rather than adding to it, so it's safe to use once at the start. After that, use receipts, deliveries and adjustments for everything that happens.


How do I move stock between warehouses? 🔁

Use Warehouse → Internal transfer to move goods from one of your warehouses to another.

  1. Set the From warehouse and the To warehouse, the date, and any notes.
  2. Add the items and quantities to move (and lots/serials if tracked).
  3. Click Salvează (Save), then Postează (Post).

In one step TSync removes the goods from the source warehouse and adds them to the destination — at the source's average cost — so your overall stock value doesn't change, it just relocates. This is an internal move only: no customer, no supplier, no accounting entry.

Posting asks you to confirm, because it really moves the goods. Once you have confirmed:

  • the transfer is marked posted and the button disappears — the goods moved once, and reloading the page cannot move them again;
  • the transfer can no longer be edited: it would describe a stock movement that has already happened differently. If you got something wrong, make a transfer the other way.

A transfer with no lines, or one to the same warehouse, will not post — you get a message saying exactly what is missing.


How do I group deliveries into one shipment? 📦➡️🚚

A packing list lets you bundle several delivery notes (AVIZ) into a single physical shipment — handy when one truck carries several orders.

Go to Warehouse → Packing Lists, create one, and fill in the shipping details: carrier, tracking number, number of packages, total weight, and notes. Then tick the deliveries (AVIZ) you want to include. Click Salvează PL (Save packing list).

A packing list is a logistics wrapper — it doesn't change your stock (the deliveries it groups already did that). It just keeps your shipment organised and tracked.


How do I handle a return? ↩️

When a customer sends goods back (or you send goods back to a supplier), use Warehouse → Returns.

  1. Create a return and choose the type: a sales return (goods back from a customer) or a purchase return (goods back to a supplier). You can point it at the original document and pick a reason (damaged in transit, wrong item, defective, customer changed their mind, expired, other).
  2. Add each returned item. For a sales return, set the item's condition (new, damaged, defective, expired…) and tick Restock? only if it goes back on the shelf for resale.
  3. Click Salvează (Save), then Postează (Post).

For a sales return, only the lines you marked Restock? add back to stock — damaged or expired goods are recorded for the audit trail but don't re-enter your sellable stock. A purchase return removes the goods you're sending back.


How do I correct my stock after a count? 🧮

After you've physically counted your shelves and the numbers don't match the system, you have two tools:

Inventory count. Open Warehouse → Documents and create an Inventory document. List the items where the count is off and enter the difference (for example +5 if you found five extra, -3 if three are missing). Post — TSync corrects the stock to match reality and keeps a record of the adjustment.

Loss & adjustment. Use Warehouse → Loss & Adjustment when you simply need to write a quantity up or down for a known reason — shrinkage, breakage, damage, expiry, or a count correction. Pick a reason, enter the change per item (a positive number adds, a negative number removes), and Postează în stoc (Post to stock). This is the place to record one-off losses cleanly so your stock value stays honest.

Each line can also carry the lot and the serial, when the article tracks them. Post to stock asks you to confirm, because it really moves the goods, and it moves them once — after posting the adjustment can no longer be edited and the button disappears.

If no line can be moved, you get an error, not a success message. That matters: a screen saying "done" without having moved anything leaves you with wrong stock and no sign of it.


How do I check what's in stock? 🔍

Open the Warehouse menu and you land on a modern dashboard that shows, at a glance:

  • how full your important areas are,
  • your top products by value,
  • quick shortcuts to the things you do most,
  • and a notifications panel for low stock and expiry warnings.

For the live numbers, Warehouse → Current stock lists every item with its quantity, average cost and value, filterable by warehouse. For deeper analysis, use the Reports console.

Available vs reserved

Stock has two useful numbers:

  • Total — everything physically on hand.
  • Available — what you can actually promise to a new customer (total minus anything already set aside).

You can reserve stock for an order that isn't shipped yet, so two salespeople don't accidentally sell the same last item. Reserving doesn't reduce your real stock — it just lowers what's shown as available until the goods actually leave.


How do I require approval before posting? ✅

For tighter control, you can require that documents are approved before anyone can post them. Open Warehouse → Settings → Approvals, tick Require approval for documents, and (optionally) set an approval value threshold so only documents above a chosen amount need sign-off — small documents flow through freely.

Once it's on, a document waits in Pending approval. Someone with the warehouse approve permission opens it and either approves it (it becomes ready to post) or rejects it with a reason. You can also capture a digital signature on a document for an extra layer of accountability.


How do I run a quality check on a receipt? 🔬

For incoming goods you want to inspect before they count as good stock, a receipt can carry a quality check. Open the receipt and start its quality check: for each line you pick the check type (incoming, random, or full inspection), record how many units passed, failed or went to quarantine, add a defect code and a note, then Save checks. The result is stored on the receipt with who checked it and when — so you have a clear record of what was inspected and accepted.


How do I manage my items? 🗂️

The Warehouse gives you a full items workspace, separate from the basic item list elsewhere in TSync.

Browse and organise — the articles explorer

Warehouse → Articles (explorer) opens a three-pane workspace: a category tree on the left, your items in the middle, and a detail panel on the right. Click an item to see its image, brand, unit, price and category path. You can drag items onto a category to file them, or drag categories around to re-organise your tree.

Prefer a plain list? Warehouse → Articles (list) gives you a searchable, category-filterable table of the same items.

The list loads one page at a time, so it opens just as fast whether you have a hundred items or ten thousand. Below the table you get the usual paging controls, and you can choose how many items to see at once — 25, 50, 100 or 200.

There is no cap on what you can reach: every item in the catalogue is available, either by paging through or by narrowing with the search box or category filter in the toolbar. (Older versions stopped the list at 500 items and told you so; that no longer applies.)

Categories (and per-category tracking)

Warehouse → Item categories is where you build your category tree — categories and sub-categories like food, electronics, chemicals, materials. Drag to reorder or to change a category's parent. A category can switch on extra tracking for everything inside it — for example, tell TSync that all food items should track lots and expiry dates. TSync comes with a few common categories ready to use, and can import your existing item groups in one click.

Item images

From the articles explorer, open an item's images to drag and drop photos (JPG, PNG, WEBP or GIF, up to 5 MB each). The first image automatically becomes the primary one shown in lists; you can star a different image as primary or delete any image.

You do not need to shrink your photos before uploading. On upload TSync keeps the original photograph (you see it full size when you open the image) and creates a thumbnail of at most 240 px beside it. The articles list and the detail panel show the thumbnail, not the original — so a list of dozens of items no longer downloads dozens of multi-megabyte photographs to draw a few 40-pixel squares. On a slow connection the difference is immediate.

A few things worth knowing:

  • An upload never fails because of the thumbnail. If the server cannot make one (the image library is missing, the format is unsupported), the photo still uploads and the original is displayed.
  • An image already smaller than 240 px is not resized — a second identical copy would be pointless.
  • Animated GIFs are left alone, so they do not lose their animation.
  • Photos uploaded earlier get their thumbnail over time, on their own; there is nothing for you to do.

Brands (with logos)

Warehouse → Brands lets you keep a tidy list of the brands you stock. Add a brand with its name, website, a short description, a sort order, and upload a logo (PNG/JPG/WEBP/GIF/SVG, up to 1 MB). The logo then shows next to the brand wherever it appears. Assign brands to items individually or in bulk (see below).

Bulk actions

In the articles explorer, tick several items and a toolbar appears: set or clear a brand for all of them, or move them into a category in one go. It's the fast way to tidy up after an import.

Import and export

On the articles list, Export downloads all your items as a CSV (Excel-friendly). Import CSV lets you bring items in — or update existing ones — from a spreadsheet: drop the file, leave dry-run ticked to preview what would happen (how many created, updated, skipped, plus any warnings), then run it again with dry-run off to commit. A "Download example CSV" button gives you a ready-made template with the right columns.

Units per item

Most of the time an item is counted in one unit. When you buy in one unit but count in another — for example 1 box = 12 pieces — open Warehouse → Units per item (a dedicated page, separate from the unit catalog in Settings). Search for the item, add the alternate unit and its factor to the base unit (enter 12 for a 12-piece box), and mark it as the default for purchases and/or sales. On a document you then simply enter "2 boxes" and TSync converts it to the right number of pieces behind the scenes. Your stock and stock value always stay in the item's base unit, so the numbers never get confusing.

The factor may be typed as a ratio. It often is a division: a sheet is 5.796 m², so writing what one square metre is in sheets would need 0.17253278. You do not have to work that out — type 1/5.796 and it is resolved on save. A comma decimal (5,796) works too. Anything that is not a number or a single division is refused with a message, which is better than accepting a value that looks right and means something else.

Stock is shown in two units. On Warehouse → Current stock, the balance in the purchase unit appears under the one in the base unit, whenever the item has one. Stock is still kept in the base unit — this is display only, so you no longer do the division in your head when checking the shelf against a delivery note.

The plain unit list — the catalog of unit names everyone can pick from — lives in Warehouse → Settings → Units of measure. (It has no entry of its own in the left-hand menu: it is a section of the warehouse settings page.) Assigning units (with their conversion factors) to a specific item happens on the separate Units per item page.

serv. — the unit for work, not for goods. The catalog ships with a unit called serv. (Service), for lines that sell work rather than an object: a callout, a consultancy, a subscription. It is not a physical quantity, but a document line still needs a unit next to its quantity — and the Moldovan e-Factura carries exactly such a unit. Pick it from the list instead of typing "serv" by hand; otherwise the same thing ends up spelled four different ways across quotes, contracts and invoices.


How do I track lots, serials and barcodes? 🔖

Open Warehouse → Lots / Serial / Expiry to track goods in more detail:

  • Lots / batches — useful when you need to know which batch a product came from.
  • Serial numbers — track individual units one by one.
  • Expiry dates — essential for food, pharmacy and anything perishable.

On Warehouse → Lot/serial tracking you set, per item, whether it's tracked by lot, by serial number, or not at all — just pick from the dropdown next to each item.

When items leave stock, TSync can pick which units to take, following a strategy you choose:

  • First in, first out — sell the oldest stock first (the default).
  • First to expire, first out — send out whatever expires soonest. Ideal for food and pharmacy.
  • Last in, first out — sell the newest stock first.

Lot and serial number formats

So you don't have to invent codes by hand, Warehouse → Settings → Lots & tracking lets you set a lot number format and a serial format. Use placeholders like {YMD} (year-month-day) and {N} (an auto-incrementing number) — for example LOT-{YMD}-{N} produces LOT-20260625-001. The same tab is where you switch lot/serial tracking on and set how many days ahead an expiry warning appears.

Barcodes — generate and print

From Current stock, tick the items you want and print barcode labels. You choose a layout — an A4 sheet of labels or a continuous roll — and TSync renders a printable page with each item's barcode, name and (optionally) price. Use your browser's print to send it to a label printer or a normal printer.

Scan from a phone

The Warehouse can accept barcode scans from a mobile app. To set it up, open Warehouse → Settings → Mobile API: it shows a secure scan token that the mobile app uses to connect, and a Regenerate token button if you ever need a fresh one. (You only ever touch the token here — the app handles the scanning.)


How do I map my shelves and bins? 📍

Big warehouses can map out their space — zone → aisle → rack → shelf → bin — under Warehouse → Locations. Add each location with a code, an optional name, a type (zone/aisle/rack/shelf/bin), a capacity, and a parent so it nests into the tree. You can mark one location per warehouse as the default put-away spot.

TSync then tracks how much of each item sits in each spot, while your overall stock value stays exactly as before. If you don't assign a specific bin, TSync just uses the warehouse's default spot, so a document is never blocked for a missing bin.

Check the bins add up — reconciliation

Because locations are a detailed sub-ledger, Warehouse → Locations → Reconcile checks that the per-bin quantities still add up to your total stock for each item. Pick a warehouse: if everything matches you'll see a clean "Reconciliation OK", and if anything has drifted you get a table of the items with the total, the sum across locations, and the difference so you can fix it.


How do I set reorder points and run ABC analysis? 🔔📊

Low-stock and expiry alerts

Under Warehouse → Stock alerts TSync watches your stock for you and flags four situations:

  • Out of stock — an item has run out.
  • Low stock — an item dropped below the minimum you set.
  • Expiring soon — a lot is within a few days of its expiry date.
  • Expired — a lot has passed its expiry date but is still on hand.

These are checked automatically once a day, and you can press Run scan now any time to check immediately. The same warning won't nag you twice in a day, so the panel stays clean.

Reorder rules

To make low-stock alerts meaningful, set reorder rules under Warehouse → Reorder rules. Click Add rule, choose the warehouse and item, and set the minimum quantity, maximum, reorder quantity and lead time (days). You can also tag the item with an ABC class. The list shows every rule, flags items currently below their minimum, and lets you bulk-import rules from CSV. Warehouse → Below minimum is a ready-filtered view of everything that needs reordering right now.

ABC analysis

Warehouse → ABC dashboard ranks your items by how much value moves through them — the classic 80/20 picture. It shows count cards for your A (high-value), B (mid-value) and C (low-value) items plus the total value, a Pareto chart, and a table of your top items by value. Press Recompute to refresh the classification for a warehouse (or all of them) over the analysis period. Use it to focus your attention — and your reorder care — on the items that matter most.


How do I open the stock reports? 📑

Warehouse → Stock reports is a dedicated reports console (not just a dashboard tab). Pick a report type, choose a warehouse, set a date range where it applies, optionally search by item, and click Generate. Every report can be exported with the CSV and XLSX buttons.

The reports available are:

  • Stock summary — every item with quantity, average cost and total value.
  • Stock valuation — value broken down by warehouse, plus your top items by value.
  • Stock movement register — for a period, per item and warehouse: opening balance → inflows → outflows → closing balance (quantity and value), the way an accountant reads a stock card. The numbers reconcile (closing = opening + inflows − outflows); drill into the Stock movements report to see the individual movements behind a line.
  • Stock movements — every in/out movement over a date range, with running totals (the drill-down behind the register; filter by item).
  • Stock balance — on-hand, reserved and available quantities side by side, with value.
  • Stock aging — how long stock has been sitting, to spot slow movers.
  • Reorder — items that need reordering, against their min/max/reorder levels.

How do I control who can use each warehouse? 🔐

By default, every staff member who can use the Warehouse can use all your warehouses. To restrict that, open Warehouse → Warehouse permissions. Add a row per staff member and warehouse, and choose what they may do: a role, and toggles for approve, import, export and view-only. A staff member who isn't listed keeps full access to every warehouse — so you only add rows for the people you want to limit. Save when you're done.

Every action on a document (created, posted, approved, rejected…) is recorded against that document, so there's always an audit trail of who did what and when.


Good habits

  • Keep documents in Draft until you've checked them — only Post when you're sure, because posted documents are locked.
  • Set your opening balances once with Opening stock, then let documents do the rest.
  • Only track the items you really keep in stock. Leave services and one-offs untracked.
  • Set minimum quantities (reorder rules) on your key items so the low-stock alerts can do their job.
  • Trust the average cost. Let TSync blend your buying prices — it keeps your stock value honest as prices move.
  • Reconcile your locations now and then if you use bins, so the detailed view always matches your totals.

Reading costs with VAT

Your accounts keep stock at its net value — purchase VAT is deductible and is not part of what the stock is worth. But if you buy raw material at a price that includes VAT, that is the number you remember and the one you want to see.

Depozit → Settings → «Show costs with VAT included» switches the reading, not the number.

Nothing stored moves: average cost, the ledger, margins and stock valuation stay net whichever way the box sits. The same stored price is simply shown the other way, and any figure that was grossed up is labelled (with VAT) so nobody compares it against a net one by mistake.

If an item has no VAT rate configured, its cost is shown exactly as stored — the system will not invent a rate in order to produce a gross figure.

Off by default, so nothing changes for you until you tick it.

Updating prices from a supplier list

Items → Bulk price update takes a CSV from your supplier and applies it across the catalogue, instead of opening hundreds of cards one at a time.

A row names either an item code or a group. The group form is what you usually want: a price list quotes ten of your twenty Maserati colours, they all share one price, and naming the group updates all twenty.

Press Simulate first. It reads the file, matches everything and tells you what would change — without writing anything. The simulation runs the same code the import does, so the plan cannot differ from the result.

What it deliberately will not do:

  • It never creates an item. A code that matches nothing is listed by name and skipped. A price list is not a catalogue.
  • It writes only prices. Names, units and tax rates are left exactly as they are.
  • It leaves your sale prices alone unless you tick the box. If you set sale prices by hand, a supplier's cost sheet has no business rewriting them.
  • An empty price cell means "not in this list", never zero.

Store the price net — divide by your VAT rate if the supplier quotes gross. To read costs with VAT, use the tickbox above.

Product costs follow by themselves. Recipes reference the item and read its cost live, so nothing has to be re-entered anywhere after a price update — and orders you have already placed keep the prices they were placed at.

Why does a list say "showing the first 500 rows"? 📏

Stock, Lots, Documents and Movements are single-page lists — they show everything, with no page numbers. That works until a warehouse gets big.

So each of those four screens has a ceiling: it loads at most 500 rows. If there were more, a band appears at the top of the list telling you how many are shown. If everything fitted, you see nothing — the band only appears when something was actually left out.

Why this matters more than it sounds. A truncated list that says nothing looks exactly like a complete one. You read the numbers, write them down, and decide something — without knowing part of the data never arrived. The band exists so that can't happen.

When you see the band:

  • Filter. Pick a warehouse, a date range, a category — the ceiling applies after filtering, so a narrower question usually fits comfortably under it.
  • Export if you genuinely need every row at once. The export is not limited by the screen ceiling.

Changing the ceiling. It is the tsync_wh_list_cap option (500 by default). Raising it makes those pages load more slowly — that is the trade you are making, and it is yours to make.

See also