Dynamic QR Codes

Manage your codes

Every code you create — from a product, a campaign or anywhere else — lands in one place: QR Codes → All QR Codes. It’s the library for your whole store: find any code, see its visits, edit it after printing, retire it, download it, or share its link.

What’s in the list

  • Code — a thumbnail of every code, drawn in its current design.
  • Label — your internal label, never shown to customers.
  • Destination — where a scan goes today: the product and its variation (e.g. Size: S) where there is one, a link code’s address, or a bundle’s Bundle · 3 products Pro. A blank code reads Shop, Until the code is assigned. A retired code shows where its scans go now: its Fallback page Pro, otherwise the Product page, or Shop if the product is gone. A product in the trash shows (in the trash) after its name: scans of that code open the shop until you restore the product or point the code elsewhere.
  • Coupon — the coupon the code applies, if any, shown in capitals (WooCommerce matches coupons regardless of case).
  • Status — Active or Retired (and, with Pro, Unassigned for blank codes).
  • Code address — the address in the printed QR code, e.g. yourstore.com/?qrcw=k7m2xa. It never changes.
  • Visits — how often the code was used (see below).
  • Created — when the code was made.

Sort by Label, Coupon, Visits or Created, and use Search QR codes to find a code by its label, coupon, address or product name. The views above the table — All, Active, Retired and, while blank codes exist, Unassigned — filter by status. The Create QR code button is next to the search box; see Create your first code.

Visits: scans and link clicks

Visits are scans of the printed code plus clicks on its copied link. When a code has link clicks, the split shows under the number — for example 6 scans · 7 link clicks. Otherwise the number is followed by its unique scans, e.g. · 3 unique. The product’s QR codes box shows the same figures.

  • Bots don’t count. Crawlers and link previews (WhatsApp, Telegram, Facebook and others) are left out and never add to a cart.
  • Unique scans count each visitor once per QR code per day. People on one shared network — an office or event Wi-Fi — can count as a single visitor.
  • Track performance Pro keeps scans and link clicks apart and adds sales and revenue per code.

Acting on a code

Hover a row to reveal its actions: Edit | Copy link | Retire (or Reactivate) | Download | Delete.

  • Edit — opens the Edit QR code dialog (below).
  • Copy link — copies a shareable link for messages and emails (see Copy link).
  • Retire / Reactivate — switch the code off or back on (see Retire a code).
  • Download — a menu: Download PNG, Download SVG, Add to Media Library (or Re-save to Media Library) and View in Media Library. See how images are made.
  • Delete — removes the code for good (see Delete a code).

With Pro, a blank code shows Assign instead of Retire — see Blank codes. In a product’s Saved codes the same actions are grouped as Edit, Download, Print Pro and a ⋯ menu with Copy link, View analytics Pro and Delete.

Edit a code after printing

Click Edit to open the Edit QR code dialog. At the top it shows the address the code is printed as, with a reminder: “This address never changes, so codes already printed follow your edits from the next scan.” Change what you need and click Save changes.

In the free plugin:

  • Label — internal, not shown to customers.
  • Coupon — swap or remove it. Expired coupons and ones at their usage limit aren’t offered.
  • Caption — printed under the code on downloads and prints. Copies already printed keep the caption they were printed with.
  • Look — Use the current site design restyles the code; see Restyle codes you already made.
  • Status — Active or Retired.

With Pro, also:

  • Product — point the code at another product or variation. A bundle code shows its Products list instead, and a link code its Destination.
  • Campaign — move the code to another campaign. Scans and sales so far stay with the current campaign.
  • Show on orders — list the code in “QR codes for this order” for parcel inserts; see More ways to use codes.
  • Customise design… in the Look row — the code’s own design; see Give one code its own design.
  • Under Advanced: Name in reports (UTM content), which tells this code apart in WooCommerce and Google Analytics reports (see Tracking tags), and Fallback page — where scans go once the code is retired.

The code’s address itself can never be edited — that’s what keeps printed copies working.

Want to send a code’s offer in a message, an email or a social post? Use Copy link (the button shows Copied!). The copied link does exactly what a scan does, but its visits count as link clicks, not scans — so your printed codes get credit only for real scans, and in tracking tags it reports the medium link instead of print.

Don’t share the Code address shown in the list: that’s the address in the printed QR code, and visits to it count as scans.

Retire a code

When an offer ends, retire the code instead of deleting it. Click Retire on its row (or set Status to Retired in the Edit dialog): “QR code retired. Its scans now go to the product page (or the shop).”

  • A retired code applies no coupon and adds nothing to the cart. Scans go to its fallback page if it has one Pro, otherwise the product page, or the shop if the product is gone. The visitor sees “This QR code offer has ended.”
  • Its scans are still counted, and its history is kept.
  • Click Reactivate to make it active again: “QR code reactivated.”
  • On the free plan a retired code still counts toward the one-code-per-product limit.

Bulk actions

Tick several codes and choose from Bulk actions:

  • Retire / Reactivate — e.g. “5 QR codes retired.” Blank codes are skipped.
  • Delete — delete the selected codes.
  • Apply current site design — restyle the selected codes; their addresses stay the same.
  • Pro Print selected — print the selection as one PDF (see Print your codes), and Show on orders / Hide from orders for parcel inserts.

Delete a code

Deleting asks first: “Delete this QR code? Scan history is kept. This cannot be undone.” A deleted code’s printed copies stop working — they open the shop — so if anything is still out there, retire the code instead. An image the plugin added to the Media Library is deleted with the code; files you uploaded yourself are never touched.

Who can do what

  • Anyone who can edit products (the edit_products capability — shop managers, administrators, or a custom “product editor” role) gets the QR Codes menu and All QR Codes, and can create, edit, retire, download, print and delete codes.
  • Store managers (manage_woocommerce — shop managers and administrators) also get Settings and the plugin’s How it works screen, and with Pro Campaigns, Analytics and the coupon creator.
  • Pro Pointing a code or its fallback page at another website needs a store manager. A product editor sees that field read-only: “Only store managers can change an external destination.” Pages on your own store are fine for both.

Where to put your codes

  • Packaging & hangtags — turn an unboxing into a repeat purchase.
  • Flyers, posters & shelf cards — bridge the gap from print to a pre-filled cart.
  • Shop window or counter — let passers-by buy after hours.
  • Receipts & inserts — a thank-you discount on the next order.
  • Messages, emails & social posts — on a phone a code is hard to scan, so share the copied link instead.

Worked examples with the coupon setup for each are on the Playbooks page.

Next: Short links →