API Docs / Schemas / MtdLossesDto

MtdLossesDto

A client's losses and loss claims for one tax year, in whichever of HMRC's two shapes that year
uses — and the flag that says which.

HMRC split this at 2025-26/2026-27, and the split is not cosmetic. Up to 2025-26 (Individual
Losses v6.0) a loss and a claim are each a record with an identifier: created once,
amended through that id, deleted, and — for carry-sideways claims — ordered against each other.
From 2026-27 (v7.0) the whole position is one document per income source per year, with no
identifiers, no ordering endpoint, and a full replacement on every save.

Both shapes are on one DTO rather than two endpoints because the practice asks one question —
"what losses does this client have for this year?" — and the answer's shape is a property of
the year, not of the question. SodiumHQ.DTOs.MtdSubmissions.MtdLossesDto.IsRecordBased is what a screen keys on.

Properties

Name Type Description
clientCodestring

The Sodium client the losses belong to, stamped by the API on the way out.

The Sodium client the losses belong to, stamped by the API on the way out.

taxYearstring

The tax year, in HMRC's format, e.g. 2025-26.

The tax year, in HMRC's format, e.g. 2025-26.

isRecordBasedboolean

True when the year keeps losses and claims as individually identified records (up to
2025-26), false when it keeps one document per income source (2026-27 onwards).

A screen must key on this rather than on the year string: it decides whether there is
anything to edit row by row, whether claims can be reordered, and whether a save is a create
or a replacement.

True when the year keeps losses and claims as individually identified records (up to
2025-26), false when it keeps one document per income source (2026-27 onwards).

A screen must key on this rather than on the year string: it decides whether there is
anything to edit row by row, whether claims can be reordered, and whether a save is a create
or a replacement.

broughtForwardLossesarray of MtdBroughtForwardLossDto

The brought forward losses HMRC hold for the year. Record-based years only.

Empty means HMRC hold none, which is an answer and not a failure — render an empty table.

The brought forward losses HMRC hold for the year. Record-based years only.

Empty means HMRC hold none, which is an answer and not a failure — render an empty table.

claimsarray of MtdLossClaimDto

The loss claims HMRC hold for the year. Record-based years only, and empty means none held.

The loss claims HMRC hold for the year. Record-based years only, and empty means none held.

documentMtdLossesAndClaimsDto

JSON Example

{
  "clientCode": "string",
  "taxYear": "string",
  "isRecordBased": false,
  "broughtForwardLosses": [
    {
      "lossId": "...",
      "businessId": "...",
      "typeOfLoss": "...",
      "lossAmount": "...",
      "taxYearBroughtForwardFrom": "..."
    }
  ],
  "claims": [
    {
      "claimId": "...",
      "businessId": "...",
      "typeOfLoss": "...",
      "typeOfClaim": "...",
      "taxYearClaimedFor": "..."
    }
  ]
}

Used By Operations