Если вы используете 2.x, вы можете написать отдельную конечную точку, где очередь ошибок является ее входной очередью. Недостатком является то, что сообщения будут приходить из очереди. Предполагая, что вы все еще хотите хранить их, вам придется отправить их в базу данных или в другое хранилище.
Вы также можете написать Saga, которая опрашивает очередь ошибок, чтобы проверить наличие сообщений и обновляет соответствующий статус. После каждой проверки очереди вам нужно будет запросить другой тайм-аут.
В версии 3.0 у вас больше контроля над исключениями, и вы можете реализовать свой собственный способ обработки ошибок. Если вы реализуете интерфейс IManageMessageFailures, вы можете выполнять свою работу там.