InviaInviaDocs
GitHubLaunch app
Resources/FAQ

FAQ

Short answers to the questions people ask first. For deeper coverage, the page each answer links to has the full picture.

Is Invia custodial?

No. Assets sit in program-owned PDA vaults. Only the program can move them, and only inside take_offer, cancel_offer, or expire_offer. The team holds no key that authorizes a transfer. See Security for the full enumeration.

Can the team change fees later?

No. The fee rate is a const in the program source and the upgrade authority is renounced at the launch deploy. Changing the rate would require publishing new bytecode, which no key on chain can do. See Fee schedule.

What chains does Invia support?

Solana mainnet only. There is no plan for other chains in V1.

Why a 0.20% taker fee?

It is roughly an order of magnitude below comparable on-chain OTC venues (2.5%–5%). Atomic settlement removes the operator risk those venues underwrite, so the fee can be much lower. See Why Invia for the full comparison.

Can I list any token?

Yes. Listing is permissionless. Any SPL mint can be the asset side of an offer. Verifying that the mint matches the project you intend to trade is the user's responsibility, see Risk disclosure.

What payment mints are supported?

USDC, USDT, and SOL (via wrapped SOL). The program enforces this list at create_offer. Random SPL tokens cannot be the payment side.

What happens if my fill transaction fails?

It reverts atomically. There is no partial-state outcome, either the swap completes in full, the fee is skimmed, and remaining_size updates, or none of those things happen and your wallet is unchanged.

What happens if the maker tries to ghost mid-trade?

There is no mid-trade. take_offer is one transaction. Either both legs land or neither does. The maker has no way to deliver one side without the other side also clearing in the same instruction.

What if I forget about an offer I made?

Anyone can call expire_offer after your deadline passes. They earn a small SOL bounty for triggering the cleanup, you get your remaining escrow back. See Expiry & cancel.

Is there a maker fee?

No. Makers pay zero on creation, zero on cancel, and zero on expire. The 0.20% is taker-only and is taken from the payment leg. See Fee schedule.

Can the team censor a particular wallet?

No. There is no allowlist instruction and no admin signer check anywhere in the program.

How do partial fills work?

A maker lists size and a min fill. Multiple takers can fill in chunks at the same price. The final dust slice is always allowed regardless of min fill. See Partial fills for a worked example.

Where do the fees go?

To a hardcoded treasury address (a Squads multisig). The destination cannot change without new bytecode, which the renounced upgrade authority makes impossible.

What if Invia disappears tomorrow?

The program is on chain and immutable. The frontend at invia.markets is one way to interact with it; anyone can build another, or call the instructions directly with the SDK or anchor-client. The protocol does not depend on the team continuing to operate.