# Verification of Payee - Requester

{% hint style="warning" %}
This Service is currently under development and documentation is still subject to changes and improvements.
{% endhint %}

## Service description <a href="#service-description" id="service-description"></a>

This service verifies if the creditor's account number matches the associated name.

## Request <a href="#request" id="request"></a>

`POST` <https://connect.lhv.com/payment/vop-request>

### Header

| Name           | Value              |
| -------------- | ------------------ |
| Content-Type   | `application/json` |
| Client-Code    | `customer value`   |
| Client-Country | `customer value`   |

### Body

| Name           | M/O | Description                                                                   |
| -------------- | --- | ----------------------------------------------------------------------------- |
| Identification | M   | Account number of the account to do a name verification on. Must be **IBAN**. |
| Name           | M   | The name string to be checked for a match.                                    |

#### Example

```json
{
  "Identification": "IT76L0300203280825973665778",
  "Name": "Account Name"
}
```

## Response

Verification of Payee Requester Response can be requested via the [Messages service](/home/connect/services/messages.md).

{% hint style="info" %}
HTTP Header Message-Response-Type: VERIFICATION\_OF\_PAYEE
{% endhint %}

### Header

| Name         | Value                                              |
| ------------ | -------------------------------------------------- |
| Content-Type | `application/json`                                 |
| X-Bank-Code  | <p><code>LHVUK</code></p><h4 id="body-1"><br></h4> |

### Body

| Name                      | M/O | Description                                                                                                                                                                                                                  |
| ------------------------- | --- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| OriginalMessageId         | M   |                                                                                                                                                                                                                              |
| <p>Data.Answer</p><p></p> | M   | <p>Indicator if the verification has produced a full match or not.</p><p><strong>Confirmed</strong> - Verification has produced a full match</p><p><strong>Rejected</strong> - Verification did not produce a full match</p> |
| Data.Identification       | M   | Account number from the request.                                                                                                                                                                                             |
| Data.ActualName           | O   | Actual name if the name in the request is a close match.                                                                                                                                                                     |
| Data.Name                 | M   | Name from the request.                                                                                                                                                                                                       |
| ReasonCode                | M   | Find list of reason codes [here](#reason-code-values).                                                                                                                                                                       |
| Description               | M   | Find list of reason code descriptions [here](#rerason-code-values).                                                                                                                                                          |
| Errors                    | O   |                                                                                                                                                                                                                              |

#### Example

{% tabs %}
{% tab title="Successful" %}

```json
{
  "OriginalMessageId": "...",
  "Data": {
    "Answer": "string",
    "Identification": "string",
    "ActualName": "string",
    "Name": [
      "string"
    ],
    "ReasonCode": "string",
    "Description": "string"
  },
  "Errors": null
}
```

{% endtab %}

{% tab title="Error" %}

```json
{
  "OriginalMessageId": "...",
  "Data": null,
  "Errors": [
    {
      "ErrorCode": "...",
      "ErrorMessage": "..."
    }
  ]
}
```

{% endtab %}
{% endtabs %}

## Example of the flow

<img src="/files/qmTWP7HpHn6AR4MSKlmr" alt="Verification of Payee Requester" class="gitbook-drawing">

<table><thead><tr><th width="111">Step</th><th width="293">Action</th><th>Description</th></tr></thead><tbody><tr><td>1.</td><td>Initiating Verification of Payee Request</td><td>VOP request can be initiated before making a payment to verify the account details of the intended recipient.</td></tr><tr><td>2.</td><td>Forwarding Request to the Responder</td><td>LHV receives the Request and forwards it to the Responder for processing, ensuring accurate and timely validation of the account information.</td></tr><tr><td>3.</td><td>LHV will receive Response to the previously initiated Request</td><td>VOP Responder processes the Request and returns a Response. This Response indicates whether the provided account details match the account holder's information on record.</td></tr><tr><td>4.</td><td>LHV will forward response back to the PSP</td><td>Received Response is also forwarded back to the PSP.</td></tr></tbody></table>

### Reason code values

| ReasonCode | Description                                                                                                                                                                                       |
| ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| MTCH       | It's a match. The account name and details match those on record.                                                                                                                                 |
| NMTC       | The name you provided doesn't match the name for the account. You can still continue with the payment, but your money may be sent to the wrong account.                                           |
| CMTC       | The name is a close match. The actual name on the account is (...).                                                                                                                               |
| NOAP       | We are currently unable to verify the account details. You can either try again in a few minutes or continue your payment without verification. If you continue, please double check the details. |
| TECH       | We are currently unable to verify the account details. You can either try again in a few minutes or continue your payment without verification. If you continue, please double check the details. |


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.lhv.com/home/connect/services/verification-of-payee-services/verification-of-payee-requester.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
