> ## 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.

# Create a sales receipt

> Creates a sales receipt for a sale paid in full. If you include credit card transaction details, QuickBooks requires the payment method to reference a credit card type and automatically deposits the funds to Undeposited Funds rather than a specific bank account.



## OpenAPI

````yaml POST /quickbooks-desktop/sales-receipts
openapi: 3.1.0
info:
  title: Conductor API
  version: 0.0.1
servers:
  - url: https://api.conductor.is/v1
security:
  - BearerAuth: []
paths:
  /quickbooks-desktop/sales-receipts:
    post:
      summary: Create a sales receipt
      description: >-
        Creates a sales receipt for a sale paid in full. If you include credit
        card transaction details, QuickBooks requires the payment method to
        reference a credit card type and automatically deposits the funds to
        Undeposited Funds rather than a specific bank account.
      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.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                customerId:
                  description: >-
                    The customer or customer-job to which the payment for this
                    sales receipt is credited.
                  example: 80000001-1234567890
                  type: string
                  maxLength: 36
                classId:
                  description: >-
                    The sales receipt's class. Classes can be used to categorize
                    objects into meaningful segments, such as department,
                    location, or type of work. In QuickBooks, class tracking is
                    off by default. A class defined here is automatically used
                    in this sales receipt's line items unless overridden at the
                    line item level.
                  example: 80000001-1234567890
                  type: string
                  maxLength: 36
                documentTemplateId:
                  description: >-
                    The predefined template in QuickBooks that determines the
                    layout and formatting for this sales receipt when printed or
                    displayed.
                  example: 80000001-1234567890
                  type: string
                  maxLength: 36
                transactionDate:
                  type: string
                  format: date
                  description: >-
                    The date of this sales receipt, in ISO 8601 format
                    (YYYY-MM-DD).
                  example: '2024-10-01'
                refNumber:
                  description: >-
                    The case-sensitive user-defined reference number for this
                    sales receipt, which can be used to identify the transaction
                    in QuickBooks. This value is not required to be unique and
                    can be arbitrarily changed by the QuickBooks user. When left
                    blank in this create request, this field will be left blank
                    in QuickBooks (i.e., it does *not* auto-increment).


                    Maximum length: 11 characters.
                  example: RECEIPT-1234
                  type: string
                  maxLength: 11
                billingAddress:
                  description: The sales receipt'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 sales receipt'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
                isPending:
                  description: Indicates whether this sales receipt has not been completed.
                  example: false
                  type: boolean
                checkNumber:
                  description: The check number of a check received for this sales receipt.
                  example: '1234567890'
                  type: string
                paymentMethodId:
                  description: >-
                    The sales receipt's payment method (e.g., cash, check,
                    credit card).


                    **NOTE**: If this sales receipt contains credit card
                    transaction data supplied from QuickBooks Merchant Services
                    (QBMS) transaction responses, you must specify a credit card
                    payment method (e.g., "Visa", "MasterCard", etc.).
                  example: 80000001-1234567890
                  type: string
                  maxLength: 36
                dueDate:
                  description: >-
                    The date by which this sales receipt must be paid, in ISO
                    8601 format (YYYY-MM-DD).


                    **NOTE**: For sales receipts, this field is often `null`
                    because sales receipts are generally used for point-of-sale
                    payments, where full payment is received at the time of
                    purchase.
                  example: '2024-10-31'
                  type: string
                  format: date
                salesRepresentativeId:
                  description: >-
                    The sales receipt's sales representative. Sales
                    representatives can be employees, vendors, or other names in
                    QuickBooks.
                  example: 80000001-1234567890
                  type: string
                  maxLength: 36
                shippingDate:
                  description: >-
                    The date when the products or services for this sales
                    receipt were shipped or are expected to be shipped, in ISO
                    8601 format (YYYY-MM-DD).
                  example: '2024-10-01'
                  type: string
                  format: date
                shippingMethodId:
                  description: >-
                    The shipping method used for this sales receipt, such as
                    standard mail or overnight delivery.
                  example: 80000001-1234567890
                  type: string
                  maxLength: 36
                shipmentOrigin:
                  description: >-
                    The origin location from where the product associated with
                    this sales receipt is shipped. This is the point at which
                    ownership and liability for goods transfer from seller to
                    buyer. Internally, QuickBooks uses the term "FOB" for this
                    field, which stands for "freight on board". This field is
                    informational and has no accounting implications.


                    Maximum length: 13 characters.
                  example: San Francisco, CA
                  type: string
                  maxLength: 13
                salesTaxItemId:
                  description: >-
                    The sales-tax item used to calculate the actual tax amount
                    for this sales receipt's transactions by applying a specific
                    tax rate collected for a single tax agency. Unlike
                    `salesTaxCode`, which only indicates general taxability,
                    this field drives the actual tax calculation and reporting.


                    For sales receipts, while using this field to specify a
                    single tax item/group that applies uniformly is recommended,
                    complex tax scenarios may require alternative approaches. In
                    such cases, you can set this field to a 0% tax item
                    (conventionally named "Tax Calculated On Invoice") and
                    handle tax calculations through line items instead. When
                    using line items for taxes, note that only individual tax
                    items (not tax groups) can be used, subtotals can help apply
                    a tax to multiple items but only the first tax line after a
                    subtotal is calculated automatically (subsequent tax lines
                    require manual amounts), and the rate column will always
                    display the actual tax amount rather than the rate
                    percentage.
                  example: 80000001-1234567890
                  type: string
                  maxLength: 36
                memo:
                  description: >-
                    A memo or note for this sales receipt that appears in
                    reports, but not on the sales receipt.
                  example: Payment received at store location - cash
                  type: string
                customerMessageId:
                  description: The message to display to the customer on the sales receipt.
                  example: 80000001-1234567890
                  type: string
                  maxLength: 36
                isQueuedForPrint:
                  type: boolean
                  description: >-
                    Indicates whether this sales receipt is included in the
                    queue of documents for QuickBooks to print.
                  example: true
                isQueuedForEmail:
                  description: >-
                    Indicates whether this sales receipt is included in the
                    queue of documents for QuickBooks to email to the customer.
                  example: true
                  type: boolean
                salesTaxCodeId:
                  description: >-
                    The sales-tax code for this sales receipt, determining
                    whether it is taxable or non-taxable. This can be overridden
                    at the 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
                depositToAccountId:
                  description: >-
                    The account where the funds for this sales receipt will be
                    or have been deposited.
                  example: 80000001-1234567890
                  type: string
                  maxLength: 36
                creditCardTransaction:
                  description: >-
                    The credit card transaction data for this sales receipt's
                    payment when using QuickBooks Merchant Services (QBMS). If
                    specifying this field, you must also specify the
                    `paymentMethod` field.
                  type: object
                  properties:
                    request:
                      description: >-
                        The transaction request data originally supplied for
                        this credit card transaction when using QuickBooks
                        Merchant Services (QBMS).
                      type: object
                      properties:
                        number:
                          type: string
                          description: >-
                            The credit card number. Must be masked with lower
                            case "x" and no dashes.
                          example: xxxxxxxxxxxx1234
                        expirationMonth:
                          type: number
                          description: The month when the credit card expires.
                          example: 12
                        expirationYear:
                          type: number
                          description: The year when the credit card expires.
                          example: 2024
                        name:
                          type: string
                          description: The cardholder's name on the card.
                          example: John Doe
                        address:
                          description: The card's billing address.
                          example: 1234 Main St, Anytown, USA, 12345
                          type: string
                        postalCode:
                          description: The card's billing address ZIP or postal code.
                          example: '12345'
                          type: string
                        commercialCardCode:
                          description: >-
                            The commercial card code identifies the type of
                            business credit card being used (purchase,
                            corporate, or business) for Visa and Mastercard
                            transactions only. When provided, this code may
                            qualify the transaction for lower processing fees
                            compared to the standard rates that apply when no
                            code is specified.
                          example: corporate
                          type: string
                        transactionMode:
                          description: >-
                            Indicates whether this credit card transaction came
                            from a card swipe (`card_present`) or not
                            (`card_not_present`).
                          example: card_not_present
                          type: string
                          enum:
                            - card_not_present
                            - card_present
                          default: card_not_present
                        transactionType:
                          description: >-
                            The QBMS transaction type from which the current
                            transaction data originated.
                          example: charge
                          type: string
                          enum:
                            - authorization
                            - capture
                            - charge
                            - refund
                            - voice_authorization
                      required:
                        - number
                        - expirationMonth
                        - expirationYear
                        - name
                      additionalProperties: false
                    response:
                      description: >-
                        The transaction response data for this credit card
                        transaction when using QuickBooks Merchant Services
                        (QBMS).
                      type: object
                      properties:
                        statusCode:
                          type: number
                          description: >-
                            The status code returned in the original QBMS
                            transaction response for this credit card
                            transaction.
                          example: 0
                        statusMessage:
                          type: string
                          description: >-
                            The status message returned in the original QBMS
                            transaction response for this credit card
                            transaction.
                          example: Success
                        creditCardTransactionId:
                          type: string
                          description: >-
                            The ID returned from the credit card processor for
                            this credit card transaction.
                          example: '1234567890'
                        merchantAccountNumber:
                          type: string
                          description: >-
                            The QBMS account number of the merchant who is
                            running this transaction using the customer's credit
                            card.
                          example: '1234567890'
                        authorizationCode:
                          description: >-
                            The authorization code returned from the credit card
                            processor to indicate that this charge will be paid
                            by the card issuer.
                          example: '1234567890'
                          type: string
                        avsStreetStatus:
                          description: >-
                            Indicates whether the street address supplied in the
                            transaction request matches the customer's address
                            on file at the card issuer.
                          example: pass
                          type: string
                          enum:
                            - fail
                            - not_available
                            - pass
                        avsZipStatus:
                          description: >-
                            Indicates whether the customer postal ZIP code
                            supplied in the transaction request matches the
                            customer's postal code recognized at the card
                            issuer.
                          example: pass
                          type: string
                          enum:
                            - fail
                            - not_available
                            - pass
                        cardSecurityCodeMatch:
                          description: >-
                            Indicates whether the card security code supplied in
                            the transaction request matches the card security
                            code recognized for that credit card number at the
                            card issuer.
                          example: pass
                          type: string
                          enum:
                            - fail
                            - not_available
                            - pass
                        reconBatchId:
                          description: >-
                            An internal ID returned by QuickBooks Merchant
                            Services (QBMS) from the transaction request, needed
                            for the QuickBooks reconciliation feature.
                          example: '1234567890'
                          type: string
                        paymentGroupingCode:
                          description: >-
                            An internal code returned by QuickBooks Merchant
                            Services (QBMS) from the transaction request, needed
                            for the QuickBooks reconciliation feature.
                          example: 2
                          type: number
                        paymentStatus:
                          type: string
                          enum:
                            - completed
                            - unknown
                          description: >-
                            Indicates whether this credit card transaction is
                            known to have been successfully processed by the
                            card issuer.
                          example: completed
                        transactionAuthorizedAt:
                          type: string
                          description: >-
                            The date and time when the credit card processor
                            authorized this credit card transaction.
                          example: '2024-01-01T12:34:56.000Z'
                        transactionAuthorizationStamp:
                          description: >-
                            An internal value for this credit card transaction,
                            needed for the QuickBooks reconciliation feature.
                          example: 2
                          type: number
                        clientTransactionId:
                          description: >-
                            A value returned from QBMS transactions for future
                            use by the QuickBooks Reconciliation feature.
                          example: '1234567890'
                          type: string
                      required:
                        - statusCode
                        - statusMessage
                        - creditCardTransactionId
                        - merchantAccountNumber
                        - paymentStatus
                        - transactionAuthorizedAt
                      additionalProperties: false
                  additionalProperties: false
                otherCustomField:
                  description: >-
                    A built-in custom field for additional information specific
                    to this sales receipt. Unlike the user-defined fields in the
                    `customFields` array, this is a standard QuickBooks field
                    that exists for all sales receipts for convenience.
                    Developers often use this field for tracking information
                    that doesn't fit into other standard QuickBooks fields.
                    Unlike `otherCustomField1` and `otherCustomField2`, which
                    are line item fields, this exists at the transaction level.
                    Hidden by default in the QuickBooks UI.
                  example: Special handling required
                  type: string
                exchangeRate:
                  description: >-
                    The market exchange rate between this sales receipt's
                    currency and the home currency in QuickBooks at the time of
                    this transaction. Represented as a decimal value (e.g.,
                    1.2345 for 1 EUR = 1.2345 USD if USD is the home currency).
                  example: 1.2345
                  type: number
                externalId:
                  type: string
                  format: uuid
                  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.


                    **IMPORTANT**: This field must be formatted as a valid GUID;
                    otherwise, QuickBooks will return an error.
                  example: 12345678-abcd-1234-abcd-1234567890ab
                lines:
                  description: >-
                    The sales receipt's line items, each representing a single
                    product or service sold.


                    **IMPORTANT**: You must specify `lines`, `lineGroups`, or
                    both when creating a sales receipt.
                  minItems: 1
                  type: array
                  items:
                    type: object
                    properties:
                      itemId:
                        description: >-
                          The item associated with this sales receipt line. This
                          can refer to any good or service that the business
                          buys or sells, including item types such as a service
                          item, inventory item, or special calculation item like
                          a discount item or sales-tax item.
                        example: 80000001-1234567890
                        type: string
                        maxLength: 36
                      description:
                        description: A description of this sales receipt line.
                        example: New office chair
                        type: string
                      quantity:
                        description: >-
                          The quantity of the item associated with this sales
                          receipt line. This field cannot be cleared.


                          **NOTE**: Do not use this field if the associated item
                          is a discount item.
                        example: 5
                        type: number
                      unitOfMeasure:
                        description: >-
                          The unit-of-measure used for the `quantity` in this
                          sales receipt line. Must be a valid unit within the
                          item's available units of measure.
                        example: Each
                        type: string
                      rate:
                        description: >-
                          The price per unit for this sales receipt line. If
                          both `rate` and `amount` are specified, `rate` will be
                          ignored. If both `quantity` and `amount` are specified
                          but not `rate`, QuickBooks will use them to calculate
                          `rate`. Represented as a decimal string. This field
                          cannot be cleared.


                          Decimal string format: up to 5 decimal places and up
                          to 10 digits before the decimal point (for example,
                          "123.45").
                        example: '10.00'
                        type: string
                      ratePercent:
                        description: >-
                          The price of this sales receipt line expressed as a
                          percentage. Typically used for discount or markup
                          items.
                        example: '10.5'
                        type: string
                      priceLevelId:
                        description: >-
                          The price level applied to this sales receipt line.
                          This overrides any price level set on the
                          corresponding customer. The resulting sales receipt
                          line will not show this price level, only the final
                          `rate` calculated from it.
                        example: 80000001-1234567890
                        type: string
                        maxLength: 36
                      classId:
                        description: >-
                          The sales receipt line'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. If a class is
                          specified for the entire parent transaction, it is
                          automatically applied to all sales receipt lines
                          unless overridden here, at the transaction line level.
                        example: 80000001-1234567890
                        type: string
                        maxLength: 36
                      amount:
                        description: >-
                          The monetary amount of this sales receipt line,
                          represented as a decimal string. If both `quantity`
                          and `rate` are specified but not `amount`, QuickBooks
                          will use them to calculate `amount`. If `amount`,
                          `rate`, and `quantity` are all unspecified, then
                          QuickBooks will calculate `amount` based on a
                          `quantity` of `1` and the suggested `rate`. This field
                          cannot be cleared.


                          Decimal string format: exactly 2 decimal places when
                          cents are included and up to 13 digits before the
                          decimal point (for example, "123.45").
                        example: '1000.00'
                        type: string
                      priceRuleConflictStrategy:
                        description: >-
                          Specifies how to resolve price rule conflicts when
                          adding or modifying this sales receipt line.
                        example: base_price
                        type: string
                        enum:
                          - base_price
                          - zero
                      inventorySiteId:
                        description: >-
                          The site location where inventory for the item
                          associated with this sales receipt line is stored.
                        example: 80000001-1234567890
                        type: string
                        maxLength: 36
                      inventorySiteLocationId:
                        description: >-
                          The specific location (e.g., bin or shelf) within the
                          inventory site where the item associated with this
                          sales receipt line is stored.
                        example: 80000001-1234567890
                        type: string
                        maxLength: 36
                      serialNumber:
                        description: >-
                          The serial number of the item associated with this
                          sales receipt line. This is used for tracking
                          individual units of serialized inventory items.
                        example: SN1234567890
                        type: string
                      lotNumber:
                        description: >-
                          The lot number of the item associated with this sales
                          receipt line. Used for tracking groups of inventory
                          items that are purchased or manufactured together.
                        example: LOT2023-001
                        type: string
                      serviceDate:
                        description: >-
                          The date on which the service for this sales receipt
                          line was or will be performed, in ISO 8601 format
                          (YYYY-MM-DD). This is particularly relevant for
                          service items.
                        example: '2024-03-15'
                        type: string
                        format: date
                      salesTaxCodeId:
                        description: >-
                          The sales-tax code for this sales receipt line,
                          determining whether it is taxable or non-taxable. If
                          set, this overrides any sales-tax codes defined on the
                          parent transaction or the associated item.


                          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
                      overrideItemAccountId:
                        description: >-
                          The account to use for this sales receipt line,
                          overriding the default account associated with the
                          item.
                        example: 80000001-1234567890
                        type: string
                        maxLength: 36
                      otherCustomField1:
                        description: >-
                          A built-in custom field for additional information
                          specific to this sales receipt line. Unlike the
                          user-defined fields in the `customFields` array, this
                          is a standard QuickBooks field that exists for all
                          sales receipt lines for convenience. Developers often
                          use this field for tracking information that doesn't
                          fit into other standard QuickBooks fields. Hidden by
                          default in the QuickBooks UI.
                        example: Special handling required
                        type: string
                      otherCustomField2:
                        description: >-
                          A second built-in custom field for additional
                          information specific to this sales receipt line.
                          Unlike the user-defined fields in the `customFields`
                          array, this is a standard QuickBooks field that exists
                          for all sales receipt lines for convenience. Like
                          `otherCustomField1`, developers often use this field
                          for tracking information that doesn't fit into other
                          standard QuickBooks fields. Hidden by default in the
                          QuickBooks UI.
                        example: Always ship with a spare
                        type: string
                      creditCardTransaction:
                        description: >-
                          The credit card transaction data for this sales
                          receipt line's payment when using QuickBooks Merchant
                          Services (QBMS). If specifying this field, you must
                          also specify the `paymentMethod` field.
                        type: object
                        properties:
                          request:
                            description: >-
                              The transaction request data originally supplied
                              for this credit card transaction when using
                              QuickBooks Merchant Services (QBMS).
                            type: object
                            properties:
                              number:
                                type: string
                                description: >-
                                  The credit card number. Must be masked with
                                  lower case "x" and no dashes.
                                example: xxxxxxxxxxxx1234
                              expirationMonth:
                                type: number
                                description: The month when the credit card expires.
                                example: 12
                              expirationYear:
                                type: number
                                description: The year when the credit card expires.
                                example: 2024
                              name:
                                type: string
                                description: The cardholder's name on the card.
                                example: John Doe
                              address:
                                description: The card's billing address.
                                example: 1234 Main St, Anytown, USA, 12345
                                type: string
                              postalCode:
                                description: The card's billing address ZIP or postal code.
                                example: '12345'
                                type: string
                              commercialCardCode:
                                description: >-
                                  The commercial card code identifies the type
                                  of business credit card being used (purchase,
                                  corporate, or business) for Visa and
                                  Mastercard transactions only. When provided,
                                  this code may qualify the transaction for
                                  lower processing fees compared to the standard
                                  rates that apply when no code is specified.
                                example: corporate
                                type: string
                              transactionMode:
                                description: >-
                                  Indicates whether this credit card transaction
                                  came from a card swipe (`card_present`) or not
                                  (`card_not_present`).
                                example: card_not_present
                                type: string
                                enum:
                                  - card_not_present
                                  - card_present
                                default: card_not_present
                              transactionType:
                                description: >-
                                  The QBMS transaction type from which the
                                  current transaction data originated.
                                example: charge
                                type: string
                                enum:
                                  - authorization
                                  - capture
                                  - charge
                                  - refund
                                  - voice_authorization
                            required:
                              - number
                              - expirationMonth
                              - expirationYear
                              - name
                            additionalProperties: false
                          response:
                            description: >-
                              The transaction response data for this credit card
                              transaction when using QuickBooks Merchant
                              Services (QBMS).
                            type: object
                            properties:
                              statusCode:
                                type: number
                                description: >-
                                  The status code returned in the original QBMS
                                  transaction response for this credit card
                                  transaction.
                                example: 0
                              statusMessage:
                                type: string
                                description: >-
                                  The status message returned in the original
                                  QBMS transaction response for this credit card
                                  transaction.
                                example: Success
                              creditCardTransactionId:
                                type: string
                                description: >-
                                  The ID returned from the credit card processor
                                  for this credit card transaction.
                                example: '1234567890'
                              merchantAccountNumber:
                                type: string
                                description: >-
                                  The QBMS account number of the merchant who is
                                  running this transaction using the customer's
                                  credit card.
                                example: '1234567890'
                              authorizationCode:
                                description: >-
                                  The authorization code returned from the
                                  credit card processor to indicate that this
                                  charge will be paid by the card issuer.
                                example: '1234567890'
                                type: string
                              avsStreetStatus:
                                description: >-
                                  Indicates whether the street address supplied
                                  in the transaction request matches the
                                  customer's address on file at the card issuer.
                                example: pass
                                type: string
                                enum:
                                  - fail
                                  - not_available
                                  - pass
                              avsZipStatus:
                                description: >-
                                  Indicates whether the customer postal ZIP code
                                  supplied in the transaction request matches
                                  the customer's postal code recognized at the
                                  card issuer.
                                example: pass
                                type: string
                                enum:
                                  - fail
                                  - not_available
                                  - pass
                              cardSecurityCodeMatch:
                                description: >-
                                  Indicates whether the card security code
                                  supplied in the transaction request matches
                                  the card security code recognized for that
                                  credit card number at the card issuer.
                                example: pass
                                type: string
                                enum:
                                  - fail
                                  - not_available
                                  - pass
                              reconBatchId:
                                description: >-
                                  An internal ID returned by QuickBooks Merchant
                                  Services (QBMS) from the transaction request,
                                  needed for the QuickBooks reconciliation
                                  feature.
                                example: '1234567890'
                                type: string
                              paymentGroupingCode:
                                description: >-
                                  An internal code returned by QuickBooks
                                  Merchant Services (QBMS) from the transaction
                                  request, needed for the QuickBooks
                                  reconciliation feature.
                                example: 2
                                type: number
                              paymentStatus:
                                type: string
                                enum:
                                  - completed
                                  - unknown
                                description: >-
                                  Indicates whether this credit card transaction
                                  is known to have been successfully processed
                                  by the card issuer.
                                example: completed
                              transactionAuthorizedAt:
                                type: string
                                description: >-
                                  The date and time when the credit card
                                  processor authorized this credit card
                                  transaction.
                                example: '2024-01-01T12:34:56.000Z'
                              transactionAuthorizationStamp:
                                description: >-
                                  An internal value for this credit card
                                  transaction, needed for the QuickBooks
                                  reconciliation feature.
                                example: 2
                                type: number
                              clientTransactionId:
                                description: >-
                                  A value returned from QBMS transactions for
                                  future use by the QuickBooks Reconciliation
                                  feature.
                                example: '1234567890'
                                type: string
                            required:
                              - statusCode
                              - statusMessage
                              - creditCardTransactionId
                              - merchantAccountNumber
                              - paymentStatus
                              - transactionAuthorizedAt
                            additionalProperties: false
                        additionalProperties: false
                      customFields:
                        description: >-
                          The custom fields for the sales receipt line object,
                          added as user-defined data extensions, not included in
                          the standard QuickBooks object.
                        minItems: 1
                        type: array
                        items:
                          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
                            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
                            - value
                          additionalProperties: false
                    additionalProperties: false
                lineGroups:
                  description: >-
                    The sales receipt's line item groups, each representing a
                    predefined set of related items.


                    **IMPORTANT**: You must specify `lines`, `lineGroups`, or
                    both when creating a sales receipt.
                  minItems: 1
                  type: array
                  items:
                    type: object
                    properties:
                      itemGroupId:
                        description: >-
                          The sales receipt line group's item group,
                          representing a predefined set of items bundled because
                          they are commonly purchased together or grouped for
                          faster entry.
                        example: 80000001-1234567890
                        type: string
                        maxLength: 36
                      quantity:
                        description: >-
                          The quantity of the item group associated with this
                          sales receipt line group. This field cannot be
                          cleared.


                          **NOTE**: Do not use this field if the associated item
                          group is a discount item group.
                        example: 5
                        type: number
                      unitOfMeasure:
                        description: >-
                          The unit-of-measure used for the `quantity` in this
                          sales receipt line group. Must be a valid unit within
                          the item's available units of measure.
                        example: Each
                        type: string
                      serviceDate:
                        description: >-
                          The date on which the service for this sales receipt
                          line group was or will be performed, in ISO 8601
                          format (YYYY-MM-DD). This is particularly relevant for
                          service items.
                        example: '2024-03-15'
                        type: string
                        format: date
                      inventorySiteId:
                        description: >-
                          The site location where inventory for the item group
                          associated with this sales receipt line group is
                          stored.
                        example: 80000001-1234567890
                        type: string
                        maxLength: 36
                      inventorySiteLocationId:
                        description: >-
                          The specific location (e.g., bin or shelf) within the
                          inventory site where the item group associated with
                          this sales receipt line group is stored.
                        example: 80000001-1234567890
                        type: string
                        maxLength: 36
                      customFields:
                        description: >-
                          The custom fields for the sales receipt line group
                          object, added as user-defined data extensions, not
                          included in the standard QuickBooks object.
                        minItems: 1
                        type: array
                        items:
                          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
                            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
                            - value
                          additionalProperties: false
                    required:
                      - itemGroupId
                    additionalProperties: false
              required:
                - transactionDate
              additionalProperties: false
      responses:
        '200':
          description: Returns the newly created sales receipt.
          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_sales_receipt'
      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 salesReceipt = await conductor.qbd.salesReceipts.create({
              transactionDate: '2024-10-01',
              conductorEndUserId: 'end_usr_1234567abcdefg',
            });

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

            conductor = Conductor(
                api_key=os.environ.get("CONDUCTOR_SECRET_KEY"),  # This is the default and can be omitted
            )
            sales_receipt = conductor.qbd.sales_receipts.create(
                transaction_date=date.fromisoformat("2024-10-01"),
                conductor_end_user_id="end_usr_1234567abcdefg",
            )
            print(sales_receipt.id)
