Integrate with Matchmeter

Volt Matchmeter is a tool that accurately provides a match score between the data you already hold and the data we retrieved using Verify.  The tool is optimised to minimise the number of false positives and is designed to work with data from any country, with specialised optimisations for Belgium, the United Kingdom, France, Ireland and Italy.  Optimisations for other countries will be added on demand.  You can use Matchmeter to validate the :-

  • Account holder’s name
  • Account identifiers, such as IBAN or a UK account number and sort code.

Using Matchmeter

You should only call Matchmeter when the status received from Verify was DATA_RETRIEVED.  

  • For account identifiers, you’ll get back a simple 1 or 0 in the matchScore field (1 being an exact match, 0 being no match)
  • For the account holder’s name, you’ll receive a score between 0 and 1 for the account holder’s name (again, where 1 is an exact match).

Find out more about Matchmeter

Request

Simply send the account holder’s name and IBAN. You can optionally choose to allow matching of initials in the name.

POST https://verify.volt.io/verifications/[processId]/match
POST https://verify.volt.io/verifications/[processId]/match

{
    "accountHolder": {
        "name": "John Doe"
    },
    "account": {
        "iban": "GB59BARC20035371397242"
    },
     "parameters": { // optional
       "allowInitials": false 
    }
}

For UK accounts, you should provide an account number and sort code as account identifiers.

POST https://verify.volt.io/verifications/[processId]/match
{
    "accountHolder": {
        "name": "John Doe"
    },
    "account": {
        "accountNumber": "71397242"
        "sortCode": "200353"
    }
}

Possible responses

Match

Depending on the request data, the response will contain accounts, accountHolder or both.  For UK accounts the result will contain matched IBANs as well as the accountNumber and sortCode.

HTTP status: 200
{
    "invocationId": "[UUID]"
    "account": {
        "accountNumber": "71397242" // for UK accounts only
        "iban": "GB59BARC20035371397242",
        "matchScore": 1, // or 0
        "sortCode": "200353" // for UK accounts only
    },
    "accountHolder": {
        "name": "Doe John",
        "matchScore": 0.9175
    },
}

No match

Note that the HTTP status code for no match is still 200 (OK).

HTTP status: 200
{
    "account": {
        "accountNumber": "36854642", // extracted from shopper iban
        "iban": "GB36BARC20038036854642", // the original shpper.account
        "matchScore": 0,
        "sortCode": "200380" // extracted from shopper iban
    },
    "accountHolder": {
        "matchScore": 0.1422,
        "name": "Doe" // closest match
    },
    "invocationId": "[UUID]"
}

No data to match

This will occur if you did not send data in the accountHolder or account fields. The HTTP status code returned will be 422 (Unprocessable Entity)

HTTP status: 422
{
    "error": "No data to match",
    "traceId": "[UUID]"
}

Invalid request

This will occur if you did not send valid data in the accountHolder or account fields.  The HTTP status code returned will be 400 (Bad Request)

HTTP status: 400
{
    "error": "Unable to parse input data",
    "traceId": "[UUID]"
}

Verification was not completed

This will occur if you tried to use Matchmeter for a verification that hadn’t resulted in a DATA_RETRIEVED status.  The HTTP status code returned will be 409 (Conflict)

HTTP status: 409
{
    "error": "Verification is not in the DATA_RETRIEVED status",
    "traceId": "[UUID]"
}