---
title: "Bulk Match GL Transactions to Statement Transactions"
method: POST
path: "/coa/api/v2/reconciliation/{id}/bulk-match-transactions"
tags: ["Bank Reconciliation"]
---

# Bulk Match GL Transactions to Statement Transactions

`POST /coa/api/v2/reconciliation/{id}/bulk-match-transactions`

Match multiple GL transactions to statement transactions in a single request. Pairs are validated atomically — all succeed or none are created.

## Path parameters

- `id` integer, required

## Request body

- BulkMatchTransactionRequest
  - `pairs` MatchTransactionRequest[], required — Ordered list of GL-to-statement transaction pairs to match
    - `transaction_id` integer, required — GL transaction ID to match
    - `statement_transaction_id` integer, required — Statement transaction ID to match

## Response `201`

All pairs matched successfully

## Other responses

- `400` — Validation error (duplicates, already reconciled, non-draft report)
- `404` — Report, GL transaction, or statement transaction not found

---

[API](https://skmtc.net/campfire/apis/campfire-developer-apis.md) · [All operations](https://skmtc.net/campfire/apis/campfire-developer-apis/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/campfire/campfire-developer-apis/revisions/6945ebc3180e/schema)
