Sync vs Async Flows
Zenoo supports two execution models. Choose based on whether user interaction is required and how your system handles latency.- Synchronous
- Asynchronous
Synchronous (Model 1)
The API blocks until all checks complete or the timeout is reached. Results are returned in the response body.How to use
Add theX-SYNC-TIMEOUT header to any /api endpoint. The value is in milliseconds.X-SYNC-TIMEOUT milliseconds, then returns whatever results are available.When to use
- Server-to-server checks: AML screening, company registry verification
- Automated pipelines: batch processing, background jobs, cron tasks
- Simple flows: single-provider checks that complete quickly
- Development and testing: fastest way to see results
Timeout behavior
If the response contains a
tokens field, some checks are still processing. Use the pull token to retrieve the remaining results.Recommended timeouts
Comparison table
Processing timeline
Typical durations for each processing stage:
Person Verification elapsed time is dominated by user behavior: finding documents, taking photos, retrying failed captures. Once the user submits, server-side processing completes in 30 to 60 seconds.
Mixing models
Most production integrations use both models. A typical pattern:- Company Verification (sync). Submit company data, get results in the response.
- Person Verification (async). Initiate journeys for directors and UBOs, redirect them to verification URLs.
- Screening (sync). Re-screen existing customers for ongoing monitoring.
integration.js
Polling example (Node.js)
A complete polling implementation with exponential backoff:poll-results.js
Next steps
- Webhooks Guide. Set up async result delivery.
- Error Handling. Handle timeouts, retries, and provider failures.
- Testing and Sandbox. Test both models in the staging environment.