QRAnalytica

How Do I Make a QR Code for a Donation or Payment Link?

Make a donation QR code from your payment platform's own QR button (PayPal, Stripe) or a dynamic QR generator, then protect the printed code.

Nookesh Karri · 7 min read
Dark cover card with the title 'How Do I Make a QR Code for a Donation or Payment Link?' in white and a lime accent bar

To make a donation QR code, create the payment link first, then use the QR button your payment platform already gives you. PayPal’s Donate button and Stripe Payment Links both produce a QR code you can download and print. If you want scan tracking or the option to change the link later, put the payment link behind a dynamic QR code instead.

A donation QR code is just a QR code that opens your payment or donation page. So the real first step is the link: the code can’t fix a page that’s slow, confusing or asks for too much.

  1. Create the payment or donation link in the platform that will take the money.
  2. Check that donors can pick the amount, if you want open-ended gifts.
  3. Download the platform’s QR code, or paste the link into a QR generator.
  4. Add a short call to action next to it, like “Scan to give”.
  5. Test it on an iPhone and an Android phone, and make a small real payment before printing anything.

If you take money through PayPal or Venmo personally rather than as an organisation, the steps are different. See how to make a PayPal or Venmo QR code.

PayPal Donate button

PayPal gives every Donate button a QR code. PayPal’s nonprofit guide says a new Donate button “comes with a QR code and Donate link,” and suggests using them for events and “printed fundraising materials.” PayPal also tells nonprofits to “review each platform’s policies to fully understand the potential costs involved.”

Stripe builds the QR code into its Payment Links. Stripe’s docs say “You can create a QR code for a payment link in the Dashboard,” and you can “Copy or download a PNG image of the QR code.”

Stripe lists accepting a donation as one of the jobs Payment Links are for, and supports letting customers choose what to pay. Payment Links can also show “over 40 payment methods,” so donors aren’t stuck with a card form.

A printed payment QR code points at one link forever unless a redirect sits in between. That matters more for money than for a menu, because a dead donation code costs you gifts silently.

Stripe is clear about its own codes: “The QR code doesn’t expire. If you deactivate the underlying payment link, the QR code redirects to an expiry page.” Stripe also notes that “After you create a payment link, you can’t delete it.”

Say a school prints a Stripe QR code on a few hundred raffle flyers for a spring fair. In autumn, the treasurer deactivates that link and makes a new one for the winter appeal. Every leftover flyer, poster and newsletter now opens an expiry page. Nobody sees an error. The scans just stop turning into donations.

A dynamic QR code avoids that. The printed code holds a short link you control, and you point it at the new payment link when the campaign changes.

Platform QR code or dynamic QR code?

The platform’s own QR code is the simplest and safest choice for one fixed payment link. A dynamic QR code is better when the link will change or you need to know which flyer or event brought donations in.

Platform’s own QR codeDynamic QR code
Where it pointsStraight to the payment pageA short link that redirects to the payment page
Change the link after printingNoYes
Scan counts by place, time and deviceNoYes
Extra service in the pathNoneThe QR provider’s redirect
Address donors seeThe payment platform’sThe QR provider’s, or your own domain
Best forOne permanent donate linkSeasonal appeals, events, several printed pieces

With QRAnalytica, a dynamic QR code lets you change the destination without reprinting and shows scans by city, device and hour. You can also add UTM tags, so donations show up by campaign in your analytics.

The limitation: a dynamic code adds QRAnalytica’s redirect servers between the donor and the payment page. If it goes down, the printed code stops working until it comes back. QRAnalytica keeps existing codes redirecting even after a subscription or trial ends, but it is still one more dependency than a platform QR code.

How to protect a printed payment QR code from tampering

Payment QR codes are a target because swapping one redirects real money. The FBI’s Internet Crime Complaint Center warned in January 2022 that “a cybercriminal can replace the intended code with a tampered QR code and redirect the sender’s payment,” and that “Law enforcement cannot guarantee the recovery of lost funds after transfer.”

The FTC’s December 2023 alert describes the common trick: “scammers covering up QR codes on parking meters with a QR code of their own.” A donation sign at a church door or a charity collection point works the same way.

What to do about it:

  • Print the code into the design, not on a sticker. The FBI tells people to check for “a sticker placed on top of the original code,” so a code that’s printed in is easier to trust.
  • Print the destination address in text under the code, so donors can compare it with what their phone shows. The FTC advises people to “inspect the URL before you open it.”
  • Use an address donors recognise. A custom domain QR code shows your own domain instead of an unknown short link, and that also helps against lookalike addresses with “a misplaced letter.”
  • Walk past public signs during a campaign and look for anything stuck on top.
  • Check the code before printing. The guide to checking if a QR code is safe explains what to look for.

My take

I’d use the payment platform’s own QR code for a permanent “donate here” sign, and a dynamic code for anything tied to a campaign or an event. The extra redirect is worth it when you need to swap the link or see which flyers worked, and it isn’t when the link never changes.

FAQ

Is a donation QR code free to make?

Yes. PayPal’s Donate button and Stripe Payment Links both include a QR code at no extra charge. You pay the platform’s normal processing fees when a donation comes in, so check its fee page before you print.

No. Stripe says the QR code doesn’t expire. If you deactivate the payment link behind it, anyone who scans the code lands on an expiry page instead of the checkout.

Can donors choose how much to give?

Yes, if the payment page allows it. Stripe Payment Links support letting customers choose what to pay. The QR code just opens that page, so set the amount options there.

Should I use a dynamic QR code for donations?

Use one when you want scan counts or the option to change the link later, for example a yearly appeal printed on a banner. For a single fixed payment link, the platform’s own QR code is simpler and has one less service in the path.

How do I stop someone putting a fake QR code over mine?

Print the code directly on the material instead of using a sticker, print the destination address in text beside it, and check public signs regularly for stickers placed on top.

Sources

Track your dynamic campaigns. 7-day trial, no credit card.
Generate Dynamic QR