A user signs their own gasless transaction and you submit it once. Inodra validates it, co-signs as the gas sponsor, and executes it. Non-custodial, with spend caps to keep the cost predictable.
tx.setGasOwner(config.sponsorAddress)tx.setGasPayment([])const { signature } =await wallet.signTransaction(txBytes)// one call: validate, co-sign, executeconst r = await inodra.gas.submit({txBytes, userSignature: signature })// r.digest -> the user paid nothing
A new user acts the moment they arrive, holding nothing. The step where they leave to acquire gas, and often just leave, is gone.
The user signs the transaction. Your sponsor signature only pays the gas, so no keys or funds change hands and the action stays theirs.
Per-transaction budgets, daily and per-sender caps, and allowlists for senders and move-call targets bound what a tank can pay for as usage climbs.
You send the signed transaction to one endpoint. Inodra validates it against your rules, co-signs as sponsor, executes, and returns the result and gas used.
Fund one or more tanks per project, each with its own balance, limits, and rules. Staging and production, or two apps, never draw from the same pool.
Sponsored transactions and gas spent show up in your dashboard next to the rest of your Inodra usage, not in a separate console.
Create a tank, fund it with SUI, and submit your first sponsored transaction today. A fixed 0.001 SUI fee per sponsorship.