---
title: "Reverse a journal entry"
method: POST
path: "/companies/{companyId}/journal-entries/{journalEntryId}/reverse"
tags: ["journal-entries"]
---

# Reverse a journal entry

`POST /companies/{companyId}/journal-entries/{journalEntryId}/reverse`

Reverse a journal entry for the company.

### Journal entries possible to reverse

- It's possible to reverse journal entries that have been created through the API. Journal entries that have been created through the Bokio UI can't be reversed through the API.
- Journal entries that belong to a Bokio invoice or similar cannot be reversed using this endpoint.
- Journal entries that have been reversed can not be reversed again.

### Handling validation errors:

If this operation returns a 400 status code, inspect the response body's apiError object for more information. There will be additional information in the innerCode if the code=validation-error.

**Scope:** `journal-entries:write`

## Response `200`

Journal entry reversed

- JournalEntry
  - `id` string, uuid
  - `title` string
  - `journalEntryNumber` string
  - `date` string, date
  - `items` JournalEntryItem[], required
    - `id` integer
    - `debit` number, double
    - `credit` number, double
    - `account` integer
    - `tags` JournalEntryTag[] — Transaction-level tags applied to this specific line item. Tags must be applied either at the transaction level (on individual line items) or at the verification level (on the journal entry), but not both on the same journal entry. Within a tag group, weights on the same transaction must sum to at most 1.
      - `tagId` string, uuid, required — Unique identifier of the tag (value) within the tag group
      - `tagGroupId` string, uuid — Unique identifier of the tag group this tag belongs to
      - `tagName` string — Display name of the tag
      - `tagGroupName` string — Display name of the tag group
      - `weight` number, double, required — Allocation weight between 0 (exclusive) and 1 (inclusive). Controls how costs/revenues are split in reports. Within a tag group, weights on the same journal entry or transaction must sum to at most 1.
  - `tags` JournalEntryTag[] — Verification-level tags applied to the entire journal entry. Tags must be applied either at the verification level (on the journal entry) or at the transaction level (on individual line items), but not both on the same journal entry. Within a tag group, weights on the same journal entry must sum to at most 1.
    - `tagId` string, uuid, required — Unique identifier of the tag (value) within the tag group
    - `tagGroupId` string, uuid — Unique identifier of the tag group this tag belongs to
    - `tagName` string — Display name of the tag
    - `tagGroupName` string — Display name of the tag group
    - `weight` number, double, required — Allocation weight between 0 (exclusive) and 1 (inclusive). Controls how costs/revenues are split in reports. Within a tag group, weights on the same journal entry or transaction must sum to at most 1.
  - `reversingJournalEntryId` string, uuid, nullable
  - `reversedByJournalEntryId` string, uuid, nullable

## Other responses

- `400` — Not allowed to reverse journal entry
- `404` — journal entry not found

---

[API](https://skmtc.net/bokio/apis/company-api.md) · [All operations](https://skmtc.net/bokio/apis/company-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/bokio/company-api/revisions/1bb5d09ce15e/schema)
