Writing a year of rent receipts that will stand up when somebody checks them
A rent receipt is a small document with a big job: it is often the only paper proof that a tenant paid and a landlord was paid. This piece explains why the tool builds twelve at a time instead of one, what every field on the sheet is for, how the period a receipt covers is decided, what happens when the rent goes up halfway through, and the handful of mistakes that turn a stack of receipts into a stack of paper nobody will accept.
Why a year at a time and not one at a time
Almost every receipt maker on the internet builds one receipt. You fill in a form, you print a sheet, and if you need another one next month you fill in the same form again. That is fine for a car sale or a one-off deposit. It is the wrong shape entirely for rent.
Rent is the same amount, from the same person, for the same property, month after month. The only things that change are the date, the period and the number. Filling in the landlord's address twelve times is twelve chances to type it slightly differently, and a set of receipts where the property is written three different ways is exactly the set somebody will question.
The other reason is that receipts are usually wanted in bulk. An employee claiming a housing allowance is asked for the whole year in one go, near the end of the tax year, often at short notice. A landlord asked to prove income for a mortgage application hands over a run, not a single sheet. So this tool takes one tenancy and lays out the whole run at once, each receipt on its own sheet, numbered in an unbroken sequence.
You can still make one. Set How many receipts to 1 and you get a single sheet, which is what you want when a tenant has lost one and needs a replacement with the original number on it.
What actually has to be on a rent receipt
There is no single worldwide form, but the elements that make a receipt useful are the same everywhere, and they are all on the sheet this tool produces.
Who received the money. The landlord's name and address print at the top of every sheet. If a letting agent collects the rent, the agent's name goes here instead, because the agent is who actually took the payment.
Who paid it. The tenant's name goes into the line that begins Received with thanks from. If two people are jointly on the tenancy and the rent came from one account, name the person who paid; if the receipt is for both, put both names in.
How much. The figure appears three times on purpose: once in the sentence, once in words in brackets, and once large underneath. Repetition is not padding here. A receipt that says the amount in only one place is easy to alter after signing.
What it was for. The property address and the period covered. A receipt that says only rent, with no dates, proves that money changed hands and nothing else.
When and how. The date the payment was received, and the method — cash, bank transfer, standing order, cheque, UPI, card. A signature from the landlord or agent underneath.
Everything else the tool offers is a local addition on top of that core: the tax reference, the revenue stamp box, the remarks line.
The period covered, and why it is a choice
This is the setting people get wrong most often, so it is worth understanding rather than accepting the default.
Some tenancies run on calendar months. Rent for January is rent for January, whatever day it happens to be handed over. Others run from the day the tenancy started. If the tenant moved in on the 5th, rent paid on the 5th of April covers the 5th of April to the 4th of May. The two are not the same thing, and the difference matters if the tenancy ends midway through a month and somebody has to work out what is owed.
So the tool offers both. The calendar month option runs each receipt from the first to the last day of its month. The payment-day option runs from the day rent is paid through to the day before the next payment is due. Pick whichever matches the tenancy agreement, because a receipt that contradicts the agreement is worse than no receipt at all.
Whichever you choose, the day rent is paid still sets the date printed on the sheet. That is the date the money was received, which is a separate fact from the period the money covers.
Months are not the same length, and the tool knows it
If rent falls due on the 30th, what happens in February? If it falls due on the 31st, what happens in April, June, September and November?
The honest answer is that the payment lands on the last day of the month instead, and that is what the tool prints. Every day-of-month is pushed back to the length of the month it is in, so a payment day of 31 shows as the 28th in an ordinary February and the 29th in a leap year, then returns to the 31st in March.
This sounds obvious and is regularly got wrong by software that simply adds a month to a date. Adding one month to the 31st of January in a naive way produces the 31st of February, which most date libraries silently roll forward into March. A receipt dated the 3rd of March for February's rent is the sort of small wrongness that makes a whole run look careless.
The same clamping applies to the period end in payment-day mode. A period that starts on the 31st of January ends on the 27th of February, because a month after the 31st of January is the 28th of February and the period ends the day before.
Numbering, and why unbroken matters
The numbering panel has three fields: a prefix, a starting number and how many digits the number should have. Together they produce something like RR-2026-001, RR-2026-002 and so on.
The point of numbering receipts is not decoration. A receipt book proves something because the numbers run without gaps. If a landlord can show receipts 1 through 12 for a tenancy, that is a complete record. If receipt 7 is missing, the obvious question is what happened in July, and there is no good answer.
That is also why the digit count is a setting. Three digits gives 001 rather than 1, which sorts correctly when the images end up in a folder and makes a missing number visible at a glance. Two digits is fine for a single year. Four is worth using if the prefix does not already carry the year.
If you have already issued receipts by hand, start this run where the handwritten book left off. Set Start at to 7 and the run picks up from RR-2026-007. The prefix is free text, so put the property reference in it if you manage several: FLAT2-2026- and HOUSE9-2026- keep two tenancies from ever colliding.
When the rent goes up in the middle of the run
Rent rarely stays still for twelve months. A review clause kicks in, an increase is agreed, and from a certain month the figure changes. A run of twelve receipts all showing the old amount is simply wrong for the second half of the year.
The rent increase panel handles the common case with two fields: which receipt in the run is the first at the new figure, and what the new figure is. Put 7 and the new amount, and receipts one to six carry the old rent while seven to twelve carry the new one. The total at the top of the preview updates, so you can check it against what actually went into the bank.
Counting is by position in the run rather than by the printed number, which matters if you started at 7. The seventh receipt is the seventh sheet, whatever its label says.
What the panel deliberately does not do is let every month differ. If the amount changed three times, or a month was part-paid, or a deposit was taken alongside the rent, those months are not part of a routine run and each deserves its own receipt written by hand. Run the regular months here and produce the odd ones separately, keeping the numbering continuous across both.
The PAN field and the revenue stamp box
Two of the fields on this page exist because of rules in one part of the world, and they are optional precisely because those rules do not travel.
The first is the landlord's PAN, or permanent account number. In India, an employee claiming House Rent Allowance against more than one hundred thousand rupees of rent in a year has to give their employer the landlord's PAN. Without it the claim is refused. A landlord who supplies receipts with the PAN printed on them saves the tenant a separate errand every year. Landlords elsewhere can put any tax reference in the same field, or leave it blank, in which case the line does not print at all.
The second is the revenue stamp box. In India a receipt for a cash payment above five thousand rupees needs a one rupee revenue stamp physically stuck to it and signed across, so that the signature runs over both the stamp and the paper. That is the whole mechanism: the signature crossing the stamp is what makes the receipt hard to reuse. The tool cannot print a stamp, and printing a picture of one would be worse than useless, so it draws an empty box with a line of text telling whoever handles the sheet what goes there.
By default the box appears only on cash receipts, which is where the rule bites. Set it to appear on every receipt if you want the space regardless, or turn it off entirely if the requirement does not apply where your property is. The words inside the box are editable for the same reason.
Currency, dates and the amount in words
The currency list covers more than thirty currencies and the page guesses one from your browser's region. Changing it reformats every amount in the run, including the symbol and how the digits are grouped. It is a formatting choice only — nothing is converted, so the number you type is the number that prints.
The date format is a separate setting with five options, from 5 April 2026 down to 2026-04-05. This is worth a moment's thought. The two numeric formats, 05/04/2026 and 04/05/2026, mean opposite things depending on which side of the Atlantic the reader is on, and a receipt is exactly the sort of document that gets read years later by somebody who was not there. Spelling the month out removes the ambiguity for the cost of a few millimetres.
The amount is also written in words, in brackets after the figure, ending in the word only. This is the old cheque convention and it exists for one reason: a figure can be altered with a pen and a steady hand, while a sentence cannot. The word only closes the sentence so nothing can be added after it.
Amounts with pence or paise are written as a whole number followed by the fraction over a hundred — nine hundred and fifty, 50/100 — which is the same convention cheques have used for a century.
Getting the finished run off the page
There are three ways out, and they are for different jobs.
Print all opens your browser's own print box. Every receipt is on its own sheet, and everything else on the page — the form, the header, the help below — is left out. If you change the destination to Save as PDF you get one file with twelve pages, which is usually what an employer or an accountant is asking for when they say send me the receipts.
Download PNGs writes one image per receipt and zips them, without any dialogue in the way. Each file is named after its receipt number, so RR-2026-001.png through RR-2026-012.png, which means they sort correctly and a missing one is obvious. Images are the practical choice when the receipts have to be attached to a message from a phone, or uploaded one at a time to a portal that will not take a PDF.
Register (CSV) is not a receipt at all. It is one row per receipt — number, issue date, period, amount, method, reference — with a total row at the bottom. That goes into a spreadsheet, and it is what turns a pile of receipts into a year's rental income you can actually add up. A landlord with four properties who exports four registers has their tax return most of the way written.
A worked example: a tenancy that started in April
A landlord lets a two-bedroom flat from the 5th of April. The rent is eight hundred and fifty a month, paid by standing order on the 5th, and it rises to nine hundred from the 5th of October under a review clause in the agreement.
Landlord name and address go in the first panel, with the name above the signature line left blank so it falls back to the landlord's own name. The tenant's name goes in the second panel, and the property address is copied word for word from the tenancy agreement, flat number included.
Rent per month is 850. First month is set to April of that year, and How many receipts stays at 12. Day rent is paid is 5, and the period each receipt covers is set to payment day to the day before the next, because that is what the agreement says.
In the payment panel, Paid by is set to Standing order and the reference is the mandate number rather than any single transaction id, since one reference is printed across the whole run. The numbering prefix is set to FLAT2-2026- and the run starts at 1 with three digits.
Finally the rent increase panel gets 7 and 900, because the seventh receipt is October's. The total at the top of the preview now reads eight thousand four hundred, which is six months at 850 plus six at 900, and matches the bank statements. The run is printed to PDF and the CSV register is saved alongside it.
Mistakes that cause real trouble
Dating receipts for months that have not been paid yet. Generating the full year in advance is fine — the layout has to be built somehow — but only hand over the sheets for periods that have actually been settled. A receipt is a statement that money was received, and issuing one for money you have not got is a false statement, not an optimistic one.
Naming the property differently from the tenancy agreement. Flat 2, 88 Canal Street and 88B Canal Street may be the same front door, but they are not the same words, and the person checking the receipt has only the words.
Reusing a number. Two receipts sharing a number destroys the point of numbering them. If you reprint one because the first was lost, keep the original number and do not issue a new one.
Putting a single transaction reference on a whole year's run. The reference field prints on every sheet, so it should be something stable like a standing order mandate. Twelve receipts all quoting January's transaction id is worse than twelve with no reference at all.
Treating the browser's saved draft as the record. Your entries are kept in this browser so you can come back to them, but that is convenience, not archiving. The printed file and the exported images are the record. Save them somewhere you actually back up.
Assuming the receipt proves the tenancy. It proves a payment. Keep the agreement and the bank record with it, because anyone asking hard questions will want all three.
What this page does not do
It is a receipt writer, not a property management system. It has no tenant list, no record of what has been paid, no reminders and no arrears tracking. If you manage twenty units, software that knows who owes what will earn its cost quickly.
It does not know your local law. Some places require particular wording, a registered serial number, or stamps of a specific value. Some require the receipt to be issued within a set number of days. Check what applies where the property is and use the editable heading, remarks and stamp text to fit it.
It also does not give tax advice. Whether a run of receipts supports a housing allowance claim, and what else is needed alongside them, depends on rules that change and on your own circumstances.
For neighbouring jobs the site has other makers: an Invoice Maker if you are billing for work rather than receipting rent, and a Letterhead Maker for the covering letter that goes with a rent review notice.
Nothing about the tenancy leaves your device
Names, addresses, rent figures and tax references are about as personal as ordinary paperwork gets. None of it is uploaded. The receipts are drawn by the page itself, the images are rasterised in the browser, and the ZIP is assembled in memory before it is handed to your downloads folder. There is no account, no server copy and nobody at this end who could look at your tenants even if asked.
The draft is written into this browser's own storage so that closing the tab does not lose an hour's typing. That storage belongs to this browser on this computer. It does not appear on your phone, and clearing your browsing data removes it.
Start again clears the saved draft and puts the example tenancy back, so you can hand the laptop to somebody else without leaving a tenant's details on screen. It asks first, because it does delete what you had.
