Skip to main content
A token on Ault EVM is an ERC20 balance. Ault DEX settles on Ault Core against native denominations. Moving between the two is a required step before a first trade, whether the token was bridged in or issued on Ault.
This is a representation change on one chain, not a bridge. No external relayer is involved and there is no bridge delay.

Which Direction

Look Up the Token Pair

GET /api/v1/currencies reports the same assets in exchange form. See Markets & Currencies.

Convert

Both directions are transactions on the Token Registry precompile: Signatures, cast examples, the ABI, and the two-stage settlement model are documented on the Token Registry precompile.

Amounts and Decimals

The two sides do not use the same scale. USDC.e is the case to keep in mind: a 6-decimal contract on EVM, held with 18 decimals on Core. One USDC.e is 1000000 in EVM contract units and 1000000000000000000 on Core. Read the contract value as erc20_decimals:
erc20_decimals is the EVM side only. Spot balance and fill responses normalize Core 18-decimal amounts into human-unit strings; an ERC20 call instead expects integers in the token contract’s decimal scale. Other API families expose raw units where documented. Track the asset, interface and scale before constructing a transfer.
The precompile returns after validating and queueing the conversion, not after moving the balance. Do not read a balance back in the same call and expect it to reflect the transfer.

Withdrawal Limits

Moving a token from Core to EVM is capped. Each token has an hourly and a daily ceiling, and a transfer that would exceed the remaining capacity fails until the window rolls over, so a large withdrawal may need to be split.
The response carries the ceilings under config and the capacity left in the current windows under state, as hourly_remaining and daily_remaining. Both are 18-decimal amounts, and they apply to the token as a whole rather than per account.
This is an outflow limit. transferToCore, the direction you use to fund an account before trading, is not capped. Check the remaining capacity only when moving funds out to EVM.

Verify

More query paths are listed in Chain Queries.

Common Problems

Gas is paid in AULT on the layer you submit from. Converting an entire AULT balance to the other side can leave the account unable to pay for the transaction back. Keep a gas reserve on both sides.
For bringing assets into Ault in the first place, see Bring Assets to Ault.