---
title: "Customer QuickBooks status - read state, coverage, books state and gaps (#2642)"
method: GET
path: "/companies/{companyId}/integrations/quickbooks/status"
tags: ["Integrations"]
---

# Customer QuickBooks status - read state, coverage, books state and gaps (#2642)

`GET /companies/{companyId}/integrations/quickbooks/status`

## Request

- Base URL: `https://api.medianfi.com/api/v1`
- URL: `https://api.medianfi.com/api/v1/companies/{companyId}/integrations/quickbooks/status`
- Auth: HTTP bearer

Reports reading QuickBooks and posting into Median's books separately. A completed read never means the books are posted. QuickBooks' bank-feed "For review" queue is not available through Intuit's API and is never reported as read. No amounts.

## Response `200`

Customer-facing QuickBooks status

- object
  - `success` true, required
  - `data` QuickBooksCustomerStatus, required
    - `readState` 'disabled' | 'connected_no_import' | 'importing' | 'source_ready' | 'failed' | 'stale', required
    - `lastSuccessfulReadAt` string, date-time, nullable, required
    - `latestAttemptAt` string, date-time, nullable, required
    - `readFailure` object, nullable, required
      - `code` string, required
      - `reason` string, required: Plain-language reason shown to the customer
    - `coverage` object, required
      - `byType` object[], required
        - `objectType` 'Account' | 'JournalEntry' | 'Purchase' | 'Deposit' | 'Transfer' | 'Payment' | 'BillPayment' | 'Bill' | 'Invoice' | 'SalesReceipt' | 'CreditMemo' | 'RefundReceipt' | 'VendorCredit' | 'Item' | 'TaxCode' | 'TaxRate' | 'TaxAgency', required
        - `count` integer, required
        - `earliestTxnDate` string, date, nullable, required
        - `latestTxnDate` string, date, nullable, required
      - `bankAndCardAccounts` integer, required: QuickBooks Bank and Credit Card accounts read
      - `bankFeedReviewQueue` object, required
        - `available` false, required
        - `note` string, required
    - `booksState` object, required
      - `state` 'not_started' | 'held_for_review' | 'posted_through', required: not_started - no posting cutoff; held_for_review - a batch awaits the accountant, a change review is open, items are blocked, or nothing is posted yet; posted_through - the latest posted batch's end date with nothing held.
      - `cutoffDate` string, date, nullable, required
      - `postedThrough` string, date, nullable, required
      - `pendingBatches` integer, required
      - `openChangeReviews` integer, required
    - `gaps` object, required
      - `blockedItems` integer, required
      - `byCode` object[], required
        - `code` string, required
        - `label` string, required
        - `count` integer, required

## Other responses

- `401`: Authentication required
- `403`: Insufficient permissions or not a company member
- `422`: The verified QuickBooks connection is unavailable or changed
- `503`: QuickBooks status or the provider is unavailable

---

[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)
