Skip to content

outbox capability

outbox adds the transactional outbox pattern to your Go service, guaranteeing events are published even when the process crashes between a database write and a message broker publish.

  • Outbox table
  • Publisher
  • Relay worker for at-least-once delivery

Without the outbox pattern, a crash between committing to the database and publishing to a message broker means the event is silently lost. Use outbox whenever events must be reliable — order placed, payment received, shipment dispatched.

Suggests: postgres, event-bus, scheduler

Terminal window
verikt new my-service --language go --cap postgres,event-bus,outbox
# or add to an existing service:
verikt add outbox

event-bus

In-process event bus that the outbox relay publishes to.

postgres

PostgreSQL for the outbox table.

scheduler

Periodic scheduler to run the relay worker.