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

# Update an employer benefit line item



## OpenAPI

````yaml /spec/openapi.json put /employer_benefit_line_items/{employer_benefit_line_item}
openapi: 3.0.0
info:
  title: Nmbr API
  description: API to interact with Nmbr Payroll
  version: 1.0.0
servers:
  - url: https://sandbox.nmbr.co/services/payroll
security:
  - CompanyToken: []
tags:
  - name: Accounting Codes
  - name: Accounting Code Rules
  - name: Adjustments
  - name: Allowances
  - name: Allowance Line Items
  - name: Allowance Types
  - name: Async Tasks
  - name: Bank Accounts
  - name: Business Entities
  - name: Business Entity Verifications
  - name: Business Entity ROE Authorizations
  - name: Business Presets
  - name: Calculations
  - name: Companies
  - name: Contractors
  - name: Deductions
  - name: Deduction Line Items
  - name: Deduction Types
  - name: Earnings
  - name: Earning Line Items
  - name: Earning Types
  - name: Effective Tax Properties
  - name: Employees
  - name: Employee Benefits
  - name: Employee Benefit Line Items
  - name: Employee Benefit Types
  - name: Employer Benefits
  - name: Employer Benefit Line Items
  - name: Employer Benefit Types
  - name: Employer Statutory Withholding Line Items
  - name: Employer Statutory Withholding Types
  - name: Forms
  - name: Form Batches
  - name: Form Types
  - name: Holidays
  - name: Integrations
  - name: Journal Entries
  - name: Overtime Rates
  - name: Partners
  - name: Pay Rates
  - name: Pay Schedules
  - name: Pay Splits
  - name: Pay Stubs
  - name: Payments
  - name: Payrolls
  - name: Reimbursements
  - name: Reimbursement Line Items
  - name: Reimbursement Types
  - name: Remittance Accounts
  - name: Remittance Account Enrollments
  - name: Reports
  - name: Statutory Withholding Line Items
  - name: Statutory Withholding Types
  - name: Tags
  - name: Tag Groups
  - name: Tax Properties
  - name: Tax Property Templates
  - name: Tokens
  - name: Usage Records
  - name: Usage Summaries
  - name: Vacation Pay
  - name: Vacation Pay Settings
  - name: Webhooks
  - name: Work Assignments
