Repository navigation
3.25.0 - Sold items are removed properly now
Sold items not being removed
A shop with over fifteen thousand products reported that sold items were not being deleted. The condition was never broken — removal just lived on a single code path.
Three parts of the plugin notice that an eBay listing has ended: the delta sync, the hourly ended-listing check, and the Stock Review settle. Only the first could remove a product; the other two set the stock to zero and left it in the catalogue. So whichever noticed the sale first decided whether the product was ever removed — and on a large catalogue the one that could remove is the slowest, because it handles forty changed items per run.
The hourly check also excludes anything already marked Ended, so a product gets one pass and never another. If the wrong path won that race, nothing ever reconsidered it. That is why large shops saw this on nearly every sale and small ones never did.
- FIX: all three paths can now remove, through one shared decision. The arithmetic is unchanged — listed minus sold, from eBay's own figures — and an ended-but-unsold listing is still left alone.
- NEW: Stock Review finds products this already missed, counts them, and offers to move them to the trash. They are shown first, nothing runs until you press the button, and they go to the trash rather than away for good.
- When a sold-out product is deliberately kept, the activity log now says why. All six reasons used to be silent, and the line that did appear read like a normal ending.
- Products you push to eBay from WooCommerce are still kept when they sell out — they are your own catalogue entries, not imported listings. Unchanged, but no longer silent.
The Auto-Sync Interval said "Disabled" when it wasn't
If you had never set the sync interval, Settings showed "Disabled (Manual Only)" while the plugin was in fact syncing hourly — and pressing Save on that page switched it off for real. Stock updates, ended listings and sold-item removal all stop when it is off.
- FIX: the screen now shows what is actually running.
763 assertions across 21 files, all checks green.