Skip to main content
Источник: api/routes/check-balance.ts — функция collectCreationFee()
  1. Atomic lock: FOR UPDATE SKIP LOCKED, чтобы не допустить двойного сбора
  2. Platform-direct cheques → получают статус waived
  3. Проверка merchant fee wallet → если кошелек не настроен, также waived
  4. checkMerchantLimits() → при превышении лимитов пишет ошибку в лог и оставляет статус pending
  5. SPL transferChecked: merchant_fee_wallet → platform_wallet
  6. Успех → collected + tx_hash
    Ошибка → pending + collection_error, сам cheque при этом не затрагивается
Критически важное свойство: сбор комиссий является non-blocking. Даже при неудаче запись о комиссии сохраняется, но жизненный цикл cheque не прерывается.