paths:
  /employer_benefit_line_items/{employer_benefit_line_item}:
    put:
      tags:
        - Employer Benefit Line Items
      summary: Update an employer benefit line item
      operationId: employer-benefit-line-items-update
      parameters:
        - name: employer_benefit_line_item
          in: path
          schema:
            type: string
          required: true
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                business_preset_id:
                  type: string
                  description: >-
                    Writing may be blocked when entity is managed by a parent
                    resource


                    Editing is prevented when `is_editable` is false
                employer_benefit_type:
                  type: string
                  description: >-
                    The type of Employer Benefit for this line item.


                    Writing may be blocked when entity is managed by a parent
                    resource


                    Editing is prevented when `is_editable` is false
                  enum:
                    - accident_insurance_plan
                    - critical_illness
                    - debt_relief
                    - dental
                    - employee_assistance_program
                    - fondaction
                    - fondaction_rrsp
                    - fonds_solidarite_ftq
                    - fonds_solidarite_ftq_rrsp
                    - gift_near_cash
                    - gift_non_cash_non_taxable
                    - gift_non_cash_taxable
                    - group_dependent_life_insurance
                    - group_term_life_insurance
                    - health
                    - health_spending_account
                    - long_term_disability
                    - meals_subsidized_non_cash
                    - non_group_long_term_disability
                    - non_group_short_term_disability
                    - parking
                    - pension_dbpp
                    - pension_dcpp
                    - pension_mfpp
                    - pension_prpp
                    - pension_restricted_rrsp
                    - pension_rrsp
                    - pension_unregistered_prpp
                    - pension_vrsp
                    - professional_membership
                    - profit_sharing_dpsp
                    - savings_tfsa
                    - second_opinion_medical_consultation
                    - short_term_disability
                    - transit_pass
                    - transportation_to_from_work
                    - vehicle_employer_provided
                    - virtual_health_service
                    - wellness_spending_account
                custom_amount:
                  type: number
                  description: >-
                    An override for `managed_amount`. When set, `amount`
                    reflects this value instead of `managed_amount`.


                    Editing is prevented when `is_editable` is false
                  format: decimal
                  maximum: 99999
                accrued_vacation_pay:
                  type: number
                  description: >-
                    The vacation pay accrued on this line item, calculated based
                    on the Work Assignment's Vacation Pay Settings.
                  format: decimal
                  minimum: 0
                  maximum: 99999
                title:
                  type: string
                  description: >-
                    Writing may be blocked when entity is managed by a parent
                    resource


                    Editing is prevented when `is_editable` is false
                  nullable: true
                  maxLength: 255
                title_translations:
                  type: object
                  description: >-
                    Optional translations for the `title` property.


                    Writing may be blocked when entity is managed by a parent
                    resource


                    Editing is prevented when `is_editable` is false
                  allOf:
                    - $ref: '#/components/schemas/Translations'
                  nullable: true
                remittance_account_id:
                  type: string
                  description: >-
                    Writing may be blocked when entity is managed by a parent
                    resource


                    Editing is prevented when `is_editable` is false
                expense_accounting_code_id:
                  type: string
                  description: >-
                    Writing may be blocked when entity is managed by a parent
                    resource
                custom_expense_accounting_code_id:
                  type: string
                liability_accounting_code_id:
                  type: string
                  description: >-
                    Writing may be blocked when entity is managed by a parent
                    resource
                custom_liability_accounting_code_id:
                  type: string
                component_settings:
                  type: object
                  properties:
                    attributes_locked:
                      type: boolean
                external_ref:
                  type: string
                  maxLength: 255
                custom_tag_assignment:
                  type: object
                  properties:
                    unit:
                      type: string
                      enum:
                        - amount
                        - percentage
                    is_component_locked:
                      type: boolean
                    tag_allocations:
                      type: array
                      items:
                        type: object
                        properties:
                          tags:
                            type: array
                            items:
                              type: string
                          value:
                            type: number
                            format: decimal
                            minimum: 0
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                    description: The unique identifier of the object in Nmbr.
                    readOnly: true
                  object:
                    type: string
                    description: >-
                      The type of the object in Nmbr
                      (`"employer_benefit_line_item"`).
                    readOnly: true
                  data:
                    $ref: '#/components/schemas/EmployerBenefitLineItem'
              example:
                id: <id>
                object: employer_benefit_line_item
                data:
                  pay_stub:
                    id: <id>
                    object: pay_stub
                    links:
                      self: /pay_stubs/<id>
                  line_item_type: employer_benefit
                  is_managed: false
                  amount: 35
                  custom_amount: null
                  managed_amount: 35
                  employer_benefit_type:
                    id: <id>
                    object: employer_benefit_type
                    data:
                      type: health
                      label: Health
                    links:
                      self: /employer_benefit_types/health
                  recurrence: null
                  title: null
                  title_translations: null
                  title_translated: null
                  remittance_account_id: null
                  remittance_account: null
                  business_preset: null
                  source_adjustment: null
                  expense_accounting_code: null
                  managed_expense_accounting_code: null
                  custom_expense_accounting_code: null
                  liability_accounting_code: null
                  managed_liability_accounting_code: null
                  custom_liability_accounting_code: null
                  component_settings:
                    attributes_locked: false
                  external_ref: null
                  created_at: '2026-01-01T00:00:00.000000Z'
                  updated_at: '2026-01-01T00:00:00.000000Z'
                links:
                  self: /employer_benefit_line_items/<id>
