Match an organisation to HMRC records

This pattern is made up of several screens. It helps HMRC get the details it needs to match an organisation to existing HMRC records.

When to use

Use this pattern when a digital service needs to match an organisation to HMRC records.

When not to use

Do not use this pattern to verify the identity of a user.

How it works

The user is shown a set of screens and asked to enter details about their business or organisation. They need to select their organisation type. We then ask for different details depending on their organisation type.

HMRC then tries to match the details entered to data it holds about the organisation. We may also use Companies House data when trying to match an organisation to existing records.

Limited companies

Ask the user to enter the:

Sole traders

Ask the user to enter the:

Partnerships

Check if the user has a company registration number, if they do, ask the user to enter the:

If they do not have a company registration number, ask the user to enter the:

Trust

Ask the user to enter the:

If the details match HMRC records

Where HMRC matches the details to a record, the user will be:

  • shown the name of the business that was matched
  • ask to confirm if that is their business

If the name shown is the correct one for the organisation, the user can continue to use the digital service. Otherwise, provide ways for the user to update the details.

If the details do not match existing records

Take the user to a page that tells them:

  • that we could not match their details
  • how to update the details that HMRC and Companies House (if relevant) hold about their business
  • how to try again using different details

Asking for business type

              <div class="govuk-form-group">
  <fieldset class="govuk-fieldset">
    <legend class="govuk-fieldset__legend govuk-fieldset__legend--xl">
      <h1 class="govuk-fieldset__heading">
        What type of business are you?
      </h1>
    </legend>
    <div class="govuk-radios govuk-radios">
      <div class="govuk-radios__item">
        <input class="govuk-radios__input" id="business-type" name="business-type" type="radio" value="limited-company">
        <label class="govuk-label govuk-radios__label" for="business-type">
          Limited Company
        </label>
      </div>
      <div class="govuk-radios__item">
        <input class="govuk-radios__input" id="business-type-2" name="business-type" type="radio" value="sole-trader">
        <label class="govuk-label govuk-radios__label" for="business-type-2">
          Sole trader
        </label>
      </div>
      <div class="govuk-radios__item">
        <input class="govuk-radios__input" id="business-type-3" name="business-type" type="radio" value="partnership">
        <label class="govuk-label govuk-radios__label" for="business-type-3">
          Partnership
        </label>
      </div>
      <div class="govuk-radios__item">
        <input class="govuk-radios__input" id="business-type-4" name="business-type" type="radio" value="trust">
        <label class="govuk-label govuk-radios__label" for="business-type-4">
          Trust
        </label>
      </div>
    </div>

  </fieldset>
</div>

<button class="govuk-button" data-module="govuk-button">
  Continue
</button>
            
                {% from "govuk/components/radios/macro.njk" import govukRadios %}
{% from "govuk/components/button/macro.njk" import govukButton %}

{{ govukRadios({
  classes: "govuk-radios",
  idPrefix: "business-type",
  name: "business-type",
  fieldset: {
    legend: {
      text: "What type of business are you?",
      isPageHeading: true,
      classes: "govuk-fieldset__legend--xl"
    }
  },
  items: [
    {
      value: "limited-company",
      text: "Limited Company"
    },
    {
      value: "sole-trader",
      text: "Sole trader"
    },
      {
        value: "partnership",
        text: "Partnership"
      },
      {
        value: "trust",
        text: "Trust"
      }
  ]
}) }}

{{ govukButton({
  text: "Continue"
}) }}
              

Checking if the user has a company registration number

              <div class="govuk-form-group">
  <fieldset class="govuk-fieldset" aria-describedby="has-registration-number-hint">
    <legend class="govuk-fieldset__legend govuk-fieldset__legend--xl">
      <h1 class="govuk-fieldset__heading">
        Do you have a company registration number?
      </h1>
    </legend>
    <div id="has-registration-number-hint" class="govuk-hint">
      Companies House may have sent this to you if you registered as a limited partnership.
    </div>
    <div class="govuk-radios govuk-radios--inline">
      <div class="govuk-radios__item">
        <input class="govuk-radios__input" id="has-registration-number" name="has-registration-number" type="radio" value="yes">
        <label class="govuk-label govuk-radios__label" for="has-registration-number">
          Yes
        </label>
      </div>
      <div class="govuk-radios__item">
        <input class="govuk-radios__input" id="has-registration-number-2" name="has-registration-number" type="radio" value="no">
        <label class="govuk-label govuk-radios__label" for="has-registration-number-2">
          No
        </label>
      </div>
    </div>

  </fieldset>
</div>

<button class="govuk-button" data-module="govuk-button">
  Continue
</button>
            
                {% from "govuk/components/radios/macro.njk" import govukRadios %}
{% from "govuk/components/button/macro.njk" import govukButton %}

