---
title: "Approve and book payrolls"
method: POST
path: "/payroll/setup/bookings/approve"
tags: ["Payroll"]
---

# Approve and book payrolls

`POST /payroll/setup/bookings/approve`

## Request

- Base URL: `https://ledgerhq.pro/api/v1`
- URL: `https://ledgerhq.pro/api/v1/payroll/setup/bookings/approve`
- Auth: one of:
  - HTTP bearer and API key in header `x-organization-id`
  - HTTP bearer and API key in header `x-organization-id`

Books each payroll: splits its matched Gusto withdrawals by the setup and posts one payroll entry for amounts held in liability accounts. Each booking is claimed first, so a payroll is never booked twice.

## Request body

- object
  - `ids` string[]
  - `allReady` boolean: Book every ready payroll.
  - `kind` 'earlier' | 'new': With allReady, only this kind.

## Response `200`

{results:[{id, status, message?}], booked}

---

[API](https://skmtc.dev/ledgerhq-pro/apis/ledgerhq-bookkeeping-api.md) · [All operations](https://skmtc.dev/ledgerhq-pro/apis/ledgerhq-bookkeeping-api/llms.txt) · [OpenAPI document](https://skmtc.dev/ledgerhq-pro/apis/ledgerhq-bookkeeping-api/revisions/9a8269f0a586?raw)
