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

# Generate Schedule C

> Generate a Form 1040 Schedule C PDF



## OpenAPI

````yaml https://dev.hurdlr.com/rest/v1/devUtils/documentation?version=5&Authorization=dexfeE6aRK3zwXP4ku5aWm8w&env=sandbox post /v5/taxEngineExpress/pdfSchedC
openapi: 3.0.1
info:
  title: Tight API
  contact:
    name: Hurdlr, Inc. (dba Tight)
    url: https://www.tight.com
    email: api@tight.com
  version: 6.0.0
servers:
  - url: https://sandbox.hurdlr.com/rest
    description: Staging Environment
  - url: https://prod.hurdlr.com/rest
    description: Production Environment
security:
  - accessTokenSecurity: []
  - basicSecurity: []
tags:
  - name: Authentication
  - name: Banks
  - name: Business & Client Management
  - name: Invoicing
  - name: Revenue
  - name: Investments
  - name: Payouts
  - name: Bills
  - name: Expenses
  - name: Payroll
  - name: Reports
  - name: Accounting
  - name: Mileage
  - name: Taxes
  - name: Time Tracking
  - name: Imports
  - name: Files
  - name: Accountant
  - name: Audit Trail
  - name: Support
  - name: Tax Engine Express
  - name: Interview Endpoint
  - name: Ledgering
  - name: Configuration
  - name: Templates
