> ## Documentation Index
> Fetch the complete documentation index at: https://docs.layerfi.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Create bookkeeping status report export

> Starts an async XLSX export of bookkeeping status for the authenticated client's enrolled businesses. The workbook contains Businesses and Periods sheets. Returns an export resource; poll GET /v1/exports/{exportId} or subscribe to export.completed / export.failed webhooks for completion.

Starts a client-wide async XLSX export of bookkeeping status for businesses enrolled in bookkeeping. The workbook has a `Businesses` sheet with enrollment, onboarding, pending task, and latest closed period information, and a `Periods` sheet with period statuses, billing statuses, task metrics, and closing milestones.

Poll [Fetch export](/api-reference/v1/fetch-export) or subscribe to `export.completed` / `export.failed` webhooks to retrieve the completed file. See [Generating async reports](/guides/async-reports).


## OpenAPI

````yaml post /v1/reports/bookkeeping/exports
openapi: 3.0.1
info:
  title: API
  version: latest
servers: []
security:
  - BearerAuth: []
tags: []
externalDocs:
  url: /
paths:
  /v1/reports/bookkeeping/exports:
    post:
      tags: []
      summary: Create bookkeeping status report export
      description: >-
        Starts an async XLSX export of bookkeeping status for the authenticated
        client's enrolled businesses. The workbook contains Businesses and
        Periods sheets. Returns an export resource; poll GET
        /v1/exports/{exportId} or subscribe to export.completed / export.failed
        webhooks for completion.
      operationId: reports.bookkeeping.exports.post
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BookkeepingStatusReportExportParameters'
      responses:
        '202':
          description: Export request accepted and generation started.
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    $ref: '#/components/schemas/ApiExport'
                required:
                  - data
              example:
                data:
                  type: Export
                  id: 00000000-0000-0000-0000-000000000006
                  business_id: null
                  export_type: bookkeeping_status_report
                  status: pending
                  params:
                    use_derived_status: false
                    require_onboarding_call: true
                  download_url: null
                  file_name: null
                  error: null
                  created_at: '2026-08-04T14:00:00-04:00'
                  started_at: null
                  completed_at: null
                  failed_at: null
      deprecated: false
components:
  schemas:
    BookkeepingStatusReportExportParameters:
      type: object
      description: >-
        Options for the client-wide bookkeeping status XLSX export. Send an
        empty object to use both defaults.
      properties:
        use_derived_status:
          type: boolean
          default: false
          description: >-
            When true, calculate period statuses from current bookkeeping facts
            rather than using stored statuses.
        require_onboarding_call:
          type: boolean
          default: true
          description: >-
            When deriving statuses, require the onboarding date to have passed
            before reporting an actionable period status. Has no effect unless
            use_derived_status is true.
    ApiExport:
      type: object
      description: An async export request and its current status.
      properties:
        type:
          type: string
          description: Resource type. Value will be `Export`.
          example: Export
        id:
          type: string
          format: uuid
          description: Unique identifier for the export request.
        business_id:
          type: string
          format: uuid
          nullable: true
          description: >-
            Business associated with the export, if applicable. Null for
            client-scoped exports such as billing and bookkeeping status
            reports.
        export_type:
          $ref: '#/components/schemas/ExportType'
        status:
          $ref: '#/components/schemas/ExportRequestStatus'
        params:
          type: object
          additionalProperties: true
          description: >-
            Parameters used to generate the export. Shape depends on
            export_type.
        download_url:
          type: string
          nullable: true
          description: >-
            Presigned URL to download the completed file. Present only when
            status is completed.
        file_name:
          type: string
          nullable: true
          description: Suggested filename for the export artifact.
        error:
          type: string
          nullable: true
          description: Error message when status is failed.
        created_at:
          type: string
          format: date-time
          description: When the export request was created.
        started_at:
          type: string
          format: date-time
          nullable: true
          description: When export processing started.
        completed_at:
          type: string
          format: date-time
          nullable: true
          description: When the export completed successfully.
        failed_at:
          type: string
          format: date-time
          nullable: true
          description: When the export failed.
      required:
        - id
        - export_type
        - status
        - params
        - created_at
    ExportType:
      type: string
      enum:
        - billing_report
        - bookkeeping_status_report
      description: Type of async export.
      example: billing_report
    ExportRequestStatus:
      type: string
      enum:
        - pending
        - processing
        - completed
        - failed
      description: Lifecycle status of an async export request.
      example: pending
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT

````