---
title: "Schedule C"
method: POST
path: "/v1/users/{id}/schedule-c"
---

# Schedule C

`POST /v1/users/{id}/schedule-c`

## Request

- Base URL: `https://sandbox.columnapi.com`
- URL: `https://sandbox.columnapi.com/v1/users/{id}/schedule-c`
- Auth: HTTP basic

Create a Schedule C for the user

## Path parameters

- `id` string, required

## Request body

- object
  - `tax_year` integer, required: The tax year for the document. Remember that processing for tax year 2021 happens in 2022!
  - `principal_business_or_profession` string: Principal business or profession, including product or service
  - `business_name` string: Business Name
  - `employer_id_number` string: Employer ID Number (EIN)
  - `business_address` object: Business Address
    - `street_1` string, required: The first line of the user's address.
    - `street_2` string: The second line of the address.
    - `city` string, required
    - `state` string, required: The state as a two-letter abbreviation, e.g. "CA". Note that null should be passed if this is not known.
    - `zip_code` string, required: The ZIP code.
  - `accounting_method` 'cash' | 'accrual' | 'other': Accounting method
  - `other_accounting_method_description` string: Accounting method if the value for `accounting_method` is `other`
  - `materially_participated` boolean: The user "materially participate" in the operation of this business during the form's tax year
  - `started_or_acquired_in_tax_year` boolean: The user started or acquired this business during 2021
  - `require_1099` boolean: The user made any payments in the tax year that would require them to file Form(s) 1099?
  - `filed_1099` boolean: If `require_1099` is true, did the user file the required Form(s) 1099
  - `income` object
    - `description` string, required: The business code can be very general so the business description allows the user to be more specific if they want. For example, a business with the code other_transit_ground_passenger_transportation could have a description of uber driver, ridesharing, or even simply other transit and ground passenger transportation. Ultimately, it is at the discretion of the user. Your prefill may fail if this is missing.
    - `ein` string: The EIN should be 9 digits. There is no need to format the string before passing it into the API. If the user’s EIN is the same as their SSN, there is no need to pass the SSN in.
    - `code` '721310' | '721210' | '721100' | '722514' | '722410' | '722511' | '722513' | '722515' | '722300' | '561430' | '561740' | '561440' | '561450' | '561410' | '561300' | '561710' | '561210' | '561600' | '561720' | '561730' | '561110' | '561420' | '561500' | '561490' | '561790' | '561900' | '562000' | '112900' | '114110' | '113000' | '114210' | '115210' | '115110' | '115310' | '713100' | '713200' | '713900' | '712100' | '711410' | '711510' | '711100' | '711300' | '711210' | '236200' | '236100' | '237310' | '237210' | '237100' | '237990' | '238310' | '238210' | '238350' | '238330' | '238130' | '238150' | '238140' | '238320' | '238220' | '238110' | '238160' | '238170' | '238910' | '238120' | '238340' | '238290' | '238390' | '238190' | '238990' | '611000' | '522100' | '522200' | '522300' | '524210' | '524290' | '523140' | '523130' | '523110' | '523210' | '523120' | '523900' | '621610' | '621510' | '621310' | '621210' | '621330' | '621320' | '621340' | '621111' | '621112' | '621391' | '621399' | '621400' | '621900' | '622000' | '623000' | '624410' | '624200' | '624100' | '624310' | '511000' | '515000' | '517000' | '518210' | '519100' | '512100' | '512200' | '315000' | '312000' | '334000' | '335000' | '332000' | '337000' | '333000' | '339110' | '322000' | '324100' | '326000' | '331000' | '323100' | '313000' | '314000' | '336000' | '321000' | '339900' | '325100' | '325500' | '325300' | '325410' | '325200' | '325600' | '325900' | '311110' | '311800' | '311500' | '311400' | '311200' | '311610' | '311710' | '311300' | '311900' | '316210' | '316110' | '316990' | '327300' | '327100' | '327210' | '327400' | '327900' | '212110' | '211120' | '212200' | '211130' | '212300' | '213110' | '812111' | '812112' | '812220' | '812310' | '812320' | '812210' | '812330' | '812113' | '812930' | '812910' | '812920' | '812190' | '812990' | '811120' | '811110' | '811190' | '811310' | '811210' | '811430' | '811410' | '811420' | '811490' | '541100' | '541211' | '541214' | '541213' | '541219' | '541310' | '541350' | '541340' | '541330' | '541360' | '541320' | '541370' | '541380' | '541510' | '541400' | '541800' | '541600' | '541910' | '541920' | '541700' | '541930' | '541940' | '541990' | '531100' | '531210' | '531320' | '531310' | '531390' | '532100' | '532400' | '532210' | '532281' | '532310' | '532283' | '532284' | '532282' | '532289' | '813000' | '444130' | '444110' | '444200' | '444120' | '444190' | '448130' | '448150' | '448140' | '448310' | '448320' | '448110' | '448210' | '448120' | '448190' | '443142' | '443141' | '445310' | '445220' | '445230' | '445100' | '445210' | '445290' | '442110' | '442200' | '447100' | '452000' | '446120' | '446130' | '446110' | '446190' | '441300' | '441222' | '441228' | '441110' | '441210' | '441120' | '451211' | '451120' | '451140' | '451212' | '451130' | '451110' | '453920' | '453110' | '453220' | '453930' | '453210' | '453910' | '453310' | '453990' | '454110' | '454310' | '454210' | '454390' | '481000' | '485510' | '484110' | '484120' | '485210' | '486000' | '482110' | '487000' | '485410' | '484200' | '485300' | '485110' | '483000' | '485990' | '488000' | '492000' | '493100' | '221000' | '423200' | '423700' | '423600' | '423940' | '423300' | '423800' | '423500' | '423100' | '423400' | '423930' | '423910' | '423920' | '423990' | '424300' | '424800' | '424920' | '424600' | '424210' | '424500' | '424910' | '424930' | '424400' | '424950' | '424100' | '424700' | '424940' | '424990' | '425110' | '425120' | '999999': Note: These will likely change every year. Your prefill may fail if this is missing. The IRS code needed to classify each business. Use https://cotaxaide.org/tools/Business%20Activity%20Codes.html to help determine the correct classification to use. The API only accepts codes as defined in the Schedule C instruction PDF: https://www.irs.gov/pub/irs-pdf/i1040sc.pdf. This list is a subset of the entire BLS NAICS list.
    - `accounting_method` 'cash' | 'accrual': Accounting method for the business
    - `name` string: The name that the business operates under. Can be empty
    - `street` string: Include this field if it is different from the user's permanent address. Your schedule C prefill may fail if you’re missing both this field and the user's address.
    - `city` string: Include this field if it is different from the user's permanent address. Your schedule C prefill may fail if you’re missing both this field and the user's address.
    - `state` 'AL' | 'AK' | 'AZ' | 'AR' | 'CA' | 'CO' | 'CT' | 'DE' | 'DC' | 'FL' | 'GA' | 'HI' | 'ID' | 'IL' | 'IN' | 'IA' | 'KS' | 'KY' | 'LA' | 'ME' | 'MD' | 'MA' | 'MI' | 'MN' | 'MS' | 'MO' | 'MT' | 'NE' | 'NV' | 'NH' | 'NJ' | 'NM' | 'NY' | 'NC' | 'ND' | 'OH' | 'OK' | 'OR' | 'PA' | 'PR' | 'RI' | 'SC' | 'SD' | 'TN' | 'TX' | 'VI' | 'UT' | 'VT' | 'VA' | 'WA' | 'WV' | 'WI' | 'WY': Include this field if it is different from the user's permanent address. Your schedule C prefill may fail if you’re missing both this field and the user's address.
    - `zip` string: Include this field if it is different from the user's permanent address. Your schedule C prefill may fail if you’re missing both this field and the user's address.
    - `new_business` boolean: Indicate if the user has started or acquired the business in the current tax year.
    - `business_home_area` integer: The area (in square feet) of the tax payers home that they use for their business
    - `expenses` object
      - `advertising_amount_cents` integer: Advertising expenses in cents
      - `commission_and_fees_amount_cents` integer: Commissions and fees in cents
      - `contract_labor_amount_cents` integer: Contract labor expenses in cents
      - `depletion_amount_cents` integer: Depletion allowable for business extracting natural resources in cents (line 12)
      - `employee_benefit_program_amount_cents` integer: Employee benefit programs (other than on line 19) in cents
      - `business_insurance_amount_cents` integer: amount spent on non health and non vehicle insurance in cents
      - `personal_health_insurance_amount_cents` integer: amount spent on health insurance for self and family in cents
      - `supplies_amount_cents` integer: amount spent on supplies in cents. This field ultimately represents line 22. For tax payers with a business with less than 25M in gross revenue, you can combine the values of Line 36 (Items purchased for resale) and Line 38 (materials and supplies) into this field.
      - `mortgage_interest_amount_cents` integer: Mortgage (paid to banks, etc.) in cents
      - `other_interest_amount_cents` integer: amount spent on non mortgage interest in cents
      - `legal_and_professional_services_amount_cents` integer: Legal and professional services expenses in cents
      - `office_expenses_amount_cents` integer: Office expenses in cents
      - `pension_profit_sharing_plans_amount_cents` integer: Pension and profit-sharing plans expenses in cents
      - `machinery_equipment_rent_amount_cents` integer: Vehicles, machinery, and equipment rent or lease in cents
      - `other_rent_amount_cents` integer: amount spent on non machinery or non equipment rent in cent
      - `repairs_and_maintenance_amount_cents` integer: Repairs and maintenance in cents
      - `utilities_amount_cents` integer: Utilities in cents
      - `wages_amount_cents` integer: Wages (less employment credits) in cents
      - `tax_licenses_amount_cents` integer: Taxes and licenses in cents
      - `travel_amount_cents` integer: Travel expenses in cents
      - `meals_amount_cents` integer: Amount spent on all meals in cents
      - `entertainment_amount_cents` integer: Total amount spent on entertainment in cents
      - `other_expenses` object[]
        - `expense_description` string: The name of the expense
        - `expense_amount_cents` integer: The amount of the expense in cents
      - `payments_require_1099` boolean: Boolean representing if the tax payer paid anyone 600$ or more to perform a service for the business
    - `vehicles` object[]
      - `service_date` string, date: The date the vehicle was placed in service for business purposes. Your prefill may fail if this is missing.
      - `business_miles` integer: [New for Tax Year 2023 returns!] Miles driven on specific vehicle for business during the year
      - `business_miles_first_half_year` integer: [Deprecated, was used just for tax year 2022] Miles driven on specific vehicle for business before 7/1/2022
      - `business_miles_second_half_year` integer: [Deprecated, was used just for tax year 2022] Miles driven on specific vehicle for business on and after 7/1/2022
      - `total_commuting_miles` integer: Miles driven for commuting to and from work on specific vehicle
      - `total_other_miles` integer: Number of miles driven for other purposes
      - `parking_expense_amount_cents` integer: Amount spent for specific vehicle on parking fees in cents
      - `toll_expense_amount_cents` integer: Amount spent for specific vehicle on tolls in cents
      - `interest_expense_amount_cents` integer: Amount spent for specific vehicle on interest in cents
      - `was_used_for_personal` boolean: A boolean representing if a user used the vehicle for personal use
      - `another_vehicle_available` boolean: A boolean representing if user has another vehicle available for personal use
      - `has_supporting_evidence` boolean: A boolean representing if a user has supporting evidence for your business use for this vehicle
      - `has_written_evidence` boolean: A boolean representing if a user has written evidence for your business use for this vehicle
  - `expenses` object
    - `advertising_amount_cents` integer: Advertising expenses in cents
    - `commission_and_fees_amount_cents` integer: Commissions and fees in cents
    - `contract_labor_amount_cents` integer: Contract labor expenses in cents
    - `depletion_amount_cents` integer: Depletion allowable for business extracting natural resources in cents (line 12)
    - `employee_benefit_program_amount_cents` integer: Employee benefit programs (other than on line 19) in cents
    - `business_insurance_amount_cents` integer: amount spent on non health and non vehicle insurance in cents
    - `personal_health_insurance_amount_cents` integer: amount spent on health insurance for self and family in cents
    - `supplies_amount_cents` integer: amount spent on supplies in cents. This field ultimately represents line 22. For tax payers with a business with less than 25M in gross revenue, you can combine the values of Line 36 (Items purchased for resale) and Line 38 (materials and supplies) into this field.
    - `mortgage_interest_amount_cents` integer: Mortgage (paid to banks, etc.) in cents
    - `other_interest_amount_cents` integer: amount spent on non mortgage interest in cents
    - `legal_and_professional_services_amount_cents` integer: Legal and professional services expenses in cents
    - `office_expenses_amount_cents` integer: Office expenses in cents
    - `pension_profit_sharing_plans_amount_cents` integer: Pension and profit-sharing plans expenses in cents
    - `machinery_equipment_rent_amount_cents` integer: Vehicles, machinery, and equipment rent or lease in cents
    - `other_rent_amount_cents` integer: amount spent on non machinery or non equipment rent in cent
    - `repairs_and_maintenance_amount_cents` integer: Repairs and maintenance in cents
    - `utilities_amount_cents` integer: Utilities in cents
    - `wages_amount_cents` integer: Wages (less employment credits) in cents
    - `tax_licenses_amount_cents` integer: Taxes and licenses in cents
    - `travel_amount_cents` integer: Travel expenses in cents
    - `meals_amount_cents` integer: Amount spent on all meals in cents
    - `entertainment_amount_cents` integer: Total amount spent on entertainment in cents
    - `other_expenses` object[]
      - `expense_description` string: The name of the expense
      - `expense_amount_cents` integer: The amount of the expense in cents
    - `payments_require_1099` boolean: Boolean representing if the tax payer paid anyone 600$ or more to perform a service for the business
  - `cost_of_goods_sold` object
    - `method_to_value_closing_inventory` object: Closing Inventory
      - `method_used` string[]: Method(s) used to value closing inventory. Accepted values are `cost`, `lower of cost or market`, and `other`
      - `other_explanation` string: Explanation if `method_used` contains `other`
    - `determining_change` boolean: Was there any change in determining quantities, costs, or valuations between opening and closing inventory?
    - `determining_change_reason` string: If `determining_change` is true, attach explanation
    - `beginning_of_year_inventory_cents` integer: Inventory at beginning of year in cents
    - `beginning_of_year_difference_reason` string: Explanation if `beginning_of_year_inventory` is different from last year’s closing inventory
    - `purchases_cents` integer: Purchases less cost of items withdrawn for personal use in cents
    - `cost_of_labor_cents` integer: Cost of labor in cents. Do not include any amounts paid to yourself
    - `materials_and_supplies_cents` integer: Materials and supplies in cents
    - `other_costs_cents` integer: Other costs in cents
    - `end_of_year_inventory` integer: Inventory at end of year in cents
  - `vehicle_information` object
    - `service_date` string, date: The date the vehicle was placed in service for business purposes. Your prefill may fail if this is missing.
    - `business_miles` integer: [New for Tax Year 2023 returns!] Miles driven on specific vehicle for business during the year
    - `business_miles_first_half_year` integer: [Deprecated, was used just for tax year 2022] Miles driven on specific vehicle for business before 7/1/2022
    - `business_miles_second_half_year` integer: [Deprecated, was used just for tax year 2022] Miles driven on specific vehicle for business on and after 7/1/2022
    - `total_commuting_miles` integer: Miles driven for commuting to and from work on specific vehicle
    - `total_other_miles` integer: Number of miles driven for other purposes
    - `parking_expense_amount_cents` integer: Amount spent for specific vehicle on parking fees in cents
    - `toll_expense_amount_cents` integer: Amount spent for specific vehicle on tolls in cents
    - `interest_expense_amount_cents` integer: Amount spent for specific vehicle on interest in cents
    - `was_used_for_personal` boolean: A boolean representing if a user used the vehicle for personal use
    - `another_vehicle_available` boolean: A boolean representing if user has another vehicle available for personal use
    - `has_supporting_evidence` boolean: A boolean representing if a user has supporting evidence for your business use for this vehicle
    - `has_written_evidence` boolean: A boolean representing if a user has written evidence for your business use for this vehicle
  - `other_expenses` object[]
    - `expense_description` string: The name of the expense
    - `expense_amount_cents` integer: The amount of the expense in cents

## Response `200`

200

- object
  - `id` string
  - `created_timestamp` integer

## Other responses

- `400`: 400
- `401`: 401
- `404`: 404

## Changes

- **2026-11-03** `a1b57b175f2b`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/columntax/apis/column-tax-api/changes/v1/users/:id/schedule-c/post.md)

---

[API](https://skmtc.dev/columntax/apis/column-tax-api.md) - [All operations](https://skmtc.dev/columntax/apis/column-tax-api/llms.txt) - [OpenAPI document](https://skmtc.dev/columntax/apis/column-tax-api/revisions/a1b57b175f2b?raw)
