Respond to incoming VOP requests to remain compliant
About our solution
Numeral's VOP solution is based on currently available information and technical documentation from the European Payments Council (EPC), including the Verification Of Payee Scheme Rulebook, the Verification Of Payee Inter-PSP API Specifications, and the API Security Framework.
Numeral is still waiting for the publication of critical EPC documentations, including the EPC's Directory Services documentation to finalise and launch its VOP solution.
Numeral has expressed its intent to participate as a routing and verification mechanism (RVM) via the EPC's call for interest and is listed as a compliant RVM.
Numeral actively participates in the EPC's RVM information sessions and intends to participate in the EPC's pilot phases.
Attribute | Description |
---|---|
object | Always incoming_vop_request . |
id | The ID of the incoming VOP request. |
status | The status of the incoming VOP request. Can bereceived , pending , processed , failed . See the incoming VOP request lifecycle here. |
status_details | More information about the incoming VOP request's status. |
party_name | The name of the counterparty sent by the requesting PSP. |
party_name_cleaned | The name of the counterparty after cleaning, as per the EPC recommendation. |
party_identification_type | The identification type of the counterparty sent by the requesting PSP. Only applicable to legal persons. |
party_identification | The identification code of the counterparty sent by the requesting PSP. Only applicable to legal persons. |
party_account | The IBAN of the counterparty sent by the requesting PSP. |
party_agent | The BIC of your organisation. |
unstructured_remittance_information | Additional information about the counterparty, sent by the requesting PSP. |
result | Result provided by Numeral or your system, depending on your integration. It is composed of:value : can be match , close_match (only applicable to natural persons), no_match or impossible_match suggested_name : in case of value = close_match , name of the counterparty with the closest match. |
created_at | The UTC timestamp of the creation of the incoming VOP request. |
metadata | Additional data in JSON key: value format. |
bank_data | Technical and standardised information about the VOP request. It is composed of:X-Request-ID : unique ID of the request communicated by the requesting PSPX-RequestTimestamp : the UTC timestamp of the reception of the incoming VOP request X-ResponseTimestamp : the UTC timestamp of the response |
{
"object": "incoming_vop_request",
"id": "20c75a77-de31-460d-a321-4f2421805943",
"status": "received",
"status_details": null,
"party_name": "Mr. John Döe",
"party_name_cleaned": null,
"party_identification_type": null,
"party_identification": null,
"party_account": "FR5012739000308682265435N36",
"party_agent": "BANKFRPP",
"unstructured_remittance_information": null,
"result": null,
"created_at": "2025-01-28T15:26:36Z",
"metadata": null,
"bank_data": {
"X-Request-ID": "eb864213-a217-40fb-9bfb-0e85a11cbe72",
"X-RequestTimestamp": "2025-01-28T15:26:36Z",
"X-ResponseTimestamp": null
}
}
{
"object": "incoming_vop_request",
"id": "20c75a77-de31-460d-a321-4f2421805943",
"status": "pending",
"status_details": null,
"party_name": "Mr. John Döe",
"party_name_cleaned": "John Doe",
"party_identification_type": null,
"party_identification": null,
"party_account": "FR5012739000308682265435N36",
"party_agent": "BANKFRPP",
"unstructured_remittance_information": null,
"result": null,
"created_at": "2025-01-28T15:26:36Z",
"metadata": null,
"bank_data": {
"X-Request-ID": "eb864213-a217-40fb-9bfb-0e85a11cbe72",
"X-RequestTimestamp": "2025-01-28T15:26:36Z",
"X-ResponseTimestamp": null
}
}
{
"object": "incoming_vop_request",
"id": "20c75a77-de31-460d-a321-4f2421805943",
"status": "processed",
"status_details": null,
"party_name": "Mr. John Döe",
"party_name_cleaned": "John Doe",
"party_identification_type": null,
"party_identification": null,
"party_account": "FR5012739000308682265435N36",
"party_agent": "BANKFRPP",
"unstructured_remittance_information": null,
"result": {
"value": "close_match",
"suggested_name": "John Doe"
},
"created_at": "2025-01-28T15:26:36Z",
"metadata": null,
"bank_data": {
"X-Request-ID": "eb864213-a217-40fb-9bfb-0e85a11cbe72",
"X-RequestTimestamp": "2025-01-28T15:26:36Z",
"X-ResponseTimestamp": "2025-01-28T15:26:36Z"
}
}
{
"object": "incoming_vop_request",
"id": "20c75a77-de31-460d-a321-4f2421805943",
"status": "failed",
"status_details": "identification code not supported",
"party_name": "Mr. John Döe",
"party_name_cleaned": "John Doe",
"party_identification_type": null,
"party_identification": null,
"party_account": "FR5012739000308682265435N36",
"party_agent": "BANKFRPP",
"unstructured_remittance_information": null,
"result": null,
"created_at": "2025-01-28T15:26:36Z",
"metadata": null,
"bank_data": {
"X-Request-ID": "eb864213-a217-40fb-9bfb-0e85a11cbe72",
"X-RequestTimestamp": "2025-01-28T15:26:36Z",
"X-ResponseTimestamp": null
}
}