components:
  schemas:
    Translations:
      type: object
      nullable: true
      properties:
        en:
          type: string
          maxLength: 255
        fr:
          type: string
          maxLength: 255
    EmployerBenefitLineItem:
      type: object
      title: Employer Benefit Line Item
      properties:
        pay_stub:
          type: object
          properties:
            id:
              type: string
              description: The unique identifier of the object in Nmbr.
              readOnly: true
            object:
              type: string
              description: The type of the object in Nmbr (`"pay_stub"`).
              readOnly: true
        line_item_type:
          type: string
          nullable: true
        is_managed:
          type: boolean
          description: >-
            Whether this line item was generated by an Employer Benefit
            recurrence and calculated automatically. When `true`, only
            `custom_amount` can be modified and the line item cannot be deleted.
        amount:
          type: number
          description: >-
            The effective amount for this line item. Returns `custom_amount` if
            set, otherwise `managed_amount`. Read-only.
          nullable: true
          format: decimal
        custom_amount:
          type: number
          description: >-
            An override for `managed_amount`. When set, `amount` reflects this
            value instead of `managed_amount`.
          nullable: true
          format: decimal
        managed_amount:
          type: number
          description: >-
            The amount calculated by the system or set by the linked Employer
            Benefit recurrence. Read-only; set `custom_amount` to override.
          nullable: true
          format: decimal
        employer_benefit_type:
          type: object
          description: The type of Employer Benefit for this line item.
          properties:
            id:
              type: string
              description: The unique identifier of the object in Nmbr.
              readOnly: true
            object:
              type: string
              description: The type of the object in Nmbr (`"employer_benefit_type"`).
              readOnly: true
            data:
              $ref: '#/components/schemas/EmployerBenefitType'
        recurrence: {}
        title:
          type: string
          nullable: true
          maxLength: 255
        title_translations:
          type: object
          description: Optional translations for the `title` property.
          allOf:
            - $ref: '#/components/schemas/Translations'
          nullable: true
        title_translated:
          type: string
          description: >-
            The translation of the `title` property for the request locale.
            Computed using the values in `title` and `title_translations` and
            the value of the request's `Accept-Language` header.
          readOnly: true
        remittance_account_id:
          type: string
          nullable: true
          maxLength: 32
        remittance_account: {}
        business_preset: {}
        source_adjustment: {}
        expense_accounting_code:
          description: >-
            The effective expense accounting code. Returns the user-set value if
            present, otherwise the system-derived value. Writes to this field
            set the user override.
        managed_expense_accounting_code:
          description: >-
            The expense accounting code derived by the system from accounting
            code rules and presets. Read-only.
        custom_expense_accounting_code:
          description: >-
            User-set expense accounting code that overrides the system-derived
            value.
        liability_accounting_code:
          description: >-
            The effective liability accounting code. Returns the user-set value
            if present, otherwise the system-derived value. Writes to this field
            set the user override.
        managed_liability_accounting_code:
          description: >-
            The liability accounting code derived by the system from accounting
            code rules and presets. Read-only.
        custom_liability_accounting_code:
          description: >-
            User-set liability accounting code that overrides the system-derived
            value.
        component_settings:
          type: object
          description: Settings specific to the Nmbr component.
          nullable: true
          properties:
            attributes_locked:
              type: boolean
              description: >-
                Whether the line item is locked and cannot be edited in the
                component.
        external_ref:
          type: string
          description: >-
            A reference to the object in an external system, e.g. the primary
            key of the object in your application's database. Nmbr doesn't use,
            validate, parse, or require this value to be unique - it simply
            stores it for your reference.
          nullable: true
          maxLength: 255
        created_at:
          type: string
          description: The date and time the object was created in Nmbr.
          readOnly: true
          format: dateTime
        updated_at:
          type: string
          description: The date and time the object was last updated in Nmbr.
          readOnly: true
          format: dateTime
    EmployerBenefitType:
      type: object
      title: Employer Benefit Type
      properties:
        type:
          type: string
          description: The string identifier for this employer benefit type.
          nullable: true
        label:
          type: string
          description: The human-readable display name for this employer benefit type.
          nullable: true
        features:
          type: array
          items:
            $ref: '#/components/schemas/LineItemTypeFeature'
        form_mappings:
          type: array
          items:
            $ref: '#/components/schemas/LineItemFormMapping'
    LineItemTypeFeature:
      type: object
      description: >-
        How this line item type affects a single payroll calculation, such as
        income tax or CPP. See [Line item type
        features](https://docs.nmbr.co/guides/payroll-fundamentals/line-item-type-features)
        for further details.
      properties:
        type:
          type: string
          description: The payroll calculation this entry describes.
          enum:
            - eht
            - income_tax
            - insurable
            - pensionable
            - vacationable
            - wcb
        label:
          type: string
          description: Human-readable name for the payroll calculation.
        definitions:
          type: array
          description: >-
            How this type affects the calculation, broken down by jurisdiction.
            Jurisdictions where it does not apply are omitted.
          items:
            type: object
            properties:
              jurisdiction:
                type: string
                description: >-
                  The jurisdiction this applies to (e.g. `ca_federal`, `ca_on`,
                  `ca_qc`).
              effects:
                type: array
                description: >-
                  How this type affects the payroll calculation in this
                  jurisdiction.
                items:
                  type: string
                  enum:
                    - accrues_vacation_pay
                    - reduces_base
                    - tax_credit
                    - withholding
              help_text:
                type: string
                description: >-
                  Plain-language explanation of how this type affects the
                  calculation in this jurisdiction.
                nullable: true
              program_label:
                type: string
                description: >-
                  The program that applies in this jurisdiction, for
                  calculations that use different programs by jurisdiction (e.g.
                  CPP federally, QPP in Quebec; EI federally, QPIP in Quebec).
                nullable: true
    LineItemFormMapping:
      type: object
      description: The year-end tax form boxes this line item type maps to.
      properties:
        form:
          type: string
          description: The form code (e.g. `t4`).
        form_label:
          type: string
          description: Human-readable form name.
        mapping:
          type: array
          description: The boxes on the form this type contributes to.
          items:
            type: array
            items:
              type: object
              properties:
                name:
                  type: string
                  description: The box or line identifier on the form.
                help_text:
                  type: string
                  description: Plain-language explanation of the box, when available.
                  nullable: true
  securitySchemes:
    CompanyToken:
      type: http
      scheme: bearer

````