Withdrawals

Prepare a Withdrawal

Changed on

Quotes a withdrawal and returns a lane-specific payload for the holder to sign. No authentication required (rate-limited). sourceCurrencyId is required.

post/v1/withdraw/{withdrawalConfigId}/prepare

Request

  • Base URL
    https://api.hel.io
  • URL
    https://api.hel.io/v1/withdraw/{withdrawalConfigId}/prepare
  • Auth
    none required

Path parameters

withdrawalConfigIdstring required

The withdrawal config ID.

Request body

ownerAddressstring required

Holder's source wallet address. Format is lane-specific (e.g. Solana base58 for Solana raw, EVM checksummed address for EVM raw/hyperliquid).

recipientstring required

Destination address on any supported chain.

amountstring required

Amount in atomic units as a decimal-free string. Scale using the source currency's decimals value (e.g. 1500000 for 1.5 USDC at 6 decimals; 150000000 for 1.5 USDC at 8 decimals on HyperCore).

toCurrencyIdstring required

Destination currency Mongo ID.

sourceCurrencyIdstring required

Source currency Mongo ID from the withdrawal config.

customerIdstring

Optional merchant identifier for the end user (max 255 characters). Persisted on prepare and echoed on the withdrawal detail and webhooks. Not applied on re-quote.

slippageBpsinteger

Optional slippage tolerance in basis points (0–10000) forwarded to the swap/bridge provider. Defaults to 500 (5%) when omitted.

hyperCoreLane'native' | 'eip3009'

HyperCore USDC withdrawals only. native (default) returns a hypercore prepared transaction. eip3009 opts into the hypercore_eip3009 route, which is used only when it's enabled for your account and the destination is routable; otherwise the withdrawal stays native. Send the same value on routes, balances and prepare.

Response

Withdrawal prepared successfully.

withdrawalDetailIdstring

Per-request ID. Use for submit and status polling.

tokenstring

JWT quote token. Pass verbatim on submit.

Changes

    • breaking

      added to the response property oneOf list for the response status

    • info

      added the new optional request property

    • info

      added the new optional request property

    • info

      added the optional property / to the response with the status

    • info

      added the optional property / to the response with the status

    • info

      added raw userop hypercore hypercore_eip3009 discriminator mapping keys to the response property for the response status