Ledgr/Documentation/Job cards

Job cards

For work done for a customer rather than sold off a shelf — a repair, an installation, a callout. Parts and labour go onto the job as they happen, and the invoice is the job.

Plan.

Job cards is included from Business upwards, beside inventory. See pricing. It sits there on purpose: a plumber, panel shop or IT support firm is exactly the customer this is for, and pricing it higher would put it out of reach of the trades it was built for.

Raise a job

  1. Job Cards → New Job
  2. Pick the customer and describe the work

    What was reported, and what you have been asked to do. This is what the customer reads on the invoice later, so write it once and write it properly.

  3. Assign it

    Who is doing it, and when it is scheduled for.

A job can also be raised from an accepted quote, which carries the quoted amount across with it. That is the figure the "over quote by…" column is measured against, and it is the first half of a chain that runs quote → job → invoice with all three links joined.

Raising a job card works with no connection — it is one of the five things that queue and send themselves later, because raising the card is exactly what happens on somebody's driveway.

The board

Jobs by state — open, work in progress, awaiting parts, ready to invoice. Awaiting parts earns its own column because it is the state jobs get stuck in silently: the technician is waiting, the customer thinks you are working, and nobody is looking at it. Ready to invoice is the one to keep empty, and the reason margin leaks when it is not.

The list is searched and filtered on the server, so an older job is still findable. It used to fetch one page and filter it in the browser, which meant a busy workshop lost sight of its own history after a fortnight.

Parts, labour and other costs

  • Parts are issued from stock against the job. The stock movement happens at the point of issue, so what is in the van is out of the storeroom in the figures as well as in fact. This one needs a connection — see why.
  • Labour goes on as hours at a rate, and the rate comes from the person's own record rather than being typed each time. If you already log hours in time tracking, they can come from there — approved hours only.
  • Travel is priced at the SARS rate for the year of the trip — R4.95 per kilometre for 2026/27 — so a job card and the same trip captured in expenses agree.
  • Other costs — subcontractors, consumables, a callout fee.

Putting a real purchase on a job

The subcontractor's invoice and the parts you bought in for the job are already in Ledgr as an expense or a bill. Allocate them to the job rather than retyping them, and the job's cost becomes what the business actually spent instead of a re-keyed subset of it.

The amount is the document's; the markup is yours.

An allocated cost cannot be edited from the job side — what a job cost is a fact about the purchase, and Ledgr points you at the bill to correct it there. What the customer is charged is a decision about the job, so the markup and the billable flag stay editable here.

Each line carries what it cost you and what you are charging, which is where the job's margin comes from. A job that ran at a loss should be visible while you can still do something about the next one.

Sign-off on the customer's screen

Finishing a job captures the customer's signature on the device — an actual drawing surface, not a tick box — along with who signed and when. It appears on the job report and on the invoice that follows.

The signature is deliberately not required to complete a job. A signature pad that blocks completion is one people work around, and a business then holds a proof of work that is a lie rather than one that is thin. Ledgr would rather record honestly that nobody signed.

Invoice the job

Converting a finished job raises a real invoice through the invoicing engine, with parts as product lines and labour as service lines. The invoice is linked back to the job, so a query three months later is answered from the job card rather than from memory.

It charges the VAT you may actually charge.

Not a flat 15% on everything. A business with no VAT number is not treated as a registered vendor and its job invoices carry no VAT — issuing one that shows VAT you may not charge creates a liability to pay it over. Part lines bill at the rate on the product they are selling, so a zero-rated item stays zero-rated.

Converting needs the invoicing module too.

Raising the invoice creates a receivable, so the job-to-invoice step requires invoicing to be licensed as well as job cards. On Business and above both are, so this only bites on a custom role that has had invoicing removed.

Reports

Open jobs, work in progress, average margin and what is waiting to be invoiced. Work in progress is the number worth watching: it is cost you have already incurred and not yet billed, and on a bad month it is most of your cash.

Margin is only as honest as the cost rates behind it. A person with no cost rate set is reported as not set rather than as zero — an unset rate silently reporting 100% margin on every job is the failure this replaced.