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

# Create wage type

> Create a new wage type (draft status). Requires write:wage_types scope.



## OpenAPI

````yaml /api-reference/preview.json post /gb/wage-types
openapi: 3.1.0
info:
  title: FastAPI
  version: 0.1.0
servers: []
security: []
paths:
  /gb/wage-types:
    post:
      tags:
        - Great Britain
        - Wage Types
      summary: Create wage type
      description: Create a new wage type (draft status). Requires write:wage_types scope.
      operationId: create_wage_type_gb_wage_types_post
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/GBWageTypeCreateRequest'
      responses:
        '201':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GBWageTypeResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      security:
        - BearerToken:
            - write:wage_types
components:
  schemas:
    GBWageTypeCreateRequest:
      properties:
        wage_type_code:
          type: string
          title: Wage Type Code
          description: Business key (e.g., UK-E-025)
        name:
          type: string
          title: Name
          description: Display name
        category:
          $ref: '#/components/schemas/GBWageTypeCategory'
          description: Wage type category
        description:
          type: string
          title: Description
          description: Description of the wage type
        valid_from:
          type: string
          format: date
          title: Valid From
          description: Date when this version becomes effective
        taxable_status:
          $ref: '#/components/schemas/TaxableStatus'
          description: Whether taxable under PAYE
        tax_timing:
          $ref: '#/components/schemas/TaxTiming'
          description: When tax is applied
        rti_payment_type:
          anyOf:
            - type: string
            - type: 'null'
          title: Rti Payment Type
          description: RTI FPS payment type mapping
        ni_class:
          $ref: '#/components/schemas/NIClass'
          description: National Insurance class
        ni_employee_applies:
          type: boolean
          title: Ni Employee Applies
          description: Whether employee NI applies
          default: true
        ni_employer_treatment:
          anyOf:
            - $ref: '#/components/schemas/EmployerNITreatment'
            - type: 'null'
          description: Employer NI treatment
        is_class_1a_applicable:
          type: boolean
          title: Is Class 1A Applicable
          description: Whether Class 1A NI applies
          default: false
        p11d_reportable_status:
          $ref: '#/components/schemas/TaxableStatus'
          description: P11D reporting requirement
        pension_status:
          $ref: '#/components/schemas/PensionStatus'
          description: Pension inclusion status
        is_ae_qualifying:
          type: boolean
          title: Is Ae Qualifying
          description: Counts towards AE qualifying earnings
          default: false
        uses_ae_bands:
          type: boolean
          title: Uses Ae Bands
          description: Uses AE earnings bands
          default: false
        is_holiday_pay_included:
          type: boolean
          title: Is Holiday Pay Included
          description: Include in holiday pay calculation
          default: false
        is_salary_sacrifice_allowed:
          type: boolean
          title: Is Salary Sacrifice Allowed
          description: Can be salary sacrificed
          default: false
        nmw_treatment:
          $ref: '#/components/schemas/NMWTreatment'
          description: NMW/NLW treatment for this wage type
          default: excluded
        opra_rule:
          $ref: '#/components/schemas/OpraRule'
          description: Optional Remuneration Arrangement rule
          default: n/a
        payrolling_eligible_status:
          $ref: '#/components/schemas/TaxableStatus'
          description: Can be payrolled
        uses_official_interest_rate:
          type: boolean
          title: Uses Official Interest Rate
          description: Uses HMRC official interest rate
          default: false
        calculation_variants:
          anyOf:
            - items:
                type: string
              type: array
            - type: 'null'
          title: Calculation Variants
          description: Calculation method variants
        thresholds:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Thresholds
          description: Applicable thresholds
        regularity_window_weeks:
          anyOf:
            - type: integer
            - type: 'null'
          title: Regularity Window Weeks
          description: Regularity detection window in weeks
        regularity_threshold_periods:
          anyOf:
            - type: integer
            - type: 'null'
          title: Regularity Threshold Periods
          description: Regularity threshold periods
        is_gross_up:
          type: boolean
          title: Is Gross Up
          description: Whether this wage type triggers gross-up calculation
          default: false
        is_notional:
          type: boolean
          title: Is Notional
          description: Non-cash notional earning (RCA/RSU)
          default: false
        deduction_tax_treatment:
          $ref: '#/components/schemas/DeductionTaxTreatment'
          description: How a deduction interacts with the tax/NIC bases
          default: post_tax
        legislative_source:
          anyOf:
            - type: string
            - type: 'null'
          title: Legislative Source
          description: Legislative reference
      additionalProperties: true
      type: object
      required:
        - wage_type_code
        - name
        - category
        - description
        - valid_from
        - taxable_status
        - tax_timing
        - ni_class
        - p11d_reportable_status
        - pension_status
        - payrolling_eligible_status
      title: GBWageTypeCreateRequest
      description: Request schema for creating a new GB wage type.
    GBWageTypeResponse:
      properties:
        valid_from:
          anyOf:
            - type: string
              format: date
            - type: 'null'
          title: Valid From
        valid_to:
          anyOf:
            - type: string
              format: date
            - type: 'null'
          title: Valid To
        id:
          type: integer
          title: Id
          description: Database ID
        wage_type_code:
          type: string
          title: Wage Type Code
          description: Business key (e.g., UK-E-003)
        name:
          type: string
          title: Name
          description: Display name
        category:
          $ref: '#/components/schemas/GBWageTypeCategory'
          description: Wage type category
        description:
          type: string
          title: Description
          description: Description of the wage type
        status:
          $ref: '#/components/schemas/GBWageTypeStatus'
          description: Lifecycle status
        taxable_status:
          $ref: '#/components/schemas/TaxableStatus'
          description: Whether taxable under PAYE
        tax_timing:
          $ref: '#/components/schemas/TaxTiming'
          description: When tax is applied
        rti_payment_type:
          anyOf:
            - type: string
            - type: 'null'
          title: Rti Payment Type
          description: RTI FPS payment type mapping
        ni_class:
          $ref: '#/components/schemas/NIClass'
          description: National Insurance class
        ni_employee_applies:
          type: boolean
          title: Ni Employee Applies
          description: Whether employee NI applies
        ni_employer_treatment:
          anyOf:
            - $ref: '#/components/schemas/EmployerNITreatment'
            - type: 'null'
          description: Employer NI treatment
        is_class_1a_applicable:
          type: boolean
          title: Is Class 1A Applicable
          description: Whether Class 1A NI applies
        p11d_reportable_status:
          $ref: '#/components/schemas/TaxableStatus'
          description: P11D reporting requirement
        pension_status:
          $ref: '#/components/schemas/PensionStatus'
          description: Pension inclusion status
        is_ae_qualifying:
          type: boolean
          title: Is Ae Qualifying
          description: Counts towards AE qualifying earnings
        uses_ae_bands:
          type: boolean
          title: Uses Ae Bands
          description: Uses AE earnings bands
        is_holiday_pay_included:
          type: boolean
          title: Is Holiday Pay Included
          description: Include in holiday pay calculation
        is_salary_sacrifice_allowed:
          type: boolean
          title: Is Salary Sacrifice Allowed
          description: Can be salary sacrificed
        nmw_treatment:
          $ref: '#/components/schemas/NMWTreatment'
          description: NMW/NLW treatment for this wage type
        opra_rule:
          $ref: '#/components/schemas/OpraRule'
          description: Optional Remuneration Arrangement rule
        payrolling_eligible_status:
          $ref: '#/components/schemas/TaxableStatus'
          description: Can be payrolled
        uses_official_interest_rate:
          type: boolean
          title: Uses Official Interest Rate
          description: Uses HMRC official interest rate
        calculation_variants:
          anyOf:
            - items:
                type: string
              type: array
            - type: 'null'
          title: Calculation Variants
          description: Calculation method variants
        thresholds:
          anyOf:
            - additionalProperties: true
              type: object
            - type: 'null'
          title: Thresholds
          description: Applicable thresholds
        regularity_window_weeks:
          anyOf:
            - type: integer
            - type: 'null'
          title: Regularity Window Weeks
          description: Regularity detection window in weeks
        regularity_threshold_periods:
          anyOf:
            - type: integer
            - type: 'null'
          title: Regularity Threshold Periods
          description: Regularity threshold periods
        legislative_source:
          anyOf:
            - type: string
            - type: 'null'
          title: Legislative Source
          description: Legislative reference
        owner:
          anyOf:
            - type: string
            - type: 'null'
          title: Owner
          description: Responsible owner
        reviewer:
          anyOf:
            - type: string
            - type: 'null'
          title: Reviewer
          description: Compliance reviewer
        last_reviewed_at:
          anyOf:
            - type: string
              format: date
            - type: 'null'
          title: Last Reviewed At
          description: Last review date
        is_gross_up:
          type: boolean
          title: Is Gross Up
          description: Whether this wage type triggers gross-up calculation
          default: false
        is_notional:
          type: boolean
          title: Is Notional
          description: Non-cash notional earning (RCA/RSU)
          default: false
        deduction_tax_treatment:
          $ref: '#/components/schemas/DeductionTaxTreatment'
          description: How a deduction interacts with the tax/NIC bases
          default: post_tax
      additionalProperties: true
      type: object
      required:
        - id
        - wage_type_code
        - name
        - category
        - description
        - status
        - taxable_status
        - tax_timing
        - rti_payment_type
        - ni_class
        - ni_employee_applies
        - ni_employer_treatment
        - is_class_1a_applicable
        - p11d_reportable_status
        - pension_status
        - is_ae_qualifying
        - uses_ae_bands
        - is_holiday_pay_included
        - is_salary_sacrifice_allowed
        - nmw_treatment
        - opra_rule
        - payrolling_eligible_status
        - uses_official_interest_rate
      title: GBWageTypeResponse
      description: Response schema for GB wage type.
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    GBWageTypeCategory:
      type: string
      enum:
        - earnings
        - deductions
        - benefits
        - statutory
        - pension
        - contributions
        - adjustments
        - reimbursements
      title: GBWageTypeCategory
      description: Category of GB wage type.
    TaxableStatus:
      type: string
      enum:
        - 'yes'
        - 'no'
        - conditional
      title: TaxableStatus
      description: Whether the wage type is taxable.
    TaxTiming:
      type: string
      enum:
        - on_payment
        - on_accrual
        - on_event
      title: TaxTiming
      description: When tax is applied.
    NIClass:
      type: string
      enum:
        - class_1
        - class_1a
        - none
        - conditional
      title: NIClass
      description: National Insurance class.
    EmployerNITreatment:
      type: string
      enum:
        - secondary
        - class_1a
        - none
      title: EmployerNITreatment
      description: Employer NI treatment.
    PensionStatus:
      type: string
      enum:
        - scheme_defined
        - 'yes'
        - 'no'
      title: PensionStatus
      description: Pension inclusion status.
    NMWTreatment:
      type: string
      enum:
        - included
        - excluded
        - reduces
        - accommodation_offset
      title: NMWTreatment
      description: Classification of a wage type's contribution to NMW earnings.
    OpraRule:
      type: string
      enum:
        - 'yes'
        - 'no'
        - n/a
      title: OpraRule
      description: Optional Remuneration Arrangement rule.
    DeductionTaxTreatment:
      type: string
      enum:
        - post_tax
        - payroll_giving
      title: DeductionTaxTreatment
      description: How a deduction interacts with the tax/NIC bases.
    GBWageTypeStatus:
      type: string
      enum:
        - draft
        - approved
        - deprecated
      title: GBWageTypeStatus
      description: Lifecycle status of wage type.
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
      type: object
      required:
        - loc
        - msg
        - type
      title: ValidationError
  securitySchemes:
    BearerToken:
      type: oauth2
      flows:
        password:
          scopes:
            read:all: Read all
            write:all: Write all
            read:health_check: Read health check
            write:health_check: Write health check
            read:wage_types: Read wage types
            write:wage_types: Write wage types
          tokenUrl: >-
            https://auth-preview.intermezzo.ai/authorize?audience=api-preview.intermezzo.ai

````