AWRA OpsHub Search

Inventory Management for South African Distributors & Retail

South Africa is a big country with long inland legs, and that geography does something specific to a stock position: it puts a meaningful share of your inventory in a place that belongs to nobody. How to govern the in-transit window, keep capture alive through an outage, and stop emergency transfers eating the margin they were meant to protect.

Africa Business Guides Washingtone Aura 11 min read

Every distribution business has a stock position that is slightly wrong. In a compact market the error is small and self-correcting — the goods are a few hours away and somebody will notice by Thursday. In South Africa the error has room to grow, because the distance between where stock is recorded and where it physically sits can be six hundred kilometres and two days.

That gap is not a reporting inconvenience. It is where phantom availability comes from, and phantom availability is what causes a branch to promise stock it does not have, a buyer to reorder something already on a truck, and a manager to authorise an emergency transfer that quietly costs more than the sale it rescued.

This post is about governing that gap — plus the second South African peculiarity, which is that capture stops when the power does unless somebody designed for it.

Which shape are you actually running?

Three distribution shapes are common here and they fail differently. Naming yours first stops you buying a fix for somebody else's problem.

Shape one

Central DC, branches draw down

One inland or coastal DC feeds branches on scheduled runs. The failure mode is the replenishment cycle: branches over-order defensively because they do not trust the schedule, and the DC ends up holding the safety stock for nine locations twice.

Shape two

Port-led import, inland distribution

Containers land at Durban or Cape Town and move inland. The failure mode is costing: the consignment is priced before the last cost component arrives, and the in-transit leg is long enough that stock is sold from a position nobody has confirmed.

Shape three

Branch-held stock, informal sharing

Each branch owns its stock and they lend to each other by phone. The failure mode is custody: nobody can say who owns the goods on the bakkie, and the paperwork follows a week later if at all.

Most operations of any size run two of these at once, which is fine — as long as the system is explicit about which stock is governed by which rule.

The in-transit window

The single most valuable discipline in South African distribution is also the least glamorous. Stock that has left one location and not yet been received at another must belong to neither of them, and must be visible as such to everybody.

A dispatch location, a two-day transit leg holding a quantity of stock owned by neither end, and a receiving location — contrasted with the same leg where the stock is counted at both ends simultaneously
Counted at both ends, the same pallet exists twice. Counted at neither, it exists nowhere. Governed transit is the only arrangement in which the national position adds up.

Get this wrong in the generous direction and both locations count the same pallet, so head office believes it holds twice what it does. Get it wrong in the mean direction and the pallet vanishes from the national position for two days, so somebody reorders it. Both errors are invisible in a branch-level report and obvious in a national one, which is exactly why they survive so long in businesses that only report by branch.

  1. Dispatch is a transaction, not a phone call

    Stock leaves the sending location the moment it is loaded, against a numbered transfer with a named driver or carrier. If the record is created when the truck arrives instead, the whole window is dark.

  2. In transit is a real state with an owner

    The goods sit against the transfer, not against either branch, and appear in the national position as in transit. Anyone looking at availability can see them and can see when they are expected.

  3. Receiving is counted, not assumed

    The receiving branch confirms quantities against the transfer rather than accepting the dispatch note. Discrepancies surface at the door, while both the driver and the pallet are still there.

  4. Variances are investigated, not absorbed

    A short receipt is a question with a date and a person attached. Absorbed variances are how a route develops a quiet shrinkage habit that only shows up in an annual count.

  5. The clock is reported on

    How long stock sits in transit per lane is a genuine operating metric. Lanes that consistently run long are either a carrier problem or a paperwork problem, and both are fixable once visible.

What an emergency transfer actually costs

When a branch is out of something a customer wants, somebody sends it from the next province. Everybody treats this as a service win. It rarely gets costed, and on long legs it is often worse than the lost sale.

One urgent inter-branch transfer, costed honestly

Unit cost of the item being rescued 100.0
Share of an urgent part-load road leg rather than a scheduled full run + 14.0
Double handling — pick, pack, dispatch, receive, put away, pick again + 4.0
The discount given because the customer waited + 6.0
True cost of the rescued sale 124.0

Illustrative figures indexed to 100, not a quotation. Against a typical distribution margin, a transfer costing a quarter of the unit value turns a rescued sale into a loss dressed up as good service. The point is not to stop doing it — sometimes the customer relationship is worth it — but to know which it was, which requires the transfer cost to land on the transaction rather than in the freight account.

An emergency transfer is a purchase of goodwill at an unquoted price. Distance sets the price, and nobody reads the invoice.

Branch-owned stock versus a national pool

The structural question underneath all of this is who owns inventory. There is no universally right answer, but there is a wrong one: pretending you have chosen when you have not.

Branch owns its stock

  • Accountability is unambiguous. A branch manager with a stock result cannot blame head office for it.
  • Ordering reflects local knowledge, which in a country with this much regional variation is worth real money.
  • Total holding is higher, because every branch carries its own safety stock for the same slow-moving line.
  • Sharing between branches becomes negotiation, and negotiation happens by phone, and phone calls do not reconcile.

