Tick Box, Paper Trail: A Gift Aid Donation Form That Would Survive a Spot Check
Photo: Augustine Brian, CC BY-SA 4.0, via Wikimedia Commons
Most donation forms I inherit have a Gift Aid tick box bolted on at the end, usually with the declaration copy pasted from a site that was last touched three rebrands ago. It looks fine. It collects money. Then the charity's finance lead asks for the donor records behind a claim and the whole thing falls over, because the form captured a name and an email and nothing HMRC would actually recognise.
Gift Aid isn't a discount code. It's a claim against tax, and the form is where the evidence gets generated. So treat this build the way you'd treat a checkout: the fields, the wording and the stored record all have to agree with each other.
Start with the declaration, not the fields
Reverse the usual order. Write the declaration text first, then work out which fields it forces onto the page.
The current HMRC model declaration is short, and every word in it earns its place. For a single donation it reads roughly along these lines:
“I want to Gift Aid my donation of £[amount] to [charity name]. I am a UK taxpayer and understand that if I pay less Income Tax and/or Capital Gains Tax in the current tax year than the amount of Gift Aid claimed on all my donations, it is my responsibility to pay any difference.”
Add the donor's full name and home address, including postcode, and you've got the shape of it. Two things worth flagging before you copy anything from a blog post — including this one:
- HMRC updates the model wording from time to time. Pull the current version from the gov.uk guidance on the day you build, not from a template you saved last spring.
- For donations made through an agent or intermediary, the rules tightened in 2024 around capturing the donor's full name and home address within the declaration itself. If a charity uses a platform, a payroll giving scheme or a fundraising agency, check that with them early rather than discovering it in the handover call.
Also confirm with the client which declaration type they want: a single donation, a declaration covering past and future donations, or an enduring one until further notice. Each changes how long the record matters and what the donor should be told about cancelling.
Fields that do a job
In the Elementor Pro Form widget, resist the urge to ask for everything. The minimum useful set for a Gift Aid-eligible donation is:
- Title and full name — first and last as separate fields, not one blob, so the export is sortable.
- Home address line 1 and line 2
- Town or city
- Postcode — this one is doing serious work, see below.
- Email — for the confirmation and for the charity's own records.
- Donation amount, even if it's a fixed set of buttons.
- Gift Aid declaration checkbox, unchecked by default, with the declaration text beside it.
Two field-level settings matter more than builders expect. Set the postcode field to a text input with a sensible max length and a pattern that tolerates both SW1A 1AA and SW1A1AA, because UK donors type it both ways and enforced formatting is a quiet conversion killer. And make the declaration checkbox a required field only when the donor has opted in — which is where conditional logic comes in.
Conditional logic, kept honest
Gift Aid is opt-in. A pre-ticked box is not a declaration, it's a complaint waiting to happen with the Information Commissioner's Office and a headache with HMRC.
Build it like this:
- A simple radio or select at the top: “Yes, I'd like to Gift Aid my donation” / “No thanks”.
- A conditional wrapper section containing the address fields and the declaration checkbox, shown only on “Yes”.
- The declaration checkbox itself stays unticked, always.
Elementor Pro's form conditional fields handle this natively — set the address group's conditions to show when the first field equals “Yes”. Keep the amount field outside the wrapper so it's captured either way, and make sure the “No” path still captures name and email so the charity can thank the donor.
One more thing: if the donor is donating on behalf of a company, or paying for something (a ticket, a raffle entry, an auction lot), Gift Aid doesn't apply. A short note under the radio — “Not available on payments for goods, tickets or entries” — saves the finance team a pile of rejected claims later.
Where the record actually lives
This is the part that gets skipped. Elementor Pro's form actions will email the submission happily, but an inbox is not a record system. Use the Actions After Submit panel properly:
- Email to the charity's donations inbox, with all fields included in the body.
- Webhook or a direct integration to whatever CRM the charity uses, so each donation lands as a row with a timestamp.
- Database or CSV export on a schedule, kept by the charity, not by you.
The audit trail HMRC expects is essentially: who donated, how much, when, and the declaration that covered it. Six years from the end of the accounting period is the working assumption for retention — confirm the specifics with the client's accountant, but build as though the export will be pulled in five years by someone who wasn't in the room.
If you're using Elementor Pro's built-in submissions storage, be clear with the client about where that data sits and for how long. A donor record with an address and a tax declaration is personal data; it needs a retention rule, not an indefinite backlog.
The handover test
Run these before you sign the build off, on a staging site, with a real UK postcode:
- Donate £10 with Gift Aid selected — check the declaration text renders in full on mobile.
- Donate £10 with Gift Aid declined — confirm no declaration is stored.
- Submit with a postcode of
B1— the form should ask for a proper one. - Submit with the declaration unticked — the form should refuse.
- Check the webhook payload or CRM row: name, address, postcode, amount, date, declaration type.
- Check the confirmation email — does it tell the donor they can cancel the declaration at any time, and how?
- Ask the client's finance contact to read the export and say whether they could defend it.
That last step is the one that matters. If the person who files the claim can't make sense of what the form produced, the build isn't finished — however tidy it looks on the front end.