VIP191 is an upgrade proposed by Totient that adds generalized native fee delegation to the Vechain blockchain. This innovative feature allows anyone to use a decentralized application regardless of their knowledge of blockchain technology by removing the toughest barriers for adoption.

While the Multi-party Payment Protocol (MPP) has been instrumental in building the first wave of usable dApps, its use cases are limited. VIP191 generalizes this functionality to open up many new possibilities for developers.

How it works

VIP191 allows someone other than the sender to co-sign a transaction in order to pay for the transaction fee, also known as a Designated Gas Payer. Both the sender’s and gas payer’s signatures get included with the transaction so that the blockchain is able to discern who the sender is and who is responsible for the transaction fee.

This enables a 3rd party, such as a dApp or a wallet, to pay for transaction fees on behalf of the sender, while still allowing the sender to maintain full control over their transaction signing and sending lifecycle.

A VIP191 transaction has 2 signatures, one from the gas payer and the other from the transaction sender.

VIP191 Use Cases 💡

There are many ways to use VIP191 to create better user-experiences for blockchain applications. Two major beneficiaries are wallets and protocols.

Wallets

Wallets can implement VIP191 to enable the use of dApps with a single token. If the dApp itself does not cover the transaction fee, the wallet can accept any token that the user may hold as payment in return for covering the transaction fee.

By abstracting gas tokens away from the user, dApps can be used with a single token, making it much easier to onboard new users.

Protocols

Decentralized protocols serve as building blocks to create powerful and secure applications. Paying the transaction fees for contracts not owned by the application isn’t possible with MPP. Using VIP191, a developer can sponsor any individual transaction straight from their dApp so they do not need to worry about being the owner of the contracts that they’re using.

With VIP191, developers can use multiple protocols as building blocks for their decentralized applications while still paying the transaction fees for their users.

VIP191 also solves the onboarding issue where users need to approve multiple smart contracts before getting started. All approvals can be bundled into a single transaction, as opposed to a separate transaction for each.

These are just a few of the many possible use cases of VIP191 and we look forward to discovering new ways to innovate how we interact with the blockchain.