Take donations on your website with a contact form

You can take one-off donations with the Contact Form Advanced widget in EverWeb 4.6 and later. Donors pick a set amount or choose their own, add a note, and pay by card through Stripe or through PayPal. You get an email marked Paid with everything they told you, and they get a thank-you email.

Who uses this

  • A parish church or mosque lets members give online, with a choice of fund such as General, Building appeal or Food bank.
  • An animal rescue charity offers 10, 25 or 50, or another amount, with a box to give in memory of a pet.
  • A school's parent association collects sponsorship for a fun run and lets parents cover the card fees.
  • A youth sports club raises money for a new minibus and thanks every donor by email.

What you need

New to the form widget? Start with Build a custom form: quote requests, registrations and file uploads.

Sample form plan

Field labelControl TypeSettings / Price
Your giftCard SelectOptions: 10, 25, 50, 100, I'll choose my own amount. Prices: 10, 25, 50, 100, and leave the last one empty
Your own amountStepperMin 0, Max 5000, Step 1, Unit Price 1. Control Instructions/Tip: "This is added to any amount chosen above."
FundDrop Down MenuWhere it's most needed, Building appeal, Food bank (no prices)
Yes, add 3% to help cover card feesTogglePrice When On 3% (off to start with, so it stays optional)
In memory or in honour ofTextBoxOptional
NameTextBoxRequired
EmailEmailRequired
AddressAddressOnly if you need it for receipts or Gift Aid

The percentage is worked out on the whole donation, including the Stepper amount, so a gift of 50 with the fees switch turned on comes to 51.50.

Set it up

  1. Buy the add-on and sign in to your account in EverWeb (EverWeb > Settings on a Mac, Edit > Options on Windows).
  2. Drag Contact Form Advanced onto your page and open Inspector > Widget Settings.
  3. At the top, choose your add-on in Contact Form Enhanced Add-on and type a Contact Form Name, such as St Mary's Donation. Donors see this name on the Stripe or PayPal checkout page.
  4. In Email Address to Send Form to, type the address that should receive each donation.
  5. Open the Payments section and tick Accept Payments. Tick Accept Cards (Stripe) and paste your Stripe Secret Key, and/or tick Accept PayPal and paste your PayPal Client ID and PayPal Secret. Get a Stripe API Key... and Get PayPal Credentials... open the right pages.
  6. Choose your Currency, set Total Label to Donation total, and leave Tax Rate (%) empty.
  7. Add the fields from the plan. Once Accept Payments is on, the Option List has a Price column. Write prices with a full stop for decimals, such as 12.50.
  8. Set Submit Caption to Donate. Make a thank-you page and choose it in Forward To Page, and a "Your donation didn't go through" page for Payment Unsuccessful Page.
  9. Turn on spam protection (Use reCaptcha SPAM Protection, with your choice of Captcha Provider), then tick Send Confirmation Email (see below).
  10. Test with a Stripe test key or PayPal Sandbox (testing), then paste your live details and publish with File > Publish Entire Site. Payments only work on the published website, not in Preview.

The thank-you email

Send Confirmation Email sends the donor an email once their payment is confirmed. In Confirmation Email Content you can use any field label between % signs, plus a few payment words. For example:

Hi %Name%, thank you for your gift of %ordertotal% to St Mary's. Your payment reference is %paymentreference%.

The email can thank the donor and show the amount. Whether it counts as an official donation receipt, and what one must include, depends on the rules where you are: check them before calling it a receipt.

What you receive

  • An email for each donation, marked Paid, with the payment method, a Payment Reference and the amount. It arrives once the payment is confirmed.
  • If someone starts but never finishes paying, you get their details a few hours later with Unpaid order in the subject, so you can follow up.
  • A record of every donation in your Client Area under Contact Form Submissions > View Form Submissions, where you can search, sort and Export to a CSV file for your year-end figures.

Good to know

  • One-off gifts only. Forms can't take monthly or other repeating payments. For regular giving, use a paid plan in Members-only pages, logins and paid subscriptions: EverWeb Membership Sites, or the recurring payment tools in your own Stripe or PayPal account.
  • There's no box to type any amount into a TextBox or Number field and be charged it. The Stepper with a Unit Price of 1 does that job: donors tap + and −, or type a whole amount.
  • If a donor chooses nothing that has a price, the total is 0 and the form arrives as a normal message with no payment.
  • One currency per form: for two currencies, make two forms.
  • Gift Aid (UK charities): add a Description field with the declaration wording that HMRC currently asks for, a Toggle such as "Yes, I want to Gift Aid my donation" (leave Required field unticked so it stays optional), and the Address field. Check the official requirements yourself.
  • Never ask for card numbers or bank details in a form field. Payment happens on Stripe's or PayPal's own secure page, so card details never touch your website.

Related articles

  • 0 Users Found This Useful
Was this answer helpful?

Related Articles

My contact form isn't sending me emails

Forms only send from your published website, not from Preview. Test on the live site after each...

How do I use my own SMTP (outgoing mail) settings with my contact form?

Contact Form Advanced can send each form message through a real email account, using that...

What is the Contact Forms Enhanced Add-on?

The Contact Forms Enhanced add-on is a paid extra for EverWeb's Contact Form Advanced widget. It...

What happens once I reach my submission limit for Contact Forms Enhanced Add-on

Each time a visitor submits a Contact Form to you, you will get a notification of what was...

What are the server requirements of the Contact Forms Enhanced Add-on?

If you are using EverWeb + Hosting you do not need to worry about server requirements since...