paths:
  /v5/taxEngineExpress/pdfSchedC:
    post:
      tags:
        - Tax Engine Express
      summary: Generate Schedule C
      description: Generate a Form 1040 Schedule C PDF
      operationId: pdfSchedC
      requestBody:
        description: tax calculation parameters
        content:
          '*/*':
            schema:
              $ref: '#/components/schemas/ScheduleCFieldsAPIParamV2'
        required: true
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UrlRetVal'
components:
  schemas:
    ScheduleCFieldsAPIParamV2:
      required:
        - businessType
        - client_id
        - expenses
        - userId
      type: object
      properties:
        client_id:
          type: string
          description: The client_id of the Tight Partner
          example: fake_client_id
        userId:
          type: string
          description: >-
            An anonymized userId, used for tracking API usage. The Tight Partner
            decides how to anonymize it.
          example: fake_userId
        year:
          type: integer
          description: The Schedule C form year
          format: int32
          example: 2018
        isDraft:
          type: boolean
          description: >-
            Whether a 'DRAFT' watermark should be overlaid on the report;
            defaulted to true
          example: true
        businessType:
          type: string
          description: The business type of the user
          example: REAL_ESTATE_AGENT
          enum:
            - DRIVER
            - REAL_ESTATE_AGENT
            - CONSULTANT
            - SALES
            - FREELANCER
            - HOST
            - E_COMMERCE
            - INSURANCE_AGENT
            - RETAIL
            - OTHER
        useMileageDeduction:
          type: boolean
          description: >-
            True if using the standard mileage rate, as opposed to actual
            vehicle expenses
          example: true
        generalSection:
          $ref: '#/components/schemas/ScheduleCGeneralField'
        income:
          type: array
          items:
            $ref: '#/components/schemas/ScehduleCIncomeTransaction'
        expenses:
          type: array
          description: Expense transaction array
          items:
            $ref: '#/components/schemas/ScehduleCExpenseTransaction'
        cogsSection:
          $ref: '#/components/schemas/ScheduleCCOGSField'
        vehicleInfoSection:
          $ref: '#/components/schemas/ScheduleCVehicleInformationField'
    UrlRetVal:
      type: object
      properties:
        url:
          type: string
          description: URL link location
          example: >-
            https://s3.amazonaws.com/Tight-Dev/Reports/Temp/c2cd0cf0-bd33-4fe7-844f-9e90df7575ec/ScheduleC_2018.pdf
        status:
          type: string
          description: Status of the link
          example: SUCCESS
          enum:
            - SUCCESS
            - NO_DATA
    ScheduleCGeneralField:
      required:
        - businessOrProfession
        - proprietorName
      type: object
      properties:
        proprietorName:
          type: string
          description: Name of proprietor
          example: Anu Bhaskar
        businessOrProfession:
          type: string
          description: Principal business or profession, including product or service
          example: Consultant
        instructionsCode:
          type: string
          description: Enter code from instruction
          example: '123456'
        businessName:
          type: string
          description: Business name. If no separate business name, leave blank.
          example: ACME
        employerId:
          type: string
          description: Employer ID number
          example: xxxxxxxxx
        businessAddress:
          type: string
          description: Business address line 1 (including suite or room no.)
          example: 1815 Adams Mill Rd NW
        businessCityStateZip:
          type: string
          description: City, town or post office, state, and ZIP code
          example: Washington, DC 20009
        accountingMethod:
          type: string
          description: Accounting method
          example: '1'
          enum:
            - '1'
            - '2'
            - '3'
        materiallyParticipatedPriorYear:
          type: boolean
          description: >-
            Materially participate in the operation of this business during
            prior year?
          example: true
        startedOrAcquiredBusinessPriorYear:
          type: boolean
          description: Started or acquired this business during prior year?
          example: false
        madePaymentsPriorYear:
          type: boolean
          description: >-
            Make any payments in 2017 that would require you to file Form(s)
            1099?
          example: false
        filedRequiredForms1099:
          type: boolean
          description: Did you or will you file required Forms 1099?
          example: false
    ScehduleCIncomeTransaction:
      required:
        - amount
      type: object
      properties:
        date:
          type: string
          description: The Income Date of the transaction.
          format: date
        amount:
          type: number
          description: >-
            The Income Amount of the transaction.  Positive for receipts or
            sales (line 1).  Negative for returns and allowances (line 2)
          example: 10000.01
    ScehduleCExpenseTransaction:
      required:
        - categoryId
        - vendorName
      type: object
      properties:
        id:
          type: string
          description: >-
            The Partner's internal ID of the expense transaction. This will be
            roundtripped in the response, so that the Partner can easily
            identify each transaction.
          example: '1'
        vendorName:
          type: string
          description: The vendor name of the expense transaction
          example: Acme
        categoryId:
          type: string
          description: Plaid's category_id for the expense transaction (e.g. '13005023')
          example: '13005023'
        amount:
          type: number
          description: The amount of the expense transaction
          example: 100.02
        hurdlrTaxCategory:
          type: string
          description: >-
            The Tight Tax Category for the expense transaction. The endpoint
            will populate this field for you if not populated.
          example: DEDUCTIBLE_MEALS_AND_ENTERTAINMENT
        date:
          type: string
          description: >-
            The date of the transaction. If not populated, the Schedule C year
            will be used.
          format: date
        deductionAmount:
          type: number
          description: >-
            The Deduction Amount of the expense transaction. The /findDeductions
            endpoint will populate this field for you if not populated.
          example: 50.01
      description: Expense transaction array
    ScheduleCCOGSField:
      type: object
      properties:
        line33:
          type: string
          description: Method(s) used to value closing inventory
          example: b
          enum:
            - a,b,c
        line34:
          type: boolean
        line35:
          type: number
          description: Inventory at beginning of year
          example: 0
        line36:
          type: number
          description: Purchases less cost of items withdrawn for personal use
          example: 0
        line37:
          type: number
          description: Cost of labor. Do not include any amounts paid to yourself
          example: 0
        line38:
          type: number
          description: Materials and supplies
          example: 0
        line39:
          type: number
          description: Other costs
          example: 0
        line40:
          type: number
          description: Total
          example: 0
        line41:
          type: number
          description: Inventory at end of year
          example: 0
        line42:
          type: number
          description: 'Cost of goods sold. '
          example: 0
      xml:
        name: ScheduleCCOGSField
    ScheduleCVehicleInformationField:
      type: object
      properties:
        line43:
          type: string
          description: When did you place your vehicle in service for business purposes
          format: date
          example: '2017-04-06'
        line44a:
          type: integer
          description: 'Total no of miles you drove your vehicle: Business'
          format: int32
          example: 1000
        line44b:
          type: integer
          description: 'Total no of miles you drove your vehicle: Commuting'
          format: int32
          example: 200
        line44c:
          type: integer
          description: 'Total no of miles you drove your vehicle: Other'
          format: int32
          example: 100
        line45:
          type: boolean
          description: Was your vehicle available for personal use during off-duty hours?
          example: false
        line46:
          type: boolean
          description: >-
            Do you (or your spouse) have another vehicle available for personal
            use?
          example: true
        line47a:
          type: boolean
          description: Do you have evidence to support your deduction?
          example: true
        line47b:
          type: boolean
          description: If Yes, is the evidence written?
          example: true
        milesDTOList:
          type: array
          items:
            $ref: '#/components/schemas/MilesDTO'
      xml:
        name: ScheduleCVehicleInformationField
    MilesDTO:
      type: object
      properties:
        totalBusinessMiles:
          type: number
        totalPersonalMiles:
          type: number
        totalBusinessDeductionAmount:
          type: number
        make:
          type: string
        model:
          type: string
        year:
          type: string
        name:
          type: string
  securitySchemes:
    accessTokenSecurity:
      type: oauth2
      flows:
        implicit:
          authorizationUrl: /auth/account
          scopes:
            write: ''

````