Stripe payment links expire silently—here’s when and why

A cell phone sitting on top of a wooden table

The newsletter for newsletter operators

Daily field notes on deliverability, AI tools, hosting, and monetisation. No "top 10 plugins" filler — real tools, real numbers, real failures.

Stripe payment links look permanent. You create one, share it in a few places, and assume it’ll keep working. Most of the time it does—until it doesn’t.

The issue isn’t uptime or platform reliability. It’s that payment links behave differently depending on how you configure them, and the default settings create expiry conditions most solo operators don’t expect. A link that worked yesterday can stop accepting payments today, with no notification and no error page that explains what happened.

Here’s what actually controls payment link lifespan, and how to avoid losing sales to silent timeouts.

How Stripe payment links time out

Stripe offers two link types: reusable and single-use. Reusable links accept unlimited payments and don’t expire unless you manually deactivate them. Single-use links expire after the first successful payment.

The problem is that single-use is often the default in workflow automations, Zapier templates, and even some no-code checkout builders. If you’re generating links programmatically—say, via the Stripe API in response to a form submission—you need to explicitly set payment_link_data.type to reusable. Miss that parameter, and your link dies after one transaction.

Even reusable links can expire under specific conditions. If you’ve set an expires_at timestamp (measured in Unix epoch seconds), the link stops working at that exact moment. If you’ve attached inventory limits via the quantity parameter and stock runs out, the link goes dead. If you archive the underlying product in your Stripe dashboard, every payment link pointing to it becomes inactive.

None of these events trigger a customer-facing error message that says “this link has expired.” Instead, Stripe shows a generic “this payment link is no longer available” page, which reads like a broken URL rather than a sold-out product or time-limited offer.

Where expiry breaks your workflow

The most common failure point is evergreen content. You publish a blog post with an embedded payment link for a digital product. The link works for months. Then you update your Stripe catalog, archive an old product SKU to clean up your dashboard, and forget that three articles still reference it. Traffic keeps arriving, but conversions stop. You don’t notice until someone emails to ask why checkout isn’t working.

Automated email sequences are the second risk zone. If you’re using Zapier or Make to generate one-time payment links and send them via email—common in coaching offers or custom quotes—a single-use link that doesn’t convert within 24 hours often gets forgotten. The recipient clicks it a week later and sees a dead page. You lose the sale and the trust.

Affiliate campaigns and podcast sponsorships are the third. You create a payment link with a UTM-tagged URL for attribution, share it on a podcast episode, and set a 30-day expiry to match the sponsorship term. The episode stays live for months. New listeners find it, click the link, and hit a wall. You’re paying for exposure that can’t convert.

How to build links that don’t time out

Start by auditing your existing links. Log into your Stripe dashboard, navigate to Payment links, and filter by status. Any link marked “archived” is dead. Any link with an expiry date shows a countdown. If you’re using the Stripe API, query the /v1/payment_links endpoint and check the active and expires_at fields.

For new links, default to reusable unless you have a specific reason not to. Single-use links make sense for unique invoices, limited-quantity launches, or one-off custom pricing. For products you sell repeatedly—courses, templates, memberships, consulting packages—reusable links eliminate the expiry risk entirely.

If you need time-based urgency, use expires_at but pair it with a redirect. Set up a fallback URL that explains the offer has closed and points to your current catalog or waitlist. Stripe doesn’t let you configure this natively, but you can build it with a URL shortener (Rebrandly, Short.io) or a lightweight redirect script on your own domain. When the payment link dies, the short link still resolves to something useful.

For inventory-limited products, monitor stock levels outside Stripe. Use a spreadsheet, a Notion database, or a simple automation that pings you when quantity drops below a threshold. Stripe’s inventory counter works, but it doesn’t warn you before a link goes inactive. By the time you notice, you’ve already lost traffic.

What to do when a link expires

If a payment link dies mid-campaign, you can’t revive it. Stripe doesn’t offer a “reactivate” button. Your only option is to create a new link, which means updating every place the old URL appears: email sequences, landing pages, social bios, podcast show notes, affiliate dashboards.

This is why versioning matters. If you’re running a launch or a limited-time offer, append a date or version number to your payment link slug from the start. Instead of /buy-course, use /buy-course-june-2026. When the link expires, you’re not trying to remember where you embedded a generic URL. You can search your site and email platform for the specific string and replace it in one pass.

For high-value products, consider skipping payment links entirely and using Stripe Checkout Sessions instead. Sessions give you more control over expiry (default is 24 hours, configurable up to 30 days), let you pass custom metadata for attribution, and generate a unique URL per transaction. The trade-off is added complexity—you need a server endpoint or a serverless function to create the session—but for offers above $500, the reliability gain is worth it.

If you’re running a content business on Stripe, audit your payment links this week. Dead links cost you more than a single lost sale—they erode trust every time a reader hits a broken checkout. And if you’re building workflows that generate links automatically, default to reusable, set expiry only when necessary, and version your URLs so you can find them later.

What payment-link failure have you run into? Reply and let us know—we’ll cover it in a future piece.

The newsletter for newsletter operators

Daily field notes on deliverability, AI tools, hosting, and monetisation. No "top 10 plugins" filler — real tools, real numbers, real failures.

Other newsletters you might like

Love Castles

Apart from the fascinating and rich history of castles, people love to visit them for their majestic beauty. From the imposing stone walls to the beautiful architecture, there is something captivating about these grand structures.

Subscribe

Love London

A newsletter for Londoners who want to rediscover their own city. Travellers planning their first or fifth visit. Anglophiles who fell in love with London through literature, film, or a rainy afternoon on the South Bank.

Subscribe

Love South Africa

South Africa as a travel destination. The Rainbow nation full of wonderful gems to visit. Going on Safari in the Kruger National Park, visiting the beautiful beaches of Cape Town, indulge in the South African culture and heritage.

Subscribe

My Local Dublin

The Dublin you don't see from a tour bus — local stories, hidden gems, food, events and the best of the city, by locals for locals.

Subscribe

Newsletters via the One Two Three Send network.  ·  Want your newsletter featured here? Click here