Ошибка: Exit code 37 — недостаточно Gram
Причина и решение ошибки exit code 37 (недостаточно Gram) на action phase в TON.
Exit code 37 — недостаточно Gram
Action phase не смог выполнить исходящее действие: на аккаунте не хватает Gram на value сообщения и/или комиссии. Compute phase мог пройти успешно — падение именно при отправке.
Причина
valueисходящего сообщения больше баланса после gas compute phase;SendModeоставляет на балансе меньше, чем нужно для fees;- контракт шлёт несколько сообщений, сумма value + fees > остатка;
- забыли учесть storage fee и forward fee.
Решение
Как избежать в будущем
Перед send считай value + forward_fee + gas_reserve. В тестах (@ton/sandbox) логируй баланс до/после и не используй SendRemainingBalance, если контракту ещё нужны средства на следующие вызовы.
Материалы gramdocs.tech носят образовательный характер и не являются финансовой, юридической или инвестиционной рекомендацией. Работа с блокчейном TON и токеном Gram связана с рисками потери средств. Правовая информация