Skip to content

One system, not systems that talk to each other

Most of what the market calls “integration” is a nightly sync between two systems that disagree. Sudo is not that: sales, stock and accounting write inside the same transaction, so there is no moment at which the invoice exists and the entry does not.

As a banknote’s specimen is published with every security feature explained, here is the system on one sheet, and every mark on it is a part of it.
  1. The ledger The outer frame: one double-entry ledger every module shares, so none of them brings a ledger of its own.

  2. The modules The rings inside it: every module you enable is engraved as a ring inside the same frame, and writes in the same transaction.

  3. The permissions The fine line: real keys from the permission registry, by resource and action, granted to a role or withheld from it.

  4. The numbering The serial: every entry carries a gapless sequential number under lock, so a missing entry would show where it was. A specimen carries zeros, as banknote specimens are printed.

  • One entry per document

    Every document goes through one posting engine and produces a balanced entry, numbered sequentially and gaplessly under a lock. Stock and the ledger move together, or neither moves.

  • Arabic is the original, not a mode you switch on

    The interface is Arabic and runs right to left by default, the Hijri date sits beside the Gregorian one, and numbers are formatted by locale. English is fully available and is not the original.

  • A business unit is a dimension, not a company

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

  • Money is a fixed-precision decimal

    Every amount in the system is a decimal of declared precision, never a float. No riyal is lost to rounding.

One document, from its first line to the ledger

These are not adjacent screens. This is one document moving, and every step writes its effect into stock and into the ledger at the same instant — whatever your trade is.

  1. Order

    A quotation or a customer order, priced from a price list, on the credit terms held against that customer.

    What it writes into the ledgerNo entry yet — a commitment, not a movement

  2. Fulfilment

    An issue from stock, a production run that consumes and produces, or a delivery trip — each with its own stock movement.

    What it writes into the ledgerA stock movement

  3. Invoice

    An invoice carrying its tax, and an e-invoice document that is signed, submitted, and comes back with its status.

    What it writes into the ledgerA sales and tax entry, and a balance on the customer

  4. Collection

    A receipt or a settlement against the account, and the customer’s balance falls by the same amount.

    What it writes into the ledgerA treasury entry, and the customer’s balance falls

  5. Costing

    Cost of sales is taken from a declared valuation method, and indirect costs are allocated by a stated rule.

    What it writes into the ledgerA cost-of-sales entry, and indirect cost allocated

  6. Close

    The period is closed, and the five statements come out of the same ledger rather than out of a spreadsheet beside it.

    What it writes into the ledgerThe period closes, and the statements come out of the ledger

The journal screen in Sudo: a table of entries, each with its number, date, source document and status — posted or held — and its debit and credit totals.The journal screen in Sudo: a table of entries, each with its number, date, source document and status — posted or held — and its debit and credit totals.
The journal after the documents have passed through it. Every line here was written by one of the six steps above, not keyed in by hand.