What Gets Synced
| Fireblocks Data | Corsa Entity | Description |
|---|---|---|
| Vault Accounts | Corporate Clients | Each vault account is mapped to a Corsa corporate client. |
| Deposit Addresses | Blockchain Wallets | Every deposit address becomes a tracked blockchain wallet. |
| Transactions | Deposits & Withdrawals | Incoming/outgoing transactions are mapped to Corsa operations. |
Real-Time Updates via Webhooks
| Event | What Happens |
|---|---|
transaction.created | New transaction is synced immediately. |
transaction.status.updated | Status/confirmation changes are reflected. |
vault_account.created | New vault accounts are created as corporate clients. |
vault_account.asset.added | New asset wallets and deposit addresses are synced. |
Setup Guide
Prerequisites
- A Fireblocks workspace with Admin or Non-Signing Admin access.
- Access to Corsa’s Settings → Integrations page.
Step 1 - Create the Integration in Corsa
- Navigate to Settings → Developers → Integrations in Corsa.
- Select Fireblocks from the available integrations.
- Optionally configure the polling interval (default: 10 minutes).
- Click Create.
- A Certificate Signing Request (CSR) for Fireblocks API authentication
- A Webhook URL for Fireblocks events
- A list of webhook events to enable
Step 2 - Create an API User in Fireblocks
- Open the Fireblocks Console.
- Go to Settings → Users → API Users.
- Click Add API User.
- Upload the CSR file from Corsa.
- Set the role to Viewer.
- Copy the API User ID (API Key) that Fireblocks provides.
Step 3 - Configure Webhooks in Fireblocks
- In the Fireblocks Console, go to Settings → Webhooks.
- Click Add Webhook.
- Paste the Webhook URL from Corsa.
- Enable the following events:
transaction.created,transaction.status.updated,vault_account.created,vault_account.asset.added. - Save.
Step 4 - Complete Setup in Corsa
- Enter the Fireblocks API User ID.
- Click Complete Setup.
How It Works
Data Sync
- Partial sync - Runs on the configured polling interval (default: every 10 minutes). Fetches only changes since the last sync.
- Full sync - Can be triggered manually. Re-syncs all vault accounts, wallets, and transactions.
Webhook Processing
Webhook events are processed in near real-time. The webhook signature is validated (RSA-SHA512 or JWKS-based verification) before processing.Entity Mapping
- Vault Accounts → Corporate Clients: Each vault account becomes a corporate client.
customerRefIdis preserved. - Deposit Addresses → Blockchain Wallets: Each deposit address is tracked as a blockchain wallet, associated with the owning corporate client.
- Transactions → Deposits & Withdrawals: Incoming transfers to your vaults are deposits; outgoing are withdrawals. Full metadata is preserved.
Security
- CSR-based authentication ensures the private key never leaves Corsa’s infrastructure.
- Webhook signatures are cryptographically verified on every incoming event.
- API credentials are securely stored and encrypted.
- All communication uses HTTPS/TLS.
Troubleshooting
| Issue | Resolution |
|---|---|
| Integration stuck on “Pending Setup” | Complete all four setup steps including entering the API User ID. |
| Data is not syncing | Verify integration is Active, API user has correct permissions, and is not expired. |
| Webhooks not received | Confirm webhook URL matches, all event types are enabled, and webhook is not paused. |
| Missing vaults or wallets | Ensure vault accounts are not hidden. Wait for next sync or trigger a full sync. |
| Transactions not appearing | Only transactions involving your vault accounts are synced. Ensure webhooks are configured. |
Corsa offers native integrations with leading compliance, blockchain analytics, and custody providers. See all integrations or schedule a demo to see how Corsa fits into your stack.