Card transactions occur very quickly, which is what makes them so convenient for day-to-day purchases. In fact, they happen so fast that many people don’t realize that there are actually two events taking place: an authorization and a capture.
By default, the Stripe extension will perform the authorization and capture at the same time. However, by enabling the Issue an authorization on checkout, and capture later setting, you can prevent the automatic capture of charges. This allows you to manually capture the charge at a later time.
Although most merchants don’t need this feature, it may be helpful in certain cases.
NOTE: Our suggestion is that you leave authorize and capture disabled unless you have a very specific and well-justified use case in mind. If you do need or want to enable it, please read the entirety of this document beforehand!
Enabling authorize and capture later
↑ Back to topIf you wish to enable this feature, follow these steps:
- Navigate to WooCommerce > Settings > Payments > Stripe > Settings.
- Scroll down to the Payments & transactions section.
- Check the box labelled Issue an authorization on checkout, and capture later.
- A popup will appear to ask if you’re sure. Click Enable.
- Scroll to the bottom and click Save changes.
Payment method support
↑ Back to topCards, Affirm, Afterpay, and Klarna are the only payment methods that support manual capture. All other payment methods will be hidden if manual capture is enabled.
Viewing authorized orders
↑ Back to topIf an order is placed while manual capture is enabled, the order will be assigned the “On Hold” status, which you can see under WooCommerce > Orders.
If you open the order itself, you’ll see a note indicating that the payment was authorized:
Capturing authorized payments
↑ Back to topNOTE: You have seven days after the order was placed to capture the charge. After that time, the authorization will automatically expire and you will be unable to capture the charge.
To capture an authorized payment, you can either:
- Change the order status manually under WooCommerce > Orders to “Processing” or “Completed” and update the order.
- Capture the funds via the Stripe dashboard.
Partial captures
↑ Back to topYou may, if you wish, capture a lower amount than the one you originally authorized against the customer’s card. This is called a “partial capture.”
Keep in mind, however, that you can once per order. If the capture is a partial one, the difference between the captured amount and the authorized amount is immediately released back to the customer, and you will not be able to capture it later.
To perform a partial capture:
- Find the order under WooCommerce > Orders and click to open it.
- Hover your cursor over an item from the order and click the pencil icon that appears.
- In the Total box, enter the amount you wish to capture, then click Save.
- The cost of the item will updated as if a coupon were applied.
- Change the order status to
Processing
orCompleted
. - Click the Update button.
After updating the order, the lesser amount will be captured.
NOTE: Attempting to capture more than the authorized amount will fail with an error. The order can still be captured once it’s been edited to have a total less than or equal to the original authorized amount.
Cancelling authorizations
↑ Back to topAlthough authorizations expire automatically after seven days, it’s best to cancel them if you’ve confirmed that you won’t need to charge the customer. Doing so releases the hold that their bank placed on their funds.
If a customer wishes to cancel their order after it’s been authorized but before it’s been captured, you can do so by:
- Setting the order status to “Cancelled”, or…
- Cancelling the authorization in the Stripe dashboard.
Expired authorizations
↑ Back to topIf an authorized charge is not captured within seven days, the authorization will expire. An expired authorization operates similarly to a cancelled authorization, meaning that:
- The held funds will be returned to the customer.
- The order status is set to “Cancelled.”
- The funds can no longer be captured.
The only difference between an expired authorization and a cancelled authorization is that expiration happens automatically, and cancellation is a manual process.