Cheques
When you pay some salaries by cheque, Operentra prints the cheques onto your bank's cheque leaves and keeps a cheque register that follows every cheque from the printer to the bank. Handing a cheque over is what records that salary as paid, so the payroll run and the register always tell the same story.
The screens live under Cheques in the admin sidebar: Cheque Register
(/admin/cheques), Print Cheques (/admin/cheques/print) and Templates
(/admin/cheques/templates).
Who can do what
| Permission | Lets the holder… |
|---|---|
cheques.print | Use Print Cheques: see who can be paid by cheque, preview, print and reprint. |
cheques.manage | Open the Cheque Register and mark cheques cleared. |
cheques.manage + payroll.manage | Mark cheques issued, bounced or cancelled — these change the salary payment, exactly like Mark as Paid and Clear payment. |
payroll.manage | Create, edit and delete cheque templates. |
The seeded Super Admin and Accountant roles hold all of them.
1. Set up a template for your bank
Each bank prints its leaves differently, so each bank needs a template (Cheques → Templates). A template records:
- Width and height of the leaf, in millimetres.
- Date format — built from
d,dd,M,MM,MMM,yyandyyyy, separated by/,-,.,,or spaces.dd/MM/yyyyprints 07/03/2026. - Field positions — where the date, payee, amount in figures and amount in words go, measured in millimetres from the leaf's top-left corner.
{
"date": { "x": 150, "y": 10 },
"payee": { "x": 20, "y": 30 },
"amount": { "x": 150, "y": 50 },
"amountWords": { "x": 20, "y": 50, "width": 120 }
}
Any field may also set width (how far, in mm, the text may run — the words line
wraps inside it) and fontSize (in points). If your leaves have one box per date
digit, use the format ddMMyyyy and give the date a spacing: the distance in mm
from one box to the next.
A template is checked when you save it: every field must be present and sit on the leaf, and the date format must use only the tokens above.
Print a test cheque onto a photocopy of a blank leaf, hold the two up to the light, and nudge the positions a millimetre at a time until every value sits in its box.
2. Print cheques
Open Cheques → Print Cheques and choose a payroll run. Only locked or disbursed runs are offered: cheques are printed once the amounts are final.
- Tick the employees you are paying by cheque. Some rows cannot be ticked, and say why: the salary is already paid, the employee already holds a cheque that is still in play, or there is nothing to pay.
- Choose the paying bank account. Only operating accounts are offered — a fund account (such as a provident-fund account) never pays salaries.
- Choose the template. A template whose bank name matches the account is picked for you; you are warned if the two differ.
- Check the first cheque number. It is suggested as the number after the last cheque recorded on that account. Change it when you start a new cheque book. Numbers are given out in the order the employees are listed.
- Set the cheque date and look at the preview: it is the exact page that will print, for the first employee you ticked.
- Print. You get one PDF with one cheque per page, each page exactly the size of the leaf. Print it at actual size (100%) — never "fit to page" — loading the leaves in number order.
Every printed cheque is recorded in the register as Printed, all in one step. Printing is refused if any of its numbers is already used on that account (a cancelled cheque gives its number back), if an employee already has a cheque in play, or if the cheque date would already be past its validity.
3. Hand cheques over
When the employee receives the cheque, select it in the Cheque Register and choose Issue (several at once with Mark issued). This records the salary as paid, exactly as Mark as Paid does: method Cheque, the cheque number as the reference, the cheque's bank account, and the cheque date as the payment date. Tick Email the employee to send the usual request to acknowledge receipt.
If the net salary has changed since the cheque was printed, or the salary was already recorded as paid some other way, issuing is refused — cancel the cheque instead.
4. Follow each cheque to the end
| Action | Allowed from | What it does |
|---|---|---|
| Cleared | Issued | Records the date the bank paid it, from your statement. Nothing changes on payroll. |
| Bounced | Issued | Records the return date and an optional reason. The salary payment recorded at issue is cleared, with the employee's acknowledgement, so the salary shows as unpaid again. Print a replacement or pay another way. |
| Cancel | Printed or issued | Voids the cheque; a reason is required. Cancelling an issued cheque (lost, stopped) clears its salary payment, as above. |
| Reprint | Printed | Prints the same cheques again for leaves that were never used. A spoiled leaf should be cancelled instead, and a new cheque printed with the next number. |
Cleared, bounced and cancelled cheques are final. Every one of these actions is written to the audit log.
Stale cheques
A cheque that has not cleared within its validity period — six months from its date unless you change it — is shown as Stale. Nothing changes in the background: staleness is worked out each time the register is read. Set the period your banks apply under Payroll → Settings → Cheque validity (months).
A stale cheque that was never handed over can only be cancelled. A stale cheque that was handed over can still be marked cleared or bounced (the bank may have acted before it went stale), or cancelled so that a replacement can be printed.
Cheques and the payroll run
A cheque that is printed, issued or cleared owns that employee's payment for the run. To keep the run and the register in step:
- Mark as Paid and Clear payment on that employee's payroll entry are refused; issue, bounce or cancel the cheque in the register instead.
- Mark as Paid for the whole run leaves employees paid by cheque alone and pays everyone else. It is refused while any cheque on the run is printed but not yet handed over, because that salary would otherwise be paid twice.
- Finalize Run still needs every entry paid, so cheques waiting to be handed over keep the run from finalizing.
- Paying one employee by cheque from the payment dialog — method Cheque, the paid-from account, and the cheque number as the reference — records that handwritten cheque in the register as Issued, so it can be cleared, bounced or cancelled like a printed one. Paying the whole run by cheque from that dialog records no cheques.
Amount in words
The amount in words follows the workspace's currency and document language, and is always exact: amounts with cents or fils say so ("… Dollars and 50/100 Only"), and the line ends in "Only" (or «فقط لا غير») so nothing can be added after it. The figures are grouped the way your country writes numbers and wrapped in asterisks.
Related
- Payroll — processing, locking and paying a run
- Company setup — bank accounts and the workspace currency