---
title: "Read an assigned client's approved statement basis"
method: GET
path: "/accountant/companies/{customerId}/statement-basis"
tags: ["Accountant Portal"]
---

# Read an assigned client's approved statement basis

`GET /accountant/companies/{customerId}/statement-basis`

## Request

- Base URL: `https://api.medianfi.com/api/v1`
- URL: `https://api.medianfi.com/api/v1/accountant/companies/{customerId}/statement-basis`
- Auth: HTTP bearer

The approved statement basis (#2911, J-355) is a reporting configuration an accountant records with a reason and an approval reference. It is distinct from the tax election (tax settings' accounting method) and from the book basis. The history is append-only: a correction is a new row naming the row it supersedes. `effective` is the row in force on `asOf` (today, UTC): the latest row with effectiveDate on or before it, by effectiveDate, then createdAt, then id, descending; null when none. The basis is metadata only: it never changes a figure or `reportBasis`, which comes only from the cash computation. Human accountants only; hidden from the service key.

## Response `200`

The row in force today and the full history

- object
  - `success` true, required
  - `data` StatementBasisHistory, required
    - `asOf` string, date, required: The date `effective` was resolved on (today, UTC).
    - `effective` StatementBasisEntry, required
      - `id` string, uuid, required
      - `companyId` string, uuid, required
      - `basis` 'cash' | 'accrual', required
      - `effectiveDate` string, date, required
      - `reason` string, required
      - `approvalReference` string, required
      - `supersedesId` string, uuid, nullable, required
      - `setByUserId` string, uuid, nullable, required: Null for a service principal, which is then named in setByActor.
      - `setByActor` string, required: Set by the server, e.g. accountant:<accountantId>.
      - `createdAt` string, date-time, required
    - `history` StatementBasisEntry[], required: Every row, latest effective first, then latest created.
      - `id` string, uuid, required
      - `companyId` string, uuid, required
      - `basis` 'cash' | 'accrual', required
      - `effectiveDate` string, date, required
      - `reason` string, required
      - `approvalReference` string, required
      - `supersedesId` string, uuid, nullable, required
      - `setByUserId` string, uuid, nullable, required: Null for a service principal, which is then named in setByActor.
      - `setByActor` string, required: Set by the server, e.g. accountant:<accountantId>.
      - `createdAt` string, date-time, required

## Other responses

- `401`: Authentication required
- `403`: Insufficient permissions or not a company member
- `404`: Resource not found

---

[API](https://skmtc.dev/medianfi/apis/median-api.md) · [All operations](https://skmtc.dev/medianfi/apis/median-api/llms.txt) · [OpenAPI document](https://skmtc.dev/medianfi/apis/median-api/revisions/20090ea32b0d?raw)
