Quickstart
Connect a wallet on Solana devnet, get test SOL and USDC, deposit into a tier and withdraw again. It takes about five minutes and costs nothing.
On this page
What you need#
Switch your wallet to devnet#
Aqueduct is deployed on devnet only. In your wallet's settings, turn on developer or testnet mode and select Solana Devnet. The menu is usually called Developer settings, Testnet mode or Network, and its exact name changes between wallet versions.
If your wallet stays on mainnet, transactions fail during simulation because the Aqueduct program and its test USDC do not exist there. Nothing is lost; switch networks and try again.
Get devnet SOL#
Every transaction pays a small fee in SOL, and your first faucet request and first deposit each create token accounts that hold a rent deposit of about 0.002 SOL. A tenth of a SOL lasts a long time. Get some from the Solana faucet (pick devnet) or with the Solana CLI:
solana airdrop 1 <YOUR_WALLET_ADDRESS> --url devnetPublic devnet faucets are rate limited. If one refuses, wait a few minutes or try another devnet faucet.
Mint test USDC#
- Open the app and connect
Go to aqueduct.justus.sh/app, choose Connect Wallet and pick your wallet.
- Open the faucet
Use Get test USDC on the dashboard, Open faucet in the sidebar, or press ⌘K and type “faucet”.
- Choose an amount and approve
Pick a preset or type an amount. The program mints at most 10,000 test USDC per request, and you can request again whenever you like. Approve the transaction in your wallet.
Make your first deposit#
Choose Deposit on the dashboard, or on a vault in the Vaults view. Pick a tier, enter an amount and check the summary before you sign:
- Share price: USDC per share right now. It started at 1.0 and only rises as yield accrues (unless a venue loses money).
- You receive: the shares that will be minted to you, roughly amount ÷ share price.
- Est. yearly yield: at the vault's current net APY, which is already after the performance fee.
The dialog then steps through Building, Signing, Confirming and Confirmed, and links the signature to Solana Explorer. Your USDC lands in the vault's idle account. The keeper runs every 10 minutes and deploys idle USDC above the 5% buffer into venues once the excess is worth a move: at least 100 USDC and 0.5% of the vault, with enough expected yield to cover the transaction cost. Small deposits can wait in idle until others join them.
Bedrock lends only to blue-chip venues with risk scores of 2 to 3. Rapids adds credit, delta-neutral and fixed-rate products with risk scores up to 6 for a higher target yield. See Tiers and venues.
Watch it work#
- Dashboard: your position is your shares times the share price, so it grows as the strategies accrue interest.
- Strategies: where every dollar of each vault sits, with each venue's APY, risk score and cap.
- Rebalancer: every keeper decision with a one-line summary and the reasons it moved or held. Most cycles hold, by design; see Rebalancer.
- History: your deposits, withdrawals and faucet requests in this browser.
Withdraw#
Choose Withdraw, pick the tier and enter an amount, or press Max to burn every share you hold. You receive the shares' value at the current share price in a single transaction. There is no withdrawal fee and no lock-up.
The program pays from the vault's idle account first. If that is not enough it pulls the remainder from the strategies in the same transaction, Solana venues before cross-chain ones and lower risk scores first. Withdrawals keep working while the protocol is paused.
Troubleshooting#
- “Attempt to debit an account but found no record of a prior credit”
- What it means
- The wallet has no devnet SOL.
- What to do
- Get devnet SOL, then retry.
- Simulation fails, or the token shows as unknown
- What it means
- The wallet is on mainnet, or is showing the test mint it does not recognise.
- What to do
- Switch to devnet. Test USDC is a different mint from real USDC, so wallets often label it unknown.
- Protocol is paused (error 6000)
- What it means
- The admin has paused deposits.
- What to do
- Withdrawals still work. Deposits resume when the pause is lifted.
- Deposit would exceed the vault cap (6003)
- What it means
- The vault is at its deposit cap (currently 5,000,000 USDC per vault).
- What to do
- Deposit less or use the other tier.
- Faucet amount exceeds per-call maximum (6014)
- What it means
- More than 10,000 test USDC in one request.
- What to do
- Request 10,000 or less, as often as you need.
- HTTP 429 or timeouts
- What it means
- The public devnet RPC is rate limiting.
- What to do
- Wait a moment, or set your own devnet RPC under Settings in the app.
The full list of program errors is in the program reference.
apps/web/components/app/tx-modal.tsx, programs/aqueduct/src/instructions/user.rs and programs/aqueduct/src/constants.rs. If the code and this page disagree, the code wins.