Announcing the logic-v1 scoring mechanism

OpenSanctions is constantly improving our services, and we’ve just released a new version of our API software, `yente`, that lets users try a new matching system. False positives and accuracy are a wicked problem across the AML space, and we’re actively working to improve the precision of our results.

We expect this new opt-in function to help improve match accuracy. The new function is opt-in, and we’d like to invite you to see if it works better for you. The new rule-based scoring mechanism is called logic-v1, and it has been significantly enhanced to provide more accurate matching.

As our matching system evolves, we’re becoming more and more focused on rule-based and explainable mechanisms that consider a broad range of inputs to generate strong evidence about the risk associated with a screened entity.

Today in technology blog post visual metaphors: are these butterflies the same?

To keep it simple: With our API, if you pass ?algorithm=best, you will always get the most precise scoring that the current version of yente can support, but the specific score numbers will change as we update the software. Not specifying the ?algorithm= parameter will use the first model we implemented, regression-v1, for compatibility reasons.

Try this out against our SaaS API, or on-premise by updating yente to the latest version and using syntax like this:

POST /match/sanctions?algorithm=logic-v1

The logic-v1 algorithm differs from our existing algorithms in the following ways:

  • logic-v1 changes how we compare names with many different parts, and is much more conservative in what constitutes a match. This is particularly true of name comparisons where both names have a very different length.
  • We're switching to metaphone as an algorithm for phonetic comparison in logic-v1. It provides more precise matching for non-English names.
  • logic-v1 supports identifier-only matching for vessels (IMO), securities (ISIN), some company identifiers (OGRN and INN) and crypto wallets (public wallet address).
  • Providing a separate lastName for persons can now also be used to reduce false positives.

You can try out the system using out advanced search web

We’re looking forward to your feedback, preferably in the #technical Slack channel or via We’re eager to hear about your results.

Like what we're writing about? Keep the conversation going! You can follow us on Twitter or join the Slack chat to bring in your own ideas and questions. Or, check out the project documentation to learn more about OpenSanctions.


This article is part of OpenSanctions, the open database of sanctions targets and persons of interest.