Rift documentation
Cross-chain swaps, without an account.
Rift is a simple route between blockchains. Choose what you send, where you want to receive it, and deposit from your own wallet. There are no Rift accounts, passwords, balances, or custodial wallets to maintain.
Privacy
Private by default, not invisible.
Rift does not ask you to create an account, provide an email, or connect a persistent profile. A swap is identified by its unique order ID instead of a user account.
We avoid misleading privacy claims. Anyone analyzing public ledgers may be able to associate sending and receiving activity. Use Rift for accountless exchange—not as a guarantee of untraceability.
How it works
- 1
Choose a route
Select the asset and network you are sending from, then the asset, network, and wallet where you want to receive.
- 2
Open the rift
Rift generates a dedicated deposit address and displays the valid minimum and maximum for that route.
- 3
Send from your wallet
Deposit any amount inside the displayed range. The live rate locks when the deposit is detected.
- 4
Receive on the other side
After network confirmation, the converted asset is sent directly to your destination wallet.
Wallets & names
Fill the destination without pasting by hand.
On the swap form you can connect a wallet only to read the receive address. Rift never asks for a seed phrase, never requests a transfer signature, and never holds your funds.
- MetaMask — EVM networks (Ethereum, Base, Arbitrum, Polygon, BSC, and similar).
- Phantom — Solana settle networks.
Pay to a name, not only a raw address.
Paste a human-readable name into the settlement field. Rift resolves it server-side and replaces it with the on-chain address before you confirm the last six characters.
- ENS —
name.ethfor EVM destinations. - SNS —
name.sol/name.snsfor Solana destinations. - Unstoppable Domains —
.crypto,.nft,.wallet, and related TLDs when the operator has configured an API key.
Rates & limits
Flexible deposits, live settlement.
Rift uses variable-rate swaps. The preview on the home page is an estimate. Your final rate is determined when the deposit reaches the generated address and includes the effect of network costs.
- Send any amount between the minimum and maximum shown.
- Larger deposits can receive a different effective rate because fixed network costs have less impact.
- Deposits outside the permitted range may require review or be refunded.
- Each deposit is processed separately at the prevailing rate.
Security
You stay in control of your wallets.
Rift never asks for a seed phrase or private key. You send from your wallet and receive at the address you provide. Funds pass through exchange infrastructure while the swap is processed, so this is not a trustless or atomic protocol.
- Verify the asset and network before sending.
- Confirm every character of the destination address.
- Never reuse a deposit address after its displayed validity period.
How the site is hardened
Nothing on the open internet is 100% safe. Rift is built to reduce common web attack surface as far as a swap front-end can:
- Strict Content-Security-Policy, clickjacking protection, and HTTPS hardening headers.
- Same-origin checks on swap creation so third-party sites cannot casually drive your browser into opening orders.
- Rate limits on every API route. In production these should run through a shared Redis store (Upstash) so limits hold across Vercel instances; local memory is only a development fallback.
- Input validation on coins, networks, addresses, and payload size.
- Liquidity credentials stay on the server — never in the browser.
- API responses are trimmed to the fields the UI needs; secrets and account keys are never returned.
- No Rift accounts, passwords, or stored balances — less personal data to steal from this site.
Swap status
Rift saves a recovery token in this browser after a swap is created. Paste the Rift ID on the recovery page to reopen it on the same device. To use another browser, copy the complete private link from the deposit panel.
The deposit has not been detected.
The deposit is visible and awaiting network confirmation.
The confirmed deposit is being converted.
The outgoing transaction has been created.
The destination transaction is confirmed.
The deposit could not settle and is moving through the refund flow.