WooCommerce status error

WooCommerce order completed but no email.

A completed order should trigger the customer completed-order email only when the completed transition happens and the template is enabled.

Failure stage

Order exists: WooCommerce has an order record.
Completed transition: email fires when the status changes into completed, not merely because the order page says completed later.
Completed-order template: customer completed-order email must be enabled.
Likely failure: status did not transition, template disabled, custom automation bypassed email hooks, or transport failed.

Evidence-to-cause matrix

EvidenceLikely causeFirst check
Order was manually edited to completedStatus transition may not have fired as expectedUse order actions to resend completed-order email.
Automation marks orders completedHook bypass or timing issueCheck automation/action scheduler logs.
Completed template disabledTemplate stops before wp_mailEnable Customer completed order email.
Processing email sent, completed email missingCompleted template/status path onlyDo not change global SMTP first.
Provider log has no completed-order eventWooCommerce did not generate emailInspect order notes and template enabled state.
Provider log accepted messageRecipient filtering/delivery stageCheck spam/quarantine and sender authentication.

WooCommerce path

StageWhat to verify
Order eventOrder actually transitioned into completed, not only displayed completed later.
Email templateCustomer completed-order email is enabled.
RecipientBilling email is valid on the completed order.
wp_mailOrder notes or logs show WooCommerce generated the completed-order email.
SMTPProvider saw an event for the completed-order resend or transition.
InboxDelivery filtering matters only after provider acceptance.

Do this first / do not do this yet

Do this first

  • Open WooCommerce > Settings > Emails > Completed order.
  • Confirm the template is enabled.
  • Review order notes for the completed transition timestamp.
  • Use order actions to resend the completed-order email.

Do not do this yet

  • Do not assume payment success equals completed status.
  • Do not debug the New order admin email; this is a customer completed-order path.
  • Do not rewrite DNS if the provider never saw the email.
  • Do not change all templates when only Completed order is missing.

Bad/current pattern

Order status: completed
Completed template: not checked
Processing email: sent
Provider log: no completed-order message
Action taken: changed SPF

Corrected pattern

Order status: completed via status transition
Completed template: enabled
Action: resend completed order email
Provider log: accepted customer completed-order message
Next: recipient delivery/spam check if customer still misses it