• Resolved damiendoherty

    (@damiendoherty)


    Hello

    We have an issue where customers are receiving their order confirmation email twice. There is only one order being created and the payment happens once but within the order you can see the Stripe charge is being completed twice – 2 mins apart. In the order notes you can see the order is going from ‘pending to processing’ to ‘complete’ but then changed back to ‘pending to processing’ and then to ‘complete’ again. 2 minuted apart. This is also creating other issues as we have a zapier integration that is also being triggered twice.

    The page I need help with: [log in to see the link]

Viewing 11 replies - 1 through 11 (of 11 total)
  • Hi @damiendoherty,

    Thanks for sharing those details.

    From what you described, it sounds like the order is being processed twice, likely due to a duplicate webhook event from Stripe. This can occasionally happen if Stripe retries sending an event when it doesn’t receive a success response quickly enough from your site.

    To help investigate further, could you please do the following:

    • Go to WooCommerce → Settings → Payments → Stripe → Settings
    • Scroll down and enable “Log error messages”
    • Then go to WooCommerce → Status → Logs and select the most recent Stripe log

    If you spot duplicate webhook events (like two checkout.session.completed or payment_intent.succeeded events close together), that may explain the repeated order updates and emails.

    Also, please check your Stripe dashboard under Developers → Webhooks to ensure there’s only one webhook configured and that it’s not being duplicated.

    Let us know what you find!

    Thread Starter damiendoherty

    (@damiendoherty)

    Hi Mahfuzur

    Thanks for your response. Yes that does seem to be what’s happening. The webhook is being fired twice – 2 minutes apart. How do we fix this / prevent it from happening?

    Thanks

    D

    Plugin Support LovingBro (woo-hc)

    (@lovingbro)

    Hi @damiendoherty,

    Thanks for confirming that the webhook is indeed being triggered twice, and I appreciate your efforts in narrowing this down.

    To help get this fully resolved, could you confirm if you’ve had a chance to check Stripe → Developers → Webhooks to ensure there’s only one webhook configured for your site? Sometimes, duplicate webhooks can be added unintentionally, especially after re-connecting Stripe.

    Also, please take a look at the most recent Stripe log under WooCommerce → Status → Logs (after enabling logging from the Stripe settings if not already done). If you find any relevant entries around the time of those duplicate webhook events, please share them with us using https://pastebin.com or https://gist.github.com.

    Once we see the logs and webhook setup, we can guide you further on how to prevent this from recurring.

    Let’s see how it goes!

    Thread Starter damiendoherty

    (@damiendoherty)

    hi @lovingbro

    Thanks for following up. I can confirm there’s only one webhook. Here’s the logs for the duplicate webhook: https://gist.github.com/docandtee/ee136669dc693725e3313e1d38286fd7

    Many thanks

    Plugin Support shahzeen(woo-hc)

    (@shahzeenfarooq)

    Hi there!

    Thank you for reaching out!

    We’re currently aware of a known issue where order confirmation emails are sent twice when orders are paid through Bancontact. This has been reported here on GitHub:
    🔗 https://github.com/woocommerce/woocommerce-gateway-stripe/pull/4437

    Note: The bug will be fixed in the next version, scheduled for release on July 8.

    If your customer was not using Bancontact, could you please confirm which payment method was used for the order where the email was sent twice?

    Additionally, if the issue is not related to Bancontact, it would be helpful if you could share a screenshot of the order notes for the affected order. The more information we have, the more accurately we can investigate and assist you.

    Thread Starter damiendoherty

    (@damiendoherty)

    Hi @shahzeenfarooq @lovingbro
    Just coming back to this as is’t still an issue. We are not using Bancontact.

    Here’s the order notes of one. The order is coming back as complete and then the webhook is reruning so that it goes back to processing and then comoplete again. See the attachment.

    Plugin Support shahzeen(woo-hc)

    (@shahzeenfarooq)

    Hi there!

    Thank you for sharing the screenshot. Could you please confirm if you are using the latest version (9.9.0)? I noticed that the order notes you shared are quite old. Are you experiencing the same issue with any recent orders placed through Stripe? Also, could you confirm if this is happening for all orders or only specific ones? Lastly, does this occur with any payment method used on your site?

    Also, could you please share the System Status Report, which you can find under WooCommerce > Status? Please use https://pastebin.com/ or https://gist.github.com/ and share the link here in your reply. Once we have more information, we’ll be able to assist you further.

    Thread Starter damiendoherty

    (@damiendoherty)

    Yes we’re using the latest version 9.9. The problem seems to be intermitent. So doesn’t happen with every order. Just occassionally. But it still seems to be an issue.

    Plugin Support shahzeen(woo-hc)

    (@shahzeenfarooq)

    Hi there,

    Thanks for confirming that you’re on version 9.9. Since you mentioned the issue is intermittent and doesn’t affect every order, that’s useful to know.

    To help narrow this down, could you please check if there’s anything in common with the orders where the duplicate emails occur? For example:

    • Which payment method was used (card, Apple Pay, Google Pay, etc.)?
    • Do these orders share any particular characteristics (such as higher amounts, certain products, or specific customer countries)?
    • Were you able to replicate the issue using the same payment method?

    The more details we have about the affected orders, the better we can understand the pattern and assist you more accurately.

    Thread Starter damiendoherty

    (@damiendoherty)

    They seem to be just Debit / Credit Card payments via Stripe.

    They are the same product which uses a Zapier connection to send out a gift card voucher. That’s the reason we are aware of it as the webhook is firing twice and sending out the voucher via Zapier twice.

    Plugin Support LovingBro (woo-hc)

    (@lovingbro)

    Hi @damiendoherty,

    Thank you for confirming that the issue is happening with debit/credit card payments and for providing details about the recurring Zapier action for your gift card product.

    Since you’re seeing the “charge complete” webhook being triggered twice even with only one Stripe webhook configured, and you’ve confirmed you’re using the latest plugin version, here are a few troubleshooting steps to further isolate and resolve the issue:

    • Please try enabling debug logging for Stripe in WooCommerce (WooCommerce → Settings → Payments → Stripe → Settings → Enable Debug Mode) and closely review the relevant logs for orders where this occurs. Look for clues as to whether Stripe is retrying the webhook due to a timeout or if your site is responding slowly.
    • Check your Stripe Dashboard (Developers → Webhooks) for the request/response history of these events. If Stripe does not receive a timely acknowledgment from your site, it may resend the event, which can cause duplicate processing—even with only one endpoint set up.
    • Review server performance, plugin conflicts, or security settings (such as WAFs or firewall rules) that could intermittently delay webhook responses, especially during busier site periods.
    • If possible, see if this happens when using a default theme (like Storefront) and only core plugins active, to rule out theme/plugin conflicts.

    If after these steps the issue persists, consider sharing sanitized Stripe logs and system status for affected orders (using Pastebin or Gist) so the support team can help further. This pattern indicates it’s likely a webhook delivery/timing issue rather than a bug with Stripe or WooCommerce by itself, but further logs should reveal more.

    Let us know what you find, and thanks for your detailed updates so far!

Viewing 11 replies - 1 through 11 (of 11 total)

The topic ‘charge complete twice triggering double emails’ is closed to new replies.