---
title: "Financial-Crime Compliance"
url: "https://dev.ionova.ai/solutions/compliance"
image: "https://dev.ionova.ai/_og/d/c_Ocean.takumi,title_Financial-Crime+Compliance,props_eyJ0aGVtZSI6eyJtb2RlIjoibGlnaHQiLCJjb2xvcnMiOnsicHJpbWFyeSI6IiMyRTUwOTAifX19,p_Ii9zb2x1dGlvbnMvY29tcGxpYW5jZSI,s_NhuIyn927bNRaAtT.png"
---

[Docs](https://dev.ionova.ai/) › [Solutions](https://dev.ionova.ai/solutions) › Financial-Crime Compliance

Risk · overlay

# Sharper screening from the same _structured data_.

Unstructured addresses are why screening throws false positives — and why some true hits slip through. Feed your sanctions, AML and KYC engines field-tagged addresses and screening runs sharper, with no engine to replace.

**The hinge —** you are the _beneficiary_, not the buyer. ARS is an overlay, not a control point: it produces field-tagged output (town, country, street, building, postcode — each in its own element with a cited `rule_source`) that your existing stack consumes.

Why free text _breaks_ screeningStructure removes a whole class of error.

-   **Valencia vs Venezuela** — a city in Spain reads as a sanctioned country to a name-matcher working on free text.
-   **"Calle Cuba"** — a street name in Buenos Aires trips a country-name filter; the alert your team works for nothing.
-   **Asian format reversal** — big-endian address order flips fields a Western parser reads backwards.

How it _plugs in_An overlay behind your existing stack.

|                |                                                                                  |
| :------------- | :------------------------------------------------------------------------------- |
| Placement      | Overlay (either)                                                                 |
| Scope          | Consumes the structured output of any Correct / Classify call                    |
| Channel preset | None — no control point to register                                              |
| Pattern        | Field-tagged output into your sanctions / AML / KYC platform — 0 engines replaced |
| Down-render    | EP-05 Render Party Address — unstructured lines for a legacy screening engine    |

Recommended _use cases_Screening capabilities ride on structured output.

outputDown-render for legacy screening

Render

Data Both

Feed legacy sanctions engines unstructured lines without losing the structured record.

EP-05 Render Party Address Single

categoryClassify and normalise a payee address

Classify to Correct

Data At-Source

Field-tag an address so screening compares like with like, not free text.

EP-06 / EP-01 Classify and Process Party Address Single

radarScan a portfolio for screening readiness

Classify Â· profile

Message At-Source

Inventory every address and flag which are unstructured before they reach screening.

EP-14 Extract Message Addresses Single / Batch Â· any

**Watch out for —** this replaces **0** screening engines — the input data changes, not your stack. The benefit accrues as the upstream editions (Treasury, Banks, Hubs) go live and start emitting structured output. It's a standalone deliverable: you can adopt the overlay independently.

Where next

[Banks & PSPs](https://dev.ionova.ai/solutions/banks)[VOP / CoP](https://dev.ionova.ai/solutions/vop-cop)[Standards](https://dev.ionova.ai/standards)[API reference](https://dev.ionova.ai/apis)