#Name Match V1 API Quickstart
#How is Setu Name Match API designed?
The Setu Name Match API employs multiple backend algorithms to account for a wide range of name and identity variations commonly found in financial services. The API provides both optimistic and pessimistic match percentages for a given input, allowing organizations to choose the appropriate match based on their internal policies.
#What is the difference between optimistic and pessimistic results?
We provide two results, an optimistic and pessimistic one, in order to allow the user to choose which result to use based on their risk policy. In the optimistic result, cases such as missing first/middle/last name, mis-spelt/out of order names are not penalised heavily. In the pessimistic output, these scenarios are penalised more heavily, leading to lower match percentages/types. However, it is not necessary for optimistic and pessimistic results to always be different.
#Steps to integrate
#1 — Start KYC and business documentation
This is started once Setu’s Sales team has interacted with you and confirmed integration. You will need to add a few KYC details and review some agreements. Please reachout to us via Setu Support to get started here.
#2 — Get API credentials
Contact Setu to receive x-client-id, x-client-secret and x-product-instance-id details. These credentials are required to make API calls on Sandbox or Production.
#3 — Integrate on Sandbox
The URLs you would need for this API—
- Sandbox—
https://dg-sandbox.setu.co - Production—
https://dg.setu.co - Headers—Contact Setu for providing the credentials required to successfully call Setu APIs. This contains:
x-client-idx-client-secretx-product-instance-id
#Create Name Match Request
Call this API to perform name match on two name inputs.
Setu has processed your request successfully.
Request
POST /api/match/v1/namepayload= {"name1": "Rakesh Kumar Singh", // special characters and numbers are not allowed, except for . ' -"name2": "Rakesh Kumar Singh" // name length should not exceed 100 characters}
Response
You will get a unique id for each request, along with an optimistic and pessimistic match output. Both the optimistic and pessimistic match outputs will have a match_type and match_percentage.
{"name1": "Rakesh Kumar Singh","name2": "Rakesh Kumar Singh","id": "135b18e1-aaab-49eb-b921-5f798dc452d6","optimistic_match_output": {"match_type": "COMPLETE_MATCH","match_percentage": 100.0},"pessimistic_match_output": {"match_type": "COMPLETE_MATCH","match_percentage": 100.0},"traceId": "1-6690d779-00bd76895fc117162acba45f"}
The match_type is based on the percentage thresholds shown below:
| Match Percentage | Match Type |
|---|---|
| 99% - 100% | COMPLETE_MATCH |
| 85% - 99% | HIGH_PARTIAL_MATCH |
| 70% - 85% | MODERATE_PARTIAL_MATCH |
| 45% - 70% | LOW_PARTIAL_MATCH |
| 0% - 45% | NO_MATCH |
To get started, you can set a threshold between 70% and 75% when testing the API, and adjust the threshold according to your preference. You can also directly consume the match type.
Was this page helpful?
