Guides
Document processing
How FinCheckers accepts documents, extracts findings, and surfaces processing status.
- Guides
- 1 min read
Scope
This guide covers document intake and processing for verification cases: supported document kinds, processing status, and finding retrieval. Prerequisites: Verification concepts and Verification workflows.
Supported document kinds (examples)
Tenant configuration controls the exact set. Common kinds include:
| Kind | Typical verification type |
| ------------------- | ------------------------- |
| pay_stub | Income |
| tax_form | Income |
| employment_letter | Employment |
| bank_statement | Bank statement analysis |
| identity_document | Document verification |
Do not assume every kind is enabled for every tenant.
Upload and attach
- Obtain an upload handle through your organisation’s configured storage path.
- Attach the handle to a case with
kindandcontentType. - Trigger or await processing.
await client.cases.attachDocument(caseId, {
kind: 'bank_statement',
contentType: 'application/pdf',
uploadId: 'upload_bank_001',
})
await client.cases.process(caseId)
Processing status
| Status | Meaning |
| ------------ | ----------------------------------------------------- |
| accepted | Document attached; not yet processed |
| processing | Extraction and checks in progress |
| processed | Findings available |
| failed | Processing failed; inspect error code for remediation |
Failed processing does not delete the original document. Re-upload or correct document kind as indicated by the error body.
Retrieve findings
const detail = await client.cases.get(caseId, {
include: ['documents', 'findings'],
})
for (const finding of detail.findings ?? []) {
console.log(finding.code, finding.severity)
}
Findings are structured and reviewable. They do not by themselves approve credit. See Decision review.