What changed in Ledgr and when, newest first. Each entry says what you can do
now that you could not before, or what behaves differently — and links to the guide that
explains it.
October 2026
An audit trail of your books, for your accountant
Reports → Audit Trail lists every change to your books — who made it, when, the document and
what changed, such as an invoice's old total and its new one. Filter it by person
and by kind of record, and export every line as a CSV or a PDF. Each invoice, bill and journal
now has a History panel of its own, and the year's trail is part of the annual tax pack. What
Ledgr does on a schedule is named as Ledgr's, a supplier's bank details changing is flagged,
changes to the books are kept for as long as SARS requires, and a line cannot be edited once
it is written. An Accountant can read it without seeing who signs in or what anyone is paid.
Connect other apps, and keys that belong to the business
Apps built on Ledgr can now ask to connect to your business. You sign in on Ledgr's own
page, see exactly what the app wants to reach, untick anything you would rather it did
not have, and can disconnect it at any time from Roles & Users → API Keys. An API key
can now also belong to the business rather than to whoever made it, so an integration
keeps working when that person leaves. Webhooks now announce paid pay runs and rejected
bills and expenses, can send a missed delivery again, and switch themselves off, telling
you, when the address stops answering.
Ledgr Academy: a video lesson for every part of Ledgr
Short video lessons now cover every part of Ledgr, from your first invoice and bank
reconciliation to payroll, VAT201, manufacturing and the practice console. Each one is
recorded in Ledgr itself, points at the button it is talking about, writes every step out
under the video and ends with three questions to check that it stuck. Find them under
Training at the top of every page, and under the title of each guide that has one.
A reminder schedule can now include steps before the due date — up to 30 days ahead —
as well as after it. A before-due reminder never marks the invoice overdue and is never
sent on the day the invoice went out. Every invoice you send and every reminder, manual
or scheduled, now appears in the customer's Communication History, and new documents
and recurring schedules take the customer's own payment terms.
Record whether a contact has agreed to be marketed to by email, WhatsApp, SMS or phone,
how the consent was given and by whom. Each change is kept as its own entry, so the
history is the record POPIA asks you to be able to show, and a marketing list can be
exported for only the people who said yes. Invoices, statements and reminders are not
marketing and are not affected.
The B-BBEE scorecard shows what your books can measure
Beside the scores you enter, the B-BBEE report now shows what Ledgr can measure over the
last year — your procurement spend and the spend recognised at each supplier's level,
and the Skills Development Levy from approved payslips — and says plainly which
elements it cannot measure.
A stock take can be limited to one category. The count sheet has its own scanner: each
scan adds one unit to the line whose barcode or SKU matches, and a code Ledgr does not
know is named. Once committed, each line shows the value the count posted beside the
units.
The live map and a trip's breadcrumb track are part of the Live driver & truck
tracking add-on. Without it, Logistics still shows when each vehicle was last seen, and
the Live map tab says what to add rather than drawing an empty map.
Time tracking: rates per entry, and hours come back when an invoice is voided
A time entry can carry its own rate and a billable switch, the entry list is searchable,
and people's charge and cost rates can be set from Time Tracking. Voiding an invoice now
returns its hours and recharged expenses to unbilled, so they can be billed again.
A purchase paid from a credit card account now raises what you owe on the card instead
of reducing a bank balance, and a loan account works the same way.
Procurement: one approval by default, and payment held on a match exception
With no approval rules set up, a purchase request now waits for one approval instead of
approving itself. A bill whose three-way match needs attention, or was rejected, cannot
be paid until it is resolved. Landed cost can be shared by weight.
Expenses: scanned-before notice and reopening a paid bill
Both capture dialogs tell you when a receipt looks like one already scanned. The
Categories tab lists the suppliers Ledgr has learned. A mileage trip can name the
customer it was for, and a paid bill can be set back to Due.
A workflow column can be marked so that no card skips it — cards must pass through it as
they move along the board. The FICA onboarding template uses it.
The data export and every nightly backup now include employees, payslips, bank
transactions, fixed assets and users (never passwords), and every other record your
business keeps.
Fixes: depreciation, cash runway and the audit log
An asset on reducing balance saved without a rate is now charged the full
double-declining rate rather than a twelfth of it. The dashboard's cash runway is cash
divided by net monthly burn. The audit log retention setting now actually removes
events older than the period you chose.
An invoice's customer link can be reissued on its own, and revoking a contact's portal
links now also stops the links inside documents already emailed to them.
Bills of materials: kits, variants and taking a product apart
A kit sells as one invoice line and ships its parts. A recipe can differ per variant and
produce more than one output. A built product can be broken back into its parts. An
approved alternate part covers one that is short, each component is drawn at the step
that uses it, and an approved recipe change reaches the jobs already open.
Practices: document requests, invoicing clients and a standard chart
An accounting practice can ask a client for documents and receive the file as the
answer, invoice a client for the hours on its job cards, and keep a standard chart of
accounts it adds to each client.
Recipes you can copy, revise, print and round-trip
A recipe can be copied into a new draft, keeps its earlier revisions and can put one
back, prints as a dated controlled sheet, exports to CSV and imports the same columns
back, and a part can be replaced across every recipe that uses it.
Practices: engagement letters, time per client and team members
A practice can raise an engagement letter on a client, see its time per client and what
of it is unbilled, track work across its clients on a Workflows board, and name the
people in the firm so a client knows who has access.
Practices: every SARS deadline in one list, and moving between clients
The Practice console lists every SARS deadline across the client book, soonest first,
and an accountant can move from one client's books to the next without signing out.
Choose your dashboard cards, date format and number format
Each person chooses which dashboard cards they see and in what order. The date format
and the number format are settings of their own, and Billing shows how much storage the
account has used.
Enter each employee's year-to-date figures when you move payroll to Ledgr mid-year, so
PAYE and the year-end certificates carry on from where your previous system stopped.
If you are looking for a change you were told about and it is not here,
ask support.
API changes
What changed in the API an integration calls, by version. A version moves on only when
something an integration may rely on is removed or changed; anything added is added to
the version in use. The OpenAPI document is always the current one.
v4
— The reference and the playground now list only the
API a business builds on. Ledgr's own plumbing is no longer documented: payment and messaging webhooks
Ledgr receives, health checks, the website's forms and status page, the pages a link opens (customer,
supplier and employee portals, payment and tracking links), sign-up and account security, Ledgr's own
subscription and checkout, offline sync, device push, the setup checklist, training, search, dashboard
insights, the guided take-on and the statutory figures the app installs. Those routes still answer the
apps that call them, but they may change with any release. The customer, supplier and driver APIs,
OAuth, API keys and every business record are unchanged. What to change: if an
integration of yours calls one of them, move it to the documented equivalent or
ask support; regenerate any client from the document.
v3
— Seven routes that this document listed
in error are gone from it. Each has only ever answered 404, so nothing that
worked has changed. What to change: nothing, unless a generated client
of yours still names them; regenerate it from the document.
v2
— GET /api/crm/opportunities
(the deal list) always answers one page: { items, total, page, limit, totalPages },
50 deals a page unless limit asks for another size (at most 200). In v1 a request
with neither page nor limit answered every deal as a bare array.
What to change: read the deals from items, and ask for
page=2, page=3 and so on until page reaches
totalPages if you need every deal. Every filter and the search still run over
every deal before the page is cut, and total counts them.
v1
— OAuth 2 for apps that connect to many
businesses: /oauth/authorize, /oauth/token and
/api/oauth/apps. An API key can be owned by the business
(actsAsRoleId). Webhooks gained payroll.run.paid,
bill.rejected and expense.rejected, a redelivery call, and
autoDisabledAt on a subscription that was switched off.
— The public OpenAPI document leaves the
back office out.