HomeBlogWeb Development
Web Development

Inventory Control: Stock Cards, Methods and Software

What a stock card (kardex) is, how to fill one in with a worked example, which costing methods Colombian tax rules accept, and when a spreadsheet stops working once you sell in a shop and online.

Warehouse with white wooden shelving on the left and black metal shelving on the right, all of it empty.

Inventory control rarely fails for lack of discipline. It fails when the same unit can be sold at the counter, on the online store and over WhatsApp, and each channel deducts it on its own. This guide covers the stock card and the costing methods accepted in Colombia, then pinpoints the moment a spreadsheet stops being enough and a real inventory system pays off.

What is inventory control, and why does stock stop matching?

Stock drifts when a sale, a return or an adjustment does not leave a trace in the same place.

Inventory control is the process of recording every stock movement (purchases, sales, returns, transfers between locations, shrinkage and adjustments) so the balance in your system matches what is on the shelf and what your books say. It is not a snapshot taken at month-end. It is a recording, one movement at a time.

Almost every mismatch comes from the same five causes. Sales recorded late or not at all, especially the ones closed on WhatsApp and paid through a mobile wallet that nobody keys in. Returns that go back on the shelf but not back into the system. Transfers between the shop and the stockroom agreed verbally. Damaged goods thrown away without an adjustment. And, more and more often, two sales channels deducting from the same stock without talking to each other.

The fallout is not only an accounting problem. You sell a product online that no longer exists, then cancel the order and refund the customer. You over-order because the balance says you are out when twenty units are sitting in another location. And at year-end your cost of goods sold does not reconcile with your tax return.

A good inventory system, whether it is a spreadsheet or software, rests on one simple rule: the balance is never typed in, it is calculated by adding up movements. Accountants have a name for that rule, and it is the stock card.

What is a stock card (kardex), and how do you fill it in?

A stock card is one sheet per product where each row is a movement and the balance is recalculated after every one.

A stock card, known in Colombia as a kardex, is a record per item (a SKU, a size, a flavor) with three groups of columns: in, out and balance, each in units and in money. Every purchase adds, every sale subtracts at the current cost, and the balance updates on the same row. That lets you rebuild how much stock you had, and what it was worth, on any day of the year.

The example below uses weighted average cost, the most common method among Colombian small businesses. It starts with 100 units at COP 10,000 and records two purchases at different prices and two sales. Notice that sales go out at the average cost of the moment, not at the selling price: a stock card measures cost, not revenue.

Run the same exercise with FIFO and the October 12 sale would come entirely from the opening batch at COP 10,000, so COP 800,000 instead of COP 832,000. That gap is what changes your gross margin for the month, and it is why you choose a method once and stick with it.

DateDetailInOutBalance (units)Balance (COP)Average cost
Oct 1Opening balance——1001,000,00010,000
Oct 5Supplier purchase50 × 11,200—1501,560,00010,400
Oct 12Weekly sales—80 × 10,40070728,00010,400
Oct 20Supplier purchase30 × 11,000—1001,058,00010,580
Oct 28Weekly sales—40 × 10,58060634,80010,580

FIFO, weighted average or specific identification: which method should you use?

Weighted average for interchangeable goods, FIFO when the batch matters, specific identification for one-off items.

In Colombia you do not pick a method for tax convenience. Article 65 of the Tax Code says that, for businesses required to keep books, inventory valuation methods are those set by accounting standards, and in Ruling 914503 of 2021 the DIAN points to IAS 2, part of the framework compiled in Decree 2420 of 2015. Since Law 1819 of 2016 you no longer need the DIAN's approval to change methods, although it is wise to document the change and the reasons for it.

IAS 2 only provides for three cost formulas, and each one fits a different kind of business:

  • Weighted average: recalculates unit cost after every purchase, as in the example above. It fits interchangeable products you buy often at different prices: basic apparel, supplies, packaged coffee.
  • FIFO (first in, first out): the oldest units leave first, at their original cost. It fits when batch and expiry date matter: food, cosmetics, pharmaceuticals.
  • Specific identification: each unit keeps its actual cost. It is the right choice for items that are not interchangeable, such as serial-numbered motorcycles, jewelry, artwork or high-value equipment.
  • LIFO (last in, first out): it still shows up in courses and old templates, but IAS 2 does not include it among the permitted formulas. Do not use it for IFRS-based books in Colombia.

How far can a spreadsheet inventory take you?

A spreadsheet works while one person records and there is one sales channel; the first extra channel breaks it.

Running inventory in Excel or Google Sheets is a perfectly valid way to start. With a movements sheet, a products table and a balance formula (or a pivot table) you can keep a correct stock card for dozens of items. What matters is respecting the rule: one row per movement, and a calculated balance, never a typed one.

