Александр Герасимов, Рекомендую услышать меня, если хотите решить свою проблему )) Повторюсь, вы НЕ вызывает burn, вы создаете новый контракт т.к. ваша транзакция не содержит адрес контракта(поле to). Вы прислали мне свою транзакцию:
там черным по белому написано:
[Contract 0x005c9ddf8defed79f94cb94260882b25b7f33097 Created] -- т.е. эта транзакция создает контракт хоть и битый, а не вызывает ваш уже созданный.
точнее будет сказать вы запустили скрипт, который должен делать деплой. Видимо, проблема только в том, что вы не указываете адрес контракта, когда конструируете транзакцию (поле to) и поэтому блокчейн это расценивает как попытку создать новый контракт
const tx = {
...
https://eth.wiki/json-rpc/API