ЮKassa, журнал событий в оплате до и после применения
Один из нужных слоев в платежной интеграции появляется, когда webhook перестают считать достаточной истиной сам по себе. Событие от ЮKassa еще не означает, что локальная система корректно его применила. Между этими точками есть своя логика, свои сбои и свои расхождения. Если в проекте не зафиксирован этот переход, разбирать проблемы потом приходится по кускам.
Поэтому event log полезно строить в двух фазах. Сначала записывать сам факт получения события, его тип, payload и время. Потом пропускать webhook через обработчик. После этого фиксировать, было ли событие применено, осталось ли непримененным или завершилось служебной пометкой. Такая схема дает журнал жизни платежного события внутри системы.
В реальной оплате это помогает не только при сбоях, но и при повторной доставке webhook, позднем подтверждении и любых расхождениях между внешним и локальным статусом.
Витрина проекта: AI Chat github
Проект: AI Chat
Stepik: LLM-Chat + Mermaid + ЮKassa