Staging Environment
Zenoo provides a full staging environment for integration testing. Staging mirrors the production API surface, including webhook delivery, but uses mock providers instead of real verification services. You can test every flow, error path, and edge case without consuming production credits or triggering real compliance checks. What staging gives you:- Same API endpoints as production, with a different base URL and separate credentials
- Mock providers that return simulated results based on pattern-matched test data
- Full webhook delivery with the same event types and payload structure as production
- Lower rate limits to prevent accidental resource exhaustion during development
Staging vs production
| Aspect | Staging | Production |
|---|---|---|
| Base URL | https://instance.staging.onboardapp.io | https://instance.prod.onboardapp.io |
| API keys | Separate staging keys | Production keys |
| Providers | Mock/sandbox providers | Live provider APIs (registry, screening providers) |
| Webhooks | Full delivery, same event types | Full delivery |
| Rate limits | 50 requests/minute | 100-300 requests/minute (varies by endpoint) |
| Data retention | Periodic purge (30 days) | Full retention per contract |
| Charges | None | Per-verification pricing |
Getting started
Request credentials
During onboarding, Zenoo provides:
- A staging API key
- A staging project hash
- A webhook secret for signature verification
If you do not have these, contact your Zenoo account manager or email support@zenoo.com.
Configure your project
Store your staging credentials separately from production. A common pattern:
.env.staging
.env.production
Mock provider behavior
Staging providers use pattern-matched test names to determine outcomes. The mock system recognizes specific strings in the submitted data and returns corresponding results.| Pattern in name | Result |
|---|---|
Clean | Pass, no screening hits |
PEPMatch | Refer, PEP match returned |
SanctionsHit | Fail, sanctions hit returned |
AdverseMedia | Refer, adverse media matches |
INVALID999 (registration number) | Fail, company not found in registry |
TEST001 (registration number) | Pass, clean company registry result |
TEST002 (registration number) | Refer, company with screening hits |
What mock providers do not do
- No real screening against WorldCheck, OFAC, HMT, or any live database
- No real company registry lookups
- No real document verification or biometric liveness checks
- No real phone, email, or address verification
Webhook behavior in staging
Staging delivers webhooks with the same event types and payload structure as production:verification.completedscreening.completedjourney.abandonedjourney.expiredcheck.failed
Limitations
Be aware of the following staging limitations:
- Mock providers. Staging results are simulated. They test your integration logic, not the accuracy of real providers. Always validate with at least one real verification in production before going live.
- No real screening. PEP, sanctions, and adverse media results are pattern-matched, not sourced from live databases. Do not use staging results for compliance decisions.
- Lower rate limits. Staging enforces 50 requests per minute (vs 100-300 in production). This is sufficient for integration testing but not for load testing.
- Periodic data purge. Staging data is purged every 30 days. Do not store long-lived references to staging cases or verification results.
- No SLA. Staging does not have an uptime SLA. Planned maintenance windows may cause brief unavailability.
Next steps
- Test Data — Pre-built payloads for every scenario
- Integration Scenarios — End-to-end test scripts
- Go-Live Checklist — Pre-production requirements