API Docs / Operations / Returns / Submit Return

Submit Return

POST /tenants/{tenant}/returns/{year}/{month}/submission

Sends the return to HMRC as a CIS300 with the declarations (that the information is correct is always declared; the employment status and verification declarations are not sent on a nil return). The return is Submitting while it is sent, then Submitted and polled in the background: HMRC's acceptance or errors land on its status (webhooks return.submitted, return.accepted, return.failed). A send HMRC did not confirm (no answer, or an answer that could not be read) leaves it Submitting with the reason as its status message, and it cannot be submitted again until support has checked with HMRC. Only an Open or Error return can be submitted (400). Incomplete HMRC settings are 422. A tenant whose owner's billing blocks submissions is 402 with the reason. For an organisation of a SodiumHQ-managed practice the practice's filing credits pay instead: the credits the return needs are held before it is sent (402 when the balance cannot cover them or the user cannot spend them, 503 when they cannot be checked), spent when HMRC accepts it and given back when HMRC refuses it (kept while it is Submitting).

Parameters

NameTypeDescription
tenant* path string

The tenant code (the organisation's URL stub)

The tenant code (the organisation's URL stub)

month* path integer (int32)
year* path integer (int32)
{
  "employmentStatus": false,
  "verification": false,
  "inactivity": false
}

Responses

202 Accepted
400 Bad Request
application/problem+json
401 Unauthorized – Invalid or missing API key
402 Payment Required
application/problem+json
403 Forbidden
application/problem+json
404 Not Found
application/problem+json
422 Unprocessable Content
application/problem+json
503 Service Unavailable
application/problem+json