---
title: "Create a GL report"
method: POST
path: "/v1/payroll-runs/{payroll_run_id}/gl-reports"
tags: ["GL Reports"]
---

# Create a GL report

`POST /v1/payroll-runs/{payroll_run_id}/gl-reports`

Triggers generation of a General Ledger report for the given payroll run and type.
Returns immediately with a `pending` report — poll `show` until `status` is `completed`,
then call `download`.


## Scopes

| Category | Read only Scope | Write only Scope (read access implicit) |
|---|---|---|
| Manage payroll runs (`payroll`) | View payroll runs (`payroll_run:read`) | - |

## Path parameters

- `payroll_run_id` string, required

## Request body

- CreateGLReportParams
  - `type` 'summary' | 'by_department' | 'employee_detail', required — The type of GL report to generate.

## Response `200`

Success

- GLReportResponse
  - `data` object
    - `gl_report` GLReport — A General Ledger report generation request and its current status.
      - `id` string, required — Unique identifier of the GL report.
      - `inserted_at` string, date-time, required — Timestamp when the report was requested.
      - `status` 'pending' | 'completed' | 'failed', required — Current generation status of the report.
      - `type` 'summary' | 'by_department' | 'employee_detail', required — The type of GL report.

## Other responses

- `401` — Unauthorized
- `404` — Not Found
- `422` — Unprocessable Entity

---

[API](https://skmtc.net/remote-com/apis/remote.md) · [All operations](https://skmtc.net/remote-com/apis/remote/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/remote-com/remote/revisions/7e6a0c61ac82/schema)
