← Articles
GUM: Universal Deposit logo
solana

GUM: Universal Deposit

· SEP 3, 2026 ·
Read
Share

Pick a destination. Request deposit addresses. Send. Fees and minimums come back per chain. Solana is chain ID 900 in this API.

devrels.xyz/a/299

GUM Universal Deposit gets USDC to a wallet on a supported chain. You pick the destination. You send USDC (or a supported token) on another supported chain. Swap and bridge are handled for you. Overview: docs.gum.ag/universal-deposit/overview. Live events: explorer.gum.ag.

Product site: gum.ag, billed as an omnichain identity and liquidity layer. This piece is the deposit API, not a recap of identity.

Chains

ChainGUM chain IDAddress
Solana900base58 32-byte pubkey
Base84530x + 40 hex
Arbitrum421610x + 40 hex
Sui1010x + 64 hex

Any of those can be source or destination. The destination chain is not offered as a deposit option for itself. Solana here is 900, not Sui 101.

API

Public GET. Docs playground: GET /v2/deposit-addresses with required chainId (destination) and destinationAddress. Response chains[] has per-source depositAddress, USDC tokenAddress, minDeposit, feesUsd, and status.code 0 healthy / 1 degraded / 2 down. Empty addresses means that chain is down. Do not send.

Non-USDC is gated per token per chain. Call GET /token-support with chainId and targetTokenAddress. Reasons include native_usdc, swappable, no_route, quote_unavailable, swap_disabled, chain_unavailable. If swappable, send at least swapConstraints.minInputAmountRaw. Swap cost is in the conversion, not a second fee. If the swap cannot clear its minimum output, funds refund to the receiver instead of under-filling.

bash
# destination = Solana (GUM chainId 900)
GET /v2/deposit-addresses?chainId=900&destinationAddress=<base58>

# before sending a non-USDC token
GET /token-support?chainId=<source>&targetTokenAddress=<mint-or-contract>

Docs do not publish a public API hostname on the overview page. Use the playground on the API reference, or ask Discord for a platform key if you need attribution.

Money rules

Fees are dynamic, typically around $0.30. Always use feesUsd from the response. Below-minimum USDC deposits accumulate on the same address instead of rejecting. Arrival is typically seconds to minutes after source confirmation. Destination explorer is the source of truth. If nothing shows after about five minutes, Discord. Unsupported tokens, or tokens on the wrong chain, are not recoverable.

Resources

Keep reading

Get new articles in your inbox

Technical deep-dives on Solana tooling, infrastructure, and ecosystem. No noise.

GUM: Universal Deposit | devrels.xyz