v48

latestOpenAPI 3.1.0raw.githubusercontent.com2026-07-262621423.8 MB

Create a journal entry

Creates a journal entry with balanced debit and credit lines. QuickBooks Desktop requires total debits to equal total credits, and any line that posts to Accounts Receivable or Accounts Payable must include the related customer or vendor reference.

post/quickbooks-desktop/journal-entries

Headers

Conductor-End-User-Idstring required

The ID of the End-User to receive this request.

Example:end_usr_1234567abcdefg

The ID of the End-User to receive this request.

Request body

transactionDatestring date required

The date of this journal entry, in ISO 8601 format (YYYY-MM-DD).

refNumberstring

The case-sensitive user-defined reference number for this journal entry, which can be used to identify the transaction in QuickBooks. This value is not required to be unique and can be arbitrarily changed by the QuickBooks user. When left blank in this create request, this field will be left blank in QuickBooks (i.e., it does not auto-increment).

Maximum length: 11 characters.

isAdjustmentboolean

Indicates whether this journal entry is an adjustment entry. When true, QuickBooks retains the original entry information to maintain an audit trail of the adjustments.

isHomeCurrencyAdjustmentboolean

Indicates whether this journal entry is an adjustment made in the company's home currency for a transaction that was originally recorded in a foreign currency.

areAmountsEnteredInHomeCurrencyboolean

Indicates whether the amounts in this journal entry were entered in the company's home currency rather than a foreign currency. When true, amounts are in the home currency regardless of the currency field.

currencyIdstring

The journal entry's currency. For built-in currencies, the name and code are standard ISO 4217 international values. For user-defined currencies, all values are editable.

exchangeRatenumber

The market exchange rate between this journal entry's currency and the home currency in QuickBooks at the time of this transaction. Represented as a decimal value (e.g., 1.2345 for 1 EUR = 1.2345 USD if USD is the home currency).

externalIdstring uuid

A globally unique identifier (GUID) you, the developer, can provide for tracking this object in your external system. This field is immutable and can only be set during object creation.

IMPORTANT: This field must be formatted as a valid GUID; otherwise, QuickBooks will return an error.

Example request

{
  "transactionDate": "2024-10-01",
  "refNumber": "JE-1234",
  "currencyId": "80000001-1234567890",
  "exchangeRate": 1.2345,
  "externalId": "12345678-abcd-1234-abcd-1234567890ab",
  "debitLines": [
    {
      "accountId": "80000001-1234567890",
      "amount": "1000.00",
      "memo": "Monthly utility bill settlement",
      "entityId": "80000001-1234567890",
      "classId": "80000001-1234567890",
      "salesTaxItemId": "80000001-1234567890",
      "billingStatus": "billable"
    }
  ],
  "creditLines": [
    {
      "accountId": "80000001-1234567890",
      "amount": "1000.00",
      "memo": "Allocated funds for office lease payment",
      "entityId": "80000001-1234567890",
      "classId": "80000001-1234567890",
      "salesTaxItemId": "80000001-1234567890",
      "billingStatus": "billable"
    }
  ]
}

Response

Returns the newly created journal entry.

idstring required

The unique identifier assigned by QuickBooks to this journal entry. This ID is unique across all transaction types.

objectType'qbd_journal_entry' required

The type of object. This value is always "qbd_journal_entry".

createdAtstring required

The date and time when this journal entry was created, in ISO 8601 format (YYYY-MM-DDThh:mm:ss±hh:mm), which QuickBooks Desktop interprets in the local timezone of the end-user's computer.

updatedAtstring required

The date and time when this journal entry was last updated, in ISO 8601 format (YYYY-MM-DDThh:mm:ss±hh:mm), which QuickBooks Desktop interprets in the local timezone of the end-user's computer.

revisionNumberstring required

The current QuickBooks-assigned revision number of this journal entry object, which changes each time the object is modified. When updating this object, you must provide the most recent revisionNumber to ensure you're working with the latest data; otherwise, the update will return an error.

transactionDatestring date required

The date of this journal entry, in ISO 8601 format (YYYY-MM-DD).

refNumberstring nullable required

The case-sensitive user-defined reference number for this journal entry, which can be used to identify the transaction in QuickBooks. This value is not required to be unique and can be arbitrarily changed by the QuickBooks user.

isAdjustmentboolean nullable required

Indicates whether this journal entry is an adjustment entry. When true, QuickBooks retains the original entry information to maintain an audit trail of the adjustments.

isHomeCurrencyAdjustmentboolean nullable required

Indicates whether this journal entry is an adjustment made in the company's home currency for a transaction that was originally recorded in a foreign currency.

areAmountsEnteredInHomeCurrencyboolean nullable required

Indicates whether the amounts in this journal entry were entered in the company's home currency rather than a foreign currency. When true, amounts are in the home currency regardless of the currency field.

exchangeRatenumber nullable required

The market exchange rate between this journal entry's currency and the home currency in QuickBooks at the time of this transaction. Represented as a decimal value (e.g., 1.2345 for 1 EUR = 1.2345 USD if USD is the home currency).

externalIdstring nullable required

A globally unique identifier (GUID) you, the developer, can provide for tracking this object in your external system. This field is immutable and can only be set during object creation.

Example response

{
  "id": "123ABC-1234567890",
  "objectType": "qbd_journal_entry",
  "createdAt": "2025-01-01T12:34:56+00:00",
  "updatedAt": "2025-02-01T12:34:56+00:00",
  "revisionNumber": "1721172183",
  "transactionDate": "2024-10-01",
  "refNumber": "JE-1234",
  "currency": {
    "id": "80000001-1234567890",
    "fullName": "USD"
  },
  "exchangeRate": 1.2345,
  "externalId": "12345678-abcd-1234-abcd-1234567890ab",
  "debitLines": [
    {
      "id": "456DEF-1234567890",
      "objectType": "qbd_journal_debit_line",
      "account": {
        "id": "80000001-1234567890",
        "fullName": "Checking"
      },
      "amount": "1000.00",
      "memo": "Monthly utility bill settlement",
      "entity": {
        "id": "80000001-1234567890",
        "fullName": "Acme Corporation"
      },
      "class": {
        "id": "80000001-1234567890",
        "fullName": "Facilities & Utilities"
      },
      "salesTaxItem": {
        "id": "80000001-1234567890",
        "fullName": "State Sales Tax"
      },
      "billingStatus": "billable"
    }
  ],
  "creditLines": [
    {
      "id": "456DEF-1234567890",
      "objectType": "qbd_journal_credit_line",
      "account": {
        "id": "80000001-1234567890",
        "fullName": "Accounts-Payable"
      },
      "amount": "1000.00",
      "memo": "Allocated funds for office lease payment",
      "entity": {
        "id": "80000001-1234567890",
        "fullName": "Acme Corporation"
      },
      "class": {
        "id": "80000001-1234567890",
        "fullName": "Administrative"
      },
      "salesTaxItem": {
        "id": "80000001-1234567890",
        "fullName": "State Sales Tax"
      },
      "billingStatus": "billable"
    }
  ],
  "customFields": [
    {
      "ownerId": "0",
      "name": "Customer Rating",
      "type": "string_1024_type",
      "value": "Premium"
    }
  ]
}