I did, but the other way round (OXID was the driver and not the driven). For every order we receive, we put a message into a Queue (in this case RabbitMQ) that was then processed async via numerous workers.
We where using Bunny back then to talk to RabbitMQ, but today I would maybe rely on the symfony/messenger component.