waves_logo Docs
  • Почему Waves
    Почему Waves
  • Основные понятия
    Основные понятия
  • Аккаунт
    • Создание аккаунта
      Создание аккаунта
    • Адрес
      Адрес
    • Баланс аккаунта
      Баланс аккаунта
    • Хранилище данных аккаунта
      Хранилище данных аккаунта
    • Псевдоним
      Псевдоним
    • dApp и смарт-аккаунт
      dApp и смарт-аккаунт
    Аккаунт
  • Токен (ассет)
    • NFT: невзаимозаменяемый токен
      NFT: невзаимозаменяемый токен
    • Смарт-ассет
      Смарт-ассет
    • ID токена
      ID токена
    • WAVES
      WAVES
    Токен (ассет)
  • Транзакция
    • Комиссия за транзакцию
      • Спонсирование комиссии
        Спонсирование комиссии
      Комиссия за транзакцию
    • Подпись и подтверждения
      Подпись и подтверждения
    • Типы транзакций
      • Вызов скрипта
        Вызов скрипта
      • Выпуск
        Выпуск
      • Генезис
        Генезис
      • Данные
        Данные
      • Довыпуск
        Довыпуск
      • Закрытие лизинга
        Закрытие лизинга
      • Лизинг
        Лизинг
      • Массовый перевод
        Массовый перевод
      • Обмен
        • Ордер
          Ордер
        Обмен
      • Обновление информации ассета
        Обновление информации ассета
      • Перевод
        Перевод
      • Сжигание токена
        Сжигание токена
      • Cоздание псевдонима
        Cоздание псевдонима
      • Спонсирование
        Спонсирование
      • Установка скрипта
        Установка скрипта
      • Установка скрипта ассета
        Установка скрипта ассета
      • Ethereum-like транзакция
        Ethereum-like транзакция
      Типы транзакций
    • Валидация транзакции
      Валидация транзакции
    Транзакция
  • Блок
    • Корневой хеш транзакций
      Корневой хеш транзакций
    • Блок генезиса
      Блок генезиса
    Блок
  • Нода
    • Лизинг
      Лизинг
    • Доход генератора блока
      Доход генератора блока
    • Монетарная политика
      Монетарная политика
    Нода
  • Mainnet, Testnet, Stagenet
    Mainnet, Testnet, Stagenet
  • Unit Zero
    Unit Zero
  • Оракул
    Оракул
  • Протоколы и форматы данных
    • [en] Cryptographic practical details
      [en] Cryptographic practical details
    • Leased Proof of Stake
      Leased Proof of Stake
    • [en] Waves-NG solution
      [en] Waves-NG solution
    • Протокол Waves-NG
      Протокол Waves-NG
    • Waves 1.5
      Waves 1.5
    • Типы данных блокчейна
      Типы данных блокчейна
    • Бинарные форматы
      • Бинарный формат адреса
        Бинарный формат адреса
      • Бинарный формат псевдонима
        Бинарный формат псевдонима
      • Бинарный формат блока
        Бинарный формат блока
      • [en] Network message binary format
        • [en] Block message binary format
          [en] Block message binary format
        • [en] Checkpoint message binary format
          [en] Checkpoint message binary format
        • [en] Get block message binary format
          [en] Get block message binary format
        • [en] Get peers message binary format
          [en] Get peers message binary format
        • [en] Get signatures message binary format
          [en] Get signatures message binary format
        • [en] Handshake message binary format
          [en] Handshake message binary format
        • [en] Peers message binary format
          [en] Peers message binary format
        • [en] Score message binary format
          [en] Score message binary format
        • [en] Signatures message binary format
          [en] Signatures message binary format
        • [en] Transaction message binary format
          [en] Transaction message binary format
        [en] Network message binary format
      • Бинарный формат ордера
        Бинарный формат ордера
      • Бинарный формат транзакции
        • Вызов скрипта
          Вызов скрипта
        • Выпуск
          Выпуск
        • Генезис
          Генезис
        • Данные
          Данные
        • Довыпуск
          Довыпуск
        • Лизинг
          Лизинг
        • Массовый перевод
          Массовый перевод
        • Обмен
          Обмен
        • Обновление информации ассета
          Обновление информации ассета
        • Отмена лизинга
          Отмена лизинга
        • Сжигание токена
          Сжигание токена
        • Cоздание псевдонима
          Cоздание псевдонима
        • Спонсирование
          Спонсирование
        • Перевод
          Перевод
        • Установка скрипта
          Установка скрипта
        • Установка скрипта ассета
          Установка скрипта ассета
        • Ethereum-like
          Ethereum-like
        Бинарный формат транзакции
      • Бинарный формат подтверждений
        Бинарный формат подтверждений
      Бинарные форматы
    • [en] Validation rules
      [en] Validation rules
    Протоколы и форматы данных
  • Термины
    Термины
      • English
      • Русский
      On this page
        • Спонсорский ассет
        • Как работает спонсирование
        • Как включить спонсирование
        • Как отключить спонсирование
        • Ограничения
        • Обсуждение
      waves_logo Docs

          # Спонсирование комиссии

          Необходимость платить комиссию за каждую транзакцию может стать препятствием для привлечения новых пользователей децентрализованных приложений. Иногда пользователи не знают ничего о WAVES, или не понимают, где взять WAVES, или не хотят тратить средства. Механизм спонсирования позволяет создавать приложения, которые не требуют наличия WAVES у пользователя.

          # Спонсорский ассет

          Аккаунт, выпустивший ассет, может сделать его спонсорским — разрешить любым пользователям платить в этом ассете комиссию за транзакции вызова скрипта и транзакции перевода. Спонсорский ассет можно распределить среди пользователей приложения.

          # Как работает спонсирование

          После включения спонсирования и при условии, что выполнены ограничения, механизм работает следующим образом:

          1. Пользователь отправляет транзакцию и указывает комиссию в спонсорском ассете.
          2. Спонсор получает сумму комиссии в спонсорском ассете со счета пользователя.
          3. Генераторы блоков получают комиссию в WAVES за счет спонсора (в соответствии с протоколом Waves-NG комиссия распределяется между генератором текущего и следующего блока в соотношении 40/60).

          Скрипт на аккаунте спонсора не выполняется и не влияет на спонсирование, поскольку транзакция отправлена с аккаунта пользователя.

          Комиссия в WAVES, взимаемая со спонсора, пропорциональна комиссии, указанной отправителем транзакции:

          feeInWaves = feeInSponsoredAsset × 0,001 / minSponsoredAssetFee

          minSponsoredAssetFee — количество спонсорского ассета, эквивалентное 0,001 WAVES. Спонсор устанавливает эту величину при включении спонсирования.

          Например, если спонсор установил соотношение 3 токена = 0,001 WAVES, то минимальная комиссия за транзакцию вызова скрипта составит 15 токенов, что соответствует 0,005 WAVES.

          ⚠️ Обратите внимание:

          • Пользователь может использовать спонсорский ассет для оплаты транзакций, не связанных с использованием конкретного приложения.
          • Пользователь может указать любую сумму комиссии, в том числе значительно превышающую минимальную.

          # Как включить спонсирование

          Чтобы включить спонсирование, нужно отправить транзакцию спонсирования, указав в ней minSponsoredAssetFee. Пример транзакции

          В бинарном и JSON-представлении транзакции спонсирования значение minSponsoredAssetFee указывается в минимальных единицах («копейках») спонсорского ассета.

          Создать транзакцию спонсирования можно:

          • В приложении WX Network , разработанном сторонней командой из сообщества. См. раздел Спонсорская транзакция базы знаний WX Network.
          • С помощью одной из клиентских библиотек. См. также примеры в разделе Создание и отправка транзакций.

          Комиссия за транзакцию спонсирования — 0,001 WAVES (до активации фичи № 15 “Ride V4, VRF, Protobuf, Failed transactions” — 1 WAVES).

          # Как отключить спонсирование

          Чтобы отключить спонсирование, нужно отправить транзакцию спонсирования, указав null в качестве minSponsoredAssetFee.

          # Ограничения

          • Только аккаунт, выпустивший ассет, может включать и выключать спонсирование.
          • Смарт-ассет не может быть спонсорским.
          • Комиссия в спонсорском ассете предусмотрена только для транзакций вызова скрипта и транзакций перевода.
          • Баланс спонсора в WAVES должен быть достаточным для уплаты эквивалента комиссии, указанной в транзакции.

          Некоторые приложения отключают возможность указать комиссию в спонсорском ассете, если баланс спонсора менее 1,005 WAVES.

          # Обсуждение

          Дальнейшее развитие спонсирования обсуждается на форуме Waves в разделе WEP-2 Customizable Sponsorship .

          Комиссия за транзакцию
          Подпись и подтверждения
          Комиссия за транзакцию
          Подпись и подтверждения