Confirmation of Payee (CoP)

Confirmation of Payee (CoP) is a service that enables you to verify your payee's account details before adding them to our system or initiating a payment. This service improves security by confirming that the account information you provide matches the records held by the payee's bank.

📘

This feature is currently in Beta phase.

Overview

To perform a Confirmation of Payee (CoP) check, submit the customer's bank account details in the API request. You will need to provide the following fields:

  • account_name: The account holder's name (e.g., "Mr John Smith").
  • account_number: The bank account number.
  • sort_code: The bank’s sort code.
  • account_type: This should be either "business" or "personal", depending on the type of account being checked.
  • scheme: This parameter must always be set to "faster_payments" to ensure compatibility.

API Request Example

POST - /tools/confirmation-of-payee

{
  "scheme": "faster_payments",
  "account_name": "Mr John Smith",
  "sort_code": "123456",
  "account_number": "98765432",
  "account_type": "personal"
}

Response

Once Acquired processes the request, the system will validate the account details with the customer’s bank and return a result.

  • A successful request will generate an id, which is associated with the verification check.
  • The status field will indicate the outcome, with the following possible values:
    • "matched": The provided account name and details match exactly.
    • "partial_match": The account details partially match (e.g., name close but not exact).
    • "not_matched": The details do not match the account on file.

Example Response (Successful Match)

{
  "id": "bd3fbbcd-411e-4760-8a9f-7af420d26314",
  "status": "matched",
  "reason": "",
  "account_name": ""
}


Once Acquired processes the request, the system will validate the account details with the customer’s bank and return a result. If the status is "partial_match" or "not_matched", the reason field will be included to provide more context. These can help identify why the check did not fully succeed.

Example Response (Partial or No Match)

{
  "id": "bd3fbbcd-411e-4760-8a9f-7af420d26314",
  "status": "not_matched",
  "reason": "account_name_does_not_match",
  "account_name": ""
}


Special Case: Close Matches

If the status is "partial_match", and the reason is "account_name_maybe_match", "business_account_name_maybe_match", or "personal_account_name_match", the API will also return the actual account name on record, allowing you to view the close match.

Example Close Match Response

{
  "id": "bd3fbbcd-411e-4760-8a9f-7af420d26314",
  "status": "partial_match",
  "reason": "account_name_maybe_match",
  "account_name": "Mr John Smith"
}


Error Handling

In the event of invalid data (e.g., incorrect account_number or sort_code), the API will return an appropriate error message. Ensure you are validating the input data before making the request.

Reason Values

The table below lists the possible reason values and their corresponding descriptions to help you interpret the results:

reasonDetails
account_name_does_not_matchThe Confirmation of Payee (CoP) check has been completed by the responder, and the name provided does not match the account holder's name on record. This indicates a complete mismatch.
account_name_maybe_matchThe CoP responder has completed the matching process, and while the name provided is not an exact match, it is close enough to suggest a possible association between the name and the account holder. A further verification may be needed.
business_account_name_matchThe CoP requester indicated they expect to pay into a personal account, but the CoP responder has identified the account as a business account, though the name provided is an exact match for the account holder.
personal_account_name_matchThe CoP requester indicated they expect to pay into a business account, but the CoP responder has identified the account as a personal account, though the name provided is an exact match for the account holder.
business_account_name_maybe_matchThe CoP requester indicated they intend to pay into a personal account, but the CoP responder has identified the account as a business account. The name provided is a close match but not an exact one.
personal_account_name_maybe_matchThe CoP requester indicated they intend to pay into a business account, but the CoP responder has identified the account as a personal account. The name provided is a close match but not an exact one.
incorrect_account_numberThe CoP responder could not locate the account on their system. The account number provided does not exist or is invalid in the responder's records.
invalid_customer_referenceThe CoP responder was unable to identify the customer account using the secondary reference data provided in the request. The SecondaryIdentification field did not provide sufficient or correct details.
account_type_not_supportedThe account is not supported for Confirmation of Payee services by the responder. This could be because the account is held with an institution that does not participate in CoP or is a collection account managed by a sponsor bank without CoP capabilities.
opted_out_of_cop_schemeThe account holder has opted out of the Confirmation of Payee service, meaning that no matching or name validation can be performed for this account.
account_has_been_switchedThe account holder's account has been switched using the Current Account Switch Service (CASS), meaning the account details provided have changed. The new details should be used for future payments.
sort_code_not_supportedThe CoP responder received a request for a sort code that does not belong to them. This is likely due to an incorrect request or routing error.
sort_code_not_foundThe system could not find a participant corresponding to the sort code provided. The sort code cannot be routed to a CoP participant through the payment gateway.