{{ govukRadios({
  classes: "govuk-radios--inline",
  idPrefix: "has-registration-number",
  name: "has-registration-number",
  fieldset: {
    legend: {
      text: "Do you have a company registration number?",
      isPageHeading: true,
      classes: "govuk-fieldset__legend--xl"
    }
  },
  hint: {
    text: "Companies House may have sent this to you if you registered as a limited partnership."
  },
  items: [
    {
      value: "yes",
      text: "Yes"
    },
    {
      value: "no",
      text: "No"
    }
  ]
}) }}

{{ govukButton({
  text: "Continue"
}) }}
              

Asking for company registration number

              <h1 class="govuk-heading-xl">What is your company registration number?</h1>

<p class="govuk-body">You can <a class="govuk-link" href="https://find-and-update.company-information.service.gov.uk/" rel="noreferrer noopener" target="_blank">search Companies House for your company registration number (opens in a new tab)</a>.</p>

<div class="govuk-form-group">
  <label class="govuk-label govuk-visually-hidden" for="company-registration-number">
    What is your company registration number?
  </label>
  <div id="company-registration-number-hint" class="govuk-hint">
    It is 8 characters. For example, 01234567 or AC012345.
  </div>
  <input class="govuk-input govuk-input--width-10" id="company-registration-number" name="" type="text" aria-describedby="company-registration-number-hint">
</div>

<button class="govuk-button" data-module="govuk-button">
  Continue
</button>
            
                {% from "govuk/components/input/macro.njk" import govukInput %}
{% from "govuk/components/button/macro.njk" import govukButton %}

<h1 class="govuk-heading-xl">What is your company registration number?</h1>

<p class="govuk-body">You can <a class="govuk-link" href="https://find-and-update.company-information.service.gov.uk/" rel="noreferrer noopener" target="_blank">search Companies House for your company registration number (opens in a new tab)</a>.</p>

{{ govukInput({
  label: {
    text: "What is your company registration number?",
    classes: "govuk-visually-hidden"
  },
  hint: {
    text: "It is 8 characters. For example, 01234567 or AC012345."
  },
  id: "company-registration-number",
  classes: "govuk-input--width-10"
}) }}

{{ govukButton({
  text: "Continue"
}) }}
              

Confirming the business name for limited companies and limited liability partnerships

              <h1 class="govuk-heading-xl">Is this your business?</h1>
<p class="govuk-body">ABC limited</p>

<div class="govuk-form-group">
  <fieldset class="govuk-fieldset">
    <legend class="govuk-fieldset__legend govuk-visually-hidden">
      Is this your business?
    </legend>
    <div class="govuk-radios govuk-radios--inline">
      <div class="govuk-radios__item">
        <input class="govuk-radios__input" id="is-business" name="is-business" type="radio" value="yes">
        <label class="govuk-label govuk-radios__label" for="is-business">
          Yes
        </label>
      </div>
      <div class="govuk-radios__item">
        <input class="govuk-radios__input" id="is-business-2" name="is-business" type="radio" value="no">
        <label class="govuk-label govuk-radios__label" for="is-business-2">
          No
        </label>
      </div>
    </div>

  </fieldset>
</div>

<button class="govuk-button" data-module="govuk-button">
  Continue
</button>
            
                {% from "govuk/components/radios/macro.njk" import govukRadios %}
{% from "govuk/components/button/macro.njk" import govukButton %}

<h1 class="govuk-heading-xl">Is this your business?</h1>
<p class="govuk-body">ABC limited</p>

{{ govukRadios({
  classes: "govuk-radios--inline",
  idPrefix: "is-business",
  name: "is-business",
  fieldset: {
    legend: {
      text: "Is this your business?",
      isPageHeading: false,
      classes: "govuk-visually-hidden"
    }
  },
  items: [
    {
      value: "yes",
      text: "Yes"
    },
    {
      value: "no",
      text: "No"
    }
  ]
}) }}

{{ govukButton({
  text: "Continue"
}) }}
              

No business match

              <h1 class="govuk-heading-xl">The details you entered did not match our records</h1>
<p class="govuk-body">We could not match the details you entered with records held by HMRC.</p>
<p class="govuk-body">If you used the wrong details, you can <a class="govuk-link" href="#">try again using different details</a>.</p>
            
                <h1 class="govuk-heading-xl">The details you entered did not match our records</h1>
<p class="govuk-body">We could not match the details you entered with records held by HMRC.</p>
<p class="govuk-body">If you used the wrong details, you can <a class="govuk-link" href="#">try again using different details</a>.</p>
              

Research

We need more research. If you have used the Match an organisation to HMRC records pattern, get in touch to share your research findings. In particular, we want more research on other organisation types so we can expand the pattern to include those in future.

Discuss Match an organisation to HMRC records on GitHub