Fishbowl: "Work Order is fulfilled and cannot be voided" — why
The Work Order is fulfilled and cannot be voided.
What triggers it
You tried to void a work order that is in Fulfilled status. Fulfilled means the manufacture step already finished: the finished good was received into stock and the raw materials (or subassemblies) it required were pulled out of stock and consumed. The dialog appears the moment you attempt the void on a work order that has crossed into that state, not before.
Why Fishbowl blocks it
A void is meant to cancel something that has not happened yet. By the time a work order is fulfilled, it has already moved inventory in two directions at once: quantity added for the finished good, quantity removed for every component, each at a specific cost. Those movements set your on-hand counts and feed the cost layers behind your inventory valuation. Letting you void at this point would force Fishbowl to silently unwind all of that, which can leave negative on-hand, orphaned cost, or a valuation that no longer ties to any transaction. Blocking the void keeps the completed activity as a real, dated record rather than something that quietly disappears.
What to do
Correct it forward instead of erasing it. Reverse the finished-good receipt with an inventory adjustment that removes the quantity you should not have made, and add back the raw materials that were consumed, at the same costs. If the real issue is cost rather than quantity, handle it as a costing correction. This is a reconciliation, not a one-click undo: you are recording the offset explicitly so the audit trail shows both the original build and its reversal.
If it is already reconciled or exported
If the fulfillment already posted to QuickBooks or Xero, the void was never going to clean that up for you. Post a matching adjusting entry on the accounting side for the same period and amounts, and confirm the finished-good and component values agree between Fishbowl and your ledger. Reversing only in Fishbowl is the classic way inventory and books drift apart.