When a standard NFT is delivered with a "safe transfer", the token
contract asks the recipient whether it can receive it. A UP answers only through an extension (LSP17)
registered in its data; redeployed UPs usually have none, so purchases fail ("wallet cannot receive").
This
page: (1) if needed, takes you to the publishing page to publish on the network the
NFTReceiverExtension, a minimal contract with no owner, data or funds, always at the same address on
every network; (2) registers it on the UP with a single atomic Key Manager transaction: it grants
the controller the permission to add extensions, registers the extension, and sets the controller's permissions
back to exactly what they were. If any part fails, nothing changes. Before signing you see the list of
operations and the simulation result.
⚠️ Read before using this page
Experimental tool, not externally audited. Real, irreversible transactions.
It changes the UP's configuration on this network: it adds the extension keys to receive NFTs (repeat
it on other networks). The controller's permissions stay the same as before.
The extension answers only NFT-reception calls and supportsInterface: the UP calls it
with a normal call, so it cannot read or change the UP's data or funds. Source, bytecode and verification
steps are in the repository's contracts/ folder.
Receiving NFTs also means being able to receive unwanted NFTs (spam): never give approvals or
signatures for NFTs you do not know.
No warranty. Software "as is" (MIT license): you use it at your own risk. Bertrand Juglas is not
liable for any loss or damage. No affiliation with LUKSO or others.
This page never asks for private keys: you sign everything in MetaMask.
1 · Network
2 · Your UP
3 · Controller (MetaMask) and check
MetaMask with the UP controller's key, on the chosen network. It pays the
gas. The check starts by itself and runs again if you change network, UP, account or MetaMask's network.
The check starts by itself once
network, UP and MetaMask are set.
4 · Actions
If the extension does not exist on this network yet, the page gives
you the link to the publishing page: there anyone can publish it, with any wallet and without a UP; it only
costs gas and gives no control over any UP. Then, here, with the UP's controller you prepare the enabling: the
page shows every operation and simulates it; only then can you sign.