> ## Documentation Index
> Fetch the complete documentation index at: https://docs.conductor.is/llms.txt
> Use this file to discover all available pages before exploring further.

# Update a vendor

> Updates an existing vendor.



## OpenAPI

````yaml POST /quickbooks-desktop/vendors/{id}
openapi: 3.1.0
info:
  title: Conductor API
  version: 0.0.1
servers:
  - url: https://api.conductor.is/v1
security:
  - BearerAuth: []
paths:
  /quickbooks-desktop/vendors/{id}:
    post:
      summary: Update a vendor
      description: Updates an existing vendor.
      parameters:
        - in: header
          name: Conductor-End-User-Id
          schema:
            type: string
            description: The ID of the End-User to receive this request.
            example: end_usr_1234567abcdefg
            x-stainless-naming:
              typescript:
                method_argument: conductorEndUserId
              mcp:
                method_argument: conductorEndUserId
          required: true
          description: The ID of the End-User to receive this request.
        - in: path
          name: id
          schema:
            type: string
            maxLength: 36
            description: The QuickBooks-assigned unique identifier of the vendor to update.
            example: 80000001-1234567890
          required: true
          description: The QuickBooks-assigned unique identifier of the vendor to update.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                revisionNumber:
                  type: string
                  description: >-
                    The current QuickBooks-assigned revision number of the
                    vendor 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.
                  example: '1721172183'
                name:
                  type: string
                  maxLength: 41
                  description: >-
                    The case-insensitive unique name of this vendor, unique
                    across all vendors.


                    **NOTE**: Vendors do not have a `fullName` field because
                    they are not hierarchical objects, which is why `name` is
                    unique for them but not for objects that have parents.


                    Maximum length: 41 characters.
                  example: Acme Supplies Inc.
                isActive:
                  type: boolean
                  description: >-
                    Indicates whether this vendor is active. Inactive objects
                    are typically hidden from views and reports in QuickBooks.
                    Defaults to `true`.
                  example: true
                classId:
                  description: >-
                    The vendor'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.
                  example: 80000001-1234567890
                  type: string
                  maxLength: 36
                companyName:
                  description: >-
                    The name of the company associated with this vendor. This
                    name is used on invoices, checks, and other forms.


                    Maximum length: 41 characters.
                  example: Acme Corporation
                  type: string
                  maxLength: 41
                salutation:
                  description: >-
                    The formal salutation title that precedes the name of the
                    contact person for this vendor, such as "Mr.", "Ms.", or
                    "Dr.".
                  example: Dr.
                  type: string
                firstName:
                  description: |-
                    The first name of the contact person for this vendor.

                    Maximum length: 25 characters.
                  example: John
                  type: string
                  maxLength: 25
                middleName:
                  description: |-
                    The middle name of the contact person for this vendor.

                    Maximum length: 5 characters.
                  example: A.
                  type: string
                  maxLength: 5
                lastName:
                  description: |-
                    The last name of the contact person for this vendor.

                    Maximum length: 25 characters.
                  example: Doe
                  type: string
                  maxLength: 25
                jobTitle:
                  description: The job title of the contact person for this vendor.
                  example: Purchasing Manager
                  type: string
                billingAddress:
                  description: The vendor's billing address.
                  type: object
                  properties:
                    line1:
                      description: >-
                        The first line of the address (e.g., street, PO Box, or
                        company name).


                        Maximum length: 41 characters.
                      example: Conductor Labs Inc.
                      type: string
                      maxLength: 41
                    line2:
                      description: >-
                        The second line of the address, if needed (e.g.,
                        apartment, suite, unit, or building).


                        Maximum length: 41 characters.
                      example: 540 Market St.
                      type: string
                      maxLength: 41
                    line3:
                      description: |-
                        The third line of the address, if needed.

                        Maximum length: 41 characters.
                      example: Suite 100
                      type: string
                      maxLength: 41
                    line4:
                      description: |-
                        The fourth line of the address, if needed.

                        Maximum length: 41 characters.
                      example: ''
                      type: string
                      maxLength: 41
                    line5:
                      description: |-
                        The fifth line of the address, if needed.

                        Maximum length: 41 characters.
                      example: ''
                      type: string
                      maxLength: 41
                    city:
                      description: >-
                        The city, district, suburb, town, or village name of the
                        address.


                        Maximum length: 31 characters.
                      example: San Francisco
                      type: string
                      maxLength: 31
                    state:
                      description: >-
                        The state, county, province, or region name of the
                        address.


                        Maximum length: 21 characters.
                      example: CA
                      type: string
                      maxLength: 21
                    postalCode:
                      description: |-
                        The postal code or ZIP code of the address.

                        Maximum length: 13 characters.
                      example: '94110'
                      type: string
                      maxLength: 13
                    country:
                      description: The country name of the address.
                      example: United States
                      type: string
                    note:
                      description: >-
                        A note written at the bottom of the address in the form
                        in which it appears, such as the invoice form.
                      example: Conductor HQ
                      type: string
                  additionalProperties: false
                shippingAddress:
                  description: The vendor's shipping address.
                  type: object
                  properties:
                    line1:
                      description: >-
                        The first line of the address (e.g., street, PO Box, or
                        company name).


                        Maximum length: 41 characters.
                      example: Conductor Labs Inc.
                      type: string
                      maxLength: 41
                    line2:
                      description: >-
                        The second line of the address, if needed (e.g.,
                        apartment, suite, unit, or building).


                        Maximum length: 41 characters.
                      example: 540 Market St.
                      type: string
                      maxLength: 41
                    line3:
                      description: |-
                        The third line of the address, if needed.

                        Maximum length: 41 characters.
                      example: Suite 100
                      type: string
                      maxLength: 41
                    line4:
                      description: |-
                        The fourth line of the address, if needed.

                        Maximum length: 41 characters.
                      example: ''
                      type: string
                      maxLength: 41
                    line5:
                      description: |-
                        The fifth line of the address, if needed.

                        Maximum length: 41 characters.
                      example: ''
                      type: string
                      maxLength: 41
                    city:
                      description: >-
                        The city, district, suburb, town, or village name of the
                        address.


                        Maximum length: 31 characters.
                      example: San Francisco
                      type: string
                      maxLength: 31
                    state:
                      description: >-
                        The state, county, province, or region name of the
                        address.


                        Maximum length: 21 characters.
                      example: CA
                      type: string
                      maxLength: 21
                    postalCode:
                      description: |-
                        The postal code or ZIP code of the address.

                        Maximum length: 13 characters.
                      example: '94110'
                      type: string
                      maxLength: 13
                    country:
                      description: The country name of the address.
                      example: United States
                      type: string
                    note:
                      description: >-
                        A note written at the bottom of the address in the form
                        in which it appears, such as the invoice form.
                      example: Conductor HQ
                      type: string
                  additionalProperties: false
                phone:
                  description: |-
                    The vendor's primary telephone number.

                    Maximum length: 21 characters.
                  example: +1-555-123-4567
                  type: string
                  maxLength: 21
                alternatePhone:
                  description: |-
                    The vendor's alternate telephone number.

                    Maximum length: 21 characters.
                  example: +1-555-987-6543
                  type: string
                  maxLength: 21
                fax:
                  description: |-
                    The vendor's fax number.

                    Maximum length: 21 characters.
                  example: +1-555-555-1212
                  type: string
                  maxLength: 21
                email:
                  description: The vendor's email address.
                  example: vendor@example.com
                  type: string
                ccEmail:
                  description: >-
                    An email address to carbon copy (CC) on communications with
                    this vendor.
                  example: manager@example.com
                  type: string
                contact:
                  description: The name of the primary contact person for this vendor.
                  example: Jane Smith
                  type: string
                alternateContact:
                  description: The name of a alternate contact person for this vendor.
                  example: Bob Johnson
                  type: string
                customContactFields:
                  description: >-
                    Additional custom contact fields for this vendor, such as
                    phone numbers or email addresses.
                  minItems: 1
                  type: array
                  items:
                    type: object
                    properties:
                      name:
                        type: string
                        description: >-
                          The name of the contact field (e.g., "old address",
                          "secondary phone").
                        example: Main Phone
                      value:
                        type: string
                        description: The value of the contact field.
                        example: 555-123-4567
                    required:
                      - name
                      - value
                    additionalProperties: false
                additionalContacts:
                  description: Additional alternate contacts for this vendor.
                  minItems: 1
                  type: array
                  items:
                    type: object
                    properties:
                      id:
                        type: string
                        maxLength: 36
                        description: >-
                          The QuickBooks-assigned unique identifier of the
                          contact to update.
                        example: 80000001-1234567890
                      revisionNumber:
                        type: string
                        description: >-
                          The current QuickBooks-assigned revision number of the
                          contact 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.
                        example: '1721172183'
                      salutation:
                        description: >-
                          The contact's formal salutation title that precedes
                          their name, such as "Mr.", "Ms.", or "Dr.".
                        example: Dr.
                        type: string
                      firstName:
                        type: string
                        maxLength: 25
                        description: |-
                          The contact's first name.

                          Maximum length: 25 characters.
                        example: John
                      middleName:
                        description: |-
                          The contact's middle name.

                          Maximum length: 5 characters.
                        example: A.
                        type: string
                        maxLength: 5
                      lastName:
                        description: |-
                          The contact's last name.

                          Maximum length: 25 characters.
                        example: Doe
                        type: string
                        maxLength: 25
                      jobTitle:
                        description: The contact's job title.
                        example: Purchasing Manager
                        type: string
                      customContactFields:
                        description: >-
                          Additional custom contact fields for this contact,
                          such as phone numbers or email addresses.
                        minItems: 1
                        type: array
                        items:
                          type: object
                          properties:
                            name:
                              type: string
                              description: >-
                                The name of the contact field (e.g., "old
                                address", "secondary phone").
                              example: Main Phone
                            value:
                              type: string
                              description: The value of the contact field.
                              example: 555-123-4567
                          required:
                            - name
                            - value
                          additionalProperties: false
                    required:
                      - id
                      - revisionNumber
                    additionalProperties: false
                nameOnCheck:
                  description: >-
                    The vendor's name as it should appear on checks issued to
                    this vendor.


                    Maximum length: 41 characters.
                  example: Acme Supplies Ltd.
                  type: string
                  maxLength: 41
                accountNumber:
                  description: >-
                    The vendor's account number, which appears in the QuickBooks
                    chart of accounts, reports, and graphs.


                    Note that if the "Use Account Numbers" preference is turned
                    off in QuickBooks, the account number may not be visible in
                    the user interface, but it can still be set and retrieved
                    through the API.
                  example: '1010'
                  type: string
                note:
                  description: A note or comment about this vendor.
                  example: Preferred vendor for office supplies.
                  type: string
                additionalNotes:
                  description: Additional notes about this vendor.
                  minItems: 1
                  type: array
                  items:
                    type: object
                    properties:
                      id:
                        description: The ID of the note to update.
                        example: 1
                        type: number
                      note:
                        type: string
                        description: The text of this note.
                        example: This is a fun note.
                    required:
                      - id
                      - note
                    additionalProperties: false
                vendorTypeId:
                  description: >-
                    The vendor's type, used for categorizing vendors into
                    meaningful segments, such as industry or region.
                  example: 80000001-1234567890
                  type: string
                  maxLength: 36
                termsId:
                  description: >-
                    The vendor's payment terms, defining when payment is due and
                    any applicable discounts.
                  example: 80000001-1234567890
                  type: string
                  maxLength: 36
                creditLimit:
                  description: >-
                    The vendor's credit limit, represented as a decimal string.
                    This is the maximum amount of money that can be spent being
                    before billed by this vendor. If `null`, there is no credit
                    limit.
                  example: '5000.00'
                  type: string
                taxIdentificationNumber:
                  description: The vendor's tax identification number (e.g., EIN or SSN).
                  example: 12-3456789
                  type: string
                isEligibleFor1099:
                  description: >-
                    Indicates whether this vendor is eligible to receive a 1099
                    form for tax reporting purposes. When `true`, then the
                    fields `taxId` and `billingAddress` are required.
                  example: true
                  type: boolean
                billingRateId:
                  description: >-
                    The vendor's billing rate, used to override service item
                    rates in time tracking activities.
                  example: 80000001-1234567890
                  type: string
                  maxLength: 36
                salesTaxCodeId:
                  description: >-
                    The default sales-tax code for transactions with this
                    vendor, determining whether the transactions are taxable or
                    non-taxable. This can be overridden at the transaction or
                    transaction-line level.


                    Default codes include "Non" (non-taxable) and "Tax"
                    (taxable), but custom codes can also be created in
                    QuickBooks Desktop. If QuickBooks Desktop is not set up to
                    charge sales tax (via the "Do You Charge Sales Tax?"
                    preference), it assigns the default non-taxable sales-tax
                    code configured in the company file to all sales.
                  example: 80000001-1234567890
                  type: string
                  maxLength: 36
                salesTaxCountry:
                  description: >-
                    The country for which sales tax is collected for this
                    vendor.
                  example: us
                  type: string
                  enum:
                    - australia
                    - canada
                    - uk
                    - us
                isSalesTaxAgency:
                  description: Indicates whether this vendor is a sales tax agency.
                  example: false
                  type: boolean
                salesTaxReturnId:
                  description: >-
                    The vendor's sales tax return information, used for tracking
                    and reporting sales tax liabilities.
                  example: 80000001-1234567890
                  type: string
                  maxLength: 36
                taxRegistrationNumber:
                  description: >-
                    The vendor's tax registration number, for use in Canada or
                    the UK.
                  example: GB123456789
                  type: string
                reportingPeriod:
                  description: >-
                    The vendor's tax reporting period, for use in Canada or the
                    UK.
                  example: quarterly
                  type: string
                  enum:
                    - monthly
                    - quarterly
                isTrackingPurchaseTax:
                  description: >-
                    Indicates whether tax is tracked on purchases for this
                    vendor, for use in Canada or the UK.
                  example: true
                  type: boolean
                purchaseTaxAccountId:
                  description: >-
                    The account used for tracking taxes on purchases for this
                    vendor, for use in Canada or the UK.
                  example: 80000001-1234567890
                  type: string
                  maxLength: 36
                isTrackingSalesTax:
                  description: >-
                    Indicates whether tax is tracked on sales for this vendor,
                    for use in Canada or the UK.
                  example: true
                  type: boolean
                salesTaxAccountId:
                  description: >-
                    The account used for tracking taxes on sales for this
                    vendor, for use in Canada or the UK.
                  example: 80000001-1234567890
                  type: string
                  maxLength: 36
                isCompoundingTax:
                  description: >-
                    Indicates whether tax is charged on top of tax for this
                    vendor, for use in Canada or the UK.
                  example: false
                  type: boolean
                defaultExpenseAccountIds:
                  description: >-
                    The expense accounts to prefill when entering bills for this
                    vendor.
                  example:
                    - 80000001-1234567890
                  minItems: 1
                  type: array
                  items:
                    type: string
                    maxLength: 36
                currencyId:
                  description: >-
                    The vendor's currency. For built-in currencies, the name and
                    code are standard ISO 4217 international values. For
                    user-defined currencies, all values are editable.
                  example: 80000001-1234567890
                  type: string
                  maxLength: 36
              required:
                - revisionNumber
              additionalProperties: false
      responses:
        '200':
          description: Returns the updated vendor.
          headers:
            Conductor-Request-Id:
              required: true
              description: The unique identifier for this API request.
              schema:
                type: string
                description: The unique identifier for this API request.
                example: req_1234567abcdefg
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/qbd_vendor'
      security:
        - BearerAuth: []
      x-codeSamples:
        - lang: JavaScript
          source: >-
            import Conductor from 'conductor-node';


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


            const vendor = await
            conductor.qbd.vendors.update('80000001-1234567890', {
              revisionNumber: '1721172183',
              conductorEndUserId: 'end_usr_1234567abcdefg',
            });


            console.log(vendor.id);
        - lang: Python
          source: |-
            import os
            from conductor import Conductor

            conductor = Conductor(
                api_key=os.environ.get("CONDUCTOR_SECRET_KEY"),  # This is the default and can be omitted
            )
            vendor = conductor.qbd.vendors.update(
                id="80000001-1234567890",
                revision_number="1721172183",
                conductor_end_user_id="end_usr_1234567abcdefg",
            )
            print(vendor.id)
components:
  schemas:
    qbd_vendor:
      type: object
      properties:
        id:
          type: string
          description: >-
            The unique identifier assigned by QuickBooks to this vendor. This ID
            is unique across all vendors but not across different QuickBooks
            object types.
          example: 80000001-1234567890
        objectType:
          description: The type of object. This value is always `"qbd_vendor"`.
          example: qbd_vendor
          type: string
          const: qbd_vendor
        createdAt:
          type: string
          description: >-
            The date and time when this vendor 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.
          example: '2025-01-01T12:34:56.000Z'
        updatedAt:
          type: string
          description: >-
            The date and time when this vendor 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.
          example: '2025-02-01T12:34:56.000Z'
        revisionNumber:
          type: string
          description: >-
            The current QuickBooks-assigned revision number of this vendor
            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.
          example: '1721172183'
        name:
          type: string
          description: >-
            The case-insensitive unique name of this vendor, unique across all
            vendors.


            **NOTE**: Vendors do not have a `fullName` field because they are
            not hierarchical objects, which is why `name` is unique for them but
            not for objects that have parents.
          example: Acme Supplies Inc.
        isActive:
          type: boolean
          description: >-
            Indicates whether this vendor is active. Inactive objects are
            typically hidden from views and reports in QuickBooks. Defaults to
            `true`.
          example: true
        class:
          anyOf:
            - type: object
              properties:
                id:
                  anyOf:
                    - type: string
                    - type: 'null'
                  description: >-
                    The unique identifier assigned by QuickBooks to this object.
                    This ID is unique across all objects of the same type, but
                    not across different QuickBooks object types.
                  example: 80000001-1234567890
                fullName:
                  anyOf:
                    - type: string
                    - type: 'null'
                  description: >-
                    The fully-qualified unique name for this object, formed by
                    combining the names of its parent objects with its own
                    `name`, separated by colons. Not case-sensitive.
                  example: Parent:Child:Grandchild
              required:
                - id
                - fullName
              additionalProperties: false
            - type: 'null'
          description: >-
            The vendor'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.
          example:
            id: 80000001-1234567890
            fullName: Suppliers
        companyName:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            The name of the company associated with this vendor. This name is
            used on invoices, checks, and other forms.
          example: Acme Corporation
        salutation:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            The formal salutation title that precedes the name of the contact
            person for this vendor, such as "Mr.", "Ms.", or "Dr.".
          example: Dr.
        firstName:
          anyOf:
            - type: string
            - type: 'null'
          description: The first name of the contact person for this vendor.
          example: John
        middleName:
          anyOf:
            - type: string
            - type: 'null'
          description: The middle name of the contact person for this vendor.
          example: A.
        lastName:
          anyOf:
            - type: string
            - type: 'null'
          description: The last name of the contact person for this vendor.
          example: Doe
        jobTitle:
          anyOf:
            - type: string
            - type: 'null'
          description: The job title of the contact person for this vendor.
          example: Purchasing Manager
        billingAddress:
          anyOf:
            - $ref: '#/components/schemas/qbd_address'
            - type: 'null'
          description: The vendor's billing address.
        shippingAddress:
          anyOf:
            - $ref: '#/components/schemas/qbd_address'
            - type: 'null'
          description: The vendor's shipping address.
        phone:
          anyOf:
            - type: string
            - type: 'null'
          description: The vendor's primary telephone number.
          example: +1-555-123-4567
        alternatePhone:
          anyOf:
            - type: string
            - type: 'null'
          description: The vendor's alternate telephone number.
          example: +1-555-987-6543
        fax:
          anyOf:
            - type: string
            - type: 'null'
          description: The vendor's fax number.
          example: +1-555-555-1212
        email:
          anyOf:
            - type: string
            - type: 'null'
          description: The vendor's email address.
          example: vendor@example.com
        ccEmail:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            An email address to carbon copy (CC) on communications with this
            vendor.
          example: manager@example.com
        contact:
          anyOf:
            - type: string
            - type: 'null'
          description: The name of the primary contact person for this vendor.
          example: Jane Smith
        alternateContact:
          anyOf:
            - type: string
            - type: 'null'
          description: The name of a alternate contact person for this vendor.
          example: Bob Johnson
        customContactFields:
          type: array
          items:
            $ref: '#/components/schemas/qbd_custom_contact_field'
          description: >-
            Additional custom contact fields for this vendor, such as phone
            numbers or email addresses.
        additionalContacts:
          type: array
          items:
            $ref: '#/components/schemas/qbd_contact'
          description: Additional alternate contacts for this vendor.
        nameOnCheck:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            The vendor's name as it should appear on checks issued to this
            vendor.
          example: Acme Supplies Ltd.
        accountNumber:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            The vendor's account number, which appears in the QuickBooks chart
            of accounts, reports, and graphs.


            Note that if the "Use Account Numbers" preference is turned off in
            QuickBooks, the account number may not be visible in the user
            interface, but it can still be set and retrieved through the API.
          example: '1010'
        note:
          anyOf:
            - type: string
            - type: 'null'
          description: A note or comment about this vendor.
          example: Preferred vendor for office supplies.
        additionalNotes:
          type: array
          items:
            $ref: '#/components/schemas/qbd_note'
          description: Additional notes about this vendor.
        vendorType:
          anyOf:
            - type: object
              properties:
                id:
                  anyOf:
                    - type: string
                    - type: 'null'
                  description: >-
                    The unique identifier assigned by QuickBooks to this object.
                    This ID is unique across all objects of the same type, but
                    not across different QuickBooks object types.
                  example: 80000001-1234567890
                fullName:
                  anyOf:
                    - type: string
                    - type: 'null'
                  description: >-
                    The fully-qualified unique name for this object, formed by
                    combining the names of its parent objects with its own
                    `name`, separated by colons. Not case-sensitive.
                  example: Parent:Child:Grandchild
              required:
                - id
                - fullName
              additionalProperties: false
            - type: 'null'
          description: >-
            The vendor's type, used for categorizing vendors into meaningful
            segments, such as industry or region.
          example:
            id: 80000001-1234567890
            fullName: Wholesale Supplier
        terms:
          anyOf:
            - type: object
              properties:
                id:
                  anyOf:
                    - type: string
                    - type: 'null'
                  description: >-
                    The unique identifier assigned by QuickBooks to this object.
                    This ID is unique across all objects of the same type, but
                    not across different QuickBooks object types.
                  example: 80000001-1234567890
                fullName:
                  anyOf:
                    - type: string
                    - type: 'null'
                  description: >-
                    The fully-qualified unique name for this object, formed by
                    combining the names of its parent objects with its own
                    `name`, separated by colons. Not case-sensitive.
                  example: Parent:Child:Grandchild
              required:
                - id
                - fullName
              additionalProperties: false
            - type: 'null'
          description: >-
            The vendor's payment terms, defining when payment is due and any
            applicable discounts.
          example:
            id: 80000001-1234567890
            fullName: Net 30
        creditLimit:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            The vendor's credit limit, represented as a decimal string. This is
            the maximum amount of money that can be spent being before billed by
            this vendor. If `null`, there is no credit limit.
          example: '5000.00'
        taxIdentificationNumber:
          anyOf:
            - type: string
            - type: 'null'
          description: The vendor's tax identification number (e.g., EIN or SSN).
          example: 12-3456789
        isEligibleFor1099:
          anyOf:
            - type: boolean
            - type: 'null'
          description: >-
            Indicates whether this vendor is eligible to receive a 1099 form for
            tax reporting purposes. When `true`, then the fields `taxId` and
            `billingAddress` are required.
          example: true
        balance:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            The current balance owed to this vendor, represented as a decimal
            string. A positive number indicates money owed to the vendor.
          example: '1000.00'
        billingRate:
          anyOf:
            - type: object
              properties:
                id:
                  anyOf:
                    - type: string
                    - type: 'null'
                  description: >-
                    The unique identifier assigned by QuickBooks to this object.
                    This ID is unique across all objects of the same type, but
                    not across different QuickBooks object types.
                  example: 80000001-1234567890
                fullName:
                  anyOf:
                    - type: string
                    - type: 'null'
                  description: >-
                    The fully-qualified unique name for this object, formed by
                    combining the names of its parent objects with its own
                    `name`, separated by colons. Not case-sensitive.
                  example: Parent:Child:Grandchild
              required:
                - id
                - fullName
              additionalProperties: false
            - type: 'null'
          description: >-
            The vendor's billing rate, used to override service item rates in
            time tracking activities.
          example:
            id: 80000001-1234567890
            fullName: Standard Rate
        externalId:
          anyOf:
            - type: string
              description: >-
                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: 12345678-abcd-1234-abcd-1234567890ab
            - type: 'null'
        salesTaxCode:
          anyOf:
            - type: object
              properties:
                id:
                  anyOf:
                    - type: string
                    - type: 'null'
                  description: >-
                    The unique identifier assigned by QuickBooks to this object.
                    This ID is unique across all objects of the same type, but
                    not across different QuickBooks object types.
                  example: 80000001-1234567890
                fullName:
                  anyOf:
                    - type: string
                    - type: 'null'
                  description: >-
                    The fully-qualified unique name for this object, formed by
                    combining the names of its parent objects with its own
                    `name`, separated by colons. Not case-sensitive.
                  example: Parent:Child:Grandchild
              required:
                - id
                - fullName
              additionalProperties: false
            - type: 'null'
          description: >-
            The default sales-tax code for transactions with this vendor,
            determining whether the transactions are taxable or non-taxable.
            This can be overridden at the transaction or transaction-line level.


            Default codes include "Non" (non-taxable) and "Tax" (taxable), but
            custom codes can also be created in QuickBooks Desktop. If
            QuickBooks Desktop is not set up to charge sales tax (via the "Do
            You Charge Sales Tax?" preference), it assigns the default
            non-taxable sales-tax code configured in the company file to all
            sales.
          example:
            id: 80000001-1234567890
            fullName: Non
        salesTaxCountry:
          anyOf:
            - type: string
            - type: 'null'
          description: The country for which sales tax is collected for this vendor.
          example: us
        isSalesTaxAgency:
          anyOf:
            - type: boolean
            - type: 'null'
          description: Indicates whether this vendor is a sales tax agency.
          example: false
        salesTaxReturn:
          anyOf:
            - type: object
              properties:
                id:
                  anyOf:
                    - type: string
                    - type: 'null'
                  description: >-
                    The unique identifier assigned by QuickBooks to this object.
                    This ID is unique across all objects of the same type, but
                    not across different QuickBooks object types.
                  example: 80000001-1234567890
                fullName:
                  anyOf:
                    - type: string
                    - type: 'null'
                  description: >-
                    The fully-qualified unique name for this object, formed by
                    combining the names of its parent objects with its own
                    `name`, separated by colons. Not case-sensitive.
                  example: Parent:Child:Grandchild
              required:
                - id
                - fullName
              additionalProperties: false
            - type: 'null'
          description: >-
            The vendor's sales tax return information, used for tracking and
            reporting sales tax liabilities.
          example:
            id: 80000001-1234567890
            fullName: Quarterly Sales Tax Return
        taxRegistrationNumber:
          anyOf:
            - type: string
            - type: 'null'
          description: The vendor's tax registration number, for use in Canada or the UK.
          example: GB123456789
        reportingPeriod:
          anyOf:
            - type: string
              enum:
                - monthly
                - quarterly
                - annual
            - type: 'null'
          description: The vendor's tax reporting period, for use in Canada or the UK.
          example: quarterly
        isTrackingPurchaseTax:
          anyOf:
            - type: boolean
            - type: 'null'
          description: >-
            Indicates whether tax is tracked on purchases for this vendor, for
            use in Canada or the UK.
          example: true
        purchaseTaxAccount:
          anyOf:
            - type: object
              properties:
                id:
                  anyOf:
                    - type: string
                    - type: 'null'
                  description: >-
                    The unique identifier assigned by QuickBooks to this object.
                    This ID is unique across all objects of the same type, but
                    not across different QuickBooks object types.
                  example: 80000001-1234567890
                fullName:
                  anyOf:
                    - type: string
                    - type: 'null'
                  description: >-
                    The fully-qualified unique name for this object, formed by
                    combining the names of its parent objects with its own
                    `name`, separated by colons. Not case-sensitive.
                  example: Parent:Child:Grandchild
              required:
                - id
                - fullName
              additionalProperties: false
            - type: 'null'
          description: >-
            The account used for tracking taxes on purchases for this vendor,
            for use in Canada or the UK.
          example:
            id: 80000001-1234567890
            fullName: GST Paid
        isTrackingSalesTax:
          anyOf:
            - type: boolean
            - type: 'null'
          description: >-
            Indicates whether tax is tracked on sales for this vendor, for use
            in Canada or the UK.
          example: true
        salesTaxAccount:
          anyOf:
            - type: object
              properties:
                id:
                  anyOf:
                    - type: string
                    - type: 'null'
                  description: >-
                    The unique identifier assigned by QuickBooks to this object.
                    This ID is unique across all objects of the same type, but
                    not across different QuickBooks object types.
                  example: 80000001-1234567890
                fullName:
                  anyOf:
                    - type: string
                    - type: 'null'
                  description: >-
                    The fully-qualified unique name for this object, formed by
                    combining the names of its parent objects with its own
                    `name`, separated by colons. Not case-sensitive.
                  example: Parent:Child:Grandchild
              required:
                - id
                - fullName
              additionalProperties: false
            - type: 'null'
          description: >-
            The account used for tracking taxes on sales for this vendor, for
            use in Canada or the UK.
          example:
            id: 80000001-1234567890
            fullName: GST Collected
        isCompoundingTax:
          anyOf:
            - type: boolean
            - type: 'null'
          description: >-
            Indicates whether tax is charged on top of tax for this vendor, for
            use in Canada or the UK.
          example: false
        defaultExpenseAccounts:
          type: array
          items:
            type: object
            properties:
              id:
                anyOf:
                  - type: string
                  - type: 'null'
                description: >-
                  The unique identifier assigned by QuickBooks to this object.
                  This ID is unique across all objects of the same type, but not
                  across different QuickBooks object types.
                example: 80000001-1234567890
              fullName:
                anyOf:
                  - type: string
                  - type: 'null'
                description: >-
                  The fully-qualified unique name for this object, formed by
                  combining the names of its parent objects with its own `name`,
                  separated by colons. Not case-sensitive.
                example: Parent:Child:Grandchild
            required:
              - id
              - fullName
            additionalProperties: false
          description: The expense accounts to prefill when entering bills for this vendor.
          example:
            - id: 80000001-1234567890
              fullName: Expenses:Utilities
        currency:
          anyOf:
            - type: object
              properties:
                id:
                  anyOf:
                    - type: string
                    - type: 'null'
                  description: >-
                    The unique identifier assigned by QuickBooks to this object.
                    This ID is unique across all objects of the same type, but
                    not across different QuickBooks object types.
                  example: 80000001-1234567890
                fullName:
                  anyOf:
                    - type: string
                    - type: 'null'
                  description: >-
                    The fully-qualified unique name for this object, formed by
                    combining the names of its parent objects with its own
                    `name`, separated by colons. Not case-sensitive.
                  example: Parent:Child:Grandchild
              required:
                - id
                - fullName
              additionalProperties: false
            - type: 'null'
          description: >-
            The vendor's currency. For built-in currencies, the name and code
            are standard ISO 4217 international values. For user-defined
            currencies, all values are editable.
          example:
            id: 80000001-1234567890
            fullName: USD
        customFields:
          type: array
          items:
            $ref: '#/components/schemas/qbd_custom_field'
          description: >-
            The custom fields for the vendor object, added as user-defined data
            extensions, not included in the standard QuickBooks object.
      required:
        - id
        - objectType
        - createdAt
        - updatedAt
        - revisionNumber
        - name
        - isActive
        - class
        - companyName
        - salutation
        - firstName
        - middleName
        - lastName
        - jobTitle
        - billingAddress
        - shippingAddress
        - phone
        - alternatePhone
        - fax
        - email
        - ccEmail
        - contact
        - alternateContact
        - customContactFields
        - additionalContacts
        - nameOnCheck
        - accountNumber
        - note
        - additionalNotes
        - vendorType
        - terms
        - creditLimit
        - taxIdentificationNumber
        - isEligibleFor1099
        - balance
        - billingRate
        - externalId
        - salesTaxCode
        - salesTaxCountry
        - isSalesTaxAgency
        - salesTaxReturn
        - taxRegistrationNumber
        - reportingPeriod
        - isTrackingPurchaseTax
        - purchaseTaxAccount
        - isTrackingSalesTax
        - salesTaxAccount
        - isCompoundingTax
        - defaultExpenseAccounts
        - currency
        - customFields
      additionalProperties: false
      title: The Vendor object
      x-conductor-object-type: other
      summary: >-
        A vendor is any person or company from whom a small business owner buys
        goods and services. (Banks and tax agencies usually are included on the
        vendor list.) A company's vendor list contains information such as
        account balance and contact information about each vendor.
    qbd_address:
      type: object
      properties:
        line1:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            The first line of the address (e.g., street, PO Box, or company
            name).
          example: Conductor Labs Inc.
        line2:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            The second line of the address, if needed (e.g., apartment, suite,
            unit, or building).
          example: 540 Market St.
        line3:
          anyOf:
            - type: string
            - type: 'null'
          description: The third line of the address, if needed.
          example: Suite 100
        line4:
          anyOf:
            - type: string
            - type: 'null'
          description: The fourth line of the address, if needed.
          example: ''
        line5:
          anyOf:
            - type: string
            - type: 'null'
          description: The fifth line of the address, if needed.
          example: ''
        city:
          anyOf:
            - type: string
            - type: 'null'
          description: The city, district, suburb, town, or village name of the address.
          example: San Francisco
        state:
          anyOf:
            - type: string
            - type: 'null'
          description: The state, county, province, or region name of the address.
          example: CA
        postalCode:
          anyOf:
            - type: string
            - type: 'null'
          description: The postal code or ZIP code of the address.
          example: '94110'
        country:
          anyOf:
            - type: string
            - type: 'null'
          description: The country name of the address.
          example: United States
        note:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            A note written at the bottom of the address in the form in which it
            appears, such as the invoice form.
          example: Conductor HQ
      required:
        - line1
        - line2
        - line3
        - line4
        - line5
        - city
        - state
        - postalCode
        - country
        - note
      additionalProperties: false
      title: The Address object
      x-conductor-object-type: nested
    qbd_custom_contact_field:
      type: object
      properties:
        name:
          type: string
          description: >-
            The name of the contact field (e.g., "old address", "secondary
            phone").
          example: Main Phone
        value:
          anyOf:
            - type: string
            - type: 'null'
          description: The value of the contact field.
          example: 555-123-4567
      required:
        - name
        - value
      additionalProperties: false
      title: The Custom Contact Field object
      x-conductor-object-type: nested
    qbd_contact:
      type: object
      properties:
        id:
          type: string
          description: >-
            The unique identifier assigned by QuickBooks to this contact. This
            ID is unique across all contacts but not across different QuickBooks
            object types.
          example: 80000001-1234567890
        objectType:
          description: The type of object. This value is always `"qbd_contact"`.
          example: qbd_contact
          type: string
          const: qbd_contact
        createdAt:
          type: string
          description: >-
            The date and time when this contact 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.
          example: '2025-01-01T12:34:56.000Z'
        updatedAt:
          type: string
          description: >-
            The date and time when this contact 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.
          example: '2025-02-01T12:34:56.000Z'
        revisionNumber:
          type: string
          description: >-
            The current QuickBooks-assigned revision number of this contact
            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.
          example: '1721172183'
        name:
          anyOf:
            - type: string
            - type: 'null'
          description: The contact's full name.
          example: Jane Smith
        salutation:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            The contact's formal salutation title that precedes their name, such
            as "Mr.", "Ms.", or "Dr.".
          example: Dr.
        firstName:
          type: string
          description: The contact's first name.
          example: John
        middleName:
          anyOf:
            - type: string
            - type: 'null'
          description: The contact's middle name.
          example: A.
        lastName:
          anyOf:
            - type: string
            - type: 'null'
          description: The contact's last name.
          example: Doe
        jobTitle:
          anyOf:
            - type: string
            - type: 'null'
          description: The contact's job title.
          example: Purchasing Manager
        customContactFields:
          type: array
          items:
            $ref: '#/components/schemas/qbd_custom_contact_field'
          description: >-
            Additional custom contact fields for this contact, such as phone
            numbers or email addresses.
      required:
        - id
        - objectType
        - createdAt
        - updatedAt
        - revisionNumber
        - name
        - salutation
        - firstName
        - middleName
        - lastName
        - jobTitle
        - customContactFields
      additionalProperties: false
      title: The Contact object
      x-conductor-object-type: nested
    qbd_note:
      type: object
      properties:
        id:
          type: number
          description: >-
            The auto-incrementing identifier assigned by QuickBooks to this
            note.
          example: 1
        date:
          anyOf:
            - type: string
              format: date
            - type: 'null'
          description: >-
            The date this note was last updated, in ISO 8601 format
            (YYYY-MM-DD).
          example: '2024-01-01T00:00:00.000Z'
        note:
          type: string
          description: The text of this note.
          example: This is a fun note.
      required:
        - id
        - date
        - note
      additionalProperties: false
      title: The Note object
      x-conductor-object-type: nested
    qbd_custom_field:
      type: object
      properties:
        ownerId:
          type: string
          description: >-
            The identifier of the owner of the custom field, which QuickBooks
            internally calls a "data extension". For public custom fields
            visible in the UI, such as those added by the QuickBooks user, this
            is always "0". For private custom fields that are only visible to
            the application that created them, this is a valid GUID identifying
            the owning application. Internally, Conductor always fetches all
            public custom fields (those with an `ownerId` of "0") for all
            objects.
          example: '0'
        name:
          type: string
          description: >-
            The name of the custom field, unique for the specified `ownerId`.
            For public custom fields, this name is visible as a label in the
            QuickBooks UI.
          example: Customer Rating
        type:
          type: string
          enum:
            - amount_type
            - date_time_type
            - integer_type
            - percent_type
            - price_type
            - quantity_type
            - string_1024_type
            - string_255_type
          description: The data type of this custom field.
          example: string_1024_type
        value:
          type: string
          description: >-
            The value of this custom field. The maximum length depends on the
            field's data type.
          example: Premium
      required:
        - ownerId
        - name
        - type
        - value
      additionalProperties: false
      title: The Custom Field object
      x-conductor-object-type: nested
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: >-
        Your Conductor secret key using Bearer auth (e.g., `"Authorization:
        Bearer {{YOUR_SECRET_KEY}}"`).

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.