loader image
Stripe Holds

How Long Does a Stripe Authorization Hold Last?Understanding authorization windows, expiration and capture timing

A practical explanation of Stripe authorization hold windows, expiration timing and what WooCommerce stores should check before relying on deposit holds.

SecureHold WP Updated May 2026 5 min read

What is an authorization hold window?

An authorization hold is not a permanent reservation. When Stripe places a hold on a customer’s card, it does so for a limited window of time. Within that window, the merchant must decide whether to capture or release a Stripe authorization hold.

If neither action is taken before the window closes, the hold expires automatically. This is an important constraint to understand before building any deposit workflow that relies on authorization holds.

Key idea

A hold is temporary. It gives the merchant time to decide whether to capture or release the reserved amount, but it should not be treated as a permanent guarantee.

The 7-day default rule, explained carefully

For many standard card payments, uncaptured PaymentIntents are canceled after a set number of days, 7 days by default. The exact authorization window can depend on the payment method, card network, transaction type and Stripe configuration.

This 7-day figure is a practical reference point for planning, not a universal guarantee. A few important notes:

What happens when a hold expires?

When a hold reaches the end of its authorization window without being captured or manually released, Stripe cancels the uncaptured PaymentIntent automatically.

How to plan your WooCommerce deposit workflow

Understanding the authorization window is the foundation of a reliable deposit workflow. These steps help structure the timing correctly.

  1. 1Know when the deposit hold should be created: at checkout, at booking confirmation, or at the start of the rental or service period.
  2. 2Know when the rental, booking or service ends and when you will need to make a capture or release decision.
  3. 3Capture the hold only if there is a valid reason to do so, such as damage, a late return or an unpaid balance.
  4. 4Release the hold as early as possible when no issue has occurred. Waiting unnecessarily keeps the customer’s funds reserved longer than needed.
  5. 5Avoid creating holds too far in advance for long bookings. If the service starts weeks after checkout, consider whether the hold will still be valid when you need to act on it.

When longer timing may be a problem

Most deposit workflows work well within a short window. The authorization hold model becomes more complex when the gap between checkout and the end of the service is significant.

For these cases, consider alternative approaches: creating the hold closer to the service start date, using a different payment flow, or splitting the deposit into a separate order placed at the right time.

Heads up

Authorization holds are time-sensitive. For longer booking or rental workflows, confirm your timing strategy before relying on a hold. An expired hold cannot be captured.

How SecureHold WP helps

SecureHold WP makes it easier to track hold timing and act before issues arise.

Plan your deposit timing with SecureHold WP

SecureHold WP helps WooCommerce stores manage Stripe authorization holds, capture decisions and release workflows from the order admin.

FAQ

  • How long does a Stripe authorization hold last?
    For many standard card payments, uncaptured PaymentIntents are canceled after a set number of days, 7 days by default. The exact authorization window can depend on the payment method, card network, transaction type and Stripe configuration. Always check current Stripe documentation for the payment methods you support.
  • Does every Stripe hold last 7 days?
    No. The 7-day window is a common default for many standard card payments, but it is not a universal rule. The exact duration can vary by payment method, card network and Stripe configuration. Some methods may have shorter windows.
  • What happens if a hold expires?
    Once the authorization window closes, the hold expires automatically and can no longer be captured. The reserved funds become available to the customer again according to standard bank processing timelines. No refund is issued because no charge was ever made.
  • Can I extend a Stripe authorization hold?
    This depends on the payment method and Stripe configuration. In some cases it may be possible to re-authorize. Check current Stripe documentation for the payment methods you use before assuming extension is available.
  • Should I create a hold at checkout for a future booking?
    If the booking is scheduled far in the future and the authorization window may expire before the service ends, you should plan your timing carefully. Consider whether the hold will still be valid when you need to capture or release it, and whether creating it closer to the service start date would be more reliable.

Ready to use authorization holds in WooCommerce?

Start with the free plugin, then upgrade when you need advanced rules and automation.