Koii Bridges


A Koii Bridge allows you to migrate your NFTs to and from different blockchains. Currently, we only support Ethereum bridging, but other chains are in development. You can find more example functions at
Disclaimer: Currently the bridge is running in Beta only, and is not fully decentralized. Although it has not had any issues so far, we recommend using with caution. Stay tuned for more information on Validator Rings as we move towards a fully decentralized version.


The bridge is basically divided in 2 parts, The first one includes bridging NFTs to other networks from Arweave and the second part includes bridging NFTs from other networks to Arweave.

Arweave to Ethereum

Bridge an asset from Arweave to Ethereum
The Arweave to Ethereum bridge includes certain steps as indicated in the diagram. The steps are further explained below:
  1. 1.
    The first step to initiate the bridging from Arweave to Ethereum is by locking the NFT you own on the Arweave network. Locking the NFT involves calling the lock function on your NFT smart contract. Refer to lockToken.js for code implementation.
  2. 2.
    The next step is to pay the 10 KOII fee* for the bridging, which will be used to mint your new NFT on the Ethereum network. The transfer function must include the nftId and lockTx (Obtained from step 1). Refer to transferToken.js for code implementation. *10 KOII amount is subjective to the Ethereum fees paid for minting a new NFT on Ethereum
  3. 3.
    The third and final step from the user end is to submit the arNFTId, arUserAddress, burnKOItx and lockedNFTtx to the server at the /mintEthToken endpoint. The exact JSON body to be passed in that endpoint is as shown below.
"arNFTId": "<Your Arweave NFT Id>",
"arUserAddress": "<Your Arweave Wallet Address>",
"burnKOItx": "<The txId received in step 2 after calling transfer token>",
"lockedNFTtx": "<The lockedTx Id received in step 1>"
After submitting the transaction, the server will keep checking the transaction statuses, once they have succeeded and it is verified on the server that fee is paid and an NFT on the Ethereum network is minted.
Copy link