Help centre

Keys and security

Your wallet, your trading key, and what each one can do.

Trading here uses two separate credentials. Your wallet owns the money. A trading key, held by your browser, is what places orders. They are deliberately not the same thing, and the split is the reason a compromised browser cannot empty your account.

What the trading key is

When you press Enable trading (in the Account page header, or as the main button in the order ticket at that stage), two wallet signatures run in sequence:

  1. 1Registration. Creates your Swapmos account. Signed once, never repeated.
  2. 2Key binding. Your browser generates a fresh signing keypair locally, and your wallet signs a message authorising it.

Things worth knowing about that key:

  • The secret is generated in your browser and stored in that browser's local storage. It is never sent to a Swapmos server. Your browser signs each private request and talks straight to Swapmos's API.
  • It is scoped to one browser on one device. A second browser, a private window, or your phone each need their own Enable trading. Clearing site data deletes the key.
  • It expires after 30 days. Once expired the app deletes it on load and the button goes back to reading "Enable trading". Signing again is one signature, not two, since your account already exists.
  • your Swapmos account id comes from your wallet address plus the broker id. It exists before the key does and survives every key change, which is why balances follow the wallet rather than the key.
  • The same wallet gets a separate, unlinked account on every venue you trade at. Your Swapmos balance is yours here and says nothing about what you hold anywhere else.

What the scopes mean

The key is bound with the scope read,trading. There is a third scope, asset, and Swapmos never requests it.

ScopeGrantedWhat it allows
readYesPositions, balances, orders, fills, funding, transfer history. Also account settings such as leverage and margin mode.
tradingYesPlacing and cancelling orders, including stop orders and TP/SL brackets.
assetNoWithdrawals and PnL settlement.

Two honest caveats. First, read is not strictly read-only on Swapmos: it also covers account risk configuration, so a key with read access can change your leverage. Second, trading is real power. Someone who copied your key out of your browser could open and close positions in your account and lose your money through the trades themselves. What they cannot do is move a single USDC out of it.

Why withdrawals need the wallet

Because asset is never granted, the trading key is structurally incapable of moving funds. Every movement of money asks your wallet directly:

  • Withdraw (up arrow, Account page) opens the withdraw form. Max fills your free balance, which is your holding minus anything frozen. You see the network fee and a "You receive" line before anything is sent.
  • On submit the app fetches a fresh withdrawal nonce and then asks your wallet to sign. The button reads "Awaiting signature…" while it waits. The nonce is requested immediately before signing so an old signature cannot be replayed later.
  • There is no destination address field. Withdrawals go to the connected wallet address and nowhere else.
  • Deposits are also wallet-side and never touch the key. Add funds runs two on-chain transactions from your wallet: Approve USDC, then Deposit.

During Enable trading you should see exactly two signature prompts and no transaction prompts. If something during that flow asks you to send a transaction or approve a token, it is not part of it.

If every private request suddenly fails, check your device clock. the exchange rejects requests whose timestamp is more than 300 seconds from its own server time.

Revoking the trading key

Open the gear icon on the Account page (/account), then Revoke trading key at the bottom of the Settings dialog. You have to type REVOKE before the button enables. The gear is not available inside the futures terminal.

Revoking deletes the key from this browser. That is all it does.

What revoking does:

  • Removes the stored key from this browser.
  • Forces a new wallet signature before your next order.

What revoking does not do, and this matters:

  • It does not touch your funds. Balances belong to the Swapmos account derived from your wallet address, not to the key.
  • It does not close open positions. They stay live, keep paying or receiving funding, and can still be liquidated while you have no key in the browser.
  • It does not cancel resting orders. Limit orders, stops and TP/SL brackets stay on the exchange and can still fill.
  • It does not affect other devices. A key bound in another browser keeps working until it expires or is revoked there.

So if you are revoking because you think the device or browser is compromised, do the trading cleanup first, in this order:

  1. 1Cancel resting orders with the X button on the Open orders tab. Note that stop orders and TP/SL brackets are algo orders and do not appear on that tab, so they cannot be cancelled there.
  2. 2Close or reduce positions from the order ticket: tick Reduce only and submit on the opposite side.
  3. 3Then revoke.

Sign out is not the same as revoke

The logout icon next to Deposit and Withdraw disconnects your wallet. The trading key stays in local storage and is picked up again the moment the same wallet reconnects, with no new signature. Only Revoke trading key deletes it.

On a shared or public computer, revoke before you leave. Signing out leaves a working key behind.