Deploy a Recovery Safe
This guide will walk you through recreating a Safe with the same address on the desired network if you send funds to your Safe address in an incorrect chain.
It's not always possible to recover a Safe, learn more here (opens in a new tab).
Recreate Safe 1.3.0 or 1.1.1
To recreate a Safe (version 1.3.0 or 1.1.1), you'll need the following essential data:
- The
Singletonaddress - The
ProxyFactoryaddress - The
FallbackHandleraddress - The
Ownersaddresses with which Safe was created - The
SaltNoncevalue - The
Thresholdvalue - RPC node provider for the target chain.
- The private-key of the deployer address
The necessary addresses can be collected from safe-deployments (opens in a new tab) and the salt nonce from the Safe creation transaction in a block explorer.
Ensure that the Singleton, ProxyFactory, and FallbackHandler are deployed in the target chain in the same addresses as the origin chain.
To recreate the Safe, it is necessary to execute the safe-creator as follows:
_10safe-creator --owners <owners-addresses> --safe-contract <singleton-address>_10--callback-handler <fallback-handler-address> --proxy-factory <proxy-factory-address>_10--threshold <threshold-value> --salt-nonce <salt-nonce-value> <url-rpc-node> <deployer-private-key>
The Safe should have been successfully recreated with the same address on the target chain. If not, double-check the data collected from the transaction and ensure that all the necessary contracts are deployed in the chain.
Migrate a Safe from non-L2 to L2
Our services cannot index if you've recreated a Safe from an L1 network (like mainnet) on an L2 network. That's because for L1, we use trace-based indexing, and for L2 events indexing, L1 Safe singleton does not emit events.
To address this, you'll need to update it to the L2 singleton with the command update_version_to_l2 or consider transferring the funds to a new Safe on L2 that you control with the drain command.
For detailed instructions on running these commands, please refer to the common commands section for more information.