MtdIncomeSourcesDto
A client's MTD income sources with every deadline HMRC expects of them, and their tax return
deadlines.
Everything a year view needs to draw itself, in one read — and deliberately not scoped
to a tax year, because HMRC answers all of it per client. Scoping it would re-fetch
identical data every time the practice changed the year on screen. Each period carries the tax
year it is filed against, so a caller filters on a string rather than re-deriving a calendar
rule the MTD service already applied.
The income source list and the obligations answer different questions — the list is what the
client actually has, the obligations carry only the sources HMRC returned periods for — and
joining them is where sources have gone missing before, so the MTD service does it.
Every reason the client's position cannot be shown is resolved before HMRC is called, so the
page explains itself rather than surfacing a bare error: not connected, not authorised and no
National Insurance number on file are all things the practice can act on.
Properties
| Name | Type | Description |
|---|---|---|
| availability | enum | Available NotConnected NotAuthorised MissingClientDetails |
Available NotConnected NotAuthorised MissingClientDetails | ||
| agentRole | enum | None Main Supporting NotApplicable |
None Main Supporting NotApplicable | ||
| canViewFinalDeclaration | boolean | Whether the tax return obligation was retrievable. Only a main agent may see it — a supporting |
Whether the tax return obligation was retrievable. Only a main agent may see it — a supporting | ||
| clientCode | string | The Sodium client the year belongs to, stamped by the API on the way out. |
The Sodium client the year belongs to, stamped by the API on the way out. | ||
| availableTaxYears | array of string | Every tax year mentioned anywhere in this response, newest first — what a year picker offers. |
Every tax year mentioned anywhere in this response, newest first — what a year picker offers. | ||
| unavailableParts | array of string | The parts HMRC could not be asked about — |
The parts HMRC could not be asked about — | ||
| incomeSources | array of MtdIncomeSourceDto | The client's income sources with their quarterly update deadlines. |
The client's income sources with their quarterly update deadlines. | ||
| finalDeclaration | array of MtdObligationPeriodDto | The tax return deadlines, every year HMRC returned. Empty for a supporting agent — check |
The tax return deadlines, every year HMRC returned. Empty for a supporting agent — check | ||
JSON Example
{
"availability": "Available",
"agentRole": "None",
"canViewFinalDeclaration": false,
"clientCode": "string",
"availableTaxYears": [
"string"
]
}