1
Pick a vault
Fetch all available SuperVaults on Base:Filter to
availability: "available" and is_supervault_v_2: true. Pick a vault address and note its assets[0].address (the token your user will deposit).Example (NVDA SuperVault):- Vault:
0xc441a2cc3a528b6312740448a70cc4d40f4d7bfc - Underlying token (NVDAc):
0xb20000000000000000000078ee7ce2fe4908108c - Decimals: 8
2
Check user balance
The Bundler validates balance on-chain and returns 400 if the user’s balance is insufficient. Check first:
3
Build the deposit
Replace The response is an ordered
100000000 with the actual token amount scaled to the underlying token’s decimals. bStock tokens (NVDAc, TSLAc, SPCXc, etc.) use 8 decimals — 100000000 = 1 token. USDC uses 6, WETH and UP use 18. Read the assets[0].decimals field from the vault response.executions[] array.4
Broadcast
Send each transaction in order. Wait for on-chain confirmation before sending the next.Both carry
type: "DEPOSIT". Use array index, not type, to determine order.After executions[1] confirms, the user holds superNVDA shares.