Build
ONCHAIN STORAGE
Features
Supported Tokens

Supported Tokens

Iyrs supports most popular tokens for paying for uploads.

Testnet

On our testnet, you can pay for uploads in any of these tokens:

Token / BlockchainTokenParameter ValueNode SupportBrowser Support
AptosAPTaptosyesyes
AlgorandALGOalgorandyesno
ArbitrumETHarbitrumyesyes
Avalanche C-ChainAVAXavalancheyesyes
BerachainBERAberayesyes
Binance CoinBNBbnbyesyes
BobaBOBAbobayesyes
Boba-ethETHboba-ethyesyes
ChainlinkLINKchainlinkyesyes
EclipseETHeclipseyesyes
EthereumETHethereumyesyes
Base EthereumETHbase-ethyesyes
Linea EthereumETHlinea-ethyesyes
Scroll EthereumETHscroll-ethyesyes
FantomFTMfantomyesyes
IoTeXIoTeXiotexyesyes
NearNEARnearyesyes
PolygonMATICmaticyesyes
SolanaSOLsolanayesyes
USDC (on Ethereum)USDCusdc-ethyesyes
USDC (on Polygon)USDCusdc-polygonyesyes
USDC (on Solana)USDCusdc-solanayesyes

Devnet

On devnet, uploads are paid for with free faucet tokens. Data is deleted after ~60 days.

Token / BlockchainTokenParameter ValueIrys SupportWebIrys Support
AptosAPTaptosyesyes
AlgorandALGOalgorandyesno
ArbitrumETHarbitrumyesyes
Avalanche C-ChainAVAXavalancheyesyes
BerachainBERAberayesyes
Binance CoinBNBbnbyesyes
ChainlinkLINKchainlinkyesyes
Ethereum (Sepolia)ETHethereumyesyes
Base Ethereum (Sepolia)ETHbase-ethyesyes
Linea Ethereum (Sepolia)ETHlinea-ethyesyes
Scroll Ethereum (Sepolia)ETHscroll-ethyesyes
IoTeXIoTeXiotexyesyes
NearNEARnearyesyes
Polygon (Amoy)AMOYmaticyesyes
SolanaSOLsolanayesyes
USDC (on Ethereum)USDCusdc-ethyesyes
USDC (on Polygon)USDCusdc-polygonyesyes
USDC (on Solana)USDCusdc-solanayesyes

Connecting to Irys

The Irys SDK reduces dependency bloat by providing dedicated packages for each token. Your import statements and connection code will differ depending on the token used for payment.

The following code is for using ethereum only, we also have examples covering all of the tokens we support for payment.

import { Uploader } from "@irys/upload";
import { Ethereum } from "@irys/upload-ethereum";
 
const getIrysUploader = async () => {
  const irysUploader = await Uploader(Ethereum).withWallet(process.env.PRIVATE_KEY);
  return irysUploader;
};