Unlock Elementor Pro All articles
Compliance

Tick Box, Paper Trail: A Gift Aid Donation Form That Would Survive a Spot Check

Unlock Elementor Pro
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:

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:

  1. Title and full name — first and last as separate fields, not one blob, so the export is sortable.
  2. Home address line 1 and line 2
  3. Town or city
  4. Postcode — this one is doing serious work, see below.
  5. Email — for the confirmation and for the charity's own records.
  6. Donation amount, even if it's a fixed set of buttons.
  7. 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:

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:

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:

  1. Donate £10 with Gift Aid selected — check the declaration text renders in full on mobile.
  2. Donate £10 with Gift Aid declined — confirm no declaration is stored.
  3. Submit with a postcode of B1 — the form should ask for a proper one.
  4. Submit with the declaration unticked — the form should refuse.
  5. Check the webhook payload or CRM row: name, address, postcode, amount, date, declaration type.
  6. Check the confirmation email — does it tell the donor they can cancel the declaration at any time, and how?
  7. 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.

All Articles

Related Articles

Before the DNS Flip: A Privacy Pre-Flight for Elementor Pro Launches

Before the DNS Flip: A Privacy Pre-Flight for Elementor Pro Launches

Popup Fatigue Is a Choice: Campaign Discipline for Elementor Pro Builds

Popup Fatigue Is a Choice: Campaign Discipline for Elementor Pro Builds

Quote, Build, Close: A Freelancer's Framework for Taming Elementor Pro Scope Creep

Quote, Build, Close: A Freelancer's Framework for Taming Elementor Pro Scope Creep