Smart Contract interactions
Interacting with Kiln Onchain without access to Kiln Connect API or User Facing applications.
We DO NOT recommend you proceed with this path unless you are an experienced user and have an urgent need to access the funds.
Note: If you are trying to interact with the contract via a Ledger device, Ledger Live does not work currently. We would recommend you connect it with a trusted browser wallet extension, for example Rabby Wallet. See here for more info.
Following the incident involving SwissBorg, Kiln has implemented precautionary measures including Orderly exiting of all Ethereum (ETH) validators.
As a result, your staked ETH and rewards have been exited from staking and are now waiting to be withdrawn from the staking contract. However, the smart contract is not aware that these validators were exited, since the procedure was triggered outside the standard exit flow.
To ensure that your rewards can be properly withdrawn, you need to manually finalize the exit of these validators by performing a Request Exit. This can be done for all your validators in a single transaction.
We recommend performing theses actions inside Kiln UIs as documented here:
Kiln dApp guide with Ledger Live example
Kiln Widget guide with Safe{Wallet} example
Exit Validators via Etherscan
Open Etherscan Dedicated Staking Contract page
Find your deposit transaction on your wallet transaction history.
Scroll down to the Beaconchain Deposit section where you can find all of your validators address.
Alternatively to Etherscan, you can also open your Tx hash in Beaconcha.in, where you can find more informations on your validators.
Keep a list of the pubKeys of your validators from all your deposits.
From the Tx Hash on etherscran click the
Toaddress to open the smart contract page.Navigate to the
Contracttab and theWrite as Proxy, connect your wallet that did the initial deposit, paste one of your validators pubKeys in13. requestValidatorsExit (0xb6b06dec)and click write, this will exit the selected validators.To exit multiple validators from Etherscan, you need to join pubKeys one after the other while keeping 0x before the first one, and removing the 0x on all following pubKeys.
eg. for 3 validators pubKeys:
0x8e745317b728cbb16880ea4f78aa062501d87ff283b6420ca30cc0883e4b74f2cc27925c4b09dda182d4f73acdc452720x9359b64f6afea36618a9f12a9099630352d7e4352e256b0f249cc5374ebb7bde0f77f71908bdeb29c5c1afc624661eb40x8bc1b8b0b0f43cd75fef6921e5f14dbec2f14bfc8b64c8d9cdddf153623f005a5206b07ecaf5ac730484f587026c7fb6
final string to input in etherscan
0x8e745317b728cbb16880ea4f78aa062501d87ff283b6420ca30cc0883e4b74f2cc27925c4b09dda182d4f73acdc452729359b64f6afea36618a9f12a9099630352d7e4352e256b0f249cc5374ebb7bde0f77f71908bdeb29c5c1afc624661eb48bc1b8b0b0f43cd75fef6921e5f14dbec2f14bfc8b64c8d9cdddf153623f005a5206b07ecaf5ac730484f587026c7fb6
Once this transaction is signed and successful in your transaction history, you can track the validator exit status using the beaconproxy pages of a validator by just searching for your validator pubKey.
Withdraw exited validators & rewards via Etherscan
Requirements : Your validators need to be exited, you need to have called RequestExit.
Open the smart contract page:
Navigate to the
Contracttab and theWrite as Proxy, connect your wallet that did the initial deposit, paste one of your validator pubKey in6. batchWithdrawCLFee (0x0ffab6c2)and click write, this will withdraw rewards and principal exited from the selected validators.
Last updated
Was this helpful?

