One foundation, however you grow.

Every module shares the same people, records, permissions and reporting. So the second one you buy takes days, not another implementation.

Operations where one record has to hold, across branches and currencies
FloorCodeHuchu MineThe Gate ShopsLux Liquor

One event, written once. Read back by everything.

GThe Gate Shops
  • Today
  • Sell
  • Stock6
  • Customers
  • People
  • Pay
  • Books
  • Sites12
  • Compliance
Today · Thursday 3 September, 14:06Twelve sites reporting
TakenUS$18,412.00+6.4% on last Thursday
Sales1,409Basket US$13.07
Needs a person3One short till, two low lines
TodayThis weekMonth
What each module wrote into itSame record, same morning+
  • Sell1,409 sales across twelve sites
    312 at Msasa4 tender types
    US$18,412.00Live
  • StockMovements relieved on each sale, at cost
    6 lines below minimum
    −4,118Reorder
  • FiscalSigned at the till and accepted by FDMS
    1,409 of 1,409
    Accepted
  • BooksJournals written as the day ran
    No export, no import
    3,102Posted
  • People14 on shift, hours off the clock
    One late arrival
    Rostered
  • PayOne payout raised, waiting on a second name
    US$6,224.10Approval

Nothing on this screen was entered twice. Every line is the same event a module already wrote, read back from the one place it was written.

One shared record · every module reading the same day

Six guarantees, whichever modules you buy.

Till 2 · Msasa storeOffline 41 minutes
Network down. The counter did not stop.13:04 – 13:45

Sales are written to the terminal and replayed in the order they were taken. Receipts print with their real numbers throughout, so nothing is renumbered afterwards.

Retry now
Replayed when it came back9 sales · US$214.60 · in order
SaleTakenTenderTotalSyncedState
#1023813:06CashUS$34.2513:45:02Posted
#1023913:11EcoCashUS$9.8013:45:02Posted
#1024013:19CashUS$7.4513:45:03Posted
#1024113:34CardUS$61.1013:45:03Posted
#1024213:45CashUS$102.0013:45:04Posted
#1024313:41CardUS$18.80Flagged for a person

Anything the replay cannot settle by itself is flagged rather than guessed at. One sale out of nine is a question, not a silent correction.

Your counter keeps selling when the internet goes down. When it comes back, every sale syncs in order, and anything odd is flagged for a person.

MH
INV-3042 · Mutare Hardware
Corrected onceNothing overwrittenSettled
Every version this record has hadRead down, not over
WhenWhoVersionValueWhat changed
22 Aug 16:41Sell · till 2v1US$2,050.00Raised at the counter
23 Aug 09:12Tendai M.v2US$2,050.00Correction added: wrong price, line 3
23 Aug 09:12Tendai M.v2US$60.00Credit note CRN-0114 against v1
29 Aug 09:12Pay · EcoCashv3US$1,990.00Payment received
What a correction does here+
  • v1 still exists, unchangedWith the price that was wrong still on it
    Kept
  • v2 is a new entry, not an editCarrying a reason and a name
    Added
  • Records deleted or silently amendedThere is no operation that does that
    0None

A correction adds the truth. It never quietly replaces what was there, so you can always see how a number got that way.

Who may see what · The Gate Shops41 people, 6 roles
Find a person or a roleMsasa storeAdd a role
RolePeopleSitesSees takingsMay discountMay voidSees payroll
Cashier22Own tillOwn shiftUp to 5%Before closeNo
Supervisor8Own siteOwn siteUp to 15%Any, with a reasonNo
Site manager6Own siteOwn siteAnyAnyOwn site
Regional3Own regionOwn regionAnyAnyOwn region
Head office2All twelveAll twelveSets the ceilingAnyAll twelve
Auditor1All twelveRead onlyNoNoRead only
What the grid is doing
  • Shared loginsA person is a person; a till is a till
    0None
  • Rights follow the personInto every module they open, unchanged
    One set
  • A cashier at MsasaSees their own shift, at their own till, today
    Scoped

People see their own site and their own job. Nobody shares a login, and nobody sees the whole business by accident.

THE GATE SHOPS · MSASAReceipt #10238 · 3 Sep 2026 14:06
  • Mealie meal 10kg19.00
  • 2L cooking oil212.20
  • Sugar 2kg13.10
  • Bread · white22.70
  • Airtime · US$515.00
  • TOTAL · USDUS$34.25
  • Paid · USD cash20.00
  • Paid · ZWG EcoCash478.09
  • Rate used33.5500
Both currencies, kept apartRate stamped on the entry
AccountUSDZWGRate on the entry
Cash on hand — drawer 2US$20.00
EcoCash clearing478.0933.5500
Sales — retailUS$29.7833.5500
VAT outputUS$4.4733.5500
  • Converted into one figureOnly on a report that asks for one
    On request
  • A loss hidden inside a conversionThe two balances never merge, so it cannot be
    0None

Every transaction keeps the currency and the rate it happened at, so a reprint in December still foots to what was taken in September.

USD and ZWG stay apart. Every transaction keeps the currency and rate it happened at, so a real loss never hides inside a conversion.

Group total, opened all the way downNo export in the path
LevelTakingsSalesBasketFortnightTrend
Group · The Gate ShopsUS$18,412.001,40913.07+6.4%
Harare regionUS$9,067.9071912.61+5.1%
Msasa storeUS$4,180.0031213.40+9.1%
Till 2 · Rudo N.US$2,548.1018114.08+7.2%
Sale #10238 · 14:06US$34.25134.25
What that path did not involve+
  • A nightly consolidation runThe levels are one set of entries read at different grains
    0None
  • A spreadsheet in the middleNothing is rebuilt from an export
    0None
  • Clicks from the group figure to that saleGroup → region → site → till → receipt
    4Four

Start at a group total and click down to the sale behind it. You never rebuild the story from exports.

Maintenance edition · added to the same systemNo second login
Planned service · September14 assets across twelve sites
September 2026PreventativeBreakdown
MTWTFSS123FRZ-034567Chillers89Gen set1011121314Aircon ×415161718Fire insp.192021Chillers22232425262728Gen set2930
What it extended, rather than replaced+
  • Assets and sitesThe ones Multi-site already held
    Reused
  • People and rightsThe technicians are already in People
    Reused
  • CostsParts and labour post to Books like everything else
    Reused
  • A second system to reconcileThere isn't one
    0None
  • Modules on this record9
  • Logins1
  • Systems to keep in step1

Industry editions and bespoke work extend the same system, so you add what your trade needs without buying a second one.

go offlineType it. This page will do it.

Built here.Not translated here.

Trade through the outage

Sales write to the device with their real numbers and post in order when the network returns. Nobody has to guess whether a sale went through.

Two currencies, one record

Every entry keeps the currency and the rate that applied on the day, so a real loss can never hide inside a conversion.

The work makes the evidence

Who, when, where and why are written as the work happens. An audit becomes a report you run rather than a fortnight of reconstruction.

Designed for here. Not localised afterwards.

Outages

Your counter keeps taking money through a power cut, and the day reconciles itself when the internet comes back. It was never bolted on for the region.

Two currencies

Every transaction keeps the currency and the rate that applied on the day, so a real loss can never hide inside a conversion.

Evidence

Every action carries who did it, when, where, why and what it changed. An audit becomes a report you run, not a fortnight of reconstruction.

One record, on your own numbers.

Bring the two reports that currently disagree with each other. We will show you the point where they stop disagreeing, and what it took to get them there.