Income is the number most underwriting decisions turn on, and no single document establishes it. A pay stub shows gross for one period, a W-2 shows last year, and bank deposits show what actually landed. They will disagree. The job is to reconcile them and say how confident the result is.
Submit every source
Parse the documents first, then pass their ids to the income enricher together. Sent separately they cannot be cross-checked, which is the entire value.
curl -X POST "$MONEYLINE_BASE_URL/v1/enrich/income" \
-H "Authorization: Bearer $MONEYLINE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"documents": ["doc_paystub_1", "doc_w2_2025", "doc_stmt_dec"],
"period": "monthly"
}'Read the result
{
"monthlyMinor": 762000,
"confidence": 0.94,
"sources": [
{ "documentId": "doc_paystub_1", "monthlyMinor": 764000, "weight": 0.4 },
{ "documentId": "doc_w2_2025", "monthlyMinor": 758333, "weight": 0.35 },
{ "documentId": "doc_stmt_dec", "monthlyMinor": 761200, "weight": 0.25 }
],
"stability": { "consecutiveMonths": 14, "variance": 0.03 },
"employer": { "name": "Northwind Payroll", "matchedAcross": 3 }
}The sources are returned individually on purpose. When a reviewer disputes the number, the answer is in the breakdown, not in an explanation generated after the fact.
What confidence means
Confidence falls when sources disagree, when there are few of them, or when deposits are irregular. It is not a measure of extraction quality: a perfectly parsed pay stub for someone with volatile self-employment income is still low-confidence income.
| Confidence | Typical handling |
|---|---|
| 0.90 and above | Accept automatically |
| 0.75 to 0.90 | Accept with a second source, or route to review |
| Below 0.75 | Review, or request another document |
Self-employment
Pass a 1040 with its schedules and any K-1s, and the enricher uses Schedule C net profit and K-1 distributions rather than treating gross deposits as income. Passing only bank statements for a self-employed applicant reliably overstates income, because transfers between the applicant's own accounts look exactly like revenue.