Give a coupon an address. Send https://yourshop.com/coupon/spring-sale/ in an email or post it on social, and anybody who follows it arrives with the discount already on their cart.
The rule this plugin is built on
The coupon is applied through WooCommerce's own cart, and its answer is the answer.
Every restriction you set on the coupon — the expiry, the usage limit, the minimum spend, the products it covers, one-per-customer — is checked by WooCommerce, and this plugin does not re-implement or override a single one of them. A link is a convenient way to type the code, never a way around what the code says. Plugins in this category that apply the coupon straight to the session are how an expired campaign keeps discounting for months.
What you get
* A link on any coupon, written on the coupon itself where you already set the discount and its restrictions * The finished address shown ready to copy, so you never assemble it by hand into an email going to ten thousand people * Products added to the cart at the same time, if you want them — one that cannot be added is skipped, and the rest still go in * A choice of where they land: the home page, the shop, the cart, the checkout, or a page of your own * A message when the discount is applied, in your own words, with {code} for the coupon code * A list of every live link on one screen
Careful about the details
* A link always redirects. The coupon address is not a page to bookmark, a refresh must not add the products twice, and a page cache must never be able to store the link's result under the link's address. * The address is a real rewrite rule, so it works whatever your permalink structure is and wherever WordPress lives — and the rules are flushed only when you actually change the prefix. * A slug is never claimed twice. Two coupons on one address means whichever the index happened to hold, so the second is refused. * A trashed coupon takes its link with it, because a live link pointing at a coupon that no longer exists is exactly the "the code isn't working" ticket this plugin is meant to prevent. * A destination is redirected with wp_safe_redirect(), so a stored address cannot become a way out of your store.
Every license includes
- One year of updates and priority support, delivered straight to your WordPress dashboard.
- Use on 1, 5 or 25 sites depending on your license — local, staging and development sites are always free.
- 30-day money-back guarantee — full refund, no questions asked.
- Keeps working after expiry — if you choose not to renew, the plugin keeps running exactly as installed; it simply stops receiving updates and support until you do.
Requires WordPress 6.4+ · PHP 7.4+ · tested up to WordPress 6.8. Works with the classic and block checkout alike.

Elena G (verified owner) –
Hace lo que dice, aunque la documentación podría ser más clara. Semanas después Coupon URLs sigue sin dar problemas. Vale lo que cuesta.
Chloe (verified owner) –
Works fine behind my page cache. Coupon URLs is boring in the best sense. Very glad I bought it.
G. Graham (verified owner) –
Works well, I’d just like a few more options. Fine as it is.
Sarah C. (verified owner) –
This is a couple of hours a week back. Nothing I’d change.
Peter M (verified owner) –
I put this on every build now as a matter of course. Coupon URLs does its job quietly, and that is all I wanted. A rare plugin I have never had to fight with.