🛑 Issue with Post-Purchase Upsell Payment Failing (VSL After Purchase) — Any Solutions?

Hey everyone,
I’m facing a frustrating issue with my post-purchase upsell in Funnelish and I’d love some input or solutions.

Here’s the setup:
After the main purchase, a VSL starts playing immediately. The VSL lasts about 9 minutes, but the actual CTA buttons and upsell offer appear only after 5 minutes, to give the customer time to watch the presentation first.

The problem is: when customers reach that point and decide to accept the offer and add it to their order, the payment often fails — it simply doesn’t go through, even though they try to complete it.
It doesn’t happen every time, but it happens frequently enough to be costing me real money.

Has anyone dealt with something similar?
I’m wondering if:

  • the session or payment authorization is expiring after a few minutes?
  • there’s a way to extend or refresh the checkout session while the VSL is running?

Any ideas, technical workarounds, or alternative setups would be extremely helpful :folded_hands:

1 Like

Hey @ynguido ,

Inactivity during the 5–9 minute video can sometimes cause the payment session (or authorization token) to expire, depending on the payment gateway being used. Some gateways have stricter timeouts for post-purchase sessions, especially if there’s no interaction for several minutes, but please, do confirm back here what payment method did this happen with?

A few things you can try:

1. Trigger a minor interaction earlier

Consider showing the CTA button a bit earlier (e.g., at 3 minutes), even if it’s just a “Continue” or “I’m ready” button. This can reset the session timer and give the customer more flexibility while still preserving the intent of the VSL.

2. Gateway-specifics

Let us know which gateway you’re using (e.g. Stripe, PayPal, Klarna, etc.). Some handle post-purchase logic better than others, and we might be able to suggest optimizations specific to that setup.

3. Shorten the wait time

If the VSL is long, see if a shorter version (or moving key points earlier) helps — just enough to keep user engagement without risking session timeout.

Let me know your thoughts.

Thanks for the reply, the VSL I can’t reduce it in length, I need it as it is. Regarding payment processors, I use PayPal and Stripe. With both it gives this error sometimes. Can you recommend a setup or something particular to set up so that these transaction rejections don’t happen? Thank you

Can you please tell me the optimizations specific for paypal and stripe?