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

# addUserWage

> 
Sets up wage information for an employee or contractor.

### Required After
- Must call `addUser` first
- Employee must exist in system

### Wage Basis Options
- "Per Hour" - Hourly employees
- "Per Week" - Weekly salary
- "Per Month" - Monthly salary
- "Per Year" - Annual salary

### Worker Types
- "W2" - Traditional employees
- "1099" - Independent contractors



## OpenAPI

````yaml post /adminPortal/addUserWage
openapi: 3.0.1
info:
  title: Default module
  description: ''
  version: 1.0.0
servers: []
security:
  - basic: []
tags: []
paths:
  /adminPortal/addUserWage:
    post:
      tags: []
      summary: addUserWage
      description: |-

        Sets up wage information for an employee or contractor.

        ### Required After
        - Must call `addUser` first
        - Employee must exist in system

        ### Wage Basis Options
        - "Per Hour" - Hourly employees
        - "Per Week" - Weekly salary
        - "Per Month" - Monthly salary
        - "Per Year" - Annual salary

        ### Worker Types
        - "W2" - Traditional employees
        - "1099" - Independent contractors
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                method:
                  type: string
                  title: addUserWage
                  example: addUserWage
                addUserWage:
                  type: object
                  properties:
                    companyId:
                      type: string
                      format: uuid
                    userId:
                      type: string
                      format: uuid
                    differentialPay:
                      type: string
                      enum:
                        - 'Yes'
                        - 'No'
                      example: Yes/No
                    wageRate:
                      type: number
                      maximum: 40
                    workerType:
                      type: string
                      title: Enum
                      maxLength: 8
                      enum:
                        - W2
                        - 1099-NEC
                    wageBasis:
                      type: string
                      title: >-
                        Enum - For 1099 only PerHour, PerDay, PerWeek values are
                        allowed 
                      enum:
                        - Per Week
                        - Per Year
                        - Per Day
                        - Per Hour
                        - Per Month
                      maxLength: 20
                    userType:
                      type: string
                      title: Enum
                      enum:
                        - Commission only/Eliglble for overtime
                        - Commission only/No overtime
                        - Paid by the hour
                        - Salary/Eligible for overtime
                        - Salary/No overtime
                      maxLength: 40
                    employmentStatus:
                      type: string
                      title: Enum
                      maxLength: 50
                      enum:
                        - Part Time (0-19 Hours per week)
                        - Seasonal (0-6 months per year)
                        - Full Time (30+ Hours per week)
                        - Part Time (20-29 Hours per week)
                        - Variable (Hours vary every week)
                    userRefTaxExempt:
                      type: string
                      title: Enum
                      enum:
                        - No, this employee is not tax exempt
                        - Yes, for another reason
                        - Yes, as an owner/corporate officer
                        - Yes, as a newspaper vendor
                        - Yes, as a member of the clergy or a religious order
                        - Yes, as a family employee
                        - Yes, as a non-resident alien
                      maxLength: 50
                    startDate:
                      type: string
                      maxLength: 10
                    paymentMethod:
                      type: string
                      enum:
                        - Direct Deposit
                        - Check
                      maxLength: 20
                  required:
                    - companyId
                    - userId
                    - wageRate
                    - workerType
                    - wageBasis
                    - userType
                    - employmentStatus
                    - userRefTaxExempt
                    - paymentMethod
                  x--orders:
                    - companyId
                    - employeeId
                    - wageRate
                    - workerType
                    - wageBasis
                    - employeeType
                    - employmentStatus
                    - employeeRefTaxExempt
                    - startDate
              required:
                - method
                - addUserWage
              x--orders:
                - method
                - employeeWage
            example:
              method: addUserWage
              userWage:
                companyId: AE36FED3-0FDE-41F7-8312-C29FACD0E9EC
                userId: 7DF6034A-F5A9-43F3-B5A2-42DC61A4EE12
                differentialPay: 'No'
                wageRate: 111
                workerType: W2
                wageBasis: Per Week
                userType: Salary/Eligible for overtime
                employmentStatus: Full Time (30+ Hours per week)
                userRefTaxExempt: Yes, as an owner/corporate officer
                startDate: '2023-02-25'
                paymentMethod: Direct Deposit
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: object
                properties:
                  userWage:
                    type: object
                    properties:
                      userWageId:
                        type: string
                      status:
                        type: string
                      message:
                        type: string
                    required:
                      - userWageId
                      - status
                    x--orders:
                      - EmployeeWageID
                      - Status
                      - Message
                required:
                  - userWage
                x--orders:
                  - EmployeeWage
              example:
                userWage:
                  userWageId: 739BC4C4-2D79-431A-B0FF-489BADB70D9C
                  status: Verification Pending
                  message: User Wage for jacob king has been saved successfully.
          headers: {}
        '400':
          description: ''
          content:
            application/json:
              schema:
                type: object
                properties:
                  error:
                    type: array
                    items:
                      type: object
                      properties:
                        code:
                          type: integer
                        message:
                          type: string
                      required:
                        - code
                required:
                  - error
              example:
                error:
                  code: 400
                  message: Invalid date format
          headers: {}
      deprecated: false
      security:
        - basic: []
components:
  securitySchemes:
    basic:
      type: http
      scheme: basic

````