Use cases
Each use case lists the end-to-end persona tests that walk through it, and whether they passed when the tests last ran.
- Customers (taxpayers)
- Businesses, employers, home buyers and executors
- Apps that work out payment plan amounts (such as HMRC's Budget Payment Plan service)
- Organisations (accountants and software)
- Organisations choosing how they use the calculator
- Software developers
- Administrators
- People running the service
Customers (taxpayers)
| Use case | How | Tested by |
|---|---|---|
| UC01: Estimate my Self Assessment bill | Answer questions about a tax year and see the tax, what is already paid and what to pay when. | |
| UC02: Let the service fill in answers from my HMRC records | Sign in to HMRC, give permission, then check the answers filled in. | |
| UC03: Answer everything myself | Say no to HMRC records, or refuse permission at HMRC. |
|
| UC58: See every payment still to make, and anything overdue | Say which of this year's payments on account are paid and which are still to come (or let my HMRC account fill them in). See each payment's due date, when to pay if it falls on a weekend, anything overdue with the interest if paid today, and a warning once the January deadline has passed. |
|
| UC59: Check if I need to send a Self Assessment tax return | Say what applied to me in the tax year and the amounts that decide it. |
|
| UC60: Check if I paid too much or too little tax through PAYE | From my P60s, pensions and benefits, like HMRC's P800. |
|
| UC61: Work out the Capital Gains Tax to report within 60 days on a UK home | From the sale, purchase, time it was my home and my income for the year. |
|
| UC62: Compare taking a salary or dividends from my company | From the company's profit before paying me. |
|
| UC43: Work out my tax so far this tax year | Give my income and tax since 6 April, or let HMRC records fill in my pay so far, and see the tax so far, what is paid and a forecast for the year. |
|
| UC04: Work out a Budget Payment Plan amount on my own | Answer questions here, without another app. |
|
| UC47: Find out when I need to use Making Tax Digital for Income Tax | Give my self-employment and property income for each year and any claims that bring an exemption. |
|
| UC48: Work out my tax so far after a quarterly update, and what to put aside | From my update's totals, inside my software or on these pages. |
|
| UC49: Check a quarterly update before my software sends it | See mistakes and things that could mean less tax. |
|
| UC50: See HMRC's estimate of my tax explained | Give permission to read it from HMRC, or my software sends it. | |
| UC51: Get my tax return ready after my fourth update | My business totals and the rest of my income together, with what may be missing. |
|
| UC52: Get email reminders before my Making Tax Digital deadlines | In my account. |
|
| UC05: Keep an account and track my tax during the year | Create an account, give my details and add figures as the year goes on. | |
| UC06: Sign in with GOV.UK One Login | Use my One Login instead of a password for this service. | |
| UC07: Get my figures from HMRC into my account | Give permission and check my pay so far and the bills on my account. |
|
| UC08: Upload my bank transactions | Upload a CSV, check what was found and save it. |
|
| UC09: Confirm my email address and reset a forgotten password | Use the links emailed to me. | |
| UC10: Hear when my forecast changes | Get an email when the amount to put aside changes. |
|
| UC11: Download or delete my information | From 'Your information' in my account. |
|
Businesses, employers, home buyers and executors
| Use case | How | Tested by |
|---|---|---|
| UC63: Work out the tax on buying a home or other property | Stamp Duty Land Tax, LBTT or Land Transaction Tax, from the price and my situation. |
|
| UC64: Work out my company's Corporation Tax | From the accounting period, profits and associated companies. |
|
| UC65: Work out VAT | Whether to register, my VAT return's figures, or the Flat Rate Scheme. |
|
| UC66: Check an employee's pay for a pay period | From their tax code, pay, student loans and pension. |
|
| UC67: Work out Inheritance Tax on an estate | From the estate, who it goes to, the home and gifts. |
|
| UC68: Share my partnership's profits between the partners | From the profit and the partnership agreement, for the Partnership Tax Return. |
|
| UC69: Work out a trust's Income Tax | From the trust's income and expenses, for the Trust and Estate Tax Return. |
|
| UC70: Work out my Child Benefit and the charge on it | From how many children and the higher earner's income. |
|
| UC71: Estimate my Universal Credit | From my household, children, health, rent, earnings and savings. |
|
Apps that work out payment plan amounts (such as HMRC's Budget Payment Plan service)
| Use case | How | Tested by |
|---|---|---|
| UC12: Get an amount straight away | Send the customer's account to the payment plan API and show the amount. | |
| UC13: Hand the customer over for questions and collect the result | Start a journey, send the customer, collect the result when they come back. | |
| UC14: Let the customer go back without finishing | The back link on the first question goes back to the app. |
|
| UC15: Stop customers who owe overdue tax | They are told they cannot set up a plan yet. |
|
| UC16: Keep journeys and results safe | API keys, checked return addresses, one-browser links and results only for the organisation that started them. |
|
| UC17: Sign the customer in with GOV.UK One Login and out again | The app signs the customer in before it starts. |
Organisations (accountants and software)
| Use case | How | Tested by |
|---|---|---|
| UC18: Keep clients' forecasts up to date through an API | Add clients, their details and figures, and get forecasts and history. |
|
| UC19: Use the service within agreed limits | Rate limits, monthly quotas, suspension and revoked keys. |
|
| UC20: Keep clients apart from other organisations | No organisation can see another's clients. |
|
| UC53: Use the Making Tax Digital helpers inside our software | Start a journey of kind mtd_check, mtd_quarterly, mtd_explain or mtd_year_end with what we know, and collect the result. | |
| UC54: See our clients' Making Tax Digital deadlines and penalty points | Save each client's details (PUT /api/v1/saas/clients/{id}/mtd) and see the list (GET /api/v1/saas/mtd/clients, or our organisation's page). |
|
| UC56: Check updates, deadlines and penalty points, and sort transactions, through the API | POST /api/v1/saas/mtd/check, /deadlines, /penalty-points and /categories with our API key. |
|
Organisations choosing how they use the calculator
| Use case | How | Tested by |
|---|---|---|
| UC29: Use the full question pages at our own address, with answers read from HMRC | Customers start at /o/<our name>. For each part, we choose whether its answers are read from HMRC. |
|
| UC30: Use the full question pages with customers entering everything themselves | Customers can say no to HMRC records, or we switch reading data off. |
|
| UC31: Use only some parts of the calculator, such as basic Income Tax | Choose a set such as 'Basic Income Tax', or tick the parts. Other questions are not asked and the API refuses their fields. | |
| UC32: Put the question pages inside our app and get the result back | Start a journey with what we know, send the customer, and collect the tax and what to pay when they come back. | |
| UC33: Read answers from HMRC inside our app | Switch on reading data for pages inside the app. |
|
| UC34: Calculate through the API only, from the least we have | A full calculation, or one part at a time, for example pay alone for basic Income Tax. | |
| UC35: Manage our own settings and API keys | Our administrators sign in and change them at /account/organisations. |
|
| UC37: Keep each organisation's settings, results and pages apart | Keys, journeys, results and administrators belong to one organisation. |
|
| UC38: Choose, for each part, whether answers are read and whether customers check them | For each part records can fill: the customer enters the answers, they are read and the customer checks them, or they are read without asking. | |
| UC39: Choose whether customers check the answers our app sends | Skip the questions our app answered, or show them with the answers filled in. | |
| UC72: Let the journey planner set up the journey from what our app knows | Send the tax year, the customer's kinds of income and the figures we have to POST /api/v1/saas/journey-plans/start; the customer answers only what is left and comes back with the estimate. |
|
| UC73: Ask the planner's questions on our own screens | POST /api/v1/saas/journey-plans/questions with what we know and the answers so far; show each page it gives in our own way, and get the calculation when nothing is left. |
|
| UC41: Let customers fill in parts from a document | Switch on uploads for the parts we want, such as pay from a P60. Customers check the answers, and documents are not kept. |
|
| UC44: Let customers work out their tax so far inside our app | Start a journey of kind 'tax_so_far' with the pay and tax so far, and collect the tax so far and the forecast when the customer comes back. |
|
| UC45: Get the tax so far through the API | POST /api/v1/saas/tax-so-far with the figures since 6 April, or the customer's HMRC access token to read their pay so far. |
|
| UC46: Choose where tax so far and payment plan amounts are offered | For each way of use, in our settings. Where it is off, the pages say the service is not available and the API refuses. | |
| UC40: Be told straight away when a customer finishes inside our app | Give a web address and make a signing secret. Each notification is signed (Standard Webhooks) and tried again if our app does not answer. |
|
| UC55: Choose which Making Tax Digital helpers we offer, and where | For each helper and each way of use, in our settings. |
|
Software developers
| Use case | How | Tested by |
|---|---|---|
| UC21: Calculate tax with the API | POST /api/v1/calculate. Every persona in the calculator table is also checked through the API. |
|
| UC22: Calculate with a customer's HMRC data | POST /api/v1/calculate/with-hmrc-data with the customer's HMRC token. |
|
| UC23: Work out company car benefit from a registration number | POST /api/v1/benefits/company-car, which asks DVLA. |
|
Administrators
| Use case | How | Tested by |
|---|---|---|
| UC24: Switch features off and on | From the admin pages or the admin API, without a restart. |
|
| UC25: Choose which HMRC data is filled in and whether customers confirm it | Switch data sources on and off at /admin. For each part, choose whether customers check what was read at /admin/calculator. |
|
| UC26: Add organisations and API keys | From the admin pages. | |
| UC36: Choose how the service's own calculator is used | Which parts are used, whether the pages and the API are open, where data is read and what the result shows, at /admin/calculator. Each organisation's own settings are changed under organisations. |
|
| UC57: Choose whether a ready-made set includes Scottish Income Tax | Basic Income Tax and the other ready-made sets include it unless 'Include Scottish Income Tax' is switched off at /admin/calculator, or in an organisation's settings. Switched off, the question is not asked and the API refuses an answer that says a customer pays Scottish Income Tax. |
|
People running the service
| Use case | How | Tested by |
|---|---|---|
| UC27: Run the calculator without the optional features | Leave FEATURES empty. |
|
| UC28: Trust that other services' checks are kept | Wrong customers, tokens and keys are refused, as by the real services. | |
| UC42: Keep the daily work running without a paid scheduler | The service runs it when it is due, and the admin page shows when it last ran. |
|