You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Jan 27, 2026. It is now read-only.
User selects ITP Token (Index) to Buy, enters amount of USDC to trade, and clicks "Finalise Transaction"
Wallet asks to sign request, and user agrees to sign
Option A. Collateral comes from Base/Arbitrum chain
Request contains IERC20Permit (Permit20) and is sent to Backend service
Backend service will call Custody contract on Base or Arbitrum chain via chain RPC to execute Permit20 and draw cash from user's wallet
Backend service will call "Place Order" on Daxos contract
Option B. Initial transaction happens already on our Orbit chain
User deposits USDC to Vault contract (all on our Orbit chain), and this activity starts "Place Order" flow
Note In neither of the two cases we route collateral any further than our custody contract whether OTCCustody or Vault. Instead Supplier (AP) would later request collateral routing from custody, and perhaps on-chain Delta vector would be a proof.
TBD Find out how to handle bridging USDC to our Orbit chain, and then how to trigger smart-contract on deposit, or whether Permit20 should be used.