Compliance screening that doesn't guess.
Upload your data — run screening + ownership intelligence + structured adverse media signals — get auditable review cases with complete evidence lineage and hash chain provenance. Self-serve or embed via API.

See CCAI screening in action
Every screening produces a verifiable decision package with integrity hash and full provenance chain.
Full transparency from input to resolution.
Upload
Your data is versioned and frozen. Every result is traceable to an exact snapshot.
Screen
Same input, same rules, same output — always. Full ownership chains with risk paths and commercial intelligence correlation.
Intelligence
Raw hits become structured signals with justification, evidence snippets, severity, and full provenance including hash chain.
Cases & Clearing
Flagged entities become structured cases. Analysts disposition with predefined types + required justification and notes.
Webhooks
Instant webhooks on batch.completed, batch.failed, and case.status_changed. Full retry + dead-letter handling.

See the ownership chain. Not just the name.
- Depth control: 1–5 levels of traversal
- Risk path analysis: shell chains, unknown UBOs, deep structures
- Adverse media + commercial intelligence correlation (World-Check & Dow Jones adapters ready)
- Snapshot-scoped: every query is reproducible

From noisy vendor hits to explainable signals.
Raw adverse media data is noisy. CCAI's intelligence layer deduplicates, categorizes, and structures raw hits into explainable signals — each traceable to source evidence, each defensible in front of a regulator.
"Gazprom linked to sanctions evasion" — Reuters — HIGH
"Gazprom sanctions evasion scheme" — BBC — MEDIUM
"Russian energy company faces EU sanctions" — FT — HIGH
"Gazprom Export revenue drops amid sanctions" — Bloomberg — LOW
"Gazprom PJSC annual report controversy" — local media — LOW
5 hits. 3 duplicate the same event. 2 irrelevant. No structure.
{
"entity_name": "Gazprom Export",
"category": "SANCTIONS_EVASION",
"severity": "HIGH",
"signal_count": 3,
"deduplicated_from": 5,
"top_source": "Reuters",
"source_references": ["Reuters","BBC","FT"]
}One structured signal. Categorized. Severity-ranked. Traceable.
Structured alert clearing that actually reduces manual work.
Every screening hit becomes a structured case with full provenance. Your analysts review evidence, not raw data. Every resolution is auditable.
Automated Case Creation
Every BLOCKED or REVIEW decision automatically generates a structured review case with full evidence attached. No manual ticket creation.
Full Evidence Lineage
Every case includes the complete DecisionEventPackage with hash chain and provenance — matched name, confidence, resolution layer, adverse media signals, ownership graph context.
Structured Disposition Workflow
Analysts disposition with predefined types: True Positive, False Positive, Escalate. Required justification and notes fields. No free-form ambiguity.
Immutable Audit Trail
Every status change, disposition, and override is recorded with timestamp, analyst ID, and justification. Fully defensible under regulatory review.
Status Workflow
Open → In Review → Resolved. Pre-attached evidence eliminates manual data gathering. Analysts review decisions, not raw data.
Export-Ready Audit Bundles
JSON export for regulators (PDF export coming soon). Decision packages, case histories, and disposition records ready for regulatory filing or internal audit.
Case review dashboard — entity detail, evidence chain, disposition workflow, audit log
See how alert clearing works in the live sandbox
API key in 30 seconds. No sales call required.
Create a tenant, generate an API key, upload your first list, and screen it — all through the self-serve provisioning surface. No procurement cycles. No vendor lock-in.
REAL SCREENSHOT: Provisioning — API key creation or onboarding guide
Built for the audit that's coming.
Immutable Snapshots
Every screening run is against a frozen, versioned, content-hashed snapshot. Results are always reproducible.
Hash Chain Provenance
Every decision includes a verifiable DecisionEventPackage with SHA-256 integrity hash and full decision path.
Signal Provenance
Full provenance on every intelligence signal — traceable from structured output back to raw vendor hit.
Deterministic
Same input always produces the same output. No probabilistic drift. No model retraining surprises.
Tenant Isolated
Tenant-scoped persistence. API key authentication. Cross-tenant access is structurally impossible.
Single Entity + Batch
Single entity screening available via real-time API, or batch-process thousands. SOC-2 evidence preparation tools and audit exports.
Production-grade from day one.
Rate Limiting
60 requests per tenant per 60 seconds (operator-configurable via code constants). Fair usage enforced per tenant, not globally.
Redis-Backed Shared Limiting
Redis-backed rate limiting in production for multi-instance deployments. Graceful fallback to per-process limiting if Redis is unavailable.
Webhook Delivery Guarantees
Bounded retries with backoff. Dead-letter queue for exhausted deliveries. Full delivery audit log per tenant.
Trusted by compliance teams who need to defend their decisions.
Ready to replace noisy vendors and manual review?
A transparent, auditable platform. No procurement. No integration project. Upload a list and get results.