Create Order: handling expired payment sessions and stale checkouts

How Create Order works, why payment links can stop working, what to do when a customer reports an expired link, and how to communicate the 48-hour window up front.

Written By Markus Flodmark

Last updated 4 months ago

Summary

When you use Create Order in the Merchant Portal, Brink builds a real cart and starts a checkout with the configured payment provider, then sends your customer a payment link. If the customer doesn't complete the payment within the provider's session window (typically up to 48 hours for Klarna), the link will stop working, even though the cart still exists on Brink's side. This article explains what's happening, what to do when it occurs, and how to communicate it to your customers up front so it rarely becomes a support case.


How Create Order actually works

Create Order is a thin layer on top of Brink's checkout. When you click Create Order and send the link:

  1. Brink builds a cart with the lines, prices, discounts and shipping you selected.
  2. Brink starts a checkout session with the configured payment provider (Klarna, Walley, Avarda, Adyen, etc.).
  3. Brink reserves stock for the items in the cart for the duration configured for your store market.
  4. The customer receives a hosted payment page link and completes payment as if they had checked out on your storefront.

Because the payment session is owned by the payment provider, its expiration rules are the provider's, not Brink's.


A link can fail for several reasons, all of which boil down to something the cart depends on has changed or expired:

  • Payment session expired. Each provider has its own window. For example, Klarna sessions expire after roughly 48 hours. Walley, Avarda and Adyen each have their own timeouts.
  • Stock reservation expired. The reservation timer for a market is configured per store market. If the customer waits past it, items in the cart may no longer be in stock.
  • Pricing changed. If a sale ended, a price was updated, or a campaign rolled off, the cart may now reflect terms that are no longer valid.
  • Discount code expired or was deactivated. A code that was valid when you created the order may have been disabled by the time the customer pays.

The most common cause by far is payment session expiry: the customer received the link, intended to pay later, and missed the window.


The old link cannot be revived. Once the payment session has expired, that session is dead on the provider side. The fix is to issue a fresh one:

  1. Open the order draft in the Merchant Portal.
  2. Confirm the cart is still correct (same items, same shipping market, same discount).
  3. Create a new order / new checkout for the customer. This starts a fresh payment session and, where applicable, a fresh stock reservation.
  4. Send the new payment link to the customer along with a short note (see communication tips below).

Heads up: Prices, available stock, and active discount codes are re-evaluated when you create the new order. If anything has changed in the meantime (a price update, a sale ending, a code being disabled), the new cart will reflect the current state, not the original. If a customer expects the original price to be honoured, decide on that policy before re-issuing the link.


A small amount of up-front communication eliminates most of these support cases. When you send the link, include:

  • A clear deadline. "Please complete your payment within 48 hours, otherwise the link will expire and we'll need to send you a new one."
  • Who to contact if they hit a problem (your support address or phone).
  • What "expired" looks like: let them know they may see a "checkout expired" or "session expired" message so they don't think the link is broken.

Suggested copy you can adapt:

Hi [Customer],

Here is your secure payment link: [link]

Please complete your payment within 48 hours. After that, the link will expire for security reasons and we'll need to issue a new one. If anything looks off or the link no longer works when you click it, just reply to this email and we'll send a fresh link right away.

Thanks!


Best practices

  • Send the link as close to the payment moment as possible. The shorter the gap between creation and payment, the less can go wrong.
  • Set customer expectations in writing. A line about the 48-hour window prevents the most common ticket entirely.
  • Don't recreate orders speculatively. Each new Create Order is a new cart, with current pricing and stock. Recreate only when the customer is ready to pay.
  • Watch for stacked edge cases. If both the payment session and stock reservation have expired, the new cart may not be re-buildable identically. Decide your policy on price-honouring and stock substitution in advance.
  • Keep the original order reference. When you reissue, note the original draft / order reference so support can trace the conversation.

Provider-specific notes

Session lifetimes are defined and enforced by the payment provider, not by Brink. The only window we can speak to directly is Klarna's, because it surfaces most often in support:

  • Klarna: sessions expire after roughly 48 hours. This is the most common cause of "link doesn't work" reports. After expiry, the Klarna order must be recreated.
  • Walley, Avarda, Adyen, and other providers: please contact your provider directly for their exact session-expiry policy. Each provider configures this independently and the value can also vary by your contract or market setup. Your provider's support or merchant dashboard is the authoritative source.

Once you have confirmed the window with your provider, we recommend communicating it to your customers in the same wording you use for Klarna (see the email template above).


Frequently asked questions

Q: Can you "refresh" or extend the original link instead of issuing a new one?No. Once the payment provider has expired the session, that session is gone. We can only issue a new checkout, which is technically a new payment session.

Q: Will the customer see the original price?Only if nothing changed in the meantime. The new cart is rebuilt from current product, price and discount data. If a sale has ended, the new cart will reflect the new price.

Q: Will the customer's stock reservation roll over?No. A new Create Order starts a new reservation. If items have sold out in the meantime, the new cart won't be able to include them.

Q: Does the customer need to re-enter their address?On the new checkout, yes; it's a new payment session on the provider side.

Q: Is there an automated way to reissue links for expired sessions?Not today. This is on our radar; for now, reissuing is a manual action from the Merchant Portal.


  • Error in Create Order when entering postal code (Customer Support board): related case where a Klarna session expiry surfaced as a postal-code error.
  • Knowledge Base: Klarna integration overview (if available in your tenant).
  • Knowledge Base: Stock reservation per Store Market (if available in your tenant).