What collides
The QuickBooks request processor is single-threaded and holds one company file. A batch holds its session for the whole run — deliberately, since opening a session per entry would add minutes to a large batch. While a batch is running, a Web Connector sync starting up gets refused. While a sync is running, a batch fails to start. Neither corrupts anything: the loser gets an error and the work stays queued. The symptoms don’t announce themselves as a collision, so recognise them:- A batch fails at entry 1 with a session error, having posted nothing.
- The Web Connector logs a failed session and retries on its next cycle.
- A run in the console shows as aborted with QuickBooks’ message against it.