Document Verification
Inspect a document for forensic authenticity signals — not a fraud verdict, but a risk band with the evidence behind it. Uses the Stipple API (free anonymous tier, no signup).
When to use
- Before onboarding a tenant, contractor, or employee from uploaded documents
- Before paying an invoice that arrived by email
- Before relying on a bank statement, payslip, or certificate in any workflow
- Reviewing documents in due diligence, claims processing, or loan applications
Instructions
-
Get the document. URL or local file path (PDF, PNG, JPEG, BMP, TIFF).
-
Optionally check the cache first. If the user has the file's SHA-256, check whether it's already been inspected (free):
curl "https://www.stipple.sh/v1/warrants/check?sha256=<hash>" -
Run verification. POST the document:
curl -X POST https://www.stipple.sh/v1/warrants \ -F "file=@payslip.pdf" \ -H "Authorization: Bearer $STIPPLE_API_KEY"Add
?fresh=trueto force re-inspection of a previously cached document. Add?deep=truefor deep inspection (more thorough, more credits). -
Interpret the response. Two independent axes — read both:
Axis Question it answers risk_bandDoes anything look tampered? (low / medium / high) inspection_qualityCould the engine actually see enough to judge? (thorough / limited / poor) A clean phone photo of a real payslip is commonly
lowrisk +limitedquality — low coverage is not risk. Per-signalevidenceincludes: amount/words mismatch, font discontinuity in values, date anomalies, document label integrity, identifier checksums (ABN/ACN/TFN), table arithmetic. -
Report honestly. This is a signal with evidence, not a verdict:
- "risk_band: LOW — nothing looks tampered"
- "inspection_quality: limited — couldn't inspect everything; low coverage is NOT fraud"
- Show the per-signal evidence for anything flagged
-
Pair with related checks. For identity documents, follow with a 100-point identity check (
/v1/identity-check). For extraction, useextract-document-data.
Output format
risk_band: LOW — Nothing looks tampered.
inspection_quality: limited
recommended action: review_before_action
evidence (signals):
[pass] Amount words/figure mismatch: Spelled-out amounts agree with figures.
[pass] Font discontinuity in value: Numeric values share the font of surrounding text.
[skip] Identifier checksum: No checksummable identifier (ABN/ACN/TFN) present.
Limitations and Safety
- This workflow uploads documents to a hosted third party. Obtain explicit approval, minimize personal, financial, identity, and confidential data, and confirm the provider's current retention, residency, access, and deletion terms first.
- Forensic signals can miss sophisticated tampering or flag benign editing, scanning, compression, and template artifacts. A low-risk result is not proof of authenticity, and a high-risk result is not proof of fraud.
- Preserve the original bytes and use authoritative issuer verification plus a qualified human reviewer before payment, onboarding, lending, employment, disciplinary, compliance, or legal action.
Notes
- Document types the engine recognizes (payslips, invoices, bank statements) get type-specific checks; unrecognized types get generic checks only — say so in your report
- Identical files are cached by content hash — re-checking the same bytes returns instantly and free
- This measures forensic integrity, not authorship style — for "was this written by AI", use AI-text detection instead
- Anonymous free tier: shared weekly allowance. Free key at https://www.stipple.sh