Skip to content

The software South African businesses run on.

Custom systems, mobile apps and AI for companies that have outgrown WhatsApp groups, spreadsheets and paper.

The Epoxy Base job planning screen, showing a costed quote beside its material breakdown
Epoxy Base. Job planning and costing.

Software built somewhere else does not know how this works.

Six things that are simply different here. Getting any one of them wrong costs a South African business money.

Payments

Rand, taken properly

Yoco, Payfast and Paystack take a payment from a South African card and settle into a South African bank. Stripe will not open an account for most businesses here, so we do not build on it and then leave you to find out.

POPIA

Who saw what, and when

Access is role-based and every read against personal data leaves a record. When someone asks who looked at a customer file, the answer is a query, not a recollection.

SARS

Invoices that survive an audit

Tax invoices run on one gapless sequence and are corrected by credit note, never quietly edited. VAT works whether you are a registered vendor or not, because most small businesses are not.

Messaging

WhatsApp is not an afterthought

People here read WhatsApp first and email second, if at all. Every system we build can reach a person on the channel they already use, and lets them choose which one that is.

Bandwidth

Fast on the phone people own

We build for a three-year-old Android on a weak signal outside a metro, because that is the phone your customer is holding when they try to place an order.

Uptime

Nothing lives on one machine

No part of what we build depends on a computer in your office staying on. When the power goes, the system does not go with it.

The second time you solve a problem, it stops being a project.

  1. A club in Limpopo needed to read an ID

    Every person applying to join TC Club had to photograph their identity document, and somebody had to read it and type it in.

  2. Then a stokvel needed exactly the same thing

    A borrower applying through a portal, holding up the same green book or smart card, waiting on the same manual retyping.

  3. Now it is an API anyone can call

    Jonga OCR reads South African identity documents and returns structured JSON. It is live, it is billed in rand, and it started as one screen in one club.

Specimen artwork of a South African national identity card, showing the surname, names, identity number and date of birth fields that Jonga OCR reads
200 OKapplication/json
{  "success": true,  "documentType": "sa-id-smart-front",  "confidence": "high",  "data": {    "surname": "MOKOENA",    "names": "LERATO PRECIOUS",    "sex": "F",    "nationality": "RSA",    "idNumber": "9103140000088",    "dateOfBirth": "1991-03-14",    "countryOfBirth": "RSA",    "citizenshipStatus": "Citizen"  }}
Specimen artwork and sample data, not a real document. This is the JSON Jonga OCR returns for it.

Where we have already done this.

All industries

Four things happen, in this order.

  1. Scope

    We sit with the people who do the work, not only the person paying for it. You leave with a written scope and a fixed number, before any code exists.

  2. Build

    You see working software every week, on a real address you can open. What is wrong is cheapest to fix in week two, so we make it easy to find in week two.

  3. Ship

    We move your real data across, put it in production, and train the people who will be using it on a Monday morning.

  4. Run

    Software that runs a business needs someone who answers when it breaks. We stay on afterwards. That is the part most shops skip.

Questions people ask before they call.

What does it cost?

It depends on scope, and we are not going to pretend otherwise on a web page. What we will do is put a fixed number in writing before any code is written, so you are never quoting against a moving target. That number comes out of the first call and the scoping that follows it. We are also not the cheapest. If the lowest number is the only thing that matters, a template and an offshore hourly rate will beat us, and we would rather say so now.

How long until we have something we can use?

A first version that real people can use is a matter of months, not weeks and not years. The exact dates come with the scope, in writing, and you see working software every week in between so you are never waiting in the dark to find out.

What happens once the project is finished?

We stay on. A system that runs a business does not stop needing attention the day it launches: rules change, SARS changes, a supplier changes their file format. The common story about development shops is that they disappear after handover, and it is common because it keeps happening. We build the running arrangement into the engagement from the start.

Who owns the code and the data?

You do. The repository, the database and the hosting accounts are in your name and your billing from the first day. If you ever want to take the work to another team, you take it, and nothing here is built to make that painful.

Do you work with businesses outside Johannesburg?

Yes. We are based in Johannesburg and work remotely across all nine provinces. TC Club is in Tzaneen and Polokwane, and the entire build and handover ran remotely.

Can you work with the systems we already have?

Usually. If your accounting, payments or stock already lives somewhere that works, the goal is to connect to it rather than replace it. Where a system has no way in, we will tell you that plainly instead of promising an integration that turns into a scraping project.

Tell us what your business is running on right now.

Thirty minutes, no charge, no slide deck. We will tell you whether this is something we can build and roughly what it would take. If it is not a fit, we will say so on the call.