Execute VoP Checks

Prev Next

This guide outlines the integration, UI/UX, and operational requirements for Paynetics partners to support the Verification of Payee (VoP) service mandated under Regulation (EU) 2024/886. All SEPA Credit Transfer (SCT) and SCT Inst payments must be preceded by a VoP check by 5 October 2025. The Bulgarian national deadline is August 2027, but Paynetics will adopt early to align with EPC’s first implementation wave.

What is VoP?

VoP is a mandatory SEPA-wide pre-payment service that checks if the name and IBAN provided by a payer match the account holder data held by the payee’s PSP. It helps reduce:

  • Fraud (APP fraud)

  • Misdirected payments

  • Payment disputes

VoP Match Results:

Code

Meaning

Actionable Outcome

MTCH

Full Match

Proceed with payment or cancel

CMTC

Close Match

Show verified name; confirm, edit or cancel

NMTC

No Match

Edit or cancel

NOAP

Unable to verify

Retry or cancel

Required Partner Flows

Partners must implement VoP in SEPA outbound payment flows and follow the match result logic in their UI/UX.

Mandatory UX Elements:

  • Step: Add Beneficiary / Initiate Payment

  • Action: Send VoP request to Paynetics

  • Display: Match status in UI (color-coded + explanatory text)

  • Allowable User Actions: Proceed, Edit, Retry, Cancel based on status

Outbound Flow

  1. Partner sends VoP request to Paynetics.

  2. Paynetics forwards request to the Routing and Verification Mechanism (RVM).

  3. The RVM performs matching and returns result (MTCH, CMTC, NMTC, NOAP).

  4. Paynetics returns the response to the partner for presentation to the payer.

API Integration Details

Disclaimer:

These endpoints are currently in the process of implementation, and the API contracts are not yet finalized, so they are likely to change.

🔗 Endpoint

POST /vop/check

📤 Request Body (JSON)

{
  "iban": "BG18RZBB91550123456789",
  "accountHolderName": "Ivan Petrov",
  "accountType": "PERSONAL",
  "partnerReferenceId": "txn_123456"
}

📥 Response

{
  "result": "CMTC",
  "matchedName": "Ivan Georgiev Petrov",
  "timestamp": "2025-07-15T12:05:00Z",
  "token": "txn_9876543210123456789"
} 

📘 Notes:

  • Use name + IBAN or (for legal persons) ID + IBAN (e.g. LEI, VAT)

  • Store VoP result ID per transaction for audit trail

  • Retry logic required for timeouts and NOAP

  • matchedName is returned only in CMTC cases.

UI/UX Guidelines

Status

Color

Message

User Options

MTCH

Green

Name matches – safe to pay

Proceed / Cancel

CMTC

Yellow

Slight mismatch – verified name shown

Proceed / Edit / Cancel

NMTC

Red

Name does not match

Edit / Cancel

NOAP

Grey

Unable to verify – try again

Retry / Cancel

✅ If you have Confirmation of Payee (CoP) implemented, use existing CoP UI designs for consistency

💡 Show interstitial spinner during VoP call: “Verifying recipient details…”

Frequently Asked Questions (FAQ)

Q: Can we skip VoP if the name is only slightly wrong?
A: No. CMTC (Close Match) requires user confirmation or correction.

Q: Can we cache VoP results?
A: No. VoP results must be fresh and real-time for every payment.

Q: What if the service is unavailable?
A: Display a NOAP result and offer retry. Optionally escalate to support.

Q: Can we use LEI or VAT instead of a name?
A: Yes, for legal entities only — check EPC Directory Service (EDS) if supported.

Q: What happens if name doesn't match?
A: You must give the user the option to “Edit” or “Cancel” the operation.​

Q: Do we show the verified name?
A: You are obliged to show it only in the CMTC case.

Q: Can users bypass VoP?
A: No, the check is mandatory for all SEPA Credit Transfers (SCT) and SEPA Instant Credit Transfers (SCT Inst)​

Q: What is the deadline for the VoP availability?
A: Hard deadline is Aug 2027 due to Bulgaria not being part of EU zone right now. But soft deadline is 5 Oct 2025(EOY 2025 at most): We want to be part of the first wave and be on par with the industry, which will widely adopt it by 2026. It is not only a regulation, but a major safety improvement for our end clients.

Resources