---
title: "Changes to Create a vendor"
method: POST
path: "/quickbooks-desktop/vendors"
---

# Changes to Create a vendor

`POST /quickbooks-desktop/vendors`

> Every recorded change to this operation, newest first.

## Timeline

Changed in 11 of 60 revisions.

- **2026-10-19** `1396ed78f0e1`: 21 warning
- **2026-07-02** `daabb801a173`: 1 breaking
- **2026-06-13** `f5e8ad815f89`: 5 info
- **2026-06-13** `2b44baac3231`: 1 warning
- **2026-06-03** `fa0d99aff54e`: 1 warning
- **2026-05-02** `1de07095c4b7`: 10 warning
- **2026-05-02** `0adc2851bb7f`: 4 warning
- **2026-04-20** `6c410926bc83`: 1 warning, 1 info
- **2026-04-20** `10d4e9ebd1df`: 65 breaking, 21 info
- **2026-04-20** `8e0b7df2044d`: 58 breaking, 8 warning, 69 info
- **2026-04-20** `5f832f695675`: 67 breaking, 21 info

## Changes

- **2026-10-19** `1396ed78f0e1`: 21 warning
  - the `accountNumber` request property's maxLength was set to `99`
  - the `additionalContacts/items/customContactFields/items/name` request property's maxLength was set to `40`
  - the `additionalContacts/items/customContactFields/items/value` request property's maxLength was set to `255`
  - the `additionalContacts/items/jobTitle` request property's maxLength was set to `41`
  - the `additionalContacts/items/salutation` request property's maxLength was set to `15`
  - the `additionalNotes/items/note` request property's maxLength was set to `4095`
  - the `alternateContact` request property's maxLength was set to `41`
  - the `billingAddress/country` request property's maxLength was set to `31`
  - the `billingAddress/note` request property's maxLength was set to `41`
  - the `ccEmail` request property's maxLength was set to `1023`
  - the `contact` request property's maxLength was set to `41`
  - the `customContactFields/items/name` request property's maxLength was set to `40`
  - the `customContactFields/items/value` request property's maxLength was set to `255`
  - the `email` request property's maxLength was set to `1023`
  - the `jobTitle` request property's maxLength was set to `41`
  - the `note` request property's maxLength was set to `4095`
  - the `salutation` request property's maxLength was set to `15`
  - the `shippingAddress/country` request property's maxLength was set to `31`
  - the `shippingAddress/note` request property's maxLength was set to `41`
  - the `taxIdentificationNumber` request property's maxLength was set to `15`
  - the `taxRegistrationNumber` request property's maxLength was set to `30`
- **2026-07-02** `daabb801a173`: 1 breaking
  - removed the enum value `annual` of the request property `reportingPeriod`
- **2026-06-13** `f5e8ad815f89`: 5 info
  - removed the `australia` enum value from the `salesTaxCountry/anyOf[subschema #1]/` response property for the response status `200`
  - removed the `canada` enum value from the `salesTaxCountry/anyOf[subschema #1]/` response property for the response status `200`
  - removed the `uk` enum value from the `salesTaxCountry/anyOf[subschema #1]/` response property for the response status `200`
  - removed the `united_arab_emirates` enum value from the `salesTaxCountry/anyOf[subschema #1]/` response property for the response status `200`
  - removed the `us` enum value from the `salesTaxCountry/anyOf[subschema #1]/` response property for the response status `200`
- **2026-06-13** `2b44baac3231`: 1 warning
  - added the new `united_arab_emirates` enum value to the `salesTaxCountry/anyOf[subschema #1]/` response property for the response status `200`
- **2026-06-03** `fa0d99aff54e`: 1 warning
  - the `companyName` request property's maxLength was set to `41`
- **2026-05-02** `1de07095c4b7`: 10 warning
  - the `billingRateId` request property's maxLength was set to `36`
  - the `classId` request property's maxLength was set to `36`
  - the `currencyId` request property's maxLength was set to `36`
  - the `defaultExpenseAccountIds/items/` request property's maxLength was set to `36`
  - the `purchaseTaxAccountId` request property's maxLength was set to `36`
  - the `salesTaxAccountId` request property's maxLength was set to `36`
  - the `salesTaxCodeId` request property's maxLength was set to `36`
  - the `salesTaxReturnId` request property's maxLength was set to `36`
  - the `termsId` request property's maxLength was set to `36`
  - the `vendorTypeId` request property's maxLength was set to `36`
- **2026-05-02** `0adc2851bb7f`: 4 warning
  - the `alternatePhone` request property's maxLength was set to `21`
  - the `fax` request property's maxLength was set to `21`
  - the `nameOnCheck` request property's maxLength was set to `41`
  - the `phone` request property's maxLength was set to `21`
- **2026-04-20** `6c410926bc83`: 1 warning, 1 info
  - added the new `annual` enum value to the `reportingPeriod/anyOf[subschema #1]/` response property for the response status `200`
  - added the new `annual` enum value to the request property `reportingPeriod`
