Self Assessment

The year's figures for Self Assessment, marking it filed, and the PDF.

MethodPathSummary
GET/api/companies/:companyId/tax-returnA year's Self Assessment figures
PUT/api/companies/:companyId/tax-returnSave Self Assessment choices
POST/api/companies/:companyId/tax-return/fileMark a year filed
POST/api/companies/:companyId/tax-return/reopenReopen a filed year
GET/api/companies/:companyId/tax-return/pdfSelf Assessment summary as PDF

#A year's Self Assessment figures

GET/api/companies/:companyId/tax-return
Address
https://<your-org>.brambleit.cloud/simplebooks/api/companies/:companyId/tax-return
Requires
Signed-in browser session (the sso_session / session_id cookies from Bramble sign-in).
Licence: SimpleBooks.

Path parameters

NameTypeDescription
companyIdrequiredinteger

Query parameters

NameTypeDescription
tax_yearany

Response 200

FieldTypeDescription
tax_yearany
statusstring
filed_atstring (date-time)
hmrc_referenceany
notesarray of any
use_trading_allowanceboolean
figuresarray of any
changed_since_filingany
companyobject
company.namestring
company.utrany
company.year_endany
can_editboolean
Example response
JSON
{
  "tax_year": null,
  "status": "active",
  "filed_at": "2026-11-12T09:30:00.000Z",
  "hmrc_reference": null,
  "notes": [],
  "use_trading_allowance": false,
  "figures": [],
  "changed_since_filing": null,
  "company": {
    "name": "Example name",
    "utr": null,
    "year_end": null
  },
  "can_edit": true
}

Example request

JavaScript
// From a page served by Bramble (uses the signed-in session)
const res = await fetch('/simplebooks/api/companies/1/tax-return', {
  method: 'GET',
  credentials: 'include',
});
const data = await res.json();

#Save Self Assessment choices

PUT/api/companies/:companyId/tax-return
Address
https://<your-org>.brambleit.cloud/simplebooks/api/companies/:companyId/tax-return
Requires
Signed-in browser session (the sso_session / session_id cookies from Bramble sign-in).
Licence: SimpleBooks.

Path parameters

NameTypeDescription
companyIdrequiredinteger

Request body JSON

NameTypeDescription
tax_yearany
use_trading_allowanceanyUse the £1,000 trading allowance instead of expenses.
notesstring

Response 200

FieldTypeDescription
okboolean
Example response
JSON
{
  "ok": true
}

Errors

StatusMessage
400Unknown tax year
409This return is marked as filed — reopen it first

Example request

JavaScript
// From a page served by Bramble (uses the signed-in session)
const res = await fetch('/simplebooks/api/companies/1/tax-return', {
  method: 'PUT',
  credentials: 'include',
  headers: { 'Content-Type': 'application/json' },
  body: JSON.stringify({"tax_year":"…","use_trading_allowance":"…","notes":"string"}),
});
const data = await res.json();

#Mark a year filed

POST/api/companies/:companyId/tax-return/file
Address
https://<your-org>.brambleit.cloud/simplebooks/api/companies/:companyId/tax-return/file
Requires
Signed-in browser session (the sso_session / session_id cookies from Bramble sign-in).
Licence: SimpleBooks.

Path parameters

NameTypeDescription
companyIdrequiredinteger

Request body JSON

NameTypeDescription
tax_yearany
hmrc_referencestringHMRC's submission reference.

Response 200

FieldTypeDescription
okboolean
Example response
JSON
{
  "ok": true
}

Errors

StatusMessage
400Unknown tax year
400The tax year hasn't finished yet

Example request

JavaScript
// From a page served by Bramble (uses the signed-in session)
const res = await fetch('/simplebooks/api/companies/1/tax-return/file', {
  method: 'POST',
  credentials: 'include',
  headers: { 'Content-Type': 'application/json' },
  body: JSON.stringify({"tax_year":"…","hmrc_reference":"string"}),
});
const data = await res.json();

#Reopen a filed year

POST/api/companies/:companyId/tax-return/reopen
Address
https://<your-org>.brambleit.cloud/simplebooks/api/companies/:companyId/tax-return/reopen
Requires
Signed-in browser session (the sso_session / session_id cookies from Bramble sign-in).
Licence: SimpleBooks.

Path parameters

NameTypeDescription
companyIdrequiredinteger

Request body JSON

NameTypeDescription
tax_yearany

Response 200

FieldTypeDescription
okboolean
Example response
JSON
{
  "ok": true
}

Example request

JavaScript
// From a page served by Bramble (uses the signed-in session)
const res = await fetch('/simplebooks/api/companies/1/tax-return/reopen', {
  method: 'POST',
  credentials: 'include',
  headers: { 'Content-Type': 'application/json' },
  body: JSON.stringify({"tax_year":"…"}),
});
const data = await res.json();

#Self Assessment summary as PDF

GET/api/companies/:companyId/tax-return/pdf
Address
https://<your-org>.brambleit.cloud/simplebooks/api/companies/:companyId/tax-return/pdf
Requires
Signed-in browser session (the sso_session / session_id cookies from Bramble sign-in).
Licence: SimpleBooks.

Path parameters

NameTypeDescription
companyIdrequiredinteger

Query parameters

NameTypeDescription
tax_yearany
downloadstring

Response

A body.

Example request

JavaScript
// From a page served by Bramble (uses the signed-in session)
const res = await fetch('/simplebooks/api/companies/1/tax-return/pdf', {
  method: 'GET',
  credentials: 'include',
});
const data = await res.json();