What this page is for
Opening stock records what is physically sitting in a store on the day you start using Tulindo for it: a one-off statement of fact, not a delivery or a transfer. Each row you fill in is received straight into the store it names, at the cost you give it. Nothing is issued out of any other store, and no store ever receives another store's stock through this page.
The page works from a template: a spreadsheet Tulindo generates for you, already listing every item you track stock for, one row per variant per store, each already naming its variant. You never type an item code by hand, even for an item with several variants and no SKUs. You choose the store (or every store), download the template, fill in only the quantity and unit cost of what you actually counted, and upload it. A row you leave blank is simply skipped — it is not treated as zero, and it does not stop the rest of the sheet importing. If you fill in a quantity but leave out its unit cost, the whole sheet is refused and nothing is imported, because the same item may have been bought at several different prices and Tulindo will never guess one.
This page only accepts a sheet that carries at least one filled-in quantity; an untouched template, or one with no rows below the header, is refused outright. Running the same import twice is also refused, so you cannot double your opening count by accident.
Only people whose role can operate stock see this page. It is normally used once, on the day a store goes live, though a late-arriving branch can use it on its own go-live day without disturbing stores already trading.
Before you start
- Every item you want to count must already exist (New item), with Track stock turned on.
- Decide the date you actually counted the stock: Tulindo treats it as older than anything received since, however long ago you upload the sheet.
Fields
Template for
Which store's template to download: one store, or All stores for one sheet covering every store at once. Required before Download template can be pressed.
Example: Nakuru — Main store, or All stores for a supermarket opening three branches on the same day.
Counted on
The date the count was actually taken on the shop floor — not the date you happen to be uploading the sheet. Tulindo uses it to decide which batch is older when two deliveries' worth of stock could otherwise be confused. Required.
Example: 1 October 2026, the morning before trading started.
Opening stock sheet
The downloaded template, with quantity and unit_cost filled in for whatever you counted. Required. Rows left blank are skipped; rows with a quantity but no unit cost make the whole upload fail, with every such row listed by its row number.
Example: opening-stock.xlsx downloaded from this page, filled in with Excel and saved as it is. A sheet saved as CSV (comma-separated values) is accepted too.
How to…
How to download the template
- Choose the store (or All stores) under Template for.
- Press Download template.
The Excel file, opening-stock.xlsx, lists every stock-tracked item variant for the store or stores you chose, one row each, sorted by category then name. Each row arrives with the variant's identifier (item_variant_id), its item code and its SKU (stock-keeping unit) already filled in; the identifier is what tells Soda 500ml — 1 litre apart from Soda 500ml — 2 litre when neither has a SKU, so leave it as it is. Five columns are there only to help you sort and filter in a spreadsheet — the item's name, the variant's name, its category, its unit and the store's name — and are ignored when you upload the sheet, so editing them does nothing. Quantity, unit cost, supplier code, batch number and expiry date are left blank for you to fill in. The first row under the headings is an example, with the item code EXAMPLE: left exactly as it is, it is skipped when you upload the sheet, so delete it or overwrite it with a real row. The store and supplier code cells offer a drop-down list of your active stores and suppliers, so pick from it rather than typing a code.
How to load your count
- Fill in Quantity and Unit cost for every row you actually counted. Give a kilogram quantity for anything sold by weight, because the unit column already tells you which unit each row expects. Leave every other row blank.
- Add a batch number or expiry date only where you have one; Tulindo makes up a batch number for a blank one, grouped with every other row of the same item, store, cost, supplier and expiry so that identical stock is not split into pointless separate batches.
- Back on this page, set Counted on to the date you actually did the count.
- Choose the Opening stock sheet file.
- Press Import stock.
How to read the result
A successful import tells you how many rows were read, how many batches they became, and — for people whose role can see cost — the total value imported. It also tells you how many rows were skipped for having no quantity. If any filled-in row was wrong, nothing is imported at all, and every problem is listed with its row number, column and the reason, so you can fix the sheet and upload it again.
Worked examples
Supermarket
Tumaini Supermarket is going live across its Nakuru main store and two smaller branch stores on the same morning. The buyer chooses All stores under Template for, downloads one sheet listing every stock-tracked product for all three stores, and hands it to each branch's stock-taker to fill in their own store's rows only. Back at head office, she sets Counted on to 1 October 2026, uploads the completed sheet, and the result reads Imported 8,214 rows as 8,150 batches, counted on 1 October 2026. Skipped 640 rows with no quantity. Each branch's stock lands in its own store, with no transfer document anywhere.
Butchery that also roasts meat
Mama Njeri's Butchery counts its shop the evening before opening. The manager downloads the template for the shop store, fills in 18.500 for Beef (steak cut) — Per kg at a unit cost of 650, and leaves the nyama choma lines blank because it is made to order and never counted directly. She does not fill in anything for the grill store, because the grill holds no stock of its own; it draws beef from the shop through the recipe.
Salon or car wash
Sparkle Car Wash & Salon counts the stockroom: 12 cans of Car shampoo — 5 litre can at KES 850 each, and 6 tubs of Relaxer — 500 g tub at KES 420 each. Both import as two batches, received as at the count date, so the first wash and the first relaxer treatment sold afterwards draw from exactly the stock that was actually counted.