Kaia's protocol-native fee delegation system. Use when building gasless UX, implementing gas sponsorship, or working with fee-delegated transactions.
Fee delegation is Kaia's killer feature. A third party pays gas fees for the user at the protocol level — no smart contracts needed.
NOT ERC-4337. No bundlers, no paymasters, no UserOperations. Two signatures, one transaction.
| Type | Fee Payer Covers |
|---|
| Tx Type Suffix |
|---|
| Full | 100% of gas | FeeDelegated... |
| Partial | Specified ratio (1-99%) | FeeDelegated...WithRatio |
Partial delegation uses a feeRatio parameter. Example: feeRatio: 70 → fee payer pays 70%, sender pays 30%.
Full delegation:
TxTypeFeeDelegatedValueTransferTxTypeFeeDelegatedValueTransferMemoTxTypeFeeDelegatedSmartContractDeployTxTypeFeeDelegatedSmartContractExecutionTxTypeFeeDelegatedAccountUpdateTxTypeFeeDelegatedCancelPartial delegation (WithRatio):
7–12. Same as above with WithRatio suffix
const { Wallet, JsonRpcProvider } = require("@kaiachain/ethers-ext/v6");
// Sender creates and signs
const sender = new Wallet(senderPrivKey, provider);
const tx = {
type: TxType.FeeDelegatedValueTransfer,
to: recipientAddr,
value: parseKaia("1"),
from: sender.address,
};
const senderTx = await sender.signTransaction(tx);
// Fee payer signs and sends
const feePayer = new Wallet(feePayerPrivKey, provider);
const sentTx = await feePayer.sendTransactionAsFeePayer(senderTx);