transfer endpoint and action: "DEPOSIT".
This works the same way in Earn, Credit and Tokenized Assets. Perpetual Trading doesn’t use a product account: you fund it with a USDC deposit to Hyperliquid instead.
Request
Move 100 USDC from the user’s wallet into their Earn Account on Base:Response
Withgas_sponsorship: false, transaction is a standard token transfer from the user’s wallet to their account, and eip_712 is null. The user signs and sends the transaction.
to is the USDC contract on Base, and data encodes a transfer of 100 USDC to the account. The API checks the wallet first: if it holds less than amount, the call returns 400 Insufficient balance.
USDC on BNB Smart Chain has 18 decimals instead of 6. Amounts are always in token units, so
"100" still means 100 USDC there.Sponsored deposits
With gas sponsorship, the user only signs messages. Your sponsor wallet sends the transactions and pays the gas. Each token needs a one-time approval first, so that later transfers can be authorized by signature alone.1
Once per token: approve the token
Call This works for tokens that support EIP-2612 permits, like USDC. For tokens that don’t, such as USDT and WETH, send
POST /v2/gas_sponsorship/approve_transfer with gas_sponsorship: true. The user signs the returned eip_712, and you relay it as in step 3.gas_sponsorship: false instead: the user sends the approval transaction and pays its gas. If the allowance is already in place, the call returns 400 Token allowance already set and you can skip this step.2
Request the deposit
Call
transfer with gas_sponsorship: true and spender set to your sponsor wallet. Instead of a transaction, the response has eip_712: a transfer authorization for the user to sign, valid for 30 minutes.3
Sign and relay
The user signs
eip_712 as EIP-712 typed data (for example with eth_signTypedData_v4). Send the signature and the unchanged eip_712 to POST /v2/gas_sponsorship/prepare. It returns a transaction for your sponsor wallet to sign and send.spender, it defaults to the product account itself. That’s only for bundles, where the account pulls the tokens as one step of a larger transaction. Sponsored flows need the owner to be a regular wallet (EOA), since the API checks the signature against the owner’s address. See Gas Sponsorship for more.
Next
Balances and Positions
Read what the account holds and how it’s performing.