PGQ will solve asynchronous batch processing of live transactions.
That means you're doing some INSERT/DELETE/UPDATE of rows from your live environment, and you want to trigger some actions but not at COMMIT time, later on. Not in a too distant future either, just asynchronously: without blocking the live transaction.
Every application of a certain size will need to postpone some processing at a later date, and PGQ is a generic high-performance solution built for PostgreSQL that allows implementing just that: the batch processing. PGQ will care about the asynchronous consuming of events, the error management, the queuing behaviour, etc, and it comes with a plain SQL API to do this.
The API documentation is online, this document will consider you know about it.