Onfleet not receiving your WooCommerce orders? 7 common causes and fixes
Your WooCommerce store is taking orders, but they never show up as tasks in Onfleet. Your drivers are waiting, customers are asking where their delivery is, and you are copying addresses by hand to keep things moving. The good news: order sync failures almost always come down to a handful of well-understood causes. Here are the seven most common reasons WooCommerce orders don't reach Onfleet, and exactly how to fix each one.
1. Wrong or missing Onfleet API key
The single most common cause. Onfleet authenticates every request with an API key, and if the key is missing, mistyped, revoked, or belongs to a different Onfleet organization, every attempt to create a task is rejected before it even reaches your team. Orders pile up in WooCommerce while Onfleet stays empty.
This often happens after someone regenerates the key in Onfleet for security reasons, or copies it with a trailing space, or pastes a key from a sandbox account into a live store.
- Log in to Onfleet, go to Settings → API & Webhooks, and confirm an active API key exists.
- Copy it cleanly, with no leading or trailing spaces.
- Paste it into your integration and save, then send a single test order all the way through.
Fix
Regenerate the API key in Onfleet, paste the fresh key into your connector, and push one test order. If the task appears, authentication was the problem. If it doesn't, move down this list.
2. Orders sit in a status that isn't set to sync
Most integrations only dispatch orders when they reach a specific WooCommerce status, and by default that trigger is usually Processing. If your payment gateway leaves paid orders in On hold, or you use a custom status like Ready for delivery, or orders stay in Pending payment, they will never match the trigger and never sync.
This is easy to miss because the orders look completely fine in WooCommerce. Nothing is broken, they simply never crossed the line that tells the integration to act.
- Check which status your paid, ready-to-dispatch orders actually land in.
- Compare that to the status your integration is configured to sync on.
- If they don't match, either change the trigger status or adjust your order workflow so paid orders reach the syncing status.
Fix
Set the sync trigger to the exact status your orders reach when they are genuinely ready for a driver, whether that is Processing, Completed, or a custom status. Then place a test order and watch it flow through.
3. Missing or invalid recipient phone number or address
Onfleet needs a valid destination and, in most configurations, a recipient phone number to create a task. If an order has an incomplete shipping address, a phone number in a format Onfleet can't parse, or a country code that doesn't match the number, Onfleet rejects the task. That single order silently fails while everything else syncs, so it is easy to overlook.
Common culprits are checkout fields that aren't marked required, customers entering phone numbers with letters or extensions, and addresses that can't be geocoded because a street or postcode is wrong.
- Open the specific order that didn't sync and check the shipping address and phone number.
- Make phone and full address required fields at WooCommerce checkout to stop bad data at the source.
- Store phone numbers in international format (for example +31 6 12345678) so Onfleet can validate them.
Fix
Correct the recipient details on the failed order and re-send it. Then tighten your checkout so a missing phone or address can't produce an order that Onfleet will reject in the first place.
4. A brittle Zapier or Make workflow silently failing
If you connected WooCommerce to Onfleet with Zapier, Make, or a similar automation platform, that workflow is a separate moving part outside both apps, and it fails quietly. A Zap can be turned off after an account change, hit a monthly task limit on a cheaper plan, or break the moment WooCommerce or Onfleet tweaks their API. Nobody gets a phone call. Orders just stop appearing.
The tell-tale sign is that sync worked for weeks or months and then stopped without you changing anything on your store.
- Open the automation platform and check the run history for errors or a paused workflow.
- Confirm you haven't exceeded your monthly task quota, which throttles or halts runs.
- Review the field mapping, since a renamed field on either side can break task creation.
Fix
Re-enable and repair the workflow to get moving again, but treat this as a warning sign. A middleman that fails without alerting you is a recurring liability. A native plugin removes that middle layer entirely (see the last section).
5. WooCommerce HPOS is enabled but the connector isn't compatible
WooCommerce now offers High-Performance Order Storage (HPOS), which moves orders out of the old WordPress posts tables into dedicated order tables. It is faster and it is becoming the default, but older or poorly maintained integrations still read orders from the legacy location. When HPOS is on and your connector isn't HPOS-compatible, it looks in the wrong place, finds nothing, and never dispatches a thing.
This one often appears right after you enable HPOS or migrate a store, when order sync stops for no obvious reason.
- In WooCommerce, go to Settings → Advanced → Features and check whether High-Performance Order Storage is enabled.
- Confirm your integration explicitly declares HPOS compatibility.
- If it doesn't, update it to a version that supports HPOS, or switch to a connector built for it.
Fix
Use an integration that is fully HPOS-compatible so it reads orders from the modern order tables. FleetConnector supports HPOS, so enabling it won't break your dispatch.
6. Aggressive caching or a plugin conflict blocking the background sync
WooCommerce triggers sync work in the background using WordPress cron and order hooks. Aggressive page or object caching, an overzealous security plugin, or another plugin that hooks the same order events can interrupt that chain. The order is placed, but the code that should create the Onfleet task never runs, or runs against stale data.
Conflicts like this typically show up right after you install or update another plugin, or tighten a caching or firewall setting.
- Exclude admin and API traffic from full-page caching so background requests aren't served cached responses.
- Confirm WordPress cron is actually firing; on low-traffic stores it can stall.
- Temporarily deactivate other plugins one at a time to isolate a conflict, then re-enable them.
Fix
Rule out caching first, then hunt the conflict by disabling other plugins one by one. If sync returns when a specific plugin is off, you have found the clash and can adjust its settings or its load order.
7. Rate limiting or API errors with no retry mechanism
Onfleet's API has rate limits, and any API can return a temporary error during a busy dispatch window or a brief network hiccup. The real problem isn't the occasional failure, it is what happens next. If your integration fires a task once and never retries, a single transient error means that order is lost for good. It looks synced from your side, but it never landed.
You usually notice this as random gaps: most orders sync, but every so often one vanishes with no clear pattern, especially during your busiest hours.
- Cross-check WooCommerce order counts against Onfleet task counts for a busy day to spot missing orders.
- Look for a failed-task log or sync status in your integration so failures are visible, not silent.
- Prefer a tool that automatically retries failed requests and lets you re-send with one click.
Fix
Choose an integration that tracks failed tasks and retries them instead of dropping them. A one-time fire-and-forget sync will always lose orders eventually; retry logic is what keeps your dispatch complete.
How to stop this happening for good
Most of these failures share a root cause: the connection between WooCommerce and Onfleet is either an external workflow that breaks quietly, or a tool that fires each task once and never checks whether it landed. Patch one order today and the same gap reappears next week.
FleetConnector is a native WordPress plugin built specifically for WooCommerce and Onfleet, and it is designed to close exactly these gaps:
- Failed-task tracking: every order that doesn't reach Onfleet is logged and visible, so a task never disappears without you knowing.
- One-click manual retry: fix the phone number, address, or transient error and re-send the order to Onfleet in a single click, no re-entering data by hand.
- Full HPOS support: it reads from WooCommerce's High-Performance Order Storage, so enabling HPOS won't silently break your dispatch.
- No third-party middleman: the sync runs inside your WordPress install, removing the brittle Zapier or Make layer that fails without warning.
One flat price of €199/year, unlimited orders, no per-task limits. See the full feature list on the WooCommerce to Onfleet integration page, or follow the step-by-step setup in the WooCommerce to Onfleet documentation.
Stop dispatching manually. Automate it.
FleetConnector syncs WooCommerce orders to your delivery platform automatically. Install in WordPress, configure in 10 minutes. €199/year, 14-day money-back guarantee.