Error Codes

Onboarding & Core Error Code Reference

When validation fails, or when request parameters violate business rules, Harbor returns structured validation errors (422 Unprocessable Entity), state conflicts (409 Conflict), or custom numeric error codes. Use this reference to parse error responses and guide your users on corrective actions.


1. Onboarding & Validation Error Codes

The following numeric error codes are returned in the response body when submitting or updating onboarding data (POST / PATCH / /upgrade endpoints):

HTTPCodeMeaningWhat It Means / Developer Action
422Field-level validation failedOne or more payload parameters are invalid. The response contains specific field-level validation errors.
4092302Onboarding in progressAn onboarding is already in progress for this customer. Only one active onboarding is allowed.
4092303Level already approved / ConflictTarget level has already been approved, or PATCH/POST conflicts with current verified tier.
4092305Action blocked during processingTried to call PATCH or submit an upgrade while the onboarding status is still processing. Wait for processing to complete.
4222306Customer already verifiedThe customer is already fully KYC/KYB verified and cannot undergo onboarding again.
4222310Ineligible for elevationThe upgrade request does not meet eligibility prerequisites (e.g., attempting to upgrade to Level 3 before Level 2 is verified).
4092313Upgrade cooldown in progressA Level 3 upgrade request was recently rejected, and the compliance cooldown period is active.
4222316Level 1 US-only violationSubmitting a non-US resident (residence.country != "US") for Level 1 is forbidden.
4222318Upgrade blocked by outstanding RFICannot request an upgrade because the current onboarding is in action_required status. Correct existing data first.
4222319Duplicate upgrade in progressCannot request an upgrade because another upgrade request is currently being processed.

2. Onboarding Upgrade Conflicts (409 Conflict)

When calling the /upgrade endpoint, if the upgrade request cannot proceed due to the customer's current onboarding state, the API returns a 409 Conflict response with a specific situation or error state:

Situation / Situation CodeMeaningWhat It Means / Developer Action
action_requiredOnboarding action requiredThe current onboarding level is in action_required state. The customer must resolve outstanding requirements using PATCH on the main onboarding endpoint.
action_required_in_flightUpgrade action requiredAn upgrade is already pending but needs correction. Fix issues by sending a PATCH request.
processingOnboarding in progressThe customer's initial onboarding is still being validated. Wait for initial onboarding to become verified first.
submission_processingUpgrade request validatingAn upgrade request is already in progress and being validated. Wait for the request to finish.
submittedUpgrade under reviewAn upgrade request is under manual compliance review. Wait for the compliance team to approve or reject the pending review.
already_activeLevel already activeNo action needed. The customer has already been verified at this level (or higher).
detailsPrerequisites not metThe upgrade request does not meet the eligibility prerequisites. Read the error details and ensure Level 2 is verified before attempting Level 3.

3. Onboarding Entry Middleware Errors

These errors are thrown by the gateway middleware prior to route processing to protect data scheme integrity:

HTTPError IdentifierWhat It Means / Developer Action
422individual_route_type_mismatchAttempted to submit a Graded Onboarding (v2) individual payload for a customer whose type is corporate.
422kyc_delegated_not_supportedGraded Onboarding is not supported for Delegated KYC customers.
422v1_customer_use_v1Customer is already on the V1 onboarding scheme (has V1 records/history) and cannot migrate to V2.

Did this page help you?