Today, we’re excited to announce that ConsenSys has acquired any.sender to join the Infura team! Any.sender is a team of two very talented engineers, Patrick McCorry and Chris Buckland, who built an Ethereum transaction relaying service that not only makes the transaction sending process much easier for developers and end-users, but also prevents them from overspending on network fees by actively managing the gas involved in sending their transactions.
We’re thrilled to welcome Pat and Chris into the Infura family and incorporate any.sender’s powerful relaying features into the Infura development suite. Infura has been actively working on improving the transaction experience for developers and the work the any.sender team has done will form the foundation of many Infura features that target solving this problem for developers.
Pat and Chris are thought leaders in the space, exceptional engineers, and generally great people. Adding them to the team instantly accelerates our efforts to provide the tools developers need to build on Ethereum and adds handsomely to our already industry leading development team.
Introducing Infura Transactions (ITX)
Infura Transactions (ITX) is a simplified way to send Ethereum transactions. Using ITX removes the need for developers to deal with the complexities around gas fee management.
Before ITX, developers had to:
- Monitor the gas price market and pick a competitive fee, based on all transactions in the network’s pending pool
- Keep track of account nonces
- Manage their own transaction queue and make sure an earlier low-fee transaction doesn’t prevent later high-priority transactions from being mined
- Make sure to re-publish low-fee transactions with a higher fee when network conditions change (failing to do so might get their transactions stuck indefinitely in a pending state, or dropped from the network pool).
Many developers today choose to overpay their gas fees in an attempt to minimize the likelihood of running into these issues, although the recent upsurge in Ethereum gas prices has made this approach increasingly inefficient. The real solution is using a specialized, reliable transaction infrastructure that authorizes, publishes and verifies that a transaction was indeed accepted into the blockchain.
With ITX, such an infrastructure is now available. Developers will be able to:
- Send transactions without having to worry about setting the right gas price
- Benefit from the ITX monitoring infrastructure that ensures transactions are re-published with competitive gas prices rather than getting stuck or dropped from the network pool
- Submit transactions to Ethereum only once and pay the minimum gas possible required by the current network conditions to ensure transactions are successfully mined.
- Pay for the gas of a transaction on behalf of their users.
The result of this service enables users to both have more reliable transactions and not overspend on the gas prices they typically use for making sure their transactions are mined.
How does it work?
ITX introduces three new RPC methods:
relay_sendTransaction: specifies a transaction to be created, signed and relayed by Infura.
relay_getTransactionStatus: returns the status of a relay transaction specified by its id
relay_getBalance: returns the balance of the user's ITX relaying account
These new methods allow users to send transactions to be relayed by ITX and monitor key functions of the system, including the status of the transaction, and the balance of their account (required to relay transactions).
There are three steps developers need to take when using ITX:
- On-chain deposit
Relayed transactions via ITX can be paid for by depositing ETH with Infura’s on-chain deposit contract. This action credits the user’s gas tank with the corresponding amount of ETH. The ITX relay system is responsible for managing the user's gas tank.
- Send relay request
When ITX receives a new transaction relay request from a respective user, it first checks if the user has a sufficient balance before locking a portion of their funds and then relaying the transaction on their behalf to the Ethereum network.
- Transaction mined & balance deducted
As soon as the transaction is mined and becomes part of the blockchain, the cost of the transaction which includes the network fee (gas price * gas used) + the ITX fee, will be subtracted from the user's gas tank balance.
The Infura Transactions alpha release is available for testing on the Rinkeby network and will roll out to a small group of beta testers before the official public rollout in Q1, 2021.
If you’d like to be considered for early access to the feature, submit your request here. Once given access, the feature is easy to use - we’ve included a short walkthrough in our documentation portal.