Skip to main content
If your users deposit on several chains, their balance ends up spread across all of them. Settlement is how you consolidate that: set one chain, and every new deposit to any of your users’ addresses gets converted to USDC if it needs to be, and moved to that same user’s address on the chain you chose. It’s off by default. Set it with GET/PUT /api/v1/settlement.
This is not the same thing as auto-sweep. Settlement moves a deposit to the user’s own address on your chosen chain, so their balance is consolidated there. Auto-sweep pools a balance into your master wallet, and it still runs on the settlement chain once a deposit lands there — the two work together, one after the other.

What happens to a deposit

Say you’ve set Polygon as your settlement chain. A user deposits USDT on Ethereum. Their address, on Polygon, ends up holding USDC for that amount — no separate step for you, and no separate step for them. If a deposit already arrives as USDC on your settlement chain, there’s nothing to do, and it’s never counted as a settlement. Very small deposits are left where they landed rather than moved: the cost of converting and bridging a few cents can be more than the deposit is worth. You’ll see this as skipped_below_minimum on the deposit’s settlement field.

Tracking it

Every deposit that needed to move carries a settlement object once you fetch it — see get a wallet’s deposits. You can also wait for wallet.deposit.settled instead of polling. status is one of:

If a settlement fails

A failure tells you where the funds actually are, in one of three ways:
  • On the chain the deposit arrived on — safe at your user’s own address, in the token they sent.
  • On Base — safe at your user’s own address, as USDC.
  • Under review — we don’t have a confirmed answer yet and are looking into it. This is never described as unsafe; it means we’re not willing to state a location without being sure.
Whichever it is, the money is your user’s, at an address only they and you can see. Nothing here is ever lost track of — a failed settlement just means the automatic move didn’t complete, not that funds are missing.

Changing your settlement chain

Changing or clearing the chain only affects deposits from that point on. A settlement already under way keeps moving to the chain it started with; it never gets redirected mid-flight.