Inventory mismatch is the failure mode that costs real money. Oversells trigger refunds, angry customer emails, and reputation damage. Before you nuke everything and re-sync (which can itself introduce issues), walk through this diagnosis in order. In our experience, 90% of mismatches are one of five causes.
1. Conflict resolution rule misconfigured
If both Clover and WooCommerce can decrement stock (in-store sale + online sale happening in parallel), conflict resolution decides whose count wins. Set wrong, the recent sale gets overwritten by a stale count and the total drifts.
Fix: in CloverWoo (or your plugin) settings, the recommended rule for stock is 'newest wins' — whichever platform updated most recently is authoritative. Verify your setting. If you're on 'Clover wins' or 'Woo wins' strict, those work but require all stock edits to happen on that source.
2. Multi-location stock not mapped correctly
Clover's multi-location merchants have per-location stock. If your plugin pulls stock from the wrong location, or sums across locations you don't sell from online, web stock counts are wrong by construction.
Fix: confirm which Clover location is your 'online fulfillment' location. In plugin settings, set that as the source for Woo stock. If you sell from multiple locations online, configure the plugin to sum only the online-fulfillment ones.
3. Variable products with unmapped variants
Clover item groups map to WooCommerce variable products, with each Clover item becoming a variant. If a new Clover variant appears after initial sync (you added XL to your shirt line), it may not auto-attach to the existing Woo variable product.
Fix: run a mapping audit from the plugin dashboard. It flags orphaned Clover items and unmapped Woo variants. Bind them manually, or delete and re-create the variable product to force a fresh mapping.
4. Webhook event missed during downtime
If your site had an outage (downtime, maintenance, host issue), webhooks delivered during the outage failed. Clover retries with exponential backoff but may give up before your site is back. Missed events = drifted stock.
Fix: run a full inventory reconciliation after any outage. CloverWoo has a 'Reconcile Stock' action that pulls current Clover counts and reconciles against Woo. Schedule this after known maintenance windows.
5. Manual edits outside the plugin
Admin users editing stock directly in the Clover POS app or directly in the Woo admin without going through the sync flow can create drift. The plugin sees 'someone changed this' and the conflict rule applies — but if the other platform never heard about the change, drift persists until the next reconciliation.
Fix: train staff to do stock adjustments from one platform only (Clover POS is the usual choice). Use the other platform read-only for stock. Alternatively, rely on CloverWoo's periodic reconciliation to catch drift.
Diagnosis procedure
- Pull a diff report from the plugin that lists every SKU where Clover and Woo disagree.
- For each row, check which platform was edited most recently (plugin log usually shows this).
- If Woo is stale → likely cause 4 (missed webhook) or cause 1 (wrong conflict rule).
- If Clover is stale → cause 5 (manual Woo edit not propagated).
- If variants specifically are off → cause 3 (mapping).
- If only stock from certain locations is wrong → cause 2.
Resolving drift without a full re-sync
A full re-sync can be disruptive — it rewrites everything and can itself trigger conflict events. For a targeted fix:
- Identify the authoritative source for the drifted SKUs (usually Clover for physical stock).
- Use the plugin's 'Force Stock Push' action from Clover to Woo for just those SKUs.
- Verify Woo now matches Clover.
- Re-enable normal bidirectional sync.
Frequently asked questions
How quickly does CloverWoo sync stock changes?
Typically within 1–3 seconds of the Clover event, via webhooks. If webhooks are down, scheduled reconciliation catches up hourly.
Can I force a full inventory re-sync?
Yes — from the plugin dashboard there's a 'Full Stock Sync' action that pulls every SKU's current count from Clover and writes to Woo. Use during recovery from known drift or after major data changes.
What about products that don't track inventory?
Non-tracked items (services, digital products) are skipped by inventory sync. Make sure you haven't accidentally marked a physical SKU as non-tracked — that's a common cause of apparent mismatch.
Do tax and discount changes affect inventory?
No. Inventory sync only cares about stock counts. Tax and discount changes sync separately and shouldn't interfere.