Developer 7 min read

Integrating the Verification of Payee API: A Developer's Guide

Adding Verification of Payee to a product doesn't have to mean joining a scheme bank by bank. With a single REST endpoint you send a name and IBAN and get a standardised outcome back in real time. Here's how to integrate it well.

By Verification of Payee EU · powered by RoxPay

Key takeaways

  • A VoP API turns the SEPA scheme into one authenticated REST call: send name + IBAN, get a standardised result.
  • Branch your logic on four outcomes — MATCH, CLOSE_MATCH, NO_MATCH, NOT_APPLICABLE.
  • Use the same endpoint for in-app checks, batch verification and mandate pre-checks.

Building Verification of Payee from scratch means integrating with each responding PSP and normalising every response. A VoP API removes that work: you connect once, and the provider handles scheme connectivity across SEPA. Your job becomes a clean request/response integration.

1. Authenticate

Calls are made over HTTPS and authenticated with a bearer token. Store the credential as a secret, never in the client. For manual or low-volume checks, a dashboard is available so non-developers can verify without writing code.

2. Send the request

POST the payee name and IBAN to the verify endpoint. Include your own reference id so you can reconcile the result against the payment or onboarding record it belongs to.

Keep it idempotent

Pass a stable external id with each request so retries don't create duplicate verifications, and so you can match an async log entry back to the originating action.

3. Handle the four outcomes

Every response maps to a SEPA scheme code, so your branching stays simple:

  • MATCH (MTCH) — name matches the account holder; proceed with confidence.
  • CLOSE_MATCH (CMTC) — almost right; surface the suggested verified name and ask the user to confirm.
  • NO_MATCH (NMTC) — show a clear warning before the payment is confirmed.
  • NOT_APPLICABLE (NOAP) — verification not available right now; let the user decide.

The response also carries the responding bank's BIC and the processing time, which are useful for monitoring and audit logs.

4. Reuse it everywhere

Because the contract is the same, the one endpoint serves several jobs: an inline check as a payer reviews a new beneficiary, batch verification of a supplier file, and a pre-check inside a SEPA Direct Debit mandate flow. RoxPay uses VoP exactly this way — including as a mandatory pre-check before a SDD mandate signing link is issued.

FAQ

Frequently asked

Yes. A verify call returns synchronously, typically in well under a second, and includes the responding bank's BIC and the PSP processing time so you can monitor performance.

A normalised result (MATCH, CLOSE_MATCH, NO_MATCH, NOT_APPLICABLE), the SEPA scheme match-type code, a verification id, the responding BIC, the processing time and your optional external id.

Yes. Call the endpoint per record to verify a whole file of payees before a payment run — it's built for high throughput.

Integrate Verification of Payee

Get your credentials and go live on the SEPA VoP scheme with one REST integration.