WooCommerce Checkout Checklist
Check the essentials of payment, shipping and cart flow.
Before launching a WooCommerce store, confirm your checkout can actually take money. If the payment gateway isn't approved, shipping is mispriced, or notification emails land in spam, revenue quietly leaks away. This checklist groups the essentials — payments, shipping, tax, cart UX, and legal/ops — so gaps are easy to spot.
Tick each item and a readiness score updates in real time. Use it for a new launch, or as a regression check after swapping a payment gateway or updating a theme/plugin. Everything is evaluated in your browser and nothing is sent anywhere.
Payments
Shipping
Tax
Cart & UX
Legal & ops
Common traps that hurt checkout conversion
A feature "working" is not the same as protecting revenue. These points break most often.
- Forced sign-up: blocking guest checkout drives drop-off at the final step.
- Long forms: extra fields and steps raise abandonment.
- Untested mobile: keypad types and tap targets often look fine only on desktop.
- Tax display mismatch: prices that differ between product page and checkout erode trust.
What to test before launch
Right before going live, running the real transaction flow end to end is the surest check.
- In test/sandbox mode, verify the gateway through
approval → cancel → partial refundlike a real order. - Vary cart price and weight to confirm free-shipping thresholds and surcharges apply as intended.
- On order completion, check both admin and customer emails reach the inbox, not the spam folder.
Legal and operational readiness
Stating withdrawal/refund terms and adding a terms-acceptance checkbox are baseline safeguards against disputes. Define stock tracking and out-of-stock behavior to prevent overselling and undelivered orders. Confirm your checkout page has no HTTP resources with the mixed content check, and review the underlying WordPress security with the WordPress hardening checklist.
Where each checklist item lives in WooCommerce
Most checklist items stall not because they're hard, but because you don't know where the setting is. Here's the admin screen and key option behind each group (WooCommerce 8.x / 9.x).
| Group | Settings path | Key option |
|---|---|---|
| Payments | WooCommerce → Settings → Payments | Live API keys, test mode off, currency (General tab) |
| Shipping | Settings → Shipping → Zones | Per-zone flat/free rates, free-shipping minimum, product weight/dimensions |
| Tax | Settings → General + Settings → Tax | Enable taxes, prices entered inclusive/exclusive, cart/checkout display |
| Cart UX | Settings → Advanced + Accounts & Privacy | Allow guest checkout, cart/checkout page mapping, terms page |
| Emails | Settings → Emails | New order (admin) & processing (customer) enabled, from-address |
| Stock | Settings → Products → Inventory | Manage stock, hide out-of-stock, low-stock threshold & alerts |
Worked example: a leaky free-shipping threshold
Let's trace the most common revenue leak. You enabled "free shipping over $50," yet some customers still get charged shipping. Here's the diagnosis path.
- Add
$48to the cart and apply a$5 offcoupon → subtotal becomes$43. - If your free-shipping rule uses "minimum order amount" with the coupon option set to after coupon, the cart now falls below the threshold and shipping is charged.
- Conversely, with
$52in the cart but tax shown exclusively, some gateways evaluate the threshold against the tax-inclusive total, throwing the comparison off.
So the same "$50" behaves differently depending on whether coupons and tax count toward the threshold. Make your policy wording match the actual option, and test the ±$1 band around the threshold directly.
Common pitfall
The most frequent mistake is shipping a gateway that's still in test mode. Sandbox keys make payments look "successful" while settling nothing. If day-one revenue is zero, this is almost always why — run one small real charge with your own card right after launch and confirm it appears in the gateway dashboard.