https://microservices.io/patterns/data/transactional-outbox.html