---
title: "Create journal"
method: POST
path: "/consumers/{consumer_id}/accounting/journal"
tags: ["Accounting", "Journals"]
---

# Create journal

`POST /consumers/{consumer_id}/accounting/journal`

Create a journal in the accounting system

## Path parameters

- `consumer_id` string, uuid, required

## Query parameters

- `folder_id` string, nullable

## Request body

- JournalIn
  - `code` string, required — Short code or identifier of the journal (e.g., 'BNK', 'INV').
  - `name` string, required — Name or label of the journal as it appears in the accounting system.
  - `journal_type` 'customer_invoice' | 'customer_refund' | 'supplier_invoice' | 'supplier_refund' | 'bank' | 'cash' | 'miscellaneous_operation', required
  - `counterpart_account` string, nullable — When journal is of type bank or cash, this is account number of the counterpart account used for the journal.

## Response `200`

Successful Response

- Journal
  - `id` string, required
  - `code` string, nullable
  - `name` string, required
  - `journal_type` 'customer_invoice' | 'customer_refund' | 'supplier_invoice' | 'supplier_refund' | 'financial_operation' | 'miscellaneous_operation' | 'unknown', required
  - `counterpart_account` string, nullable — When journal is of type bank or cash, this is account number of the counterpart account used for the journal.
  - `unallocated_account` string, nullable — Unallocated ledger account used to book entries when the final ledger account / client / supplier / employee is not yet known (specific to bank and cash journals)
  - `next_document_numbers` NextDocumentNumber[], nullable
    - `bookyear_name` string, nullable
    - `next_document_number` string, nullable
    - `start_date` string, date, nullable
    - `end_date` string, date, nullable
  - `iban` string, nullable — When the journal is of type bank, IBAN of the bank account linked to the journal
  - `currency` string, nullable — Currency of the journal (e.g., EUR). If empty, the journal follows the currency of the accounting folder.
  - `other_currencies_allowed` boolean, nullable — Indicates if the journal allows other currencies. If it doesn't allow other currencies an exchange rate must be provided for Chift to convert the amounts to the journal currency. This only applicable if the journal currency is the same as the accounting folder currency.
  - `blocked` boolean, nullable — Indicates if the journal is blocked for creating entries.

## Other responses

- `400` — Bad Request
- `404` — Not Found
- `422` — Validation Error

---

[API](https://skmtc.net/chift/apis/chift-api.md) · [All operations](https://skmtc.net/chift/apis/chift-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/chift/chift-api/versions/b5f1214a482a/schema)
