Journal entries record accounting entries in the general ledger by specifying affected accounts, amounts and descriptions. Use them to create, update, or reverse entries while ensuring the general ledger remains balanced with offsetting debits and credits.
If GL Outlier Detection is enabled, Sage Intacct identifies journal entries and allocation splits that deviate from expected patterns. Outlier details are included when retrieving a journal entry object.
Returns a collection of journal entries with a key, ID, and link for each entry. This operation is mostly for use in testing; use the query service to find journal entries that meet certain criteria and to specify the properties that you want in the response.
Subscription | General Ledger |
---|---|
User type | Business user with Admin privileges, Employee, Payment Approver |
Permissions | List, View Journal Entries |
OK
Bad Request
{- "ia::result": [
- {
- "key": "56",
- "id": "56",
- "href": "/objects/general-ledger/journal-entry/56"
}, - {
- "key": "132",
- "id": "132",
- "href": "/objects/general-ledger/journal-entry/132"
}, - {
- "key": "256",
- "id": "256",
- "href": "/objects/general-ledger/journal-entry/256"
}
], - "ia::meta": {
- "totalCount": 3,
- "start": 1,
- "pageSize": 100,
- "next": null,
- "previous": null
}
}
Creates a new journal entry. When creating a journal entry, you can either post it immediately or save it as a draft for review. Draft entries can be updated before posting, but all required information must be provided. To post a journal entry, debits and credits must balance, and all required details must be entered.
Note: The only valid values when creating a new entry are posted
(default, system-defined state), and draft
. Only populate the state field when creating a draft
entry.
Subscription | General Ledger, Projects (for revenue recognition of projects) |
---|---|
User type | Business |
Permissions | Add Journal Entries |
Create a new journal entry
required | object Specifies the journal associated with this journal entry. | ||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||
postingDate required | string <date> The date when the journal entry is recorded in the journal and posted to the general ledger for tracking and reporting. Example: "2023-04-01" | ||||||||||||||||||||||||||||
description required | string Description of the journal entry. Example: "Revenue entries" | ||||||||||||||||||||||||||||
required | Array of objects >= 2 items A collection of line items within the journal entry. At least two line items are required per journal entry, one debit and one credit. | ||||||||||||||||||||||||||||
Array (>= 2 items)
| |||||||||||||||||||||||||||||
automaticReversalDate | string or null <date> The date a journal entry is automatically reversed in the general ledger. Example: "2023-04-04" | ||||||||||||||||||||||||||||
moduleName | string The Sage Intacct module from which the journal entry originates. Example: "2.GL" | ||||||||||||||||||||||||||||
referenceNumber | string Unique identifier assigned to the journal entry by the user for tracking and reconciliation. Example: "Recurr_GL_101" | ||||||||||||||||||||||||||||
object Supporting documents or files linked to the journal entry. | |||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||
object Specifies the base location for a multi-entity company. Required if multi-entity is enabled and entries do not balance by entity. | |||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||
state | string Default: "posted" Shows the current state of the journal entry. Note: The only valid values when creating a new entry are Example: "draft" | ||||||||||||||||||||||||||||
object Tax-related details applied to the journal entry, such as tax codes, rates and exemptions. This field applies only to companies using the Taxes application to track VAT or GST. | |||||||||||||||||||||||||||||
|
Created
Bad Request
{- "glJournal": {
- "id": "GJ"
}, - "postingDate": "2024-11-01",
- "description": "October revenue posting",
- "lines": [
- {
- "txnType": "credit",
- "txnAmount": "200",
- "glAccount": {
- "id": "1000"
}, - "dimensions": {
- "department": {
- "key": "11"
}, - "location": {
- "key": "1"
}
}, - "documentId": "October_revenue_credit_transactions"
}, - {
- "txnType": "debit",
- "txnAmount": "200",
- "glAccount": {
- "id": "1000"
}, - "dimensions": {
- "department": {
- "key": "11"
}, - "location": {
- "key": "1"
}
}, - "documentId": "October_revenue_debit_transactions"
}
]
}
{- "ia::result": {
- "key": "30565",
- "id": "30565",
- "href": "/objects/general-ledger/journal-entry/30565"
}, - "ia::meta": {
- "totalCount": 1,
- "totalSuccess": 1,
- "totalError": 0
}
}
Returns detailed information for a specified journal entry.
key required | string System-assigned unique key for the journal entry. Example: 132 |
OK
Bad Request
{- "ia::result": {
- "id": "30565",
- "key": "30565",
- "txnNumber": 493,
- "description": "October revenue posting",
- "glJournal": {
- "id": "GJ",
- "key": "4",
- "isAdjustment": false,
- "href": "/objects/general-ledger/journal/4"
}, - "postingDate": "2024-11-01",
- "moduleName": "2.GL",
- "referenceNumber": "Rev_Oct",
- "reversedBy": {
- "id": "663",
- "key": "663",
- "href": "/objects/general-ledger/journal-entry/663"
}, - "reversedFromDate": null,
- "accountAllocationRun": {
- "id": "87",
- "key": "87",
- "href": "/objects/general-ledger/account-allocation-run/87"
}, - "baseLocation": {
- "key": "32",
- "id": "BC",
- "href": "/objects/company-config/location/32"
}, - "audit": {
- "createdDateTime": "2025-03-17T10:07:00Z",
- "modifiedDateTime": "2025-03-17T10:07:00Z",
- "createdByUser": {
- "key": "159",
- "href": "/objects/company-config/user/159"
}, - "createdBy": "159",
- "modifiedByUser": {
- "key": "159",
- "href": "/objects/company-config/user/159"
}, - "modifiedBy": "159"
}, - "state": "posted",
- "sequenceNumber": "1",
- "tax": {
- "taxImplication": "none",
- "taxSolution": {
- "key": "5",
- "id": "GST",
- "href": "/objects/company-config/attachment/5"
}
}, - "attachment": {
- "key": "6",
- "id": "Doc-6331",
- "href": "/objects/company-config/attachment/6"
}, - "entity": {
- "key": null,
- "id": null,
- "name": null
}, - "lines": [
- {
- "key": "465744",
- "id": "465744",
- "journalEntry": {
- "key": "30565",
- "id": "30565",
- "href": "/objects/general-ledger/journal-entry/30565"
}, - "lineNumber": 1,
- "txnType": "credit",
- "entryDate": "2024-11-01",
- "baseAmount": "200.00",
- "txnAmount": "200.00",
- "glAccount": {
- "key": "9",
- "id": "35024571",
- "name": "Bank of America A/c.",
- "href": "/objects/general-ledger/account/9"
}, - "dimensions": {
- "department": {
- "key": "11",
- "id": "FIN-AP",
- "name": "Finance - Accounts Payable",
- "href": "/objects/company-config/department/11"
}, - "location": {
- "key": "1",
- "id": "1",
- "name": "United States of America",
- "href": "/objects/company-config/location/1"
}, - "customer": {
- "key": null,
- "id": null,
- "name": null
}, - "vendor": {
- "key": null,
- "id": null,
- "name": null
}, - "employee": {
- "key": null,
- "id": null,
- "name": null
}, - "item": {
- "key": null,
- "id": null,
- "name": null
}, - "contract": {
- "key": null,
- "id": null,
- "name": null
}, - "project": {
- "key": null,
- "id": null,
- "name": null
}, - "class": {
- "key": null,
- "id": null,
- "name": null
}
}, - "documentId": "October_revenue_credit_transactions",
- "description": "October revenue credit transactions",
- "numberOfUnits": 2,
- "currency": {
- "baseCurrency": "USD",
- "txnCurrency": "USD",
- "exchangeRateDate": "2024-11-01",
- "exchangeRateTypeId": "Company Daily Rate",
- "exchangeRate": 0.78
}, - "reconciliationGroup": {
- "cleared": "matched",
- "clearingDate": "2024-11-01",
- "reconciliationDate": "2024-11-01"
}, - "accountingPeriod": 10,
- "allocation": {
- "id": "FA_ALLOC",
- "key": "21",
- "href": "/objects/general-ledger/txn-allocation-template/21"
}, - "interEntityTxnType": "p",
- "parent": {
- "id": "40",
- "key": "40",
- "href": "/objects/general-ledger/journal-entry-line/40"
}, - "audit": {
- "createdDateTime": "2025-03-17T10:07:00Z",
- "modifiedDateTime": "2025-03-17T10:07:00Z",
- "createdByUser": {
- "key": "159",
- "href": "/objects/company-config/user/159"
}, - "createdBy": "159",
- "modifiedByUser": {
- "key": "159",
- "href": "/objects/company-config/user/159"
}, - "modifiedBy": "159"
}, - "state": "posted",
- "isBillable": false,
- "isBilled": false,
- "taxEntries": [ ],
- "href": "/objects/general-ledger/journal-entry-line/465744"
}, - {
- "key": "465745",
- "id": "465745",
- "journalEntry": {
- "key": "30565",
- "id": "30565",
- "href": "/objects/general-ledger/journal-entry/30565"
}, - "lineNumber": 2,
- "txnType": "debit",
- "entryDate": "2024-11-01",
- "baseAmount": "200.00",
- "txnAmount": "200.00",
- "glAccount": {
- "key": "9",
- "id": "35024571",
- "name": "Bank of America A/c.",
- "href": "/objects/general-ledger/account/9"
}, - "dimensions": {
- "department": {
- "key": "11",
- "id": "EXPP",
- "name": "Expense Payable -----> Inactive",
- "href": "/objects/company-config/department/11"
}, - "location": {
- "key": "1",
- "id": "1",
- "name": "United States of America",
- "href": "/objects/company-config/location/1"
}, - "customer": {
- "key": null,
- "id": null,
- "name": null
}, - "vendor": {
- "key": null,
- "id": null,
- "name": null
}, - "employee": {
- "key": null,
- "id": null,
- "name": null
}, - "item": {
- "key": null,
- "id": null,
- "name": null
}, - "contract": {
- "key": null,
- "id": null,
- "name": null
}, - "project": {
- "key": null,
- "id": null,
- "name": null
}, - "class": {
- "key": null,
- "id": null,
- "name": null
}
}, - "documentId": "October_revenue_debit_transactions",
- "description": "October revenue debit transactions",
- "numberOfUnits": 2,
- "currency": {
- "baseCurrency": "USD",
- "txnCurrency": "USD",
- "exchangeRateDate": "2024-11-01",
- "exchangeRateTypeId": "Company Daily Rate",
- "exchangeRate": 0.78
}, - "reconciliationGroup": {
- "cleared": "matched",
- "clearingDate": "2024-11-01",
- "reconciliationDate": "2024-11-01"
}, - "accountingPeriod": 10,
- "allocation": {
- "id": "FA_ALLOC",
- "key": "21",
- "href": "/objects/general-ledger/txn-allocation-template/21"
}, - "interEntityTxnType": "p",
- "parent": {
- "id": "40",
- "key": "40",
- "href": "/objects/general-ledger/journal-entry-line/40"
}, - "audit": {
- "createdDateTime": "2025-03-17T10:07:00Z",
- "modifiedDateTime": "2025-03-17T10:07:00Z",
- "createdByUser": {
- "key": "159",
- "href": "/objects/company-config/user/159"
}, - "createdBy": "159",
- "modifiedByUser": {
- "key": "159",
- "href": "/objects/company-config/user/159"
}, - "modifiedBy": "159"
}, - "state": "posted",
- "isBillable": false,
- "isBilled": false,
- "taxEntries": [ ],
- "href": "/objects/general-ledger/journal-entry-line/465745"
}
], - "href": "/objects/general-ledger/journal-entry/30565"
}, - "ia::meta": {
- "totalCount": 1,
- "totalSuccess": 1,
- "totalError": 0
}
}
Updates an existing journal entry by setting field values. Any fields not provided remain unchanged.
key required | string System-assigned unique key for the journal entry. Example: 132 |
object Specifies the journal associated with this journal entry. | |||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||
description | string Description of the journal entry. Example: "Revenue entries" | ||||||||||||||||||||||||||||
postingDate | string <date> The date when the journal entry is recorded in the journal and posted to the general ledger for tracking and reporting. Example: "2023-04-01" | ||||||||||||||||||||||||||||
automaticReversalDate | string or null <date> The date a journal entry is automatically reversed in the general ledger. Example: "2023-04-04" | ||||||||||||||||||||||||||||
moduleName | string The Sage Intacct module from which the journal entry originates. Example: "2.GL" | ||||||||||||||||||||||||||||
referenceNumber | string Unique identifier assigned to the journal entry by the user for tracking and reconciliation. Example: "Recurr_GL_101" | ||||||||||||||||||||||||||||
object Supporting documents or files linked to the journal entry. | |||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||
object Specifies the base location for a multi-entity company. Required if multi-entity is enabled and entries do not balance by entity. | |||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||
object Tax-related details applied to the journal entry, such as tax codes, rates and exemptions. This field applies only to companies using the Taxes application to track VAT or GST. | |||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||
Array of objects >= 2 items A collection of line items within the journal entry. At least two line items are required per journal entry, one debit and one credit. | |||||||||||||||||||||||||||||
Array (>= 2 items)
|
OK
Bad Request
{- "key": "30565",
- "postingDate": "2024-12-11",
- "lines": [
- {
- "key": "465744",
- "txnType": "debit",
- "txnAmount": "100",
- "glAccount": {
- "id": "35024571"
}, - "dimensions": {
- "department": {
- "id": "11"
}, - "location": {
- "id": "1"
}
}, - "documentId": "Debit-USD-195",
- "currency": {
- "txnCurrency": "USD"
}
}, - {
- "key": "465745",
- "txnType": "credit",
- "txnAmount": "100",
- "glAccount": {
- "id": "35024571"
}, - "dimensions": {
- "department": {
- "id": "11"
}, - "location": {
- "id": "1"
}
}, - "documentId": "Credit-USD-196",
- "currency": {
- "txnCurrency": "USD"
}
}
]
}
{- "ia::result": {
- "key": "30565",
- "id": "30565",
- "href": "/objects/general-ledger/journal-entry/30565"
}, - "ia::meta": {
- "totalCount": 1,
- "totalSuccess": 1,
- "totalError": 0
}
}
Deletes a journal entry.
key required | string System-assigned unique key for the journal entry. Example: 132 |
No Content
Bad Request
{- "ia::result": {
- "ia::error": {
- "code": "invalidRequest",
- "message": "A POST request requires a payload",
- "errorId": "REST-1028",
- "additionalInfo": {
- "messageId": "IA.REQUEST_REQUIRES_A_PAYLOAD",
- "placeholders": {
- "OPERATION": "POST"
}, - "propertySet": { }
}, - "supportId": "Kxi78%7EZuyXBDEGVHD2UmO1phYXDQAAAAo"
}
}, - "ia::meta": {
- "totalCount": 1,
- "totalSuccess": 0,
- "totalError": 1
}
}
Submits a draft
or declined
journal entry for approval. When a journal entry is submitted, it's sent for approval. Draft journal entries are not sent for approval.
Pre-requisites:
key required | string System-assigned unique key for the journal entry to be submitted. Example: "132" |
OK
Bad Request
{- "key": "1"
}
{- "ia::result": {
- "key": "1",
- "id": "1",
- "state": "submitted",
- "href": "/objects/general-ledger/journal-entry/1"
}, - "ia::meta": {
- "totalCount": 1,
- "totalSuccess": 1,
- "totalError": 0
}
}
Approves a submitted
or partially approved
journal entry. When approved, the journal entry is posted to the General Ledger. A journal entry that requires approval from multiple approvers remains partially approved
until it has been approved by all approvers. If General Ledger Outlier Detection is enabled, the entry is evaluated for historical outliers.
Pre-requisites:
key required | string System-assigned unique key for the journal entry to be approved. Example: "132" |
notes | string Comments about the journal entry approval. Example: "Approved, ready for use." |
OK
Bad Request
{- "key": "30565",
- "notes": "Approved by the Accounting Manager"
}
{- "ia::result": {
- "key": "30565",
- "id": "30565",
- "state": "approved",
- "href": "/objects/general-ledger/journal-entry/30565"
}, - "ia::meta": {
- "totalCount": 1,
- "totalSuccess": 1,
- "totalError": 0
}
}
Declines a submitted
or partially approved
journal entry. When declined, the entry is returned to the submitter to make any changes and resubmit. The approver can also decline the entry, edit, and then approve it. In this case, the journal entry remains partially approved
, until it has been approved by all approvers.
Pre-requisites:
key required | string System-assigned unique key for the journal entry to be declined. Example: "132" |
notes | string Comments about the journal entry decline. Example: "Declined, missing information." |
OK
Bad Request
{- "key": "30565",
- "notes": "Declined by the Accounting Manager"
}
{- "ia::result": {
- "key": "30565",
- "id": "30565",
- "state": "declined",
- "href": "/objects/general-ledger/journal-entry/30565"
}, - "ia::meta": {
- "totalCount": 1,
- "totalSuccess": 1,
- "totalError": 0
}
}
Recalls a submitted
journal entry that is unapproved. You can recall a journal entry as long as the journal entry hasn’t been approved.
You can only recall an entry if:
key required | string System-assigned unique key for the journal entry to be recalled. Example: "132" |
OK
Bad Request
{- "key": "30565"
}
{- "ia::result": {
- "key": "30565",
- "id": "30565",
- "state": "draft",
- "href": "/objects/general-ledger/journal-entry/30565"
}, - "ia::meta": {
- "totalCount": 1,
- "totalSuccess": 1,
- "totalError": 0
}
}
Reverses a journal entry that has been posted
to the general ledger. You can reverse any journal entry that hasn't already been reversed, and which is in an open period. You can reverse statistical transactions, adjusting General Ledger transactions, and adjusting statistical transactions in the same way. After you reverse a journal entry, you cannot undo the reversal. However, you can create another journal entry to replace it.
key required | string System-assigned unique key for the journal entry to be reversed. Example: "132" |
reverseDate required | string <date> Date on which the journal entry should be reversed, must be later than Example: "2023-04-04" |
OK
Bad Request
{- "key": "30565",
- "reverseDate": "2024-07-02"
}
{- "ia::result": {
- "key": "30565",
- "id": "30565",
- "state": "reversed",
- "href": "/objects/general-ledger/journal-entry/30565"
}, - "ia::meta": {
- "totalCount": 1,
- "totalSuccess": 1,
- "totalError": 0
}
}
Reclassifies a journal entry that has been posted
to the general ledger. In the general ledger, reclassifying enables you to make certain changes to approved and posted journal entries. For example, you might want to add a reference number or change the department, location, or other dimension.
You can reclassify general ledger journal entries as long as:
key required | string System-assigned unique key for the journal entry to be reclassified. Example: "132" | ||||||||||||||||||||||||||||
id | string Unique identifier of the journal entry, same as the Example: "132" | ||||||||||||||||||||||||||||
description | string Description of the journal entry. Example: "Revenue entries" | ||||||||||||||||||||||||||||
referenceNumber | string Reference for the journal entry. Example: "Recurr_GL_101" | ||||||||||||||||||||||||||||
object Supporting documents or files linked to the journal entry. | |||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||
state | string Default: "posted" State of the journal entry being reclassified. Example: "posted" | ||||||||||||||||||||||||||||
Array of objects Journal entry lines included in the journal entry. At least two lines are required, one debit and one credit. | |||||||||||||||||||||||||||||
Array
|
OK
Bad Request
{- "key": "30565",
- "postingDate": "2024-12-11",
- "state": "posted",
- "lines": [
- {
- "key": "465744",
- "txnType": "debit",
- "txnAmount": "100",
- "glAccount": {
- "id": "35024571"
}, - "dimensions": {
- "department": {
- "id": "11"
}, - "location": {
- "id": "1"
}
}, - "documentId": "Debit-USD-195",
- "currency": {
- "txnCurrency": "USD"
}
}, - {
- "key": "465745",
- "txnType": "credit",
- "txnAmount": "100",
- "glAccount": {
- "id": "35024571"
}, - "dimensions": {
- "department": {
- "id": "11"
}, - "location": {
- "id": "1"
}
}, - "documentId": "Credit-USD-196",
- "currency": {
- "txnCurrency": "USD"
}
}
]
}
{- "ia::result": {
- "key": "30565",
- "id": "30565",
- "state": "posted",
- "href": "/objects/general-ledger/journal-entry/30565"
}, - "ia::meta": {
- "totalCount": 1,
- "totalSuccess": 1,
- "totalError": 0
}
}
Queries an object for filtered data.
object | string Object type to query, in the form Example: "general-ledger/journal-entry" | ||||||||
fields | Array of strings List of fields to include in the response. Can be any combination of these:
Example: ["key","id","max:vendor.creditLimit"] | ||||||||
Array of equal (object) or not equal (object) or less than (object) or (less than or equal (object)) or greater than (object) or (greater than or equal (object)) or in (object) or not in (object) or between (object) or not between (object) or contains (object) or does not contain (object) or has (object) or starts with (object) or does not start with (object) or ends with (object) or does not end with (object) Filter conditions to select the objects to return based on their field values. You use operators and conditions to build your filter, such as Example: [{"$eq":{"status":"active"}},{"$gt":{"totalDue":"1000"}},{"$contains":{"name":"Acme"}}] | |||||||||
Array Any of: Field value must be equal to this specified value. For date fields, you can use these macro values that are relative to the current date or the
These are most useful for queries that you want to save and use repeatedly, such as for views or reports. Just change the For example,
| |||||||||
filterExpression | string Default: "and" Logical operators to apply when there are multiple filter conditions. The conditions in the Shortcuts:
Example: "(1 and 2) or 3" | ||||||||
| |||||||||
Array of objects Set the order of the results by specifying field names to sort by and whether they should be in ascending or descending order. Example: [{"totalDue":"asc"},{"lastPaymentMadeDate":"desc"}] | |||||||||
Array
| |||||||||
start | integer First record of the result set to include in the response. Example: 1 | ||||||||
size | integer Number of records to include in the result set, 4000 maximum. Example: 100 |
OK
Bad Request
{- "object": "general-ledger/journal-entry",
- "filters": [
- {
- "$eq": {
- "journalSymbol": "AP"
}
}, - {
- "$between": {
- "postingDate": [
- "2022-01-01",
- "2022-04-30"
]
}
}
], - "fields": [
- "key",
- "id",
- "href"
], - "orderBy": [
- {
- "postingDate": "asc"
}
]
}
{- "ia::result": [
- {
- "key": "17",
- "id": "17",
- "href": "/objects/general-ledger/journal-entry/17",
- "postingDate": "2022-01-31"
}, - {
- "key": "18",
- "id": "18",
- "href": "/objects/general-ledger/journal-entry/18",
- "postingDate": "2022-02-28"
}, - {
- "key": "20",
- "id": "20",
- "href": "/objects/general-ledger/journal-entry/20",
- "postingDate": "2022-03-31"
}
], - "ia::meta": {
- "totalCount": 3,
- "start": 1,
- "pageSize": 100,
- "next": null,
- "previous": null
}
}