This guide assumes that you already have an active VOOI API token. See API Tokens for how to obtain one.
Do you need to register?
Check whether your VOOI account already has Extended credentials viaGET /user-exchange. It returns an array of { exchange, valid } objects — an extended entry with valid: true means your account is connected:
- An
extendedentry withvalid: true— your account is already connected. No action needed. - No
extendedentry, or one withvalid: false— follow the steps below.
Prerequisites
- An EVM wallet
- An active VOOI API token
1. Prepare registration
CallPOST /user-exchange/{exchange}/register/prepare with your wallet address.
The optional referralCode field binds a referral code to the new account at registration. Omit it and the VOOI code is applied; it cannot be changed afterwards. See Points & rewards.
The response contains:
- a short-lived
registrationToken signData— a three-item tuple you sign in order:[0]and[1]are EIP-712 typed-data objects (account creation, then account registration), and[2]is an object{ "message": "<text>", "type": "personalSign" }whosemessageyou sign with thepersonal_signconvention.
domain, message, primaryType, and types. Their domain carries only a name ("extended.exchange") and no chainId, so there is no network to match against and no wallet network switch is needed. The third item is an object with a message string and type: "personalSign" — you sign its message. See the API reference for the full schema.
The registrationToken expires in 10 minutes. If it expires before you complete registration, call this endpoint again to get a new token.
2. Sign all three messages
Sign each item in order:[0]and[1]as EIP-712 typed data[2]’smessagefield as a plain-text message (Ethereumpersonal_signconvention), not as EIP-712 typed data
[sig0, sig1, sig2].
3. Execute registration
Submit your wallet address, theregistrationToken, and all three signatures (in order) to POST /user-exchange/{exchange}/register/execute.
VOOI submits the signed onboarding messages to Extended on your behalf — you do not broadcast anything on-chain.
valid reflects whether the stored credentials passed validation.
The VOOI referral code is applied to your Extended account automatically on registration — no client action is required. To apply a different code yourself, see POST /extended/use-referral-code.
Re-running the full prepare → execute flow is safe if a step fails. Call prepare again to get a fresh
registrationToken, then sign and execute as above.
Your wallet is now connected to Extended through VOOI. You can use the VOOI API to place orders, manage positions, and query account data on Extended.
Next steps
Start trading on Extended
Place your first order
Connect your wallet to Hyperliquid
Register on Hyperliquid