- **2026-04-20** `10d4e9ebd1df`: 65 breaking, 21 info
  - response property `accountNumber` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `additionalContacts/items/customContactFields/items/value` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `additionalContacts/items/jobTitle` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `additionalContacts/items/lastName` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `additionalContacts/items/middleName` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `additionalContacts/items/name` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `additionalContacts/items/salutation` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `additionalNotes/items/date` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `alternateContact` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `alternatePhone` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `balance` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `ccEmail` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `companyName` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `contact` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `creditLimit` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `customContactFields/items/value` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `defaultExpenseAccounts/items/fullName` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `defaultExpenseAccounts/items/id` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `email` 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 `fax` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `firstName` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `isCompoundingTax` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `isEligibleFor1099` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `isSalesTaxAgency` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `isTrackingPurchaseTax` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `isTrackingSalesTax` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `jobTitle` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `lastName` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `middleName` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `nameOnCheck` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `note` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `phone` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `reportingPeriod` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `salesTaxCountry` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `salutation` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `taxIdentificationNumber` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `taxRegistrationNumber` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - the `billingRate` response's property type changed from `object, null` to no type for status `200`
  - the `class` response's property type changed from `object, null` to no type for status `200`
  - …46 more
- **2026-04-20** `8e0b7df2044d`: 58 breaking, 8 warning, 69 info
  - the response property `accountNumber` became nullable for the status `200`
  - the response property `additionalContacts/items/customContactFields/items/value` became nullable for the status `200`
  - the response property `additionalContacts/items/jobTitle` became nullable for the status `200`
  - the response property `additionalContacts/items/lastName` became nullable for the status `200`
  - the response property `additionalContacts/items/middleName` became nullable for the status `200`
  - the response property `additionalContacts/items/name` became nullable for the status `200`
  - the response property `additionalContacts/items/salutation` became nullable for the status `200`
  - the response property `additionalNotes/items/date` became nullable for the status `200`
  - the response property `alternateContact` became nullable for the status `200`
  - the response property `alternatePhone` became nullable for the status `200`
  - the response property `balance` became nullable for the status `200`
  - the response property `billingRate` became nullable for the status `200`
  - the response property `ccEmail` became nullable for the status `200`
  - the response property `class` became nullable for the status `200`
  - the response property `companyName` became nullable for the status `200`
  - the response property `contact` became nullable for the status `200`
  - the response property `creditLimit` became nullable for the status `200`
  - the response property `currency` became nullable for the status `200`
  - the response property `customContactFields/items/value` became nullable for the status `200`
  - the response property `defaultExpenseAccounts/items/fullName` became nullable for the status `200`
  - the response property `defaultExpenseAccounts/items/id` became nullable for the status `200`
  - the response property `email` became nullable for the status `200`
  - the response property `externalId` became nullable for the status `200`
  - the response property `fax` became nullable for the status `200`
  - the response property `firstName` became nullable for the status `200`
  - the response property `isCompoundingTax` became nullable for the status `200`
  - the response property `isEligibleFor1099` became nullable for the status `200`
  - the response property `isSalesTaxAgency` became nullable for the status `200`
  - the response property `isTrackingPurchaseTax` became nullable for the status `200`
  - the response property `isTrackingSalesTax` became nullable for the status `200`
  - the response property `jobTitle` became nullable for the status `200`
  - the response property `lastName` became nullable for the status `200`
  - the response property `middleName` became nullable for the status `200`
  - the response property `nameOnCheck` became nullable for the status `200`
  - the response property `note` became nullable for the status `200`
  - the response property `phone` became nullable for the status `200`
  - the response property `purchaseTaxAccount` became nullable for the status `200`
  - the response property `reportingPeriod` became nullable for the status `200`
  - the response property `salesTaxAccount` became nullable for the status `200`
  - the response property `salesTaxCode` became nullable for the status `200`
  - …95 more
- **2026-04-20** `5f832f695675`: 67 breaking, 21 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 `openingBalanceDate`
  - added the pattern `^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$` to the request property `externalId`
  - response property `accountNumber` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `additionalContacts/items/customContactFields/items/value` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `additionalContacts/items/jobTitle` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `additionalContacts/items/lastName` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `additionalContacts/items/middleName` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `additionalContacts/items/name` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `additionalContacts/items/salutation` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `additionalNotes/items/date` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `alternateContact` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `alternatePhone` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `balance` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `ccEmail` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `companyName` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `contact` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `creditLimit` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `customContactFields/items/value` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `defaultExpenseAccounts/items/fullName` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `defaultExpenseAccounts/items/id` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `email` 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 `fax` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `firstName` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `isCompoundingTax` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `isEligibleFor1099` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `isSalesTaxAgency` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `isTrackingPurchaseTax` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `isTrackingSalesTax` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `jobTitle` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `lastName` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `middleName` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `nameOnCheck` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `note` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `phone` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `reportingPeriod` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `salesTaxCountry` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `salutation` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `taxIdentificationNumber` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `taxRegistrationNumber` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - …48 more

---

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