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

# Update tax profile

> Update an existing user's tax profile



## OpenAPI

````yaml https://dev.hurdlr.com/rest/v1/devUtils/documentation?version=5&Authorization=dexfeE6aRK3zwXP4ku5aWm8w&env=sandbox post /v5/taxes/userTaxSetup
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/taxes/userTaxSetup:
    post:
      tags:
        - Taxes
      summary: Update tax profile
      description: Update an existing user's tax profile
      operationId: postUserTaxSetup
      requestBody:
        description: userTaxSetup object
        content:
          '*/*':
            schema:
              $ref: '#/components/schemas/TRAX_POST_BODYUserTaxSetupDTOV5'
        required: true
      responses:
        '200':
          description: Successful operation
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/FormRetVal'
      security:
        - accessTokenSecurity: []
components:
  schemas:
    TRAX_POST_BODYUserTaxSetupDTOV5:
      properties:
        userTaxSetup:
          $ref: '#/components/schemas/UserTaxSetupDTOV5'
    FormRetVal:
      type: object
      properties:
        result:
          type: string
          description: The result of the action performed
          enum:
            - SUCCESS
            - FAILURE
        errors:
          $ref: '#/components/schemas/ValidationRetVal'
        id:
          type: string
          description: Id of the entity being acted upon
        webhook:
          $ref: '#/components/schemas/EntityUpdateEvent'
      description: Object containing details about result of the action performed
    UserTaxSetupDTOV5:
      required:
        - federalFilingStatus
        - stateFilingStatus
        - taxState
      type: object
      properties:
        taxCountryCode:
          type: string
          description: The ISO 3166-1 alpha-3 country code
        federalFilingStatus:
          type: string
          description: The Tax Federal Filing Status
          example: SINGLE
          enum:
            - SINGLE
            - MARRIED
            - MARRIED_SEPARATELY
            - HEAD
            - WIDOWER
        stateFilingStatus:
          type: string
          description: The Tax State Filing Status
          example: SINGLE
          enum:
            - SINGLE
            - MARRIED
            - MARRIED_SEPARATELY
            - HEAD
            - WIDOWER
        taxState:
          type: string
          description: >-
            The two-character State (or Province) abbreviation for which tax
            needs to be calculated on
          example: DC
        annualW2Income:
          type: number
          description: The annual W-2 income total for which tax needs to be calculated on
          example: 10000
        tipIncome:
          type: number
          description: >-
            The year-to-date amount of w2 income that the filer has earned from
            tips
          example: 5000
        overtimeIncome:
          type: number
          description: >-
            The year-to-date amount of w2 income that the filer has earned from
            overtime
          example: 3000
        isSetupComplete:
          type: boolean
          description: Whether or not the current user's tax profile is complete
          readOnly: true
        useW2Withholding:
          type: boolean
          description: >-
            Should be set to true if the user wants to specify their own W-2
            Withholding amounts
          example: true
        federalW2Withholding:
          type: number
          description: >-
            Federal W-2 Withholding amount, if the user wants to specify their
            own custom amount
          example: 1000.51
        stateW2Withholding:
          type: number
          description: >-
            State W-2 Withholding amount, if the user wants to specify their own
            custom amount
          example: 1000.51
        numExemptions:
          type: integer
          description: The number of state personal exemptions the tax filer qualifies for
          format: int32
          example: 1
        useHomeOfficeDeduction:
          type: boolean
          description: >-
            If the user wants to use the Simplified Home Office Deduction, this
            should be set to true.
          example: true
        homeOfficeArea:
          type: number
          description: >-
            Size of home office in sq. ft; required if using the Simplified Home
            Office Deduction
          example: 250.5
        vehicleBusinessPercent:
          type: number
          description: >-
            Canadian users can provide their own business vehicle percentage
            (instead of using the mileage numbers to determine percentage)
          example: 49.9
        useMileageDeduction:
          type: boolean
          description: >-
            The IRS dictates that you can only use the Standard Mileage Rate or
            Actual Auto Expenses. Set this to true if the user will be using the
            Standard Mileage Rate
          example: false
        useUserEstimatedBusinessMileage:
          type: boolean
          description: >-
            If the user wants to use their own annual business mileage estimate,
            this should be set to true.
        userEstimatedBusinessMileage:
          type: number
          description: >-
            Annual business mileage estimate, in miles; required if using
            user-estimated business mileage
          example: 1000
        useUserEstimatedBusinessExpenses:
          type: boolean
          description: >-
            If the user wants to use their own annual business expenses
            estimate, this should be set to true.
        userEstimatedBusinessExpenses:
          type: number
          description: >-
            Annual business expenses estimate, required if using user-estimated
            business expenses
          example: 551.76
        useUserEstimatedBusinessRevenue:
          type: boolean
          description: >-
            If the user wants to use their own annual business income estimate,
            this should be set to true.
        userEstimatedBusinessRevenue:
          type: number
          description: >-
            Annual business income estimate, required if using user-estimated
            business income
          example: 551.76
    ValidationRetVal:
      type: object
      properties:
        fieldErrors:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/ValidationError'
          description: Map of field-level errors, often originating from validation errors
        globalErrors:
          type: array
          description: List of higher-level errors
          items:
            $ref: '#/components/schemas/ValidationError'
      description: Error object containing details errors incurred, if any
    EntityUpdateEvent:
      type: object
      properties:
        userId:
          type: string
        accountantUserId:
          type: string
        type:
          type: string
          enum:
            - ENTITY_UPDATE
            - LIFECYCLE_EVENT
            - LIFECYCLE
    ValidationError:
      type: object
      properties:
        type:
          type: string
          description: A broad categorization of the error
          enum:
            - DUPLICATE
            - REQUIRED
            - DELETE
            - INVALID_VALUE
            - NOT_MODIFIABLE
            - GENERAL
            - INVALID_FORMAT
        errorMessage:
          type: string
          description: Human-friendly message describing this error
        message:
          type: string
          writeOnly: true
          enum:
            - DUPLICATE
            - REQUIRED
            - DELETE
            - INVALID_VALUE
            - NOT_MODIFIABLE
            - GENERAL
            - INVALID_FORMAT
            - INVALID_MAPPING
      description: List of higher-level errors
  securitySchemes:
    accessTokenSecurity:
      type: oauth2
      flows:
        implicit:
          authorizationUrl: /auth/account
          scopes:
            write: ''

````