What happened
A deposit or transaction was flagged during compliance screening and its funds have been frozen pending a manual review. The transaction is in a terminal state with failureCode: compliance_hold. No funds were credited to the customer.
This code applies specifically to the deposit-frozen path. For compliance-review rejections on outbound transactions, see COMPLIANCE_REVIEW_REJECTED.
Common causes
- Screening match on a deposit — the inbound transfer matched an elevated-risk or sanctions signal during compliance review, and the deposit policy routes all non-clear decisions to a frozen hold
- Manual hold placed by Conduit’s compliance team — the transaction was held pending further investigation
Recovery
This is a terminal state. The funds are frozen, not returned. Do not resubmit
without contacting support first.
1. Confirm the terminal state
The response will show status: "failed" and failureCode: "compliance_hold".
2. Contact your account manager
A compliance hold requires manual review by the compliance team. Provide:
- The transaction ID (
txn_abc123)
- The correlation ID from the error response
- The customer ID and any context about the transaction source
Do not submit new transactions for the same source until the hold is resolved.
Prevention
- Handle
transaction.failed with this code — branch on failureCode === 'compliance_hold' to surface a neutral “this transfer requires review” message to the customer without disclosing compliance details
- Do not retry — submitting a replacement transaction for the same source is unlikely to succeed and may flag additional transactions
The transaction.failed event fires when the hold is recorded: