---
title: "Changes to Update a bill"
method: POST
path: "/quickbooks-desktop/bills/{id}"
---

# Changes to Update a bill

`POST /quickbooks-desktop/bills/{id}`

> Every recorded change to this operation, newest first.

## Timeline

Changed in 8 of 60 revisions.

- **2026-10-19** `1396ed78f0e1`: 13 warning
- **2026-08-21** `8ee3502091a4`: 1 warning
- **2026-07-23** `3767bfad12f0`: 1 breaking
- **2026-05-02** `1de07095c4b7`: 34 warning
- **2026-05-02** `0adc2851bb7f`: 1 warning
- **2026-04-20** `10d4e9ebd1df`: 120 breaking, 44 info
- **2026-04-20** `8e0b7df2044d`: 94 breaking, 15 warning, 127 info
- **2026-04-20** `5f832f695675`: 124 breaking, 46 info

## Changes

- **2026-10-19** `1396ed78f0e1`: 13 warning
  - the `expenseLines/items/memo` request property's maxLength was set to `4095`
  - the `itemGroupLines/items/itemLines/items/description` request property's maxLength was set to `4095`
  - the `itemGroupLines/items/itemLines/items/lotNumber` request property's maxLength was set to `40`
  - the `itemGroupLines/items/itemLines/items/serialNumber` request property's maxLength was set to `4095`
  - the `itemGroupLines/items/itemLines/items/unitOfMeasure` request property's maxLength was set to `31`
  - the `itemGroupLines/items/unitOfMeasure` request property's maxLength was set to `31`
  - the `itemLines/items/description` request property's maxLength was set to `4095`
  - the `itemLines/items/lotNumber` request property's maxLength was set to `40`
  - the `itemLines/items/serialNumber` request property's maxLength was set to `4095`
  - the `itemLines/items/unitOfMeasure` request property's maxLength was set to `31`
  - the `memo` request property's maxLength was set to `4095`
  - the `vendorAddress/country` request property's maxLength was set to `31`
  - the `vendorAddress/note` request property's maxLength was set to `41`
- **2026-08-21** `8ee3502091a4`: 1 warning
  - added the new `transfer_inventory` enum value to the `linkedTransactions/items/transactionType` response property for the response status `200`
- **2026-07-23** `3767bfad12f0`: 1 breaking
  - response property `expenseLines/items/id` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
- **2026-05-02** `1de07095c4b7`: 34 warning
  - for the `path` request parameter `id`, the maxLength was set to `36`
  - the `expenseLines/items/accountId` request property's maxLength was set to `36`
  - the `expenseLines/items/classId` request property's maxLength was set to `36`
  - the `expenseLines/items/id` request property's maxLength was set to `36`
  - the `expenseLines/items/payeeId` request property's maxLength was set to `36`
  - the `expenseLines/items/salesRepresentativeId` request property's maxLength was set to `36`
  - the `expenseLines/items/salesTaxCodeId` request property's maxLength was set to `36`
  - the `itemGroupLines/items/id` request property's maxLength was set to `36`
  - the `itemGroupLines/items/itemGroupId` request property's maxLength was set to `36`
  - the `itemGroupLines/items/itemLines/items/classId` request property's maxLength was set to `36`
  - the `itemGroupLines/items/itemLines/items/customerId` request property's maxLength was set to `36`
  - the `itemGroupLines/items/itemLines/items/id` request property's maxLength was set to `36`
  - the `itemGroupLines/items/itemLines/items/inventorySiteId` request property's maxLength was set to `36`
  - the `itemGroupLines/items/itemLines/items/inventorySiteLocationId` request property's maxLength was set to `36`
  - the `itemGroupLines/items/itemLines/items/itemId` request property's maxLength was set to `36`
  - the `itemGroupLines/items/itemLines/items/overrideItemAccountId` request property's maxLength was set to `36`
  - the `itemGroupLines/items/itemLines/items/overrideUnitOfMeasureSetId` request property's maxLength was set to `36`
  - the `itemGroupLines/items/itemLines/items/salesRepresentativeId` request property's maxLength was set to `36`
  - the `itemGroupLines/items/itemLines/items/salesTaxCodeId` request property's maxLength was set to `36`
  - the `itemGroupLines/items/overrideUnitOfMeasureSetId` request property's maxLength was set to `36`
  - the `itemLines/items/classId` request property's maxLength was set to `36`
  - the `itemLines/items/customerId` request property's maxLength was set to `36`
  - the `itemLines/items/id` request property's maxLength was set to `36`
  - the `itemLines/items/inventorySiteId` request property's maxLength was set to `36`
  - the `itemLines/items/inventorySiteLocationId` request property's maxLength was set to `36`
  - the `itemLines/items/itemId` request property's maxLength was set to `36`
  - the `itemLines/items/overrideItemAccountId` request property's maxLength was set to `36`
  - the `itemLines/items/overrideUnitOfMeasureSetId` request property's maxLength was set to `36`
  - the `itemLines/items/salesRepresentativeId` request property's maxLength was set to `36`
  - the `itemLines/items/salesTaxCodeId` request property's maxLength was set to `36`
  - the `payablesAccountId` request property's maxLength was set to `36`
  - the `salesTaxCodeId` request property's maxLength was set to `36`
  - the `termsId` request property's maxLength was set to `36`
  - the `vendorId` request property's maxLength was set to `36`
- **2026-05-02** `0adc2851bb7f`: 1 warning
  - the `refNumber` request property's maxLength was set to `20`
- **2026-04-20** `10d4e9ebd1df`: 120 breaking, 44 info
  - response property `amountDue` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `amountDueInHomeCurrency` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `dueDate` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `exchangeRate` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `expenseLines/items/amount` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `expenseLines/items/billingStatus` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `expenseLines/items/memo` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `externalId` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `isPaid` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `isPending` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `itemGroupLines/items/description` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `itemGroupLines/items/itemGroup/fullName` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `itemGroupLines/items/itemGroup/id` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `itemGroupLines/items/itemLines/items/amount` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `itemGroupLines/items/itemLines/items/billingStatus` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `itemGroupLines/items/itemLines/items/cost` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `itemGroupLines/items/itemLines/items/description` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `itemGroupLines/items/itemLines/items/expirationDate` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `itemGroupLines/items/itemLines/items/lotNumber` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `itemGroupLines/items/itemLines/items/quantity` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `itemGroupLines/items/itemLines/items/serialNumber` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `itemGroupLines/items/itemLines/items/unitOfMeasure` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `itemGroupLines/items/quantity` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `itemGroupLines/items/unitOfMeasure` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `itemLines/items/amount` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `itemLines/items/billingStatus` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `itemLines/items/cost` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `itemLines/items/description` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `itemLines/items/expirationDate` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `itemLines/items/lotNumber` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `itemLines/items/quantity` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `itemLines/items/serialNumber` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `itemLines/items/unitOfMeasure` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `linkedTransactions/items/amount` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `linkedTransactions/items/linkType` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `linkedTransactions/items/refNumber` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `memo` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `openAmount` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `refNumber` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - the `currency` response's property type changed from `object, null` to no type for status `200`
  - …124 more
- **2026-04-20** `8e0b7df2044d`: 94 breaking, 15 warning, 127 info
  - the response property `amountDue` became nullable for the status `200`
  - the response property `amountDueInHomeCurrency` became nullable for the status `200`
  - the response property `currency` became nullable for the status `200`
  - the response property `dueDate` became nullable for the status `200`
  - the response property `exchangeRate` became nullable for the status `200`
  - the response property `expenseLines/items/account` became nullable for the status `200`
  - the response property `expenseLines/items/amount` became nullable for the status `200`
  - the response property `expenseLines/items/billingStatus` became nullable for the status `200`
  - the response property `expenseLines/items/class` became nullable for the status `200`
  - the response property `expenseLines/items/memo` became nullable for the status `200`
  - the response property `expenseLines/items/payee` became nullable for the status `200`
  - the response property `expenseLines/items/salesRepresentative` became nullable for the status `200`
  - the response property `expenseLines/items/salesTaxCode` became nullable for the status `200`
  - the response property `externalId` became nullable for the status `200`
  - the response property `isPaid` became nullable for the status `200`
  - the response property `isPending` became nullable for the status `200`
  - the response property `itemGroupLines/items/description` became nullable for the status `200`
  - the response property `itemGroupLines/items/itemGroup/fullName` became nullable for the status `200`
  - the response property `itemGroupLines/items/itemGroup/id` became nullable for the status `200`
  - the response property `itemGroupLines/items/itemLines/items/amount` became nullable for the status `200`
  - the response property `itemGroupLines/items/itemLines/items/billingStatus` became nullable for the status `200`
  - the response property `itemGroupLines/items/itemLines/items/class` became nullable for the status `200`
  - the response property `itemGroupLines/items/itemLines/items/cost` became nullable for the status `200`
  - the response property `itemGroupLines/items/itemLines/items/customer` became nullable for the status `200`
  - the response property `itemGroupLines/items/itemLines/items/description` became nullable for the status `200`
  - the response property `itemGroupLines/items/itemLines/items/expirationDate` became nullable for the status `200`
  - the response property `itemGroupLines/items/itemLines/items/inventorySite` became nullable for the status `200`
  - the response property `itemGroupLines/items/itemLines/items/inventorySiteLocation` became nullable for the status `200`
  - the response property `itemGroupLines/items/itemLines/items/item` became nullable for the status `200`
  - the response property `itemGroupLines/items/itemLines/items/lotNumber` became nullable for the status `200`
  - the response property `itemGroupLines/items/itemLines/items/overrideUnitOfMeasureSet` became nullable for the status `200`
  - the response property `itemGroupLines/items/itemLines/items/quantity` became nullable for the status `200`
  - the response property `itemGroupLines/items/itemLines/items/salesRepresentative` became nullable for the status `200`
  - the response property `itemGroupLines/items/itemLines/items/salesTaxCode` became nullable for the status `200`
  - the response property `itemGroupLines/items/itemLines/items/serialNumber` became nullable for the status `200`
  - the response property `itemGroupLines/items/itemLines/items/unitOfMeasure` became nullable for the status `200`
  - the response property `itemGroupLines/items/overrideUnitOfMeasureSet` became nullable for the status `200`
  - the response property `itemGroupLines/items/quantity` became nullable for the status `200`
  - the response property `itemGroupLines/items/unitOfMeasure` became nullable for the status `200`
  - the response property `itemLines/items/amount` became nullable for the status `200`
  - …196 more
- **2026-04-20** `5f832f695675`: 124 breaking, 46 info
  - added the pattern `^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))$` to the request property `dueDate`
  - added the pattern `^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))$` to the request property `itemGroupLines/items/itemLines/items/expirationDate`
  - added the pattern `^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))$` to the request property `itemLines/items/expirationDate`
  - added the pattern `^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))$` to the request property `transactionDate`
  - response property `amountDue` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `amountDueInHomeCurrency` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `dueDate` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `exchangeRate` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `expenseLines/items/amount` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `expenseLines/items/billingStatus` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `expenseLines/items/memo` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `externalId` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `isPaid` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `isPending` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `itemGroupLines/items/description` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `itemGroupLines/items/itemGroup/fullName` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `itemGroupLines/items/itemGroup/id` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `itemGroupLines/items/itemLines/items/amount` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `itemGroupLines/items/itemLines/items/billingStatus` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `itemGroupLines/items/itemLines/items/cost` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `itemGroupLines/items/itemLines/items/description` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `itemGroupLines/items/itemLines/items/expirationDate` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `itemGroupLines/items/itemLines/items/lotNumber` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `itemGroupLines/items/itemLines/items/quantity` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `itemGroupLines/items/itemLines/items/serialNumber` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `itemGroupLines/items/itemLines/items/unitOfMeasure` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `itemGroupLines/items/quantity` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `itemGroupLines/items/unitOfMeasure` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `itemLines/items/amount` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `itemLines/items/billingStatus` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `itemLines/items/cost` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `itemLines/items/description` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `itemLines/items/expirationDate` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `itemLines/items/lotNumber` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `itemLines/items/quantity` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `itemLines/items/serialNumber` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `itemLines/items/unitOfMeasure` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `linkedTransactions/items/amount` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `linkedTransactions/items/linkType` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `linkedTransactions/items/refNumber` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - …130 more

---

[Operation](https://skmtc.dev/conductor-is/apis/conductor-api/docs/quickbooks-desktop/bills/:id/post.md) - [API](https://skmtc.dev/conductor-is/apis/conductor-api.md) - [Page](https://skmtc.dev/conductor-is/apis/conductor-api/changes/quickbooks-desktop/bills/:id/post)
