WooCommerce & Online Payments
WooCommerce My Account Orders or Downloads Page Returns 404?
An account dashboard can load while Orders, Downloads, or payment-method links return 404. Trace the assigned page and endpoint routes, rebuild rules carefully, and verify the result as a customer before changing entitlements.

In this guide
If WooCommerce My Account loads but Orders or Downloads returns 404, check the account page assignment, endpoint slugs, and rewrite rules first. These sections are routes attached to the account page; they do not normally require separate WordPress pages for every tab.
Record the exact failing URL and whether it was opened from My Account, a menu, or an old email. Compare it with the link generated by the current account interface. A stale custom menu URL can fail while WooCommerce’s current route works.
Distinguish page failure from endpoint failure
Open the assigned account page while logged out, then sign in with a dedicated customer test account. Check the dashboard and several tabs separately. An administrator session can conceal customer-permission or caching problems, so do not rely on the dashboard preview.
Use this first decision:
- The base account page is missing: inspect the published page and WooCommerce’s assignment.
- The base page loads but all tabs fail: investigate endpoint configuration and rewrite handling.
- Only one tab fails: inspect its slug, custom code, and conflicting route.
- Only an old link fails: compare it with the currently generated URL before changing global settings.
The WooCommerce page-display guide covers missing assignments, permalinks, cache, and conflicts. Treat a blank page, wrong destination, login redirect, and true 404 as different observations.
Confirm the account page and its content
In WooCommerce’s advanced page settings, identify the page assigned to My Account. Open that exact page in the editor and confirm it is published and contains the intended WooCommerce account output. Check that another plugin or migration did not replace its content with a simple login form.
Also inspect the page slug and any recent changes to its parent or language version. A translated account page can have a different base URL. Do not hard-code the English route into every language’s navigation without checking the multilingual integration.
The owner can gather assignments, page content, and generated links. A developer should investigate custom account templates, endpoint callbacks, language routing, or server rewrites. Avoid creating several competing My Account pages before understanding which one the store uses.
Review endpoint slugs and refresh rules carefully
Inspect the account endpoint fields in WooCommerce settings. Check for accidental blanks, duplicated slugs, or a slug already claimed by another route. Record the current values before editing them, especially if external emails or navigation contain account links.
The official endpoint URL guide requires unique endpoint names and recommends saving WordPress permalinks to rebuild rewrite rules for 404s. It also notes that routes such as view-order need the appropriate order identifier.
After confirming the settings, go to Settings > Permalinks and save without changing the structure. Test the same generated customer link again. If this resolves the issue, record the result and check the remaining tabs; do not keep changing URL structures.
If rewrites remain broken, have the host or developer inspect the actual server configuration. Apache, nginx, and Windows hosting do not share identical rewrite configuration. Copying a generic server file into production can disrupt routes beyond WooCommerce.
Trace conflicts when only one route fails
Compare the failing slug with custom pages, membership plugins, endpoint extensions, and language routes. Then reproduce the request on a backed-up staging copy. Disable or adjust the suspected custom route there and test again, preserving the original behavior for comparison.
A renamed tab label is not necessarily the route slug. Likewise, a navigation item can keep an old URL after the setting changes. Check menus, account customizations, and generated links independently so the repair addresses the source of the wrong URL.
If caching serves the wrong account response, review the full cache path and session handling. The cache-layer guide explains why clearing only a browser cache may not change the origin or CDN response. Personalized account content needs an appropriate cache policy, not merely a one-time purge.
Verify routing before repairing customer rights
A working Downloads endpoint can still show no entitlement, while a broken route can prevent a valid entitlement from being displayed. Keep these checks separate. Do not grant extra downloads, create memberships, or change order statuses to repair a 404.
Similarly, an account login loop requires session and redirect evidence, as described in the login-redirect diagnostic guide. Confirm that a supposed 404 is not a redirect to a missing login destination.
For an existing order-details link, use a test account that owns the relevant test order. Verify that its own details load and another customer cannot access them. Knowing the route and order number should not bypass ownership checks.
Complete a customer route matrix
Test the dashboard, Orders list, one owned order, Downloads, addresses, account details, and payment-method page where those features are enabled. Use the actual links generated by WooCommerce and any custom navigation your customers use.
Repeat the relevant checks in each supported language and in a fresh session. Payment-method management may communicate with a gateway, so use its sandbox and synthetic methods on staging; no live charge is needed to verify route loading.
After deployment, confirm the corrected routes on production and document old hard-coded links that need updating. Keep the staging isolation controls in place while testing account integrations. The finished repair should provide working customer routes while preserving access boundaries.
FAQs
Do I need separate Orders and Downloads pages?
Normally these are endpoints of the assigned account page. Check WooCommerce’s configuration and generated links before creating separate pages.
Can I change the endpoint to any word?
Use a unique, non-conflicting slug and review existing links and language routes. A setting change can leave custom menus or older links pointing to the previous URL.
Does saving permalinks delete orders?
No. It rebuilds URL routing rules. If the error persists, investigate the page assignment, endpoint conflict, or server routing rather than modifying order records.
Prepared for website owners by Nithu / Suthakaran Nithursan. Dated advisory facts link to primary sources. Examples are illustrative and are not client results or guarantees.