One national pool

  • Lower total holding for the same service level — the safety stock is pooled rather than replicated nine times.
  • A customer anywhere can be served from wherever the stock is, which is the only way omnichannel promises hold up.
  • Requires transfers to be genuinely governed, because the pool is only real if the in-transit window is honest.
  • Accountability blurs unless you replace stock ownership with a different branch measure — service level, shrinkage, or count accuracy.

Most South African operations of scale end up with a hybrid: a national pool for fast lines and imports, branch ownership for local and seasonal ranges. That works well and it is the arrangement most systems handle worst, because it requires two rules to coexist without either quietly overriding the other.

Capture that survives the outage

A scheduled power interruption should cost you electricity, not records. In practice it usually costs both, because the receiving that happened during the outage was going to be keyed in "later" and later never had a slot in it.

The test worth running before you buy

Put the device in airplane mode. Receive a delivery, do a bin count, book out an issue and photograph a damaged carton. Reconnect. Everything should arrive exactly once, in the right order, with the timestamps of when the work actually happened — not when the signal came back. A system that duplicates, drops or restamps is worse than paper, because paper does not create false confidence.

Note what this does and does not buy you. Offline-first capture protects the record while the building is dark. It does not run your equipment, keep your chillers cold or move your forklifts. Any vendor implying that cloud hosting solves load-shedding has answered a question about their uptime rather than yours.

Red flags in a distribution demo

  • No in-transit state. If a transfer is a decrement here and an increment there with nothing in between, the national position is wrong for the length of every leg you run.
  • Availability that ignores committed stock. Stock allocated to an order but not yet picked is not available, and a system that offers it to the next customer is manufacturing disappointment.
  • Receiving that defaults to the dispatch quantity. A pre-filled receipt is not a count. Make them show the discrepancy path.
  • Costs that land in an expense account instead of on the goods. Freight, clearing and handling belong in the unit cost, otherwise every margin figure downstream is optimistic.
  • Counts that require closing the branch. Cycle counting by bin or by class is how a national operation stays accurate without an annual shutdown.
  • Offline mode that is really a cached read. Being able to look at stock offline is not the same as being able to record work offline.

Where to go next

If your pressure is at the shop floor rather than the DC, multi-branch retail in South Africa takes up pricing consistency and the reserved-stock problem. If you make rather than move goods, manufacturing in South Africa covers BOM, yield and planning around a published interruption schedule. The costing side of imports is worked through in SARS, VAT and rand operations, and the overall purchase decision in the South Africa buyer's guide.

Our take

Govern the in-transit window before you optimise anything else. In a country this size it is where your stock position quietly stops being true, and every downstream sophistication — replenishment models, omnichannel promises, national reporting — is built on top of it. Then cost your emergency transfers, so that generosity to a customer is a decision somebody made rather than a leak nobody measured.

See one national stock position, in transit included

Governed transfers with a real in-transit state, receiving counted at the door, landed cost on the goods, and capture that keeps working when the power does not.

Explore AWRA for South Africa

Frequently asked questions

How does the system handle stock moving between provinces?

As a governed transfer with a real in-transit state. Stock leaves the sending location when it is loaded, sits against the numbered transfer rather than against either branch while it travels, and is counted at the receiving end against the transfer rather than accepted from the dispatch note. Discrepancies raise a variance with a date and a person attached. On long inland legs this is the difference between a national stock position that adds up and one that double-counts or loses a pallet for two days.

Can we run some stock as a national pool and some as branch-owned?

Yes, and most operations of scale should. Fast-moving and imported lines usually belong in a pooled position so that safety stock is not replicated at every branch, while local and seasonal ranges stay with the branch that knows them. What matters is that the rule is explicit per item or category rather than implied, because a hybrid that nobody wrote down behaves like whichever rule the last person assumed.

What happens to receiving and counts during load-shedding?

They continue on a charged phone or tablet. Offline-first capture lets receipts, counts, issues and photographs be recorded without a connection and synced when power and signal return, timestamped to when the work actually happened rather than when the signal came back. Test this in the demo with airplane mode — the correct behaviour is that everything arrives exactly once, and a system that duplicates or restamps is worse than paper.

Does it cost imports properly?

Foreign-currency purchases record the rate actually paid on that transaction, and landed cost folds duty, freight, insurance, clearing, handling and inland transport into the true unit cost of the goods received. That means margin is measured against what the consignment genuinely cost rather than against a rate assumed when the order was placed — which on a long port-to-inland leg is often a material difference.

Can we cycle count instead of shutting the warehouse once a year?

Yes. Counts can be run by bin, location or item class on a rolling schedule, with variances raised for investigation rather than silently absorbed. For a national operation this is usually the only practical way to stay accurate, because an annual full count is both disruptive and, by the time it is reconciled, historical.

Will it tell us what an emergency transfer cost?

It will hold the transfer as a costed movement rather than as a phone call, which is the precondition. Whether the freight lands on the goods or in a general expense account is a configuration decision, and we would push you towards the former — the whole value of the exercise is that the cost of rescuing a sale shows up next to the sale it rescued rather than in a monthly freight total nobody attributes.

Help Center

Need a quick answer while you read?

Run inventory, procurement, assets, sales, and field work with approved AWRA guidance for setup, migration, integrations, security, pricing, and support.

Search all approved AWRA public help articles.

Open Help Center