POST
/
quickbooks-desktop
/
journal-entries
import Conductor from 'conductor-node';

const client = new Conductor({
  apiKey: process.env['CONDUCTOR_SECRET_KEY'], // This is the default and can be omitted
});

async function main() {
  const journalEntry = await client.qbd.journalEntries.create({
    transactionDate: '2019-12-27',
    conductorEndUserId: 'end_usr_1234567abcdefg',
  });

  console.log(journalEntry.id);
}

main();
{
  "id": "123ABC-1234567890",
  "objectType": "qbd_journal_entry",
  "createdAt": "2021-10-01T17:34:56.000Z",
  "updatedAt": "2021-10-01T20:45:30.000Z",
  "revisionNumber": "1721172183",
  "transactionDate": "2021-10-01T00:00:00.000Z",
  "refNumber": "JE-1234",
  "isAdjustment": false,
  "isHomeCurrencyAdjustment": false,
  "areAmountsEnteredInHomeCurrency": false,
  "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"
    }
  ]
}

Authorizations

Authorization
string
header
required

Your Conductor secret key using Bearer auth (e.g., "Authorization: Bearer {{YOUR_SECRET_KEY}}").

Headers

Conductor-End-User-Id
string
required

The ID of the EndUser to receive this request (e.g., "Conductor-End-User-Id: {{END_USER_ID}}").

Body

application/json
transactionDate
string
required

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

refNumber
string

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).

isAdjustment
boolean

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.

isHomeCurrencyAdjustment
boolean

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.

areAmountsEnteredInHomeCurrency
boolean

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.

currencyId
string

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

exchangeRate
number

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).

externalId
string

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.

debitLines
object[]

The journal entry's debit lines.

creditLines
object[]

The journal entry's credit lines.

Response

200 - application/json
Returns the newly created journal entry.
id
string
required

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

objectType
string
required

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

Allowed value: "qbd_journal_entry"
createdAt
string
required

The date and time when this journal entry was created, in ISO 8601 format (YYYY-MM-DDThh:mm:ss±hh:mm). The time zone is the same as the user's time zone in QuickBooks.

updatedAt
string
required

The date and time when this journal entry was last updated, in ISO 8601 format (YYYY-MM-DDThh:mm:ss±hh:mm). The time zone is the same as the user's time zone in QuickBooks.

revisionNumber
string
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.

transactionDate
string
required

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

refNumber
string | null
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.

isAdjustment
boolean | null
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.

isHomeCurrencyAdjustment
boolean | null
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.

areAmountsEnteredInHomeCurrency
boolean | null
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.

currency
object | null
required

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

exchangeRate
number | null
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).

externalId
string | null
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.

debitLines
object[]
required

The journal entry's debit lines.

creditLines
object[]
required

The journal entry's credit lines.

customFields
object[]
required

The custom fields for the journal entry object, added as user-defined data extensions, not included in the standard QuickBooks object.