Name / Description Type / Format Example
lateReason string "NoneGiven" "NotionalExpat" "NotionalErs" "NotionalOther" "Class1" "MicroEmployer" "NoRequirement" "ReasonableExcuse" "Correction"
paymentDate string date "2024-06-24"
If a value if provided here then it will be used in place of the actual PaymentDate on the FPS.
The value must fall in to the same Tax Period as the PaymentDate
string date "2024-06-24"
employeeCount integer int32 0
isCorrection boolean true
The number of payments on this FPS that have been superseded by later versions
integer int32 0
fullPaymentSubmission FullPaymentSubmission {FullPaymentSubmission}
If any of the payments on this FPS appear on another FPS then
then there will be an entry here for each of them.
If there is an entry where the FpsId matches this FPS then that means the FpsEmployee on this Fps
is itself a prior version (ie, it's been superseded)
FpsPriorVersion[] {FpsPriorVersion}
validationWarnings RtiValidationWarning[] {RtiValidationWarning}
iRmark string "string"
This property will soon be removed and should not be used.
There is now a dedicated API endpoint for retrieving the XML for a submission.
string "string"
taxYear string "Year2017" "Year2018" "Year2019" "Year2020" "Year2021" "Year2022" "Year2023" "Year2024"
employerReferences EmpRefs {EmpRefs}
govTalkSubmission GovTalkSubmission {GovTalkSubmission}
The unique id of the object
string uuid "string"
  "lateReason": "NoneGiven",
  "paymentDate": "2024-06-24",
  "overridePaymentDate": "2024-06-24",
  "employeeCount": 0,
  "isCorrection": true,
  "supersededCount": 0,
  "fullPaymentSubmission": {
    "employee": [
        "payrunEntryId": "string",
        "employeeUniqueId": "string",
        "item": {
          "id": "string",
          "name": "string",
          "metadata": {},
          "url": "string"
        "employeeDetails": {
          "nino": "string",
          "name": "error too many levels",
          "address": "error too many levels",
          "birthDate": "string",
          "gender": "string",
          "passportNumber": "string",
          "partnerDetails": "error too many levels"
        "employment": {
          "employeeCurrentNiLetter": "string",
          "offPayrollWorker": "string",
          "occPenInd": "string",
          "directorsNIC": "string",
          "taxWkOfApptOfDirector": "string",
          "starter": "error too many levels",
          "payId": "string",
          "payIdChgd": "error too many levels",
          "paymentToANonIndividual": "string",
          "irrEmp": "string",
          "leavingDate": "string",
          "figuresToDate": "error too many levels",
          "payment": "error too many levels",
          "nIlettersAndValues": "error too many levels"
        "validationWarnings": [
            "type": "MissingAddress",
            "employeeId": "string"
    "relatedTaxYear": "string"
  "versions": [
      "payRunEntryId": "string",
      "fpsId": "string"
  "validationWarnings": [
      "type": "MissingAddress",
      "employeeId": "string"
  "iRmark": "string",
  "xml": "string",
  "taxYear": "Year2017",
  "employerReferences": {
    "officeNo": "string",
    "payeRef": "string",
    "aoRef": "string",
    "econ": "string",
    "cotaxRef": "string",
    "sautr": "string"
  "govTalkSubmission": {
    "rawResponse": "string",
    "messageClass": "string",
    "pollInterval": 0,
    "lastPoll": "2024-06-24T13:09:39",
    "correlationId": "string",
    "url": "string",
    "status": "NotSubmitted",
    "message": "string",
    "iRmark": "string",
    "errorsJson": "string",
    "errors": [
        "raisedBy": "string",
        "number": "string",
        "type": "string",
        "text": "string",
        "location": "string"
    "submittedAt": "2024-06-24T13:09:39",
    "id": "string"
  "id": "string"
Contained in Models
Consumed by Operations
Create FPS
Update FPS
Completing a Pay Run Review and Submit the FPS