The problems come from how the file is used, not from the tool. Two people editing at once overwrite each other. Someone fixes a balance by hand so it matches, and the trail disappears. Online orders are keyed in once a day, so for hours the file shows stock that has already been sold. And there is no way to tell who changed what.

The clear signal that you have hit the ceiling is this: you sell through more than one channel and need stock deducted at the moment of sale, not when someone opens the file. No formula fixes that, because the problem is synchronization. If the rest of your operation also lives in scattered spreadsheets, we have a full guide on the signs your business has outgrown Excel.

How do you sync inventory between a physical shop and an online store?

One system must own the stock; sales channels only read it and report sales back.

The rule that prevents most problems is a single source of truth. One system, whether it is the POS, the ERP or your own inventory module, owns the balance. The online store (WooCommerce, Shopify or Mercado Libre) never invents stock: it receives the number from that system and reports each sale so it can be deducted.

The classic mistake is two-way sync with no owner. The website deducts, the POS deducts, each copies its balance to the other, and sooner or later they collide: an order lands just as an update runs and the balance jumps back. With a clear owner the flow is simple: the sale arrives by webhook or API, the system records an outgoing movement and publishes the new balance to every channel.

Three decisions are worth making up front. How much safety stock you hold back per channel, so a counter sale does not leave a web order without product. What happens to orders awaiting payment through bank transfer or a payment gateway: do they reserve units or not. And how you record products sold in bundles but bought by the unit, which is where mixed shop-and-online inventories drift the most.

Stacks of flattened cardboard boxes on a metal shelf, seen through a window with a black frame.
Stock lives in the warehouse, but the balance has to live in one system.

Off-the-shelf software or a custom inventory module?

If your inventory looks like any other shop's, buy software; if your operation transforms or packs product, consider building.

For most retailers, off-the-shelf inventory software is the right answer. Colombian accounting platforms already include locations, stock cards and inventory valuation, tied to electronic invoicing. Alegra, for instance, publishes plans with a set number of warehouses per tier, and Siigo offers POS plans with stock control. If you buy and sell the same product without transforming it, start there.

Generic software falls short when your operation has steps a standard shop does not: you buy raw materials and sell finished goods, you produce in batches with yield loss, you assemble kits or bundles, or you need the real cost of each batch to know the margin on every order. At that point the template pushes half the process outside the system, back into spreadsheets.

That was the case with Broo ERP, the system we built for a specialty coffee brand: inventory is recorded only through immutable movements, the cost of each batch is frozen at dispatch, and the WooCommerce store receives stock from the ERP without ever importing it back. Before building something like that, compare cost and scope carefully. If what you need is standard accounting and inventory, existing software will cost you less.

Juan Esteban Pérez

Founder & Digital Strategist, beleafdesign

Digital strategist and founder of beleafdesign. He has spent over a decade building sites, stores and automations for companies in Colombia and the United States — and auditing what is already published before commenting on it.

Fact-checked by Juan Esteban Pérez against the sites and sources cited.

Frequently asked questions

What is a stock card (kardex)?

It is a per-product record where each row is a movement (purchase, sale, return or adjustment) with its units and cost, and the balance is recalculated after each one. It tells you how much stock you had and what it was worth on any date.

Which inventory method does the DIAN accept?

Article 65 of the Tax Code defers to accounting standards, and the DIAN applies IAS 2: specific identification, FIFO and weighted average. LIFO is not accepted. Since Law 1819 of 2016 you do not need approval to change methods, though you should document the change.

How often should you do a physical count?

At least one full count at year-end, plus more frequent cycle counts of your fastest-moving or most valuable items. Counting 20 products every week catches mismatches far earlier than a single annual count.

Can I connect my inventory to WooCommerce or Shopify?

Yes. Both platforms have APIs to read orders and update stock levels. The key is deciding which system owns the stock, so the store only receives the balance and reports sales, and the two systems never overwrite each other.

How much does inventory software cost?

In Colombia there are cloud plans with inventory included from tens of thousands of pesos a month; Alegra and Siigo publish their plan prices on their official sites. A custom module costs more up front and only makes sense when your process does not fit standard software.

Summary: what to remember

  • An inventory balance is never typed in: it is calculated by adding up movements, which is exactly what a stock card does.
  • In Colombia you value inventory by weighted average, FIFO or specific identification; LIFO is not allowed under IAS 2.
  • Once you sell through more than one channel, the problem stops being accounting and becomes synchronization: one system must own the stock.

Does your stock never match between the shop and the website?

We design custom inventory modules and ERPs that keep the warehouse, point of sale and online store in sync from a single source of truth.

See our custom software service