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:
reason | Details |
---|---|
account_name_does_not_match | The 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_match | The 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_match | The 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_match | The 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_match | The 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_match | The 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_number | The 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_reference | The 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_supported | The 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_scheme | The 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_switched | The 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_supported | The 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_found | The 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. |
Updated 21 days ago