How to perform account verification with Check

📘

Please note, the name field in the accounts endpoint and the parties endpoint within the OBIE specification are optional, therefore our market coverage differs between our Connect and Check products. You can find a list of all providers supported by our Check product here.

Below we’ll provide you with a step-by-step guide to help you perform Account Verification when using Connect. This can be performed whether you're using Bud Connect or have built out your own customer interface in the case that you have your own license (as an AISP).

Before starting you’ll need:

  • to have setup Connect - for further details on how to do this, please refer to this guide if you plan to use Bud Connect, or this guide, if you’re registered as an AISP and will be using your own customer interface; and
  • a valid OAuth access token - for further details on how to authenticate to Bud’s APIs please see this guide; and
  • a valid customer_id and customer_secret associated with your ‘Project’ (API Credentials). For further details on how to register a customer, please refer to this guide.

Retrieving your customer’s name using Accounts v2

Once your customer has connected their account(s) you can retrieve the associated account information by using the GET /financial/v2/accounts endpoint (here) you will find your customer's name within the holder(s) object. In the case that your customer’s provider supports the OBIE parties endpoint and you're contracted to use Check you will receive the name of all customers attached to the account along with their relationship to the account (joint, sole, delegate), if the provider does not support the parties endpoint you will receive the name of the customer who connected the account with the relationship set to unknown .

📘

Tesco and Santander support the parties endpoint but they only return the name of the customer who has shared the account.

{
  "operation_id": "financial_v2_accounts",
  "data": [
    {
      "account_id": "928fed73-2eb9-4910-8a26-22b6c76fb9fa",
      "currency": "GBP",
      "holders": [
        {
          "name": "David Smith",
          "relationship": "joint"
        },
        {
          "name": "Jane Smith",
          "relationship": "joint"
        }
      ],
      "account_name": "Household Account",
      "account_type": "current_account",
      "usage_type": "personal",
      "provider": "BankOfBud",
      "identifiers": {
        "uk_sort_code": "124332",
        "uk_account_number": "12642318"
      },
      "balances": [
        {
          "date": "2023-01-12T00:00:00Z",
          "amount": {
            "value": "3552.61",
            "currency": "GBP"
          },
          "type": "interim_booked",
          "credit_debit_indicator": "credit"
        },
        {
          "date": "2023-01-12T00:00:00Z",
          "amount": {
            "value": "3552.61",
            "currency": "GBP"
          },
          "type": "expected",
          "credit_debit_indicator": "credit"
        }
      ],
      "credit_lines": [
        {
          "date": "2023-01-12T00:00:00Z",
          "type": "credit",
          "amount": {
            "value": "1000.00",
            "currency": "GBP"
          }
        }
      ]
    }
  ],
  "metadata": {
    "parameters": null,
    "result_count": 1
  }
}

Retrieving your customer’s name using Accounts v1

If you're using the old GET /v1/open-banking/accounts endpoint (here). The name listed on the customer account can be found in two potential places.

{  
  "operation_id": "accounts_get",  
  "data": {  
    "account_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",  
    "currency": "GBP",  
    "account_type": "Personal",  
    "account_sub_type": "SavingsAccount",  
    "nickname": "Holiday Funds",  
    "details": [  
      {  
        "scheme_name": "UK.OBIE.SortCodeAccountNumber",  
        "identification": "80200110203345",  
        "name": "Mr Smith",  
        "secondary_identification": "00021"  
      }  
    ],  
    "provider": "Lloyds",  
    "balances": \[  
      {  
        "account_id": "aa86f72c-476a-3355-b54c-614a815fae40",  
        "amount": {  
          "amount": "357.90",  
          "currency": "GBP"  
        },  
        "credit_debit_indicator": "Credit",  
        "credit_line": [  
          {  
            "included": true,  
            "amount": {  
              "amount": "272.90",  
              "currency": "GBP"  
            },  
            "type": "Temporary"  
          }  
        ],  
        "date_time": "2019-02-27T06:11:57+0000",  
        "type": "InterimBooked"  
      }  
    ],  
    "parties": [  
      {  
        "full_name": "John Smith",  
        "type": "sole"  
      }  
    ]  
  },  
  "metadata": {  
    "results": 1  
  }  
}
  1. In the details object, there is a name field that may be populated with a version of your customer’s name. This name can appear in different forms such as, but not limited to John Smith, Mr J Smith, Smith J.

📘

Please note, this field is optional in the UK Open Banking Implementation Entity specification so it won’t always be populated by the provider.

  1. If you’re contracted to use our Check product you may also retrieve the name from the parties object in the response. The full_name field will provide the customer's full legal name including any middle names.

With the parties object you will also be able to identify if the account is joint or sole. In the case of the account being joint, you will receive the name of all account holders except if the provider is Santander or Tesco Bank.





If you have any questions, please contact us via the chatbot (bottom-right of screen 👉) or via a support request or check our FAQs.