FAQ
1. Which chains does SODAX support?
2. What is the difference between the hub and a spoke chain?
3. Do I need to call sodax.initialize() before using the SDK?
sodax.initialize() before using the SDK?4. How do I override the hub RPC or contract addresses?
new Sodax({ hub: { rpcUrl: '<https://rpc.soniclabs.com>' } })SDK behaviour
5. Why don't SDK methods throw?
6. How should I handle errors properly?
7. What should I do when a swap returns RELAY_TIMEOUT?
RELAY_TIMEOUT?8. What does TX_SUBMIT_FAILED mean?
TX_SUBMIT_FAILED mean?Swaps and intents
9. What is the difference between swap(), createIntent() and createLimitOrder()?
swap(), createIntent() and createLimitOrder()?10. How do I get a swap quote and feed it into minOutputAmount?
minOutputAmount?11. Can I cancel an intent?
12. Are intents trustless? Can a solver run off with funds?
Lend, borrow, bridge, stake
13. Which actions actually need on-chain approval?
14. How is the bridge different from a swap?
15. How do I estimate gas across different chain families?
16. Can I stake SODA from a non-EVM chain like Sui or Stellar?
Monetization, integration, tooling
17. How do partner fees work and how do I claim them?
18. When do I need the IntentRelayChainId versus ChainKeys?
IntentRelayChainId versus ChainKeys?19. How do I wire SODAX into my AI coding agent (Claude Code, Cursor, Codex)?
20. What is hub wallet abstraction and when do I touch it directly?
Last updated