Skip to main content

Documentation Index

Fetch the complete documentation index at: https://developers.circle.com/llms.txt

Use this file to discover all available pages before exploring further.

After you have created a trade and both parties have signed, the trade needs to be funded onchain for settlement to occur. The StableFX Console provides two ways to fund: individual funding for a single trade, or batch funding to settle multiple trades in a single transaction.

Prerequisites

Before you begin:
  • You have connected an EVM wallet with sufficient token balance.
  • You have granted Permit2 approval for the funding token. Permit2 is a token-approval contract that lets you authorize token transfers with a single offchain signature rather than a separate onchain approve transaction.
  • You have one or more trades in a fundable status (pending_settlement, taker_funded, or maker_funded, depending on your role). See Trade states for a description of each status.

Individual trade funding

1

Navigate to Trades

Go to the Trades page from the sidebar navigation.
2

Open a fundable trade

Click on any trade that shows the Fund action. Fundable trades have one of these statuses:
Your roleFundable when status is
Takerpending_settlement or maker_funded
Makerpending_settlement or taker_funded
3

Click Fund

In the trade details side panel, click Fund to open the funding flow.
4

Review and sign

The funding panel displays your deliverables (what you send to escrow) and receivables (what you get after settlement). Click Fund Trade and confirm the Permit2 signature in your wallet.

Batch funding

Batch funding lets you settle multiple trades in a single wallet signature. This is especially useful for makers who accumulate many trades throughout a settlement window.
1

Enter batch mode

On the Trades page, click Batch fund in the toolbar. The table switches to selection mode with checkboxes on each row.
2

Select trades

Check the trades you want to fund. Only trades in a fundable status appear as selectable. The console automatically filters out trades that are not eligible.
3

Review the batch

A summary bar at the bottom shows:
  • Number of selected trades
  • Total deliverables (aggregated by currency)
  • Total receivables (aggregated by currency)
4

Choose funding mode

If you are a maker, choose between:
  • Gross: Fund each trade at its full amount. The total deliverable is the sum of all individual trade amounts.
  • Net: Fund the net position across all selected trades. If you have offsetting trades (for example, selling USDC in one trade and buying USDC in another), the net amount is reduced accordingly.
Netting applies across all selected trades regardless of counterparty. You cannot net at the individual counterparty level.
If you are a taker, skip this step. Takers always fund in gross mode.
5

Sign and submit

Click Fund All. Your wallet prompts you to sign Permit2 batch typed data covering all selected trades. Confirm the signature.

Funding modes explained

ModeBehaviorBest for
GrossEach trade is funded at its full notional amount.Takers (always gross), or makers who want explicit per-trade funding.
NetOpposing positions in the same currency are offset. You fund only the net difference.Makers with many trades in the same pair. Reduces capital requirements.
Takers always fund in gross mode. The net funding option is available only to makers.

What happens after funding

Once you submit your funding signature:
  1. The console broadcasts the transaction through the StableFX execution engine.
  2. The FxEscrow smart contract on Arc receives and holds your tokens in escrow.
  3. When both parties have funded, the contract settles the trade automatically:
    • The taker receives the “to” currency minus the taker fee.
    • The maker receives the “from” currency minus the maker fee.
    • Fees are sent to the fee wallet.
The trade status updates to complete, and the settlement tokens appear in your wallet.

Monitoring settlement

You can track each trade’s onchain progress in the Activity tab of the trade details panel. It shows:
  • The contract trade ID
  • Each onchain transaction (record, taker deliver, maker deliver, settle)
  • Transaction hashes and timestamps
  • Current status of each step
The trades table on the main page auto-refreshes every 30 seconds. Click into a specific trade for faster polling (every 3 seconds).

Handling breaches

If one or both parties fail to fund before the settlement deadline (determined by the tenor, which is the agreed duration of the trade from creation to settlement expiry), the trade enters a breaching state and eventually becomes breached. See Trade states for details on these statuses. When a trade is breached:
  • The funded party’s tokens are returned from escrow.
  • Any collateral (risk buffer) from the non-funding party is forfeited.
  • The trade cannot be retried. You must create a new trade.
See Risk Buffers for details on how collateral protects against breaches.

See also