Treasury & Liquidity Management
Hold balances across multiple currencies, sweep funds between wallets, and convert currencies using spot FX or OTC deals for corporate treasury operations.
Treasury & Liquidity Management
Use this flow when your treasury team needs to hold balances across multiple currencies, sweep funds between wallets, and convert between currencies for hedging or settlement.
✅ Before you start
Complete these steps before you operate the treasury flow:
- Authenticate with the merged Login service and store the returned
tokenandcompanyId. - Identify the currencies you need to hold, collect, and convert across.
- Create wallets for each treasury currency you plan to operate in.
- Register webhook endpoints so you can reconcile inbound receives, FX trade completions, and outbound transfers.
- Decide your thresholds for sweeps and FX conversion triggers.
📚 Use this page with the recipe
This guide explains when to use the treasury flow and the minimum sequence. For the implementation walkthrough, use the recipe:
Treasury & Liquidity Management Recipe →
The treasury workflow
This use case follows a simple sequence:
- Hold balances in multi-currency wallets sized to your operational thresholds.
- Monitor wallet balances with Get all Wallets and reconcile against statements.
- Get an FX rate and execute a trade with Get FX rate and Create FX trade when a currency needs conversion.
- Use OTC deals when conversion size warrants a negotiated rate. Track deals through the OTC Deals API.
- Reconcile each FX trade or OTC deal through to settlement before treating the converted balance as available.
What makes this use case different?
Unlike one-off conversion flows, treasury operations need to:
- operate across many currencies in parallel
- reconcile balances against external statements continuously
- use the
vfx_tokenlifecycle correctly because rates are short-lived - support both spot FX trades and OTC deals depending on size and strategy
Where to go deeper
Troubleshooting
| Issue | What to check |
|---|---|
| Balance does not match the statement | Reconcile only from completed receive, FX, and outbound events; deduplicate webhooks by event ID. |
| FX trade cannot be booked | Confirm the vfx_token is still valid and the source wallet has enough availableBalance. |
| Currency is not holdable | Check the corridor in Currency Guides; some currencies are payout-only or non-holdable. |
| OTC deal does not appear | Filter by status, currency, and date with the OTC Deals API, and confirm the deal was opened against the expected account. |
Next steps
| FX Conversion Guide → Run a complete FX trade from rate to settlement. | OTC Deals → Track larger negotiated conversions through the OTC Deals API. |
Updated 3 days ago