components:
  schemas:
    qbd_sales_receipt:
      type: object
      properties:
        id:
          type: string
          description: >-
            The unique identifier assigned by QuickBooks to this sales receipt.
            This ID is unique across all transaction types.
          example: 123ABC-1234567890
        objectType:
          description: The type of object. This value is always `"qbd_sales_receipt"`.
          example: qbd_sales_receipt
          type: string
          const: qbd_sales_receipt
        createdAt:
          type: string
          description: >-
            The date and time when this sales receipt 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 sales receipt 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 sales
            receipt 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'
        customer:
          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 customer or customer-job to which the payment for this sales
            receipt is credited.
          example:
            id: 80000001-1234567890
            fullName: Acme Corporation
        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 sales receipt's class. Classes can be used to categorize objects
            into meaningful segments, such as department, location, or type of
            work. In QuickBooks, class tracking is off by default. A class
            defined here is automatically used in this sales receipt's line
            items unless overridden at the line item level.
          example:
            id: 80000001-1234567890
            fullName: Retail Sales
        documentTemplate:
          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 predefined template in QuickBooks that determines the layout and
            formatting for this sales receipt when printed or displayed.
          example:
            id: 80000001-1234567890
            fullName: Sales Receipt Template
        transactionDate:
          type: string
          format: date
          description: The date of this sales receipt, in ISO 8601 format (YYYY-MM-DD).
          example: '2024-10-01'
        refNumber:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            The case-sensitive user-defined reference number for this sales
            receipt, which can be used to identify the transaction in
            QuickBooks. This value is not required to be unique and can be
            arbitrarily changed by the QuickBooks user.
          example: RECEIPT-1234
        billingAddress:
          anyOf:
            - $ref: '#/components/schemas/qbd_address'
            - type: 'null'
          description: The sales receipt's billing address.
        shippingAddress:
          anyOf:
            - $ref: '#/components/schemas/qbd_address'
            - type: 'null'
          description: The sales receipt's shipping address.
        isPending:
          anyOf:
            - type: boolean
            - type: 'null'
          description: Indicates whether this sales receipt has not been completed.
          example: false
        checkNumber:
          anyOf:
            - type: string
            - type: 'null'
          description: The check number of a check received for this sales receipt.
          example: '1234567890'
        paymentMethod:
          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 sales receipt's payment method (e.g., cash, check, credit card).
          example:
            id: 80000001-1234567890
            fullName: Credit Card
        dueDate:
          anyOf:
            - type: string
              format: date
            - type: 'null'
          description: >-
            The date by which this sales receipt must be paid, in ISO 8601
            format (YYYY-MM-DD).


            **NOTE**: For sales receipts, this field is often `null` because
            sales receipts are generally used for point-of-sale payments, where
            full payment is received at the time of purchase.
          example: '2024-10-31T00:00:00.000Z'
        salesRepresentative:
          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 sales receipt's sales representative. Sales representatives can
            be employees, vendors, or other names in QuickBooks.
          example:
            id: 80000001-1234567890
            fullName: Jane Doe
        shippingDate:
          anyOf:
            - type: string
              format: date
            - type: 'null'
          description: >-
            The date when the products or services for this sales receipt were
            shipped or are expected to be shipped, in ISO 8601 format
            (YYYY-MM-DD).
          example: '2024-10-01T00:00:00.000Z'
        shippingMethod:
          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 shipping method used for this sales receipt, such as standard
            mail or overnight delivery.
          example:
            id: 80000001-1234567890
            fullName: FedEx Ground
        shipmentOrigin:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            The origin location from where the product associated with this
            sales receipt is shipped. This is the point at which ownership and
            liability for goods transfer from seller to buyer. Internally,
            QuickBooks uses the term "FOB" for this field, which stands for
            "freight on board". This field is informational and has no
            accounting implications.
          example: San Francisco, CA
        subtotal:
          type: string
          description: >-
            The subtotal of this sales receipt, which is the sum of all sales
            receipt lines before taxes and payments are applied, represented as
            a decimal string.
          example: '1000.00'
        salesTaxItem:
          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 sales-tax item used to calculate the actual tax amount for this
            sales receipt's transactions by applying a specific tax rate
            collected for a single tax agency. Unlike `salesTaxCode`, which only
            indicates general taxability, this field drives the actual tax
            calculation and reporting.


            For sales receipts, while using this field to specify a single tax
            item/group that applies uniformly is recommended, complex tax
            scenarios may require alternative approaches. In such cases, you can
            set this field to a 0% tax item (conventionally named "Tax
            Calculated On Invoice") and handle tax calculations through line
            items instead. When using line items for taxes, note that only
            individual tax items (not tax groups) can be used, subtotals can
            help apply a tax to multiple items but only the first tax line after
            a subtotal is calculated automatically (subsequent tax lines require
            manual amounts), and the rate column will always display the actual
            tax amount rather than the rate percentage.
          example:
            id: 80000001-1234567890
            fullName: State Sales Tax
        salesTaxPercentage:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            The sales tax percentage applied to this sales receipt, represented
            as a decimal string.
          example: '0.07'
        salesTaxTotal:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            The total amount of sales tax charged for this sales receipt,
            represented as a decimal string.
          example: '10.00'
        totalAmount:
          type: string
          description: >-
            The total monetary amount of this sales receipt, equivalent to the
            sum of the amounts in `lines` and `lineGroups`, represented as a
            decimal string.
          example: '1000.00'
        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 sales receipt'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
        exchangeRate:
          anyOf:
            - type: number
            - type: 'null'
          description: >-
            The market exchange rate between this sales receipt's currency and
            the home currency in QuickBooks at the time of this transaction.
            Represented as a decimal value (e.g., 1.2345 for 1 EUR = 1.2345 USD
            if USD is the home currency).
          example: 1.2345
        totalAmountInHomeCurrency:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            The total monetary amount of this sales receipt converted to the
            home currency of the QuickBooks company file. Represented as a
            decimal string.
          example: '1234.56'
        memo:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            A memo or note for this sales receipt that appears in reports, but
            not on the sales receipt.
          example: Payment received at store location - cash
        customerMessage:
          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 message to display to the customer on the sales receipt.
          example:
            id: 80000001-1234567890
            fullName: Thank you for your business!
        isQueuedForPrint:
          anyOf:
            - type: boolean
              description: >-
                Indicates whether this sales receipt is included in the queue of
                documents for QuickBooks to print.
              example: true
            - type: 'null'
        isQueuedForEmail:
          anyOf:
            - type: boolean
            - type: 'null'
          description: >-
            Indicates whether this sales receipt is included in the queue of
            documents for QuickBooks to email to the customer.
          example: true
        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 sales-tax code for this sales receipt, determining whether it is
            taxable or non-taxable. This can be overridden at the
            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
        depositToAccount:
          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 where the funds for this sales receipt will be or have
            been deposited.
          example:
            id: 80000001-1234567890
            fullName: Undeposited Funds
        creditCardTransaction:
          anyOf:
            - $ref: '#/components/schemas/qbd_credit_card_transaction'
            - type: 'null'
          description: >-
            The credit card transaction data for this sales receipt's payment
            when using QuickBooks Merchant Services (QBMS).
        otherCustomField:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            A built-in custom field for additional information specific to this
            sales receipt. Unlike the user-defined fields in the `customFields`
            array, this is a standard QuickBooks field that exists for all sales
            receipts for convenience. Developers often use this field for
            tracking information that doesn't fit into other standard QuickBooks
            fields. Unlike `otherCustomField1` and `otherCustomField2`, which
            are line item fields, this exists at the transaction level. Hidden
            by default in the QuickBooks UI.
          example: Special handling required
        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'
        lines:
          type: array
          items:
            $ref: '#/components/schemas/qbd_sales_receipt_line'
          description: >-
            The sales receipt's line items, each representing a single product
            or service sold.
        lineGroups:
          type: array
          items:
            $ref: '#/components/schemas/qbd_sales_receipt_line_group'
          description: >-
            The sales receipt's line item groups, each representing a predefined
            set of related items.
        customFields:
          type: array
          items:
            $ref: '#/components/schemas/qbd_custom_field'
          description: >-
            The custom fields for the sales receipt object, added as
            user-defined data extensions, not included in the standard
            QuickBooks object.
      required:
        - id
        - objectType
        - createdAt
        - updatedAt
        - revisionNumber
        - customer
        - class
        - documentTemplate
        - transactionDate
        - refNumber
        - billingAddress
        - shippingAddress
        - isPending
        - checkNumber
        - paymentMethod
        - dueDate
        - salesRepresentative
        - shippingDate
        - shippingMethod
        - shipmentOrigin
        - subtotal
        - salesTaxItem
        - salesTaxPercentage
        - salesTaxTotal
        - totalAmount
        - currency
        - exchangeRate
        - totalAmountInHomeCurrency
        - memo
        - customerMessage
        - isQueuedForPrint
        - isQueuedForEmail
        - salesTaxCode
        - depositToAccount
        - creditCardTransaction
        - otherCustomField
        - externalId
        - lines
        - lineGroups
        - customFields
      additionalProperties: false
      title: The Sales Receipt object
      x-conductor-object-type: transaction
      summary: >-
        A sales receipt records a sale where complete payment is received at the
        time of the transaction, whether by cash, check, or credit card. It
        combines the sale and payment into a single transaction. For situations
        requiring partial or delayed payments, use an invoice with
        receive-payments instead.
    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_credit_card_transaction:
      type: object
      properties:
        request:
          anyOf:
            - $ref: '#/components/schemas/qbd_credit_card_transaction_request'
            - type: 'null'
          description: >-
            The transaction request data originally supplied for this credit
            card transaction when using QuickBooks Merchant Services (QBMS).
        response:
          anyOf:
            - $ref: '#/components/schemas/qbd_credit_card_transaction_response'
            - type: 'null'
          description: >-
            The transaction response data for this credit card transaction when
            using QuickBooks Merchant Services (QBMS).
      required:
        - request
        - response
      additionalProperties: false
      title: The Credit Card Transaction object
      x-conductor-object-type: nested
    qbd_sales_receipt_line:
      type: object
      properties:
        id:
          type: string
          description: >-
            The unique identifier assigned by QuickBooks to this sales receipt
            line. This ID is unique across all transaction line types.
          example: 456DEF-1234567890
        objectType:
          description: The type of object. This value is always `"qbd_sales_receipt_line"`.
          example: qbd_sales_receipt_line
          type: string
          const: qbd_sales_receipt_line
        item:
          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 item associated with this sales receipt line. This can refer to
            any good or service that the business buys or sells, including item
            types such as a service item, inventory item, or special calculation
            item like a discount item or sales-tax item.
          example:
            id: 80000001-1234567890
            fullName: Widget A
        description:
          anyOf:
            - type: string
            - type: 'null'
          description: A description of this sales receipt line.
          example: New office chair
        quantity:
          anyOf:
            - type: number
            - type: 'null'
          description: >-
            The quantity of the item associated with this sales receipt line.
            This field cannot be cleared.


            **NOTE**: Do not use this field if the associated item is a discount
            item.
          example: 5
        unitOfMeasure:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            The unit-of-measure used for the `quantity` in this sales receipt
            line. Must be a valid unit within the item's available units of
            measure.
          example: Each
        overrideUnitOfMeasureSet:
          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: >-
            Specifies an alternative unit-of-measure set when updating this
            sales receipt line's `unitOfMeasure` field (e.g., "pound" or
            "kilogram"). This allows you to select units from a different set
            than the item's default unit-of-measure set, which remains unchanged
            on the item itself. The override applies only to this specific line.
            For example, you can sell an item typically measured in volume units
            using weight units in a specific transaction by specifying a
            different unit-of-measure set with this field.


            IMPORTANT: Right after QuickBooks Desktop launches, it can briefly
            report an alternate `id` for a unit-of-measure set, so match on
            `fullName` when joining to the unit-of-measure sets list.
          example:
            id: 80000001-1234567890
            fullName: Volume Units
        rate:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            The price per unit for this sales receipt line. If both `rate` and
            `amount` are specified, `rate` will be ignored. If both `quantity`
            and `amount` are specified but not `rate`, QuickBooks will use them
            to calculate `rate`. Represented as a decimal string. This field
            cannot be cleared.
          example: '10.00'
        ratePercent:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            The price of this sales receipt line expressed as a percentage.
            Typically used for discount or markup items.
          example: '10.5'
        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 sales receipt line'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. If a
            class is specified for the entire parent transaction, it is
            automatically applied to all sales receipt lines unless overridden
            here, at the transaction line level.
          example:
            id: 80000001-1234567890
            fullName: Supplies:Furniture
        amount:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            The monetary amount of this sales receipt line, represented as a
            decimal string. If both `quantity` and `rate` are specified but not
            `amount`, QuickBooks will use them to calculate `amount`. If
            `amount`, `rate`, and `quantity` are all unspecified, then
            QuickBooks will calculate `amount` based on a `quantity` of `1` and
            the suggested `rate`. This field cannot be cleared.
          example: '1000.00'
        inventorySite:
          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 site location where inventory for the item associated with this
            sales receipt line is stored.
          example:
            id: 80000001-1234567890
            fullName: Main Warehouse
        inventorySiteLocation:
          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 specific location (e.g., bin or shelf) within the inventory site
            where the item associated with this sales receipt line is stored.
          example:
            id: 80000001-1234567890
            fullName: Aisle 3, Shelf B
        serialNumber:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            The serial number of the item associated with this sales receipt
            line. This is used for tracking individual units of serialized
            inventory items.
          example: SN1234567890
        lotNumber:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            The lot number of the item associated with this sales receipt line.
            Used for tracking groups of inventory items that are purchased or
            manufactured together.
          example: LOT2023-001
        expirationDate:
          anyOf:
            - type: string
              format: date
            - type: 'null'
          description: >-
            The expiration date for the serial number or lot number of the item
            associated with this sales receipt line, in ISO 8601 format
            (YYYY-MM-DD). This is particularly relevant for perishable or
            time-sensitive inventory items. Note that this field is only
            supported on QuickBooks Desktop 2023 or later.
          example: '2025-12-31T00:00:00.000Z'
        serviceDate:
          anyOf:
            - type: string
              format: date
            - type: 'null'
          description: >-
            The date on which the service for this sales receipt line was or
            will be performed, in ISO 8601 format (YYYY-MM-DD). This is
            particularly relevant for service items.
          example: '2024-03-15T00:00:00.000Z'
        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 sales-tax code for this sales receipt line, determining whether
            it is taxable or non-taxable. If set, this overrides any sales-tax
            codes defined on the parent transaction or the associated item.


            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
        otherCustomField1:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            A built-in custom field for additional information specific to this
            sales receipt line. Unlike the user-defined fields in the
            `customFields` array, this is a standard QuickBooks field that
            exists for all sales receipt lines for convenience. Developers often
            use this field for tracking information that doesn't fit into other
            standard QuickBooks fields. Hidden by default in the QuickBooks UI.
          example: Special handling required
        otherCustomField2:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            A second built-in custom field for additional information specific
            to this sales receipt line. Unlike the user-defined fields in the
            `customFields` array, this is a standard QuickBooks field that
            exists for all sales receipt lines for convenience. Like
            `otherCustomField1`, developers often use this field for tracking
            information that doesn't fit into other standard QuickBooks fields.
            Hidden by default in the QuickBooks UI.
          example: Always ship with a spare
        creditCardTransaction:
          anyOf:
            - $ref: '#/components/schemas/qbd_credit_card_transaction'
            - type: 'null'
          description: >-
            The credit card transaction data for this sales receipt line's
            payment when using QuickBooks Merchant Services (QBMS).
        customFields:
          type: array
          items:
            $ref: '#/components/schemas/qbd_custom_field'
          description: >-
            The custom fields for the sales receipt line object, added as
            user-defined data extensions, not included in the standard
            QuickBooks object.
      required:
        - id
        - objectType
        - item
        - description
        - quantity
        - unitOfMeasure
        - overrideUnitOfMeasureSet
        - rate
        - ratePercent
        - class
        - amount
        - inventorySite
        - inventorySiteLocation
        - serialNumber
        - lotNumber
        - expirationDate
        - serviceDate
        - salesTaxCode
        - otherCustomField1
        - otherCustomField2
        - creditCardTransaction
        - customFields
      additionalProperties: false
      title: The Sales Receipt Line object
      x-conductor-object-type: nested
    qbd_sales_receipt_line_group:
      type: object
      properties:
        id:
          type: string
          description: >-
            The unique identifier assigned by QuickBooks to this sales receipt
            line group. This ID is unique across all transaction line types.
          example: 456DEF-1234567890
        objectType:
          description: >-
            The type of object. This value is always
            `"qbd_sales_receipt_line_group"`.
          example: qbd_sales_receipt_line_group
          type: string
          const: qbd_sales_receipt_line_group
        itemGroup:
          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 sales receipt line group's item group, representing a predefined
            set of items bundled because they are commonly purchased together or
            grouped for faster entry.
          example:
            id: 80000001-1234567890
            fullName: Office Supplies Bundle
        description:
          anyOf:
            - type: string
            - type: 'null'
          description: A description of this sales receipt line group.
          example: Standard widget bulk package
        quantity:
          anyOf:
            - type: number
            - type: 'null'
          description: >-
            The quantity of the item group associated with this sales receipt
            line group. This field cannot be cleared.


            **NOTE**: Do not use this field if the associated item group is a
            discount item group.
          example: 5
        unitOfMeasure:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            The unit-of-measure used for the `quantity` in this sales receipt
            line group. Must be a valid unit within the item's available units
            of measure.
          example: Each
        overrideUnitOfMeasureSet:
          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: >-
            Specifies an alternative unit-of-measure set when updating this
            sales receipt line group's `unitOfMeasure` field (e.g., "pound" or
            "kilogram"). This allows you to select units from a different set
            than the item's default unit-of-measure set, which remains unchanged
            on the item itself. The override applies only to this specific line.
            For example, you can sell an item typically measured in volume units
            using weight units in a specific transaction by specifying a
            different unit-of-measure set with this field.


            IMPORTANT: Right after QuickBooks Desktop launches, it can briefly
            report an alternate `id` for a unit-of-measure set, so match on
            `fullName` when joining to the unit-of-measure sets list.
          example:
            id: 80000001-1234567890
            fullName: Volume Units
        shouldPrintItemsInGroup:
          type: boolean
          description: >-
            Indicates whether the individual items in this sales receipt line
            group and their separate amounts appear on printed forms.
          example: true
        totalAmount:
          type: string
          description: >-
            The total monetary amount of this sales receipt line group,
            equivalent to the sum of the amounts in `lines`, represented as a
            decimal string.
          example: '1000.00'
        serviceDate:
          anyOf:
            - type: string
              format: date
            - type: 'null'
          description: >-
            The date on which the service for this sales receipt line group was
            or will be performed, in ISO 8601 format (YYYY-MM-DD). This is
            particularly relevant for service items.
          example: '2024-03-15T00:00:00.000Z'
        lines:
          type: array
          items:
            $ref: '#/components/schemas/qbd_sales_receipt_line'
          description: >-
            The sales receipt line group's line items, each representing a
            single product or service sold.
        customFields:
          type: array
          items:
            $ref: '#/components/schemas/qbd_custom_field'
          description: >-
            The custom fields for the sales receipt line group object, added as
            user-defined data extensions, not included in the standard
            QuickBooks object.
      required:
        - id
        - objectType
        - itemGroup
        - description
        - quantity
        - unitOfMeasure
        - overrideUnitOfMeasureSet
        - shouldPrintItemsInGroup
        - totalAmount
        - serviceDate
        - lines
        - customFields
      additionalProperties: false
      title: The Sales Receipt Line Group 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
    qbd_credit_card_transaction_request:
      type: object
      properties:
        number:
          type: string
          description: >-
            The credit card number. Must be masked with lower case "x" and no
            dashes.
          example: xxxxxxxxxxxx1234
        expirationMonth:
          type: number
          description: The month when the credit card expires.
          example: 12
        expirationYear:
          type: number
          description: The year when the credit card expires.
          example: 2024
        name:
          anyOf:
            - type: string
            - type: 'null'
          description: The cardholder's name on the card.
          example: John Doe
        address:
          anyOf:
            - type: string
            - type: 'null'
          description: The card's billing address.
          example: 1234 Main St, Anytown, USA, 12345
        postalCode:
          anyOf:
            - type: string
            - type: 'null'
          description: The card's billing address ZIP or postal code.
          example: '12345'
        commercialCardCode:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            The commercial card code identifies the type of business credit card
            being used (purchase, corporate, or business) for Visa and
            Mastercard transactions only. When provided, this code may qualify
            the transaction for lower processing fees compared to the standard
            rates that apply when no code is specified.
          example: corporate
        transactionMode:
          anyOf:
            - type: string
              enum:
                - card_not_present
                - card_present
            - type: 'null'
          description: >-
            Indicates whether this credit card transaction came from a card
            swipe (`card_present`) or not (`card_not_present`).
          example: card_not_present
        transactionType:
          anyOf:
            - type: string
              enum:
                - authorization
                - capture
                - charge
                - refund
                - voice_authorization
            - type: 'null'
          description: >-
            The QBMS transaction type from which the current transaction data
            originated.
          example: charge
      required:
        - number
        - expirationMonth
        - expirationYear
        - name
        - address
        - postalCode
        - commercialCardCode
        - transactionMode
        - transactionType
      additionalProperties: false
      title: The Credit Card Transaction Request object
      x-conductor-object-type: nested
    qbd_credit_card_transaction_response:
      type: object
      properties:
        statusCode:
          type: number
          description: >-
            The status code returned in the original QBMS transaction response
            for this credit card transaction.
          example: 0
        statusMessage:
          type: string
          description: >-
            The status message returned in the original QBMS transaction
            response for this credit card transaction.
          example: Success
        creditCardTransactionId:
          type: string
          description: >-
            The ID returned from the credit card processor for this credit card
            transaction.
          example: '1234567890'
        merchantAccountNumber:
          type: string
          description: >-
            The QBMS account number of the merchant who is running this
            transaction using the customer's credit card.
          example: '1234567890'
        authorizationCode:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            The authorization code returned from the credit card processor to
            indicate that this charge will be paid by the card issuer.
          example: '1234567890'
        avsStreetStatus:
          anyOf:
            - type: string
              enum:
                - fail
                - not_available
                - pass
            - type: 'null'
          description: >-
            Indicates whether the street address supplied in the transaction
            request matches the customer's address on file at the card issuer.
          example: pass
        avsZipStatus:
          anyOf:
            - type: string
              enum:
                - fail
                - not_available
                - pass
            - type: 'null'
          description: >-
            Indicates whether the customer postal ZIP code supplied in the
            transaction request matches the customer's postal code recognized at
            the card issuer.
          example: pass
        cardSecurityCodeMatch:
          anyOf:
            - type: string
              enum:
                - fail
                - not_available
                - pass
            - type: 'null'
          description: >-
            Indicates whether the card security code supplied in the transaction
            request matches the card security code recognized for that credit
            card number at the card issuer.
          example: pass
        reconBatchId:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            An internal ID returned by QuickBooks Merchant Services (QBMS) from
            the transaction request, needed for the QuickBooks reconciliation
            feature.
          example: '1234567890'
        paymentGroupingCode:
          anyOf:
            - type: number
            - type: 'null'
          description: >-
            An internal code returned by QuickBooks Merchant Services (QBMS)
            from the transaction request, needed for the QuickBooks
            reconciliation feature.
          example: 2
        paymentStatus:
          type: string
          enum:
            - completed
            - unknown
          description: >-
            Indicates whether this credit card transaction is known to have been
            successfully processed by the card issuer.
          example: completed
        transactionAuthorizedAt:
          type: string
          description: >-
            The date and time when the credit card processor authorized this
            credit card transaction.
          example: '2024-01-01T12:34:56.000Z'
        transactionAuthorizationStamp:
          anyOf:
            - type: number
            - type: 'null'
          description: >-
            An internal value for this credit card transaction, needed for the
            QuickBooks reconciliation feature.
          example: 2
        clientTransactionId:
          anyOf:
            - type: string
            - type: 'null'
          description: >-
            A value returned from QBMS transactions for future use by the
            QuickBooks Reconciliation feature.
          example: '1234567890'
      required:
        - statusCode
        - statusMessage
        - creditCardTransactionId
        - merchantAccountNumber
        - authorizationCode
        - avsStreetStatus
        - avsZipStatus
        - cardSecurityCodeMatch
        - reconBatchId
        - paymentGroupingCode
        - paymentStatus
        - transactionAuthorizedAt
        - transactionAuthorizationStamp
        - clientTransactionId
      additionalProperties: false
      title: The Credit Card Transaction Response 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.