v48

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

Update an inventory adjustment

Updates an existing inventory adjustment.

NOTE: If you include lines, QuickBooks Desktop replaces that line list with the array you send, so include unchanged lines you want to keep and use id: "-1" for new lines.

post/quickbooks-desktop/inventory-adjustments/{id}

Path parameters

idstring required

The QuickBooks-assigned unique identifier of the inventory adjustment to update.

Example:123ABC-1234567890

The QuickBooks-assigned unique identifier of the inventory adjustment to update.

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

revisionNumberstring required

The current QuickBooks-assigned revision number of the inventory adjustment object you are updating, which you can get by fetching the object first. Provide the most recent revisionNumber to ensure you're working with the latest data; otherwise, the update will return an error.

accountIdstring

The account to which this inventory adjustment is posted for tracking inventory value changes.

inventorySiteIdstring

The site location where inventory for the item associated with this inventory adjustment is stored.

transactionDatestring date

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

refNumberstring

The case-sensitive user-defined reference number for this inventory adjustment, 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.

Maximum length: 11 characters.

customerIdstring

The customer or customer-job associated with this inventory adjustment.

classIdstring

The inventory adjustment's class. Classes can be used to categorize objects into meaningful segments, such as department, location, or type of work. In QuickBooks, class tracking is off by default. A class defined here is automatically used in this inventory adjustment's line items unless overridden at the line item level.

memostring

A memo or note for this inventory adjustment.

Example request

{
  "revisionNumber": "1721172183",
  "accountId": "80000001-1234567890",
  "inventorySiteId": "80000001-1234567890",
  "transactionDate": "2024-10-01",
  "refNumber": "INVADJ-1234",
  "customerId": "80000001-1234567890",
  "classId": "80000001-1234567890",
  "memo": "Adjusted quantity due to physical count discrepancy",
  "lines": [
    {
      "id": "456DEF-1234567890",
      "itemId": "80000001-1234567890",
      "serialNumber": "SN1234567890",
      "lotNumber": "LOT2023-001",
      "adjustCount": 2,
      "expirationDate": "2025-12-31",
      "inventorySiteLocationId": "80000001-1234567890",
      "quantityDifference": 5,
      "valueDifference": 7
    }
  ]
}

Response

Returns the updated inventory adjustment.

idstring required

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

objectType'qbd_inventory_adjustment' required

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

createdAtstring required

The date and time when this inventory adjustment 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 inventory adjustment 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 inventory adjustment 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 inventory adjustment, in ISO 8601 format (YYYY-MM-DD).

refNumberstring nullable required

The case-sensitive user-defined reference number for this inventory adjustment, 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.

memostring nullable required

A memo or note for this inventory adjustment.

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_inventory_adjustment",
  "createdAt": "2025-01-01T12:34:56+00:00",
  "updatedAt": "2025-02-01T12:34:56+00:00",
  "revisionNumber": "1721172183",
  "account": {
    "id": "80000001-1234567890",
    "fullName": "Inventory Shrinkage"
  },
  "inventorySite": {
    "id": "80000001-1234567890",
    "fullName": "Main Warehouse"
  },
  "transactionDate": "2024-10-01",
  "refNumber": "INVADJ-1234",
  "customer": {
    "id": "80000001-1234567890",
    "fullName": "Acme Corporation"
  },
  "class": {
    "id": "80000001-1234567890",
    "fullName": "Inventory Adjustment"
  },
  "memo": "Adjusted quantity due to physical count discrepancy",
  "externalId": "12345678-abcd-1234-abcd-1234567890ab",
  "lines": [
    {
      "id": "456DEF-1234567890",
      "objectType": "qbd_inventory_adjustment_line",
      "item": {
        "id": "80000001-1234567890",
        "fullName": "Widget A"
      },
      "serialNumber": "SN1234567890",
      "serialNumberAction": "added",
      "lotNumber": "LOT2023-001",
      "expirationDate": "2025-12-31",
      "inventorySiteLocation": {
        "id": "80000001-1234567890",
        "fullName": "Aisle 3, Shelf B"
      },
      "quantityDifference": 5,
      "valueDifference": 7
    }
  ],
  "customFields": [
    {
      "ownerId": "0",
      "name": "Customer Rating",
      "type": "string_1024_type",
      "value": "Premium"
    }
  ]
}