Solana Support
How to Deposit or Withdraw on Solana from an EVM Chain
Relay now fully supports depositing & withdrawing to Solana from any EVM chain we support. This is a great way to get users funds on Solana to complete transactions. You can onboard users funds from Blast ETH to Solana USDC to make transactions on a game. You could also swap funds from Solana SOL to Zora ETH for users to mint. The possibilities are limitless when you use Relay embedded in your app.
Required Information
There are few things that make transacting on Solana different than another EVM chain. The provided information below should review all the exceptions where your input is Solana specific.
SDK Properties
Action | Parameter | Input | Description |
---|---|---|---|
Deposit to Solana | toChainId | 792703809 | Chain ID assigned to access Solana for Relay’s tools. |
recipient | User’s Solana Address | Must be a valid Solana address. Do not use an Ethereum wallet address. Case Sensitive | |
toCurrency | Contract Address of Solana Token | Must be a valid Solana token address. Do not use an EVM address. We support all tokens tradeable on Jupiter. | |
Withdraw from Solana | chainId | 792703809 | Chain ID assigned to access Solana for Relay’s tools. |
currency | Contract Address of Solana Token | Must be a valid Solana token address. Do not use an EVM address. We support all tokens tradeable on Jupiter. |
API Params
Action | Parameter | Input | Description |
---|---|---|---|
Deposit to Solana | recipient | User’s Solana Address | Must be a valid Solana address. Do not use an Ethereum wallet address. Case Sensitive |
destinationChainId | 792703809 | Chain ID assigned to access Solana for Relay’s tools. | |
destinationCurrency | Contract Address of Solana Token | Must be a valid Solana token address. Do not use an EVM address. We support all tokens tradeable on Jupiter. | |
Withdraw from Solana | user | User’s Solana Address | Must be a valid Solana address. Do not use an Ethereum wallet address. Case Sensitive |
originChainId | 792703809 | Chain ID assigned to access Solana for Relay’s tools. | |
originCurrency | Contract Address of Solana Token | Must be a valid Solana token address. Do not use an EVM address. We support all tokens tradeable on Jupiter. |
Solana Tokens
In the table, we have provided the most frequently used Solana tokens & their contract addresses. We do support all tradeable tokens on Jupiter.
Token | Token Address | Token Symbol | Decimals |
---|---|---|---|
SOL | 11111111111111111111111111111111 | SOL | 9 |
USDC | EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v | USDC | 6 |
wSol | So11111111111111111111111111111111111111112 | wSOL | 9 |
USDT | Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB | USDT | 6 |
API
Once you have the necessary information, you can start utilizing our API for full Solana withdrawal and deposit support. To get started, check out the execution steps of our API. Then when you’re ready to swap, head over to the Get Quote API endpoint.
Please note that instead of the usual calldata returned with EVM transactions, there’s different calldata that needs to be handled accordingly.
SDK
You’ll need the information shared in the tables above to utilize the SDK to deposit or withdraw from Solana. In addition to that you’ll also need to install and configure the relay solana adapter. To get started, learn how to set up our SDK client. Afterwards, explore our getQuote SDK action to start swapping.