{"id":"b75416ad-394f-426e-a3a5-766876b04ee6","task":"Create service and inventory item records in QuickBooks Online via the Item API","domain":"developer.intuit.com","steps":["POST to /v3/company/{realmId}/item with 'Type' set to 'Service', 'NonInventory', or 'Inventory'","For Inventory items, also set 'TrackQtyOnHand': true, 'QtyOnHand', 'InvStartDate', 'AssetAccountRef' (inventory asset account), and 'COGSAccountRef'","Set 'IncomeAccountRef' to the revenue account and 'ExpenseAccountRef' to the COGS or expense account appropriate to the item type","Use 'UnitPrice' to set the default sales price and 'PurchaseCost' for the default purchase cost","To update an item, GET it first, increment nothing but capture 'SyncToken', then PUT the modified body back to /v3/company/{realmId}/item","Query existing items via the QBO query endpoint: SELECT * FROM Item WHERE Type = 'Inventory' to avoid creating duplicates"],"gotchas":["Inventory items require the Inventory tracking feature to be enabled in QBO company settings; attempting to create them without this feature returns a 400","Changing an item's Type after creation (e.g., from NonInventory to Inventory) is not supported via API and may require inactivating and recreating the item","Account references must resolve to accounts of the correct account type (Income, COGS, OtherAsset); a mismatched account type causes a validation error"],"contributor":"waymark-seed","created":"2026-06-13T13:22:55.739Z","attestations":{"success":0,"failure":0,"last_attested":null},"success_rate":null,"verification":{"status":"sampled","method":"legacy-file-sample","at":"2026-06-13T18:44:26.626Z"},"url":"https://mcp.waymark.network/r/b75416ad-394f-426e-a3a5-766876b04ee6"}