Checkout reports that a Payment Method ID is missing. At the same time, two orders may appear with different states, such as failed and processing. The reviewed original report describes that pattern. A later explanation in the thread was explicitly generated by AI; it is not a verified cause analysis and is not treated here as technical evidence. Q1
Reconcile money movement before retrying
Do not immediately ask the customer to pay again. Match every resulting order with its Stripe activity using amount, currency, time, account and test or live environment. Distinguish actual captures, authorisations and failed attempts. A WooCommerce status alone does not settle that comparison.
Preserve order notes and payment references before deleting, merging or manually marking orders paid. For a separate status-mapping investigation, see Stripe paid, order still pending.
Understand the missing reference
A Stripe PaymentMethod object identifies a payment instrument. Its identifier is different from a payment reference. The error points to an expected reference missing in that request path; it does not prove that another attempt was unpaid or establish a particular race condition. Q2
Trace the failing attempt
- Build a timeline: Record the browser error, both order numbers and associated Stripe events in sequence. Label separate attempts rather than assuming they are one operation.
- Read the gateway log: Locate the affected order in WooCommerce’s Stripe log and identify the first missing or rejected reference. The vendor documents this order-focused entry point. Q3
- Compare the browser flow on staging: Inspect console and network activity during a test checkout. Does the payment interface initialise? Which first response prevents progress? Do not publish complete payment requests or security tokens.
- Isolate checkout extensions: Record whether the page uses blocks or classic checkout, the gateway version and additional fields. Compare a supported standard route with the affected configuration on the copy. Do not change the theme, API version and several plugins simultaneously.
Define what a correction must prove
The original failing route should complete without the missing reference, and the intended order must map to the test payment. Blindly downgrading a Stripe API version or replaying a live request is not an evidenced remedy. Reconcile existing money movements separately using their actual states.
Keep the successful test’s identifiers and settings with the incident record. This helps distinguish a genuine correction from a different browser or payment method merely taking another route through checkout.
Frequently asked questions
Does a missing PaymentMethod ID mean no money was taken?
No. The message describes the affected request path. An earlier or separate attempt may have another payment state.
Should I delete the failed order immediately?
Not before reconciliation. It may contain the most useful timing and technical link to the incident.
Is one further successful test enough?
Only if it exercises the previously failing route and the payment-to-order mapping is correct. Another browser or checkout may avoid the original condition.
Information for assistance
Provide versions, checkout type, redacted order/payment mapping and the first failed response. Do not include card data, API keys or customer tokens.
KAN KAI WORKS can investigate payment mapping and the missing checkout reference. Get help with this case.
Prepare a findings note
Summarise your observations for your enquiry. The note is created in your browser and is not saved or sent here. You can then copy it into the contact form.
Unknown is fine. Do not enter passwords, customer data or complete confidential logs.
Support with this issue
KAN KAI WORKS can investigate payment mapping and the missing checkout reference.
Sources and scope
- Q1: Original report and visible replies
- Q2: Stripe: PaymentMethod object
- Q3: WooCommerce Stripe: logs and browser diagnosis
Sources checked: 5 November 2026. The original incident has not been independently reproduced.
