Simulating Account Holder Verification

🚧

This page describes the behaviour of version 2 of the endpoint. For the article for version 1, see Simulating Account Holder Verification (v1).


The sandbox environment for Account Holder Verification (AHV) allows you to test your integration before going live, including different match levels, name variations, and fallback conditions — without involving any real accounts or providers.

This simulator supports both:

  • Confirmation of Payee (CoP): for GBP payments via Faster Payments
  • Verification of Payee (VoP): for EUR payments via SEPA (SEPA Credit Tranfer, SEPA Instant, SEPA Direct Debit)

Supported Features

In the sandbox, you can simulate:

  1. Exact name matches
  2. Close matches (e.g. spelling differences or mismatched account types)
  3. No matches (e.g. incorrect names, invalid accounts, opt-outs)
  4. Fallback behavior for unknown (non-predefined) inputs
  5. Error responses (e.g. technical error)

All responses follow the same API format as in production — enabling accurate and efficient testing.

How CoP vs. VoP is Determined from Payload

There is no explicit field in the request to select CoP or VoP. Instead, the verification type is automatically inferred from the contents of the request:

Country Code

account Format

financialInstitution Format

Verification service applied

Notes

GB

UK Account Number

Sort Code (6-digit)

CoP (UK)

For GBP payments via Faster Payments

SEPA country codes (e.g. DE, PT, NL) / optional

IBAN

Optional BIC / empty

VoP (SEPA)

For EUR payments via SEPA Credit Transfer, SEPA Instant, SEPA Direct Debit.

Note: A GB-IBAN is also always treated as VoP (not CoP).

Important notes:

  • IBANs will always be checked using the VoP service, even if they are GB IBANs
  • To trigger a request via CoP UK, you must specify both an account number and sort code
  • Invalid or mixed combinations will result in a validation error

How to Simulate Specific Match Scenarios

To trigger a specific match result, submit one of the predefined input combinations as listed below. The sandbox will respond with the corresponding matchLevel, reasonCode, and description.

Predefined CoP Test Cases

Test CaseverificationNameverificationTypefinancialInstitutionaccountcountrymatchLevelaccountHolderreasonCodedescriptiondetailedDescription
Match -  Personal AccountSamantha SmythePersonal9999961GBMatch
Match -  Business AccountBridgford GardeningBusiness99999611GBMatch
Close Match -  Wrong NameSam SmythePersonal9999961GBClose matchMISS SAMANTHA SMYTHEMBAMThere may be a match on the Account NameThe CoP Responder has performed the matching and it is a close match
No Match - Wrong Type P2BSamantha SmytheBusiness9999961GBNo matchPANMPersonal account, name matchesThe CoP Requester indicated a business account, but it is actually a personal account and the name matches
No Match -  Wrong Type B2PBridgford GardeningPersonal99999611GBNo matchBANMBusiness account, name matchesThe CoP Requester indicated a personal account, but it is actually a business account and the name matches
No Match - Wrong NameDavid SmythePersonal9999961GBNo matchANNMAccount Name does Not MatchThe CoP Responder has performed the matching and confirms it is not a match
No Match - Invalid AccountSamantha SmythePersonal99999698989898GBNo matchAC01Incorrect Account NumberAccount does not exist in the CoP Responder’s books
No Match Opted OutJohnson LogisticsBusiness99999648GBNo matchOPTOOpted out of CoP SchemePayee has been opted out of the CoP service by the CoP Responder
No Match Account Not Supp.Not SupportedPersonal99999662GBNo matchACNSAccount type Not Supported for CoPAccount not supported for CoP by the CoP Responder
Errorany non ASCII namePersonalanyanyGBErrorValidationError400 Bad requestSearch criteria is invalid.\nName: 'Name' is empty or has invalid data.

Predefined VoP Test Cases

Use the following IBAN-based inputs to simulate VoP responses.

Test CaseverificationNameaccountMatchLevelAccountHolderReasonCodeDescriptionDetailedDescription
Match – ExactMaria SilvaPT50000100018763312236976Match
Match – CloseMarya SilvaPT50000100018763312236976Close matchMaria Silva
Match - ExactNL16RABO7600386364Match
Verification Not PossibleMaria UnknownPT50000100018763312236976ErrorNOAPVerification check not possible.Verification Check Not Possible or Validation Check is not applicable.
Error – Internal Server ErrorUnknown UnknownPT50000100018763312236976ErrorErrorTechnical ErrorUnexpected technical error. An exception occurs during code execution and the request cannot be further processed.
No match Catch-All – Unknown InputAny NameAny SEPA IBANNo match

Catch-All Fallback for Unknown Inputs

If your input does not match any predefined sandbox test case, the system returns a default "No Match" response — allowing you to test how your application handles unrecognized or unknown accounts.


Type

Trigger

Fallback Response

Notes

CoP

Unrecognized sort code, account number, or name

matchLevel: No match reasonCode: ANNM description: Account Name does Not Match detailedDescription: The CoP Responder has performed the matching and confirms it is not a match

Returned when sort code + account number combination is not predefined

VoP

Unrecognized IBAN or name

matchLevel: No match

Returned when IBAN is not predefined

Notes

  • The sandbox is stateless and returns predefined responses only
  • No real data is accessed or verified
  • CoP and VoP are both supported on the same AHV endpoint, selection is based on input fields