KituBox
KituBox ERP

The ledger core: invoices, stock, and compliance in one book.

The system of record behind the till: quotes become invoices, invoices become a real audit trail, and stock reconciles safely even when two branches sell offline at the same time.

Next.jsRxDB / IndexedDBPeerJS (WebRTC)SupabaseTypeScript
erp.kitubox.co.ke
KituBox ERP ledger dashboard showing invoices today, total due, and invoices awaiting eTIMS signature

The ledger: today's invoices, what's due, and what's still pending eTIMS and cloud sync

Inside the app

See it before you launch it.

erp.kitubox.co.ke
KituBox ERP quotes screen listing quotes with amount and converted status

Quotes convert straight into invoices — no re-keying line items

erp.kitubox.co.ke
KituBox ERP vendor catalog showing vendor name, phone, KRA PIN, and payment terms

Vendor records carry KRA PIN and payment terms for procurement and vendor bills

What's inside

Built for how it actually gets used.

01

An audit trail, not just a spreadsheet

Invoices are append-only — a correction is a new document, never a silent edit.

  • Corrections are issued as credit notes with `reversesInvoiceId` set, satisfying the KRA audit trail
  • Quotes, invoices, delivery notes, purchase orders, and vendor bills as distinct, printable documents
  • Chart of accounts and a ledger dashboard summarizing invoices, amounts due, and sync state at a glance
02

Stock that can't double-sell

Two offline tills selling the same SKU at the same time is the scenario this was built to survive.

  • Base stock quantity is immutable except by confirmed cloud sync
  • Local sales and restocks append to a pending-deltas ledger instead of decrementing directly
  • Deltas sum deterministically on merge, so concurrent offline sales reconcile without conflict
03

Procurement, the other direction

Purchase orders and vendor bills close the loop from supplier to shelf.

  • Purchase orders tracked through to received stock
  • Vendor bills and a vendor catalog with KRA PIN and payment terms
  • Item and customer catalogs shared across quotes, invoices, and delivery notes
04

Money in, reconciled

M-Pesa and bank movements match against the ledger instead of living in a separate app.

  • Dedicated M-Pesa reconciliation screen against bank/ledger entries
  • Reports screen including a VAT summary that flags exactly which invoices are still eTIMS-pending
  • eTIMS fields live directly on the invoice, starting in a PENDING_OFFLINE state until signed
05

Syncs the way the POS does

The same mesh-and-cloud sync engine as the rest of the suite, visible in real time.

  • Peer-to-peer mesh status panel for device-to-device sync on the same premises
  • Cloud sync panel with a live pulse indicator for connection state
Localized for Kenya

Not a global template with KES swapped in.

KRA PIN fields, county and town data, M-Pesa as a first-class payment method, and statutory numbers (NSSF, SHIF, Housing Levy, NITA) are part of the data model, not an add-on — because KituBox ERP was built for Kenyan compliance from the first schema.

Offline
Syncing
Synced to cloud
The rest of the suite

Works better with the other four.

Launch KituBox ERP for your business.