Tap To Donate
This guide provides an end-to-end manual for setting up and managing the Tap to Donate app, covering donor settings, Stripe payments, and Gift Aid configurations.
Tap to Donate — User & Admin Guide
A practical, end-to-end manual for brand managers, marketing teams, and charity admins running the Tap to Donate experience.
1. What the app does
Tap to Donate turns a physical NFC badge, QR code, or shareable link into a one-tap charitable donation page. A supporter taps the badge with their phone, picks (or types) an amount, pays with Apple Pay / Google Pay / card, and — if eligible — adds a Gift Aid declaration so your charity can claim the extra 25%.
Who it's for:
- Charities running awareness or fundraising campaigns.
- Event organisers who want collection tins replaced with a tap-to-pay surface.
- Brands attaching "give back" donation moments to products or experiences.
What you can configure: charity name, welcome and thank-you messaging, logo, accent colour, preset amounts, currency, Gift Aid mode, and your Stripe payment account.
2. Getting started — first-time setup
- Open your collection in the SmartLinks platform and add the Tap to Donate app.
- Open the app's admin console (the gear/settings icon next to the app).
- You'll land on the Donation Settings screen. Work through the tabs from left to right:
- Content — name, logo, colour, messaging.
- Amounts — preset values donors can pick.
- Stripe (collection only) — connect your payment account.
- Gift Aid — turn on UK Gift Aid declarations.
- Tracking — view donations once they start coming in.
- After every change, click Save Changes in the top-right. Nothing is live until you save.
Tip: A blue notice at the top of the page tells you when you're editing settings for a single product (rather than the whole collection). An orange notice means this product has its own override — you can delete it to fall back to the collection defaults.
3. Creating records — admin tabs explained
3a. Content tab
| Field | What it does |
|---|---|
| Charity Name | Used on receipts, confirmations, and as the homepage title by default. Required. |
| Homepage Title (optional) | Override the title shown at the top of the donation page. Leave blank to fall back to the charity name. |
| Logo URL (optional) | A link to your logo image (PNG/JPG/SVG). Shown at the top of the donor experience. |
| Logo Size | Slider, 32–200px. Controls how tall the logo appears. Default 96px. |
| Accent Colour | Colour picker. Sets the colour of the main donate button, selected amount tile, and the welcome pill. |
| Welcome Message | Rich-text editor shown above the amount picker. Keep it short and warm. |
| Thank-You Message | Rich-text editor shown after a successful donation. |
| Redirect After Donation (if other apps installed) | Pick another app to send donors to after they finish. Leave as "Back to product page" to send them back to the standard collection view. |
3b. Amounts tab
| Field | What it does |
|---|---|
| Preset Amounts | Drag-to-reorder list of suggested donations. Each row has an amount and an optional label (e.g. "Buy a coffee"). Use the + button to add new presets and the trash icon to remove. |
| Allow Custom Amount | Toggle. When on, donors get an "Other amount" option. |
| Minimum Amount | Smallest custom donation accepted. Defaults to 1. |
| Maximum Amount | Largest custom donation accepted. Defaults to 10,000. |
| Currency (set in Content tab) | GBP, USD, or EUR. Determines the currency symbol shown everywhere. |
3c. Stripe tab (collection-level only)
| Section | Field | What it does |
|---|---|---|
| Payment Mode | Test Mode | When on, payments are simulated — no real money moves. Turn off when you're ready to go live. |
| Stripe API Keys | Publishable Key | Starts with pk_test_… or pk_live_…. Copy from your Stripe Dashboard → Developers → API keys. |
| Secret Key | Starts with sk_test_… or sk_live_…. Stored privately and used server-side to take payments. | |
| Payment Element Appearance | Theme | Visual style of the Stripe form: Stripe (default), Night (dark), or Flat (minimal). |
| Layout | How payment methods are displayed: Auto, Tabs, or Accordion. | |
| Business Name | Optional text shown on the payment form / bank statement reference. | |
| Digital Wallets | Apple Pay | Show on iOS / Safari devices. Uses the "Learn more about Apple Pay readiness" link to check setup. |
| Google Pay | Show on Android / Chrome devices. | |
| Stripe Link | One-click checkout from saved details. Disable if you only want card + wallets. | |
| Billing Details | Name / Email / Phone / Address | For each, choose whether Stripe collects it (Auto) or hides it (Never). |
Apple Pay readiness: Click the link under the Apple Pay toggle to open a checklist. If anything is missing (e.g. domain not registered with Stripe), use the Copy instructions button to get a ready-to-send setup guide.
3d. Gift Aid tab
| Field | What it does |
|---|---|
| Enable Gift Aid | Toggle. When on, UK donors are asked to declare Gift Aid after paying. |
| Collection Mode → Basic Declaration | Just a checkbox with the standard HMRC wording. Use when you already hold donor records. |
| Collection Mode → Full Details Collection | Asks for first name, last name, full address, and postcode. Required if you don't already have donor records. |
3e. Tracking tab
This tab is read-only after donations come in — see Section 6 — Managing records.
4. Day-to-day usage — what donors see
- They tap or scan. The donation page opens with your logo, charity name, and welcome message.
- They pick an amount. Either tap a preset tile or tap Other amount to type their own.
- They pay. If Stripe is configured, the payment form appears with their available wallets (Apple Pay, Google Pay) and card option. In test mode, payment is simulated.
- Gift Aid prompt. If enabled, they're asked to confirm — Basic shows just a checkbox; Detailed asks for name, address, and postcode.
- Thank-you screen. They see your thank-you message with a Done button (which sends them back to the product page or your chosen follow-up app) and a Donate again option.
If a donor arrives via a deep link with an amount preselected (e.g. from a widget tap), they skip straight to the payment step.
5. Widgets
Tap to Donate ships one widget that other SmartLinks apps and pages can embed:
DonationWidget
A self-contained donation card. Shows your preset amounts, accepts a custom amount if enabled, and runs the full pay → Gift Aid → thank-you flow inline (so donors never leave the host page).
| Size | Best for | What's shown |
|---|---|---|
| compact | Sidebars, dense layouts, small slots | Icon + amounts only, no welcome text |
| standard | Most embed locations | Title, welcome message, amounts, custom amount, pay button |
| large | Hero placements, dedicated donation slots | Same as standard with full visual prominence |
After someone donates through the widget, the same browser session shows a thank-you state until reset.
6. Managing records — the Tracking tab
Once donations start coming in, the Tracking tab gives you two views.
Header summary
- Total raised, donation count, and Gift Aid total appear in the top-right.
Leaderboard
- Ranks each NFC badge / proof by total raised.
- Columns: rank, badge ID, donation count, total, average, Gift Aid count.
Donation Log
- Lists every individual donation with date, amount, Gift Aid yes/no, and donor PII (when collected).
- Use the search box to filter by badge ID, donor name, postcode, payment ID, or amount.
Actions
| Button | What it does |
|---|---|
| Gift Aid CSV | Downloads a HMRC-ready CSV of all Gift Aid donations including donor name, address, and postcode. |
| Clear All | Permanently deletes every donation record for this collection. Cannot be undone — use with care. |
| ⋯ → Obfuscate (per row) | Replaces donor name and address with *** markers (for GDPR right-to-erasure requests) while keeping the donation amount. |
| ⋯ → Delete (per row) | Removes a single donation record entirely. |
7. Import / bulk setup
You can pre-configure donation settings per product (e.g. different presets per item) by importing a CSV through the SmartLinks platform's app importer.
CSV template
productId,charityName,currency,presetAmounts,allowCustomAmount,giftAidEnabled
prod_001,Save the Children,GBP,"[{""id"":""1"",""amount"":5},{""id"":""2"",""amount"":10}]",true,true
prod_002,Oxfam,USD,"[{""id"":""1"",""amount"":10},{""id"":""2"",""amount"":25}]",true,false
prod_003,Local Foodbank,GBP,"[{""id"":""1"",""amount"":3,""label"":""Buy a meal""},{""id"":""2"",""amount"":15,""label"":""Feed a family""}]",true,true
Field reference
| Field | Required | Type | Notes |
|---|---|---|---|
productId | Yes | text | The SmartLinks product ID this row applies to. |
charityName | Yes | text | Charity / campaign name shown to donors. |
currency | No | GBP / USD / EUR | Defaults to the collection currency. |
presetAmounts | No | JSON array | Quote-escaped JSON. Each entry needs id and amount; label is optional. |
allowCustomAmount | No | true / false | Defaults to true. |
giftAidEnabled | No | true / false | Defaults to the collection's Gift Aid setting. |
Stripe keys, Apple Pay / Google Pay toggles, and the welcome/thank-you messages are not importable per-product — they live at the collection level.
8. FAQ & troubleshooting
Why can't donors pay — they only see "Donations not yet configured"? The collection has no charity name set, or no preset amounts. Open the admin console → Content → set a charity name → Amounts → add at least one preset → Save Changes.
Why doesn't Apple Pay show up on iPhone? Three things must be true: (1) the donor is on Safari on iOS, (2) you're in live mode with live Stripe keys, and (3) your public donation domain is registered with Stripe. Open the Stripe tab and click Learn more about Apple Pay readiness — it runs the checks and gives you copy-paste instructions for your team.
I changed the preset amounts but the donor still sees the old ones. Make sure you clicked Save Changes at the top of the admin page. If you're editing a specific product (blue or orange notice at the top), changes save to that product only — open the collection-level admin to change the defaults.
Can I switch from test to live after launch? Yes. Open Stripe → Payment Mode and turn off Test Mode. You also need your live publishable and secret keys filled in, otherwise donors will see an error.
My CSV import skipped some rows.
Common causes: missing productId, malformed JSON in presetAmounts (every double-quote must be escaped as ""), or unsupported currency values (only GBP, USD, EUR are allowed).
A donor asked to be forgotten — what do I do? Open Tracking → Donation Log, find their donation(s), click ⋯ → Obfuscate to wipe their name and address while keeping the donation total in your books, or ⋯ → Delete to remove the record entirely.
Where do donors go after donating? By default, back to the product page they came from. If you set a Redirect After Donation app on the Content tab, they'll be sent to that app instead.
Can I have different settings per product? Yes. Open the admin from a specific product and make changes — a product-level override is created automatically. Use the Delete Product Config button to revert to the collection defaults.
Why does my Gift Aid CSV export look empty? Only donations where the donor actually ticked the Gift Aid box and provided a name will appear. Donations where Gift Aid was skipped are excluded from the export.