Choosing the Right Approach
Parcha offers three ways to verify documents, each optimized for different use cases:Quick Comparison
| Approach | Endpoint | Speed | Use Case |
|---|---|---|---|
| 1. Full Agent Job | startKYBAgentJob | Varies | Document verification as part of comprehensive KYB review with multiple checks |
| 2. Prevalidation | runCheck | Fast | Quick document type validation before full review |
| 3. Full Verification | runCheck | Thorough | Complete verification with visual analysis and fraud detection |
Incorporation Document Example
We’ll demonstrate all three approaches using incorporation document verification. The same patterns apply to other document types (proof of address, EIN documents, etc.).Sample Business Data
Approach 1: Full Agent Job
Best for: Comprehensive compliance reviews
Use Agent Jobs when you need to run multiple checks together as part of a unified compliance workflow with custom pass/fail criteria.
- Running a full KYB review with multiple checks (web presence + sanctions + document verification)
- You have an agent configured with specific pass/fail logic
- You need unified case view and risk scoring across all checks
Agent configuration matters: Your agent key determines which checks run and the pass/fail criteria. Work with Parcha to configure agents that match your compliance policies.
Approach 2: Prevalidation (Quick Check)
Best for: Real-time document upload validation
Use Prevalidation for fast document type checking without running full verification. Perfect for inline validation during user uploads.
- Real-time document upload flows where users expect quick feedback
- Pre-screening documents before committing to full verification
- Validating document type before user submits their application
false to skip visual verification and fraud checks. The system will only validate that the document is a valid type. Use a webhook to receive the result quickly.
Approach 3: Full Verification
Best for: Thorough document analysis
Use Full Verification for complete document analysis including visual verification, fraud detection, and data extraction.
- Final verification before approving a business application
- When you need visual element analysis (seals, signatures)
- When fraud detection is required
- When you need to verify specific data fields (dates, addresses)
Verification Options Reference
Latency vs. Thoroughness Trade-off: Each verification option adds scrutiny but increases processing time. Choose based on your risk tolerance and UX requirements.
| Option | Default | Description | Latency Impact |
|---|---|---|---|
enable_visual_verification | true | Uses vision model to analyze seals, signatures, visual elements | +15-30 seconds |
enable_fraud_check | false | Sophisticated fraud and tampering analysis on document metadata | +1-2 minutes |
verify_incorporation_date | true | Fail if incorporation date has significant discrepancies | Minimal |
verify_registration_number | false | Fail if registration number has significant discrepancies | Minimal |
verify_address | false | Fail if address has significant discrepancies | Minimal |
verify_no_high_risk_fraud | false | Fail if HIGH_RISK fraud indicators detected | Minimal |
By default (without explicit options), the system performs OCR-based analysis using LLMs to extract and analyze text from the document.
Polling for Results
After starting a job, poll for completion:Using Webhooks
Instead of polling, configure a webhook to receive results automatically:Decision Guide
I need to run a full compliance review with multiple checks
I need to run a full compliance review with multiple checks
Use: Approach 1 - Full Agent Job (
startKYBAgentJob)Include documents in your kyb_schema and let the agent handle document verification alongside web presence, sanctions screening, and other checks. You get unified pass/fail logic across all verification types.I need quick validation during document upload
I need quick validation during document upload
Use: Approach 2 - Prevalidation (
runCheck with flags disabled)Set all verification flags to false for fast document type validation. Show users immediate feedback on whether their document is the right type before they submit.I need thorough verification with fraud detection
I need thorough verification with fraud detection
Use: Approach 3 - Full Verification (
runCheck with flags enabled)Enable enable_visual_verification and enable_fraud_check for comprehensive analysis. Use this for final verification before approving applications.I want quick prevalidation followed by full verification
I want quick prevalidation followed by full verification
Combine Approaches 2 and 3
- Run prevalidation during upload for quick feedback
- Run full verification when user submits their complete application
Document Upload Options
When submitting documents for verification, you have two options for how to include the document data:Option A: Inline Base64 (Single Request)
Include the base64-encoded document directly in your verification request. This is the simplest approach for most use cases. How it works: When to use:- Most common approach
- Documents under 10MB
- When you want simplicity
Option B: Pre-upload (Two-Step)
Upload the document first to get a URL, then reference that URL in your verification request. Useful when you need to manage documents separately. How it works: When to use:- Large documents
- When you need to reuse the same document across multiple checks
- When you want to manage document storage separately
Comparison
| Option | Requests | Best For |
|---|---|---|
| A: Inline Base64 | 1 | Simple integration, most use cases |
| B: Pre-upload | 2 | Large files, document reuse, separate storage management |
Other Document Types
The same three approaches work for all document verification checks:| Document Type | Check ID | Document Field |
|---|---|---|
| Incorporation Certificate | kyb.incorporation_document_verification | incorporation_documents |
| Proof of Address | kyb.proof_of_address_verification | proof_of_address_documents |
| EIN Document | kyb.ein_document_verification | ein_documents |
| Business Ownership | kyb.business_ownership_document_verification | business_ownership_documents |
| Source of Funds | kyb.source_of_funds_document_verification | source_of_funds_documents |
check_id and document field in your requests.