Before ingesting operations, make sure the related clients have already been ingested. See the Ingesting Clients guide.
Step 1: Ingest Deposits
Deposits represent incoming funds (crypto or fiat) into client accounts. Endpoint:POST /v1/operations/deposits
initiatedBy field should reference the Corsa client id of the client who initiated the deposit.
Step 2: Ingest Withdrawals
Withdrawals represent outgoing funds (crypto or fiat) from client accounts. Endpoint:POST /v1/operations/withdrawals
Fiat Withdrawal
Crypto Withdrawal
Step 3: Ingest Trades
Trades represent exchange operations between two assets. They can be ingested in two ways:- Atomic Ingestion - Send the entire trade with all its transactions in a single request.
- Incremental Ingestion (Fills) - Send parts of the trade as separate requests that get grouped into the same trade entity.
POST /v1/operations/trades
Atomic Ingestion
Send the full trade with all transactions at once:Incremental Ingestion (Fills)
UseshouldAppendToExistingTrade=true and the same referenceId to append transactions to an existing trade.
Request 1 (First Fill):
Step 4: Update Operation & Transaction Statuses
As operations progress through their lifecycle, you can update their statuses.Available Statuses
Operation Statuses (Deposits, Withdrawals, Trades)
| Status | Description |
|---|---|
PENDING | The operation has been initiated but is not yet final. |
SUCCESS | The operation completed successfully. |
FAILED | The operation failed. |
REJECTED | The operation was rejected. |
EXPIRED | The operation expired (specific to time-bound operations). |
Transaction Statuses
| Status | Description |
|---|---|
PENDING | The transaction is processing. |
SUCCESS | The transaction was confirmed. |
FAILED | The transaction failed on-chain or during processing. |
CANCELLED | The transaction was cancelled. |
FROZEN | The transaction has been frozen. |
Updating a Trade Status
Endpoint:PUT /v1/operations/trades/{id}/updateStatus
Updating a Transaction Status
Endpoint:PUT /v1/transactions/{id}/updateStatus
What’s Next?
With clients and operations ingested, you can now set up alerting and case management.Ingest Alerts & Cases
Push external alerts and escalate them to investigation cases.
Ingesting Clients
Review the client ingestion guide.