Skip to content

Sudo

One system, sealed with trust.

Everything your business runs, on one ledger and under one set of permissions.

The modules

Every module is a ring of one seal.

Sales, inventory, finance and HR are one engraving, so they move together.

Permissions

Precise permissions on every resource.

Each person gets only what is theirs: to create, approve, post or read.

Approval

Every approval signed and dated.

It is recorded under the name of whoever approved it, at the time they did, and it stays on the record.

The seal

Your own seal, on every document.

We show you the system as it works in your trade, step by step.

Request a demo

Open the screen and find what guards it

The screen you work on is only the top layer. Beneath it, a permission decides what you see, a log records every change and never forgets one, a ledger locks whatever is posted, and a boundary keeps your company’s data apart from every other company’s.

The screen and its figures are illustrative, not a customer’s data. The permission keys are real, from the permission registry.
  1. The screen

    Sales invoices as an accountant sees them: each invoice on its row with its status and total.

  2. The permission

    Every button on the screen is a permission on a resource and an action, not a role’s name. Without the right to cancel, there is no cancel button.

  3. The audit log

    Every change is written down: who did it, what they did, what it was before and what it became. Rows are added to it; none is ever edited or deleted.

  4. The ledger

    A posted invoice is a locked entry in the ledger. A correction is a reversing entry and a new one, and both stay on the record.

  5. Your company’s boundary

    Every row carries your company’s id, and the database itself stops any request from crossing that line.

In most systems, customisation means a field. Here it means a module

When a system calls itself configurable it usually means a field you can add and a report you can build. But the real difference between one trade and another is not in its fields: it is in the documents it issues, the order its approvals run in, the rule that decides cost, and what gets posted to the ledger at each step. A custom field expresses none of that. In Sudo the module is the unit of customisation: you switch on the modules your trade needs, and a module is built for you when none of them is enough — living inside the system rather than beside it.

  • A module is switched on and off, never deleted

    A subscription opens a module; switching it off closes its screens and its permissions and leaves its data exactly where it was. All of it comes back when the module is switched on again.

  • A business unit is a dimension, not a company

    A counter, a plant, a branch, a project are units inside one company, each with its own profitability. Re-drawing them is a settings change, not a code change, and it migrates no data.

  • A role is written where you are

    Sixteen ready-made roles are a starting point, not a ceiling. A custom role is built from the same permissions and reviewed on a screen that says exactly what it grants.

A different trade, and the same system

These are not editions of the product, and they are not templates. It is one build with a different set of modules switched on — and the workspace beside each one shows what that trade works on, with illustrative figures.

  1. Retail and counters

    Selling over a queue on a till with a scale and a cash drawer, a shift closed against a counted float whose surplus or shortfall is posted, and a cleared e-invoice at the moment of issue.

    Modules switched on: Sales · Inventory · E-invoicing · Accounting

  2. Restaurants and hospitality

    A floor of tables and sessions, a kitchen that consumes by recipe so stock falls by ingredient rather than by dish, and a measured preparation time on every ticket.

    Modules switched on: Restaurant · Sales · Inventory · Master data

  3. Manufacturing

    A recipe and a production run, inputs leaving stock and outputs entering it at a computed cost, with quality checks, quarantine and lot traceability.

    Modules switched on: Production · Inventory · Units of measure · Purchasing

  4. Distribution and fleet

    A truck carrying its own stock, a trip with its stages, deliveries with a tracking link for the customer, and representative performance measured from documents rather than from a spreadsheet.

    Modules switched on: Distribution & delivery · Sales · Inventory · Customers

  5. Events and catering

    Pricing to a target margin, a quotation the customer opens and edits, a contract with a lifecycle and an electronic signature, and preparation and resource orders.

    Modules switched on: Catering · Customers · Production · Inventory

  6. Services and projects

    A project is the cost centre. Labour hours, purchases and expenses post against it, so its profitability comes out of the ledger itself.

    Modules switched on: Operations · Human resources · Finance · Accounting

  7. Livestock

    Every head carries its file, its weights and its costs, and is measured at fair value under IAS 41 — and this module is the living example of what “a module for one trade” means.

    Modules switched on: Livestock · Inventory · Accounting

  8. Wholesale and purchasing

    Requisitions, requests for quotation, three-way matching between order, receipt and invoice, and supplier scoring taken from their record rather than from an impression.

    Modules switched on: Purchasing · Inventory · Finance · Accounting

An illustration with invented figures, not customer data.

Start with what you need, add as you grow

Sudo is one system, not a suite. You subscribe to the modules you need today and add the rest later, with no data migration and no second company. The core — accounting, inventory, units of measure and master data — is always on.

And when nothing off the shelf fits, a module is built for you

Some trades are described by no ready-made module. A module is then built in your trade’s name and lives in the same system — not a separate copy, not a dedicated server, and not a fork that falls behind every release.

  • It ships in the same build

    A custom module is shipped inside the same binary everyone else runs. There is no per-tenant deployment, which is what makes your updates and everyone else’s the same event.

  • It activates without a migration

    Switching it on is a licence row in the same table that licences Sales. No schema change at the moment of activation, and no downtime.

  • A full citizen, not an exception

    Its permissions sit in the same registry, its events go out on the same bus, and its routes live beneath a reserved path that no first-party module is allowed to claim.

  • It cannot break anything else

    Its path, its permissions and its keys live in a separate namespace that is verified automatically, so a custom module can neither impersonate a shipped one nor read what is not its own.

Freight surchargeThe worked example that ships in the product itself

  1. It sits among your modulesSwitched on and off like any other
  2. Its permissions are yoursYou decide who sees it and who edits it, as everywhere else
  3. It runs inside the same systemOn the same data, with no second copy and nothing to sync
  4. It moves with your businessIt charges the surcharge when an order completes, with nothing typed in

Switching it on stops nothing and moves none of your data

All that variety, and one ledger over it

Different trades do not mean different accounting. However many modules are switched on, every document passes through one posting engine and produces a balanced entry with gapless sequential numbering. Stock and the ledger move together, or neither moves.

DocumentSales invoiceINV-2026-01046
  1. Central air-conditioning unit3 ×3,750.00
  2. Annual maintenance contract1 ×960.00
Subtotal before tax
4,710.00
VAT 15%
706.50
Total
5,416.50
EntryEntry no. 418
  1. Accounts receivable5,416.50
  2. Sales revenue4,710.00
  3. Output VAT706.50
Trial balanceTotals
Debit
189,666.50
Credit
189,666.50

+ 5,416.50

Balanced

An illustration with invented figures, not customer data.
  • A balanced entry for every document, and one posting engine rather than two
  • Gapless sequential numbering under a lock, so no document is ever born twice
  • Every amount a decimal of declared precision, never a float
  • Five financial statements under IAS 1, from the same ledger

One day, four roles, one ledger

One invoice passes through four people in a single day. Each sees what their permissions show and does only what they allow — and the ledger it ends in is the same one.

  1. 08:55

    Cashier

    Opens a shift and sells; the e-invoice is issued at the moment of sale.

    • shifts.open
    • sales.create
    • einvoicing.issue

    Does not holdsales.discountCannot grant a discount; asks for approval instead.

  2. 13:20

    Branch manager

    Approves a return against the same invoice and signs off the shelf count.

    • sales.approveReturn
    • stock.approveCount

    Does not holdjournal.postDrafts the entry but does not post it.

  3. 17:10

    Accountant

    Posts the day’s entries and reconciles the till against the bank statement.

    • journal.post
    • treasury.reconcile

    Does not holdsales.createDoes not sell from the back office.

  4. 21:00

    General manager

    Reads the day’s income statement from the same ledger, and the log of who did what.

    • reports.incomeStatement
    • audit.read

    Does not holdyearEnd.closeClosing a year cannot be undone, so it stays with the owner.

The roles and their permissions are real, from the permission registry; the times and events are illustrative.

The size of what is built

modules available to you
34
permissions across 91 resources
302
ready-made roles, and custom ones without limit
16
financial statements under IAS 1
5

Counted from the module registry itself on 25 October 2026, with the two operator-only modules excluded because they are sold to nobody. These are not usage figures and not customer figures.

Start with accounting, or start with the whole system

The trial opens a full account with your own data — not a limited edition. And if the trial ends without a subscription, your data stays exactly where it is.