---
title: "Create an uploaded bank statement"
method: POST
path: "/bank-statements"
tags: ["Banking"]
---

# Create an uploaded bank statement

`POST /bank-statements`

## Request

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

Stores an already-uploaded statement file for one account and ending month. A duplicate account/month returns HTTP 409 with code statement_period_conflict.

## Request body

- object
  - `fileKey` string, required
  - `fileSize` integer, required
  - `mimeType` string, required
  - `bankAccountId` string, uuid, required
  - `periodYear` integer, required
  - `periodMonth` integer, required

## Response `201`

Statement created and OCR queued

## Other responses

- `409`: A statement already exists for this account and month
- `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)
