Accounting: Journal
> **Language tip:** For line items, or individual transactions, of a company's financial documents, refer to the [Journal entries](https://docs.codat.io/lending-api#/schemas/JournalEntry) data type ## Overview In accounting software, journals are used to record all the financial transactions of a company. Each transaction in a journal is represented by a separate [journal entry](https://docs.codat.io/lending-api#/schemas/JournalEntry). These entries are used to create the general ledger, which is then used to create the financial statements of a business. When a company records all their transactions in a single journal, it can become large and difficult to maintain and track. This is why large companies often use multiple journals (also known as subjournals) to categorize and manage journal entries. Such journals can be divided into two categories: - Special journals: journals used to record specific types of transactions; for example, a purchases journal, a sales journal, or a cash management journal. - General journals: journals used to record transactions that fall outside the scope of the special journals. Multiple journals or subjournals are used in the following Codat integrations: - [Sage Intacct](https://docs.codat.io/integrations/accounting/sage-intacct/accounting-sage-intacct) (mandatory) - [Exact Online](https://docs.codat.io/integrations/accounting/exact-online/accounting-exact-online) (mandatory) - [Oracle NetSuite](https://docs.codat.io/integrations/accounting/netsuite/accounting-netsuite) (optional) > When pushing journal entries to an accounting software that doesn’t support multiple journals (multi-book accounting), the entries will be linked to the platform-generic journal. The Journals data type will only include one object.
Unified_API
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "#/components/schemas/AccountingJournal",
"title": "Accounting: Journal",
"description": "> **Language tip:** For line items, or individual transactions, of a company's financial documents, refer to the [Journal entries](https://docs.codat.io/lending-api#/schemas/JournalEntry) data type\n\n## Overview\n\nIn accounting software, journals are used to record all the financial transactions of a company. Each transaction in a journal is represented by a separate [journal entry](https://docs.codat.io/lending-api#/schemas/JournalEntry). These entries are used to create the general ledger, which is then used to create the financial statements of a business.\n\nWhen a company records all their transactions in a single journal, it can become large and difficult to maintain and track. This is why large companies often use multiple journals (also known as subjournals) to categorize and manage journal entries.\n\nSuch journals can be divided into two categories:\n\n- Special journals: journals used to record specific types of transactions; for example, a purchases journal, a sales journal, or a cash management journal.\n- General journals: journals used to record transactions that fall outside the scope of the special journals.\n\nMultiple journals or subjournals are used in the following Codat integrations:\n\n- [Sage Intacct](https://docs.codat.io/integrations/accounting/sage-intacct/accounting-sage-intacct) (mandatory)\n- [Exact Online](https://docs.codat.io/integrations/accounting/exact-online/accounting-exact-online) (mandatory)\n- [Oracle NetSuite](https://docs.codat.io/integrations/accounting/netsuite/accounting-netsuite) (optional)\n\n> When pushing journal entries to an accounting software that doesn\u2019t support multiple journals (multi-book accounting), the entries will be linked to the platform-generic journal. The Journals data type will only include one object.\n",
"type": "object",
"allOf": [
{
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Journal ID."
}
}
},
{
"$ref": "#/components/schemas/AccountingJournal/definitions/journalPrototype"
},
{
"properties": {
"metadata": {
"$ref": "#/components/schemas/Metadata"
}
}
},
{
"$ref": "#/components/schemas/CommerceOrder/allOf/3"
}
],
"definitions": {
"journalPrototype": {
"type": "object",
"properties": {
"journalCode": {
"type": "string",
"nullable": true,
"description": "Native journal number or code."
},
"name": {
"type": "string",
"nullable": true,
"description": "Journal name.\nThe maximum length for a journal name is 256 characters. All characters above that number will be truncated."
},
"type": {
"type": "string",
"nullable": true,
"description": "The type of the journal."
},
"parentId": {
"type": "string",
"nullable": true,
"description": "Parent journal ID.\nIf the journal is a parent journal, this value is not present."
},
"hasChildren": {
"type": "boolean",
"description": "If the journal has child journals, this value is true. If it doesn\u2019t, it is false."
},
"createdOn": {
"$ref": "#/components/schemas/DateTime",
"description": "Journal creation date."
},
"status": {
"$ref": "#/components/schemas/AccountingJournal/definitions/journalStatus"
}
}
},
"journalRef": {
"title": "Journal reference",
"type": "object",
"additionalProperties": false,
"description": "Links journal entries to the relevant journal in accounting integrations that use multi-book accounting (multiple journals).",
"properties": {
"id": {
"minLength": 1,
"type": "string",
"description": "GUID of the underlying journal."
},
"name": {
"type": "string",
"maxLength": 256,
"nullable": true,
"description": "Name of journal"
}
},
"required": [
"id"
]
},
"journalStatus": {
"type": "string",
"description": "Current journal status.",
"enum": [
"Unknown",
"Active",
"Archived"
]
}
}
}