A checkout can offer standard and express delivery but preselect the wrong one. That is a different acceptance problem from matching the wrong shipping zone. Commission the enabled option set and default selection separately, including a return visit with a remembered choice.
Source-bound fact
WooCommerce lists methods from the matched zone; its first enabled method is the default. Official reference · Checked 17 October 2026.
Filled synthetic acceptance example
Synthetic teaching example, not a client case or a real-store assessment. On narrow screens, scroll to read the complete table.
| Input | Check basis | Expected |
|---|---|---|
| Disabled pickup; enabledstandard8; express18 | clean session | standard default; two options |
| Express first enabled; standard second | clean session | express default; both selectable |
| Returning session remembered express | stateful result | capture actual behaviour separately |
Supplier acceptance procedure
- Confirm the correct matched zone before testing method order; do not mix the two controls.
- Record enabled state, order, name, amount and selected status in a fresh authorised checkout.
- Repeat after user selection and reload; require explanations for remembered choices or block/plugin overrides.
Interpret the output
The first sample contains two enabled choices, not three, and selects standard. A correct default does not prove changing methods updates tax or totals correctly. Keep the selected method ID alongside the quoted amount in the handover record.
Explicit limits
Deterministic clean-session model; not proof of persisted-session or checkout-block behaviour. No live method edits, payment or pricing advice.
Replay the finite teaching model
Save both files in one folder. With Node22 or newer, run the command below. JSON contains explicit inputs and expected results. The script processes synthetic data only, with no network, credentials, payment or API calls. Passing proves the finite model only, not a live integration.
Filled inputs and expectations · Inspectable teaching script
node check.mjs shipping-method-default-versus-options.json