Deposit.
Hand over the vault's current mix of mINTCx and mINTC. Receive swINTC.
How a deposit is priced
Both issuers' tokens go in at the pool's current mix. No price oracle: everyone adds liquidity at the same ratio.
You choose how much swINTC to receive. Each share adds its pro-rata slice of the vault's position liquidity, and cp-amm takes the matching amount of each token, rounding up against the depositor.
Single-token deposits
You can also deposit just one issuer's token. Part of it has to become the other issuer's token first, and there are two routes for that. The app quotes both and takes the one that mints more swINTC.
Through USDC pools
Part of your token is sold for USDC in its stock/USDC pool, and the USDC buys the other issuer's token in that one's stock/USDC pool. Both then go into the vault at the pool's mix, as a normal deposit. The vault's pool grows in both tokens.
It costs the two conversions' fees, with no vault fee. Each conversion must fill within 0.1% of its quote, or the whole transaction fails. Whatever the deposit does not take stays in your wallet, including a little USDC.
On devnet the route uses a test USDC and two pools priced at 20 USDC per share.
Through the vault's pool
The vault swaps the right part of your token on its own Meteora pool, at the pool's price, adds both tokens as liquidity and refunds the dust in the same transaction. The token you bring is the only one the pool gains: the other one leaves in the swap and comes back in the deposit.
This route costs:
- the pool's conversion fee on the part that is swapped,
- price impact from that swap,
- a 0.05% vault fee, which stays in the position and raises the value of every existing swINTC.
In tests, a single-token deposit of 0.1% of the pool gets back 99.74% on an immediate redeem. You set a minimum amount of swINTC to receive. If the pool moves past it, the transaction fails.
When the vault's pool is short of the token you bring, it pays more for it, so this route can mint more swINTC. Such a deposit also pulls the pool back toward one-to-one.
Deposit with USDC or SOL
You can start from USDC or SOL instead of a stock token.
- USDC is split between the two stock/USDC pools, buying mINTCx and mINTC in the vault pool's mix. Both then go in as a normal deposit. Two conversion fees.
- SOL is first wrapped and swapped for USDC in a SOL/USDC pool, then follows the USDC route. Three conversion fees. The temporary wrapped-SOL account is closed in the same transaction, so its rent comes back.
Either way the vault's pool grows in both tokens, and there is no vault fee. Each conversion must fill within 0.1% of its quote, or the whole transaction fails. Whatever the deposit does not take stays in your wallet.
The app keeps 0.01 SOL in your wallet for the network fee and the token accounts a first deposit opens.
On devnet these routes use test pools with fixed starting prices: 20 USDC per share of stock and 150 USDC per SOL. The SOL/USDC pool is small (2 SOL), so a large SOL deposit pays a visible price impact.
Slippage limit
The app allows up to 0.5% more of each token than the quote. Whatever cp-amm does not take is refunded in the same transaction.
For a single-token deposit through the vault's pool, the app asks for at least 99.5% of the quoted swINTC.
When deposits are paused
The admin can pause deposits as a circuit breaker for issuer events (pause, freeze, depeg). A deposit then fails with "Deposits are paused". Redemptions stay open.
Test tokens
On devnet, the faucet in the app's Devnet tab sends 10 mINTCx, 10 mINTC, 100 test USDC and a little devnet SOL for fees, once a minute per wallet. For deposits in SOL, get more devnet SOL from faucet.solana.com.
TODO Mainnet deposit requirements (supported issuer tokens, minimums) are not decided yet.