This guide focuses on the USD rail. Requirements and response structure differ for other rails—see the API
Reference for complete details.
Status Overview
| Status | Description |
|---|---|
| INACTIVE | No KYC submitted yet—call Submit KYC to begin verification |
| INCOMPLETE | Submitted data needs updates—fix flagged items and resubmit |
| PENDING | KYC submitted and is moving through automated compliance checks or bank onboarding |
| MANUAL_REVIEW | Compliance team manually reviewing before final decision |
| RFI_PENDING | Compliance requested additional information—check your compliance email |
| ACTIVE | User passed compliance review and can use the USD rail |
| REJECTED | Permanently denied for USD rail—resubmission not permitted |
| CONTACT_SUPPORT | System couldn’t confirm status—contact HIFI support |
Contact support if an applicant remains in
PENDING or MANUAL_REVIEW for more than 24 hours.Response Structure
Top-Level Fields
The KYC status response contains four top-level fields:Current KYC application status
Human-readable context for developers
Detailed screening outcome from the compliance engine
Breakdown of compliance categories and review results
Review Result
Each compliance category includes areviewResult object with a general summary of the compliance review outcome:
Screening outcome:
APPROVED or DECLINEDResubmission permission:
RETRY (can resubmit) or FINAL (hard rejection). Only present when reviewAnswer is DECLINED.Enumerated rejection reasons. Only present when
reviewAnswer is DECLINED.Human-readable explanation of the rejection. Only present when
reviewAnswer is DECLINED.Review Details
Thedetails object returns the compliance review outcome for each KYC category. Every category includes a reviewResult, and documentation-based categories also expose the individual files that were reviewed.
Non-document information: name, address, date of birth, tax ID
Government ID documentation review results
Proof of address documentation (if submitted)
Source of funds and intended use responses
Response Breakdown
- ACTIVE
- INACTIVE
- PENDING
- MANUAL_REVIEW
- INCOMPLETE
- RFI_PENDING
- REJECTED
- CONTACT_SUPPORT
User passed all compliance checks and completed bank onboarding. They can now use the USD rail.