Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add address-based and refactor AML confidence settings #1697

Merged
merged 15 commits into from
Dec 13, 2023
Merged
Show file tree
Hide file tree
Changes from 10 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
32 changes: 32 additions & 0 deletions openapi/components/schemas/AmlCompoundConfidence.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
type: object
properties:
addressMatch:
type: object
description: A match for the customer's city or region, or both, is found.
properties:
matchingCountry:
$ref: ./AmlConfidence.yaml
mismatchingCountry:
$ref: ./AmlConfidence.yaml
noCountry:
$ref: ./AmlConfidence.yaml
addressMismatch:
type: object
description: A match for the customer's city or region, or both, is not found.
properties:
matchingCountry:
$ref: ./AmlConfidence.yaml
mismatchingCountry:
$ref: ./AmlConfidence.yaml
noCountry:
$ref: ./AmlConfidence.yaml
Comment on lines +17 to +22
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm confused by these property names. How do you find the mismatch?

Copy link
Contributor Author

@mikerebilly mikerebilly Dec 1, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@adamaltman Most of our records (from sources) populate the country fields with common names, not the ISO standard. So we first see how well a customer's country matches against the database among all other considerations, and then we run binary logic afterward to consider the country a match or not.

noAddress:
type: object
description: No city and no region is available to match against.
properties:
matchingCountry:
$ref: ./AmlConfidence.yaml
mismatchingCountry:
$ref: ./AmlConfidence.yaml
noCountry:
$ref: ./AmlConfidence.yaml
117 changes: 35 additions & 82 deletions openapi/components/schemas/AmlSettings.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -5,96 +5,49 @@ properties:
type: object
description: Confidence level settings for AML matches.
properties:
noDobExactMatch:
dob:
type: object
description: Exact match of the customer's name is found, but a date of birth is not.
description: Confidence level settings for AML matches based on date of birth.
properties:
matchingCountry:
$ref: ./AmlConfidence.yaml
mismatchingCountry:
$ref: ./AmlConfidence.yaml
noCountry:
$ref: ./AmlConfidence.yaml
noDobInexactMatch:
exactMatch:
description: Exact match of the customer's date of birth and name is found.
$ref: ./AmlCompoundConfidence.yaml
inexactMatch:
description: Exact match of the customer's date of birth and a fuzzy, or inexact name match is found.
mikerebilly marked this conversation as resolved.
Show resolved Hide resolved
$ref: ./AmlCompoundConfidence.yaml
noDob:
ashkarpetin marked this conversation as resolved.
Show resolved Hide resolved
type: object
description: Fuzzy, or inexact match of the customer's name is found, but a date of birth is not.
description: Confidence level settings for AML matches based on a missing date of birth.
properties:
matchingCountry:
$ref: ./AmlConfidence.yaml
mismatchingCountry:
$ref: ./AmlConfidence.yaml
noCountry:
$ref: ./AmlConfidence.yaml
noDobWeakMatch:
exactMatch:
description: Exact match of the customer's name is found, but a date of birth is not.
$ref: ./AmlCompoundConfidence.yaml
inexactMatch:
description: Fuzzy, or inexact match of the customer's name is found, but a date of birth is not.
$ref: ./AmlCompoundConfidence.yaml
weakMatch:
description: Weak match of the customer's name is found, but a date of birth is not.
$ref: ./AmlCompoundConfidence.yaml
yob:
type: object
description: Weak match of the customer's name is found, but a date of birth is not.
description: Confidence level settings for AML matches based on year of birth.
properties:
matchingCountry:
$ref: ./AmlConfidence.yaml
mismatchingCountry:
$ref: ./AmlConfidence.yaml
noCountry:
$ref: ./AmlConfidence.yaml
dobExactMatch:
exactMatch:
description: Exact match of the customer's year of birth and exact name is found.
$ref: ./AmlCompoundConfidence.yaml
inexactMatch:
description: Exact match of the customer's year of birth and a fuzzy, or inexact name match is found.
mikerebilly marked this conversation as resolved.
Show resolved Hide resolved
$ref: ./AmlCompoundConfidence.yaml
inexactYob:
type: object
description: Exact match of the customer's date of birth and name is found.
description: Confidence level settings for AML matches based on a near match of year of birth.
properties:
matchingCountry:
$ref: ./AmlConfidence.yaml
mismatchingCountry:
$ref: ./AmlConfidence.yaml
noCountry:
$ref: ./AmlConfidence.yaml
dobInexactMatch:
type: object
description: Exact match of the customer's date of birth and a fuzzy, or inexact name match is found.
properties:
matchingCountry:
$ref: ./AmlConfidence.yaml
mismatchingCountry:
$ref: ./AmlConfidence.yaml
noCountry:
$ref: ./AmlConfidence.yaml
yobExactMatch:
type: object
description: Exact match of the customer's year of birth and exact name is found.
properties:
matchingCountry:
$ref: ./AmlConfidence.yaml
mismatchingCountry:
$ref: ./AmlConfidence.yaml
noCountry:
$ref: ./AmlConfidence.yaml
yobInexactMatch:
type: object
description: Exact match of the customer's year of birth and a fuzzy, or inexact name match is found.
properties:
matchingCountry:
$ref: ./AmlConfidence.yaml
mismatchingCountry:
$ref: ./AmlConfidence.yaml
noCountry:
$ref: ./AmlConfidence.yaml
inexactYobExactMatch:
type: object
description: Near match of the customer's year of birth and an exact name match is found.
properties:
matchingCountry:
$ref: ./AmlConfidence.yaml
mismatchingCountry:
$ref: ./AmlConfidence.yaml
noCountry:
$ref: ./AmlConfidence.yaml
inexactYobInexactMatch:
type: object
description: Near match of the customer's year of birth and a fuzzy, or inexact name match is found.
properties:
matchingCountry:
$ref: ./AmlConfidence.yaml
mismatchingCountry:
$ref: ./AmlConfidence.yaml
noCountry:
$ref: ./AmlConfidence.yaml
exactMatch:
description: Near match of the customer's year of birth and an exact name match is found.
$ref: ./AmlCompoundConfidence.yaml
inexactMatch:
description: Near match of the customer's year of birth and a fuzzy, or inexact name match is found.
mikerebilly marked this conversation as resolved.
Show resolved Hide resolved
$ref: ./AmlCompoundConfidence.yaml
priority:
type: object
description: |-
Expand Down