Use PATCH on /cipStatus to override a user's CIP (Customer Identification Program) status. This endpoint is an override, not a setter: it only changes a status that your program's onboarding flow has already decided. Please note that a status of pass is required before an account can be created for the user.
⚠️ Warning: Directly editing a user's CIP status will override the CIP status set by the program. Only call this endpoint for a user who already has a decided CIP status.
Preconditions
- The user must have a decided CIP status of
passorfail. Ifcip.statusis absent orpend, the request will return400because there is nothing to override yet. - The status can only be changed within 30 days of the user's
cip.initialStatusDecisionDate, returned by Get User and Accounts. After that window the status is locked and can no longer be updated.
📘 Note: To move a sandbox user to a decided status, complete the Plaid sandbox session and wait for the risk decision to land, or approve the pending action in manual review. Do not use this endpoint to force an initial decision.
Error Codes
The codes below are not listed in evaluation order.
| Error Code | HTTP Status | Description |
|---|---|---|
NOT_ALLOWED_FOR_ANONYMOUS_USER | 400 | The user is anonymous; this action is not allowed for anonymous users. |
CIP_NOT_YET_DETERMINED | 400 | No CIP decision has been reached yet (the CIP status is absent or pend), so there is nothing to override. |
CIP_STATUS_NOT_ELIGIBLE_FOR_UPDATE | 400 | The CIP status can no longer be updated (more than 30 days since initialStatusDecisionDate, or no initial decision date was recorded). |
USER_NOTHING_TO_MODIFY | 400 | The requested CIP status already matches the user's current status; there is nothing to update. |
USER_NOT_FOUND | 404 | No active user with this id exists for your program. |
