WooCommerce REST API: paginate with per_page, totals are in headers
Shows how to fix wooCommerce REST API: paginate with per_page, totals are in headers. Use it when you hit this exact problem. Skip it when your error message or symptom looks different.
TL;DR
Use perpage to change the page size and page for further pages; page numbers are 1-based. When you sync WooCommerce data, always pass perpage (up to 100) and loop on page until you have everything; the default 10-per-page silently truncates large pulls.
Steps
- When you sync WooCommerce data, always pass per_page (up to 100) and loop on page until you have everything; the default 10-per-page silently truncates large pulls. Read X-WP-TotalPages to know when to stop, and prefer page-based iteration over offset for stable results.
When to use
You are seeing this: The total number of resources and pages are returned in the X-WP-Total and X-WP-TotalPages response headers. Use this skill when you run into "WooCommerce REST API: paginate with per_page, totals are in headers".
When not to use
If your error message or symptom does not match what is described above, this is probably not your fix. Search for your exact error text instead of forcing this one to fit.
Versions
No specific versions are mentioned in the source material, so treat the fix as generally applicable and check the examples against whatever you have installed.
Why this happens
The original report does not dig into a root cause. It documents the symptom and the fix that resolved it.