NEAR Intents: Confidential Swaps
Add privacy to a swap with the confidentiality parameter or an embedded Confidential Intents balance
What is Confidential Intents
Confidential Intents is a private transaction layer built on top of NEAR Intents. You can swap and transfer tokens without the on-chain deposit and withdrawal being trackable to each other.
- Public Intents: deposits and withdrawals can be matched to each other.
- Confidential Intents: deposits and withdrawals cannot be tracked to each other.
Integration paths
There are two ways to request a confidential swap. Most partners only need the first.
Foreign-to-foreign (most partners)
Run a normal
ORIGIN_CHAIN→DESTINATION_CHAINswap and set theconfidentialityparameter tobasicoradvanced. You do not need theCONFIDENTIAL_INTENTStype fields or signed-intent execution — the user deposits and receives on external chains exactly as a standard swap.
Embedded account / wallet
When the funds already live inside a user's Confidential Intents balance, set
depositType,recipientType, and/orrefundTypetoCONFIDENTIAL_INTENTSand authorize the swap with Signed Intent Execution. This is the advanced, wallet-style use case — integrators that keep user balances in Intents, for example near.com.
To request a foreign-to-foreign confidential quote, add confidentiality to a standard quote request. Everything else in the request/response cycle is identical to Making a Request:
{
"dry": false,
"swapType": "EXACT_INPUT",
"originAsset": "nep141:wrap.near",
"depositType": "ORIGIN_CHAIN",
"destinationAsset": "nep141:arb-0x912ce59144191c1204e64559fe8253a0e49e6548.omft.near",
"amount": "100000000000000000000000",
"recipient": "0xYourArbitrumAddress",
"recipientType": "DESTINATION_CHAIN",
"refundTo": "your-account.near",
"refundType": "ORIGIN_CHAIN",
"confidentiality": "basic",
"deadline": "2025-01-01T00:00:00.000Z"
}