Ошибка: Exit code 38 — Not enough extra-currencies
Причина и решение ошибки exit code 38 при нехватке extra-currencies в исходящем сообщении TON.
Exit code 38 — Not enough extra-currencies
Action phase: в исходящем сообщении указаны extra-currencies, которых нет на балансе аккаунта в нужном количестве. Это не jetton (TEP-74) и не «просто TON».
Причина
- в
CurrencyCollectionпопал словарь extra-currencies с ненулевыми суммами; - аккаунт никогда не получал эти currency id, либо баланс уже потрачен;
- ошибка сериализации: вместо «только nanoton» в value записали лишний dict;
- путаница с jetton — jetton balance живёт в отдельном jetton-wallet, не в extra-currencies.
Решение
Как избежать в будущем
В 99% dApp нужны только Toncoin + jetton/NFT по стандартам TEP. Extra-currencies не трогай, пока протокол явно их не требует. Если код упал на 38 — ищи, где в builder попал ненулевой currency dict.
Материалы gramdocs.tech носят образовательный характер и не являются финансовой, юридической или инвестиционной рекомендацией. Работа с блокчейном TON и токеном Gram связана с рисками потери средств. Правовая информация