Using Name Verification

16561656

Overview

This guide will help you to connect your customer's bank account in order to verify that the name your customer has provided to you matches the name from the bank account connected. This will help you ensure that the payments you receive comes directly from a bank account owned by the customer for which you have confirmed through your KYC process.

The Name Verification will compare a name you provide through the API call to the name the bank has on record for the account holder. The response will include both the raw name retrieved from the bank account and give a suggestion on the closeness of the match between both names.

You can find how to create a customer and entity using the Getting started with Data guide.

Verify your customer's name

Once you have an entity_id you can now make calls to the /insights/v1/name-verification/ endpoint.

πŸ“˜

Please note: backend calls in production are authenticated via certificates with mTLS.

curl -X POST 'https://sandbox.leantech.me/insights/v1/name-verification' \
    --header 'Content-Type: application/json' \
    --header 'lean-app-token: YOUR_APP_TOKEN' \
    --data-raw '{
        "entity_id": "f08fb010-878f-407a-9ac2-a7840fb56185",
        "full_name": "Michael Garry Scott",
        "async": "False"
    }'
{
  "status": "OK",
  "payload": {
    "full_name_provided": "Michael Garry Scott",
    "full_name_retrieved": "Michael Garry Scott",
    "match_type": "PERFECT_MATCH",
    "confidence": 1.0
  }
}

In the above example, the name provided was a PERFECT_MATCH with the name of the account holder we retrieved from the bank. A PERFECT_MATCH is returned when the name provided identically matches the spelling and order of the name retrieved from the bank. Any salutation (eg. Mr., Mrs., Dr., etc.) will be ignored in the comparison.

In the scenario where the name retrieved is similar but not identical, we will return a match level of PARTIAL_MATCH. This will happen in cases where the names compared is deemed to be a variable spelling of each other, such as "Mohammed" and "Muhammad" or if either the name provided by you in the API request contains an initial whereas the name retrieved by the bank has the full name e.g. "Michael G Scott" compared to "Michael Garry Scott". This is shown below.

curl -X POST 'https://sandbox.leantech.me/insights/v1/name-verification' \
    --header 'Content-Type: application/json' \
    --header 'lean-app-token: YOUR_APP_TOKEN' \
    --data-raw '{
        "entity_id": "f08fb010-878f-407a-9ac2-a7840fb56185",
        "full_name": "Michael G Scott",
        "async": "False"
    }'
{
  "status": "OK",
  "payload": {
    "full_name_provided": "Michael G Scott",
    "full_name_retrieved": "Michael Garry Scott",
    "match_type": "PARTIAL_MATCH",
    "confidence": 0.75
  }
}

If no match is found between the name provided and the name retrieved from the bank, the match_type will be returned as NO_MATCH. This will happen when only one or none of the tokens within the provided and retrieved names match in spelling.


Did this page help you?