---
title: "Create or update a statement coverage policy"
method: PUT
path: "/statement-coverage/policies"
tags: ["Banking"]
---

# Create or update a statement coverage policy

`PUT /statement-coverage/policies`

## Request

- Base URL: `https://ledgerhq.pro/api/v1`
- URL: `https://ledgerhq.pro/api/v1/statement-coverage/policies`
- Auth: one of:
  - HTTP bearer and API key in header `x-organization-id`
  - HTTP bearer and API key in header `x-organization-id`

## Request body

- object
  - `accountId` string, uuid, required
  - `bankAccountId` string, uuid, nullable
  - `enabled` boolean
  - `documentType` 'bank' | 'card' | 'loan' | 'escrow' | 'other', required
  - `documentLabel` string, nullable
  - `reconciliationMethod` 'transaction_reconciliation' | 'ending_balance_true_up'
  - `cadence` 'monthly' | 'quarterly' | 'annual' | 'custom', required
  - `cadenceMonths` integer[], nullable
  - `source` 'feed_auto' | 'client_sends' | 'firm_login', required
  - `assignedUserId` string, uuid, nullable
  - `autoRequestEnabled` boolean: Automatically request missing non-Plaid statements after 10 days and every 48 hours while Tally AI is on. Defaults on for new policies; omitted updates preserve the setting.
  - `graceDays` integer
  - `startYear` integer, required
  - `startMonth` integer, required
  - `reconciliationStartDate` string, date: Exact first date included in regular reconciliation work. The containing month is the first expected statement period.

## Response `200`

Saved coverage policy

## Other responses

- `default`: Error response

---

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