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

# Create expense service category



## OpenAPI

````yaml /openapi/findity-admin-api.json post /organizations/{organizationId}/expenseservice/categories
openapi: 3.1.0
info:
  title: Findity Admin API
  description: Findity Admin API
  version: 1.0.0
servers:
  - url: https://stage-api.findity.com/api/v1/admin
  - url: https://api.findity.com/api/v1/admin
security:
  - bearerAuth: []
paths:
  /organizations/{organizationId}/expenseservice/categories:
    post:
      tags:
        - ExpenseService
      summary: Create expense service category
      operationId: adminCreateExpenseServiceCategory
      parameters:
        - $ref: '#/components/parameters/policyOrganizationId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AdminExpenseCategory'
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AdminExpenseCategory'
        '400':
          description: Invalid request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/400Error'
        '404':
          description: Organization or employee group (`employeeGroupId`) not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/404Error'
components:
  parameters:
    policyOrganizationId:
      in: path
      name: organizationId
      required: true
      description: The organization id of the policies
      schema:
        $ref: '#/components/schemas/Uuid'
      example: 05b8daba9ba14a49846fe77883248cf0
  schemas:
    AdminExpenseCategory:
      type: object
      properties:
        id:
          type: string
          readOnly: true
          description: The unique external identifier of the expense category
        name:
          type: string
          description: Name of the expense category
        iconUrl:
          type: string
          readOnly: true
          description: URL to the category icon
        section:
          type: integer
          description: Section order index
        categoryType:
          type: string
          readOnly: true
          description: The resolved class type of the expense category
          enum:
            - SubsistenceAllowanceCategory
            - RepresentationExpenseCategory
            - OtherExpenseCategory
            - MileageExpenseCategory
            - FuelBenefitsExpenseCategory
            - FoodBenefitsExpenseCategory
            - ExpenseCategory
            - CongestionBenefitExpenseCategory
            - BenefitExpenseCategory
            - AbroadPurchaseExpenseCategory
        classType:
          type: string
          writeOnly: true
          description: >-
            The fully qualified Java class name of the category type. Required
            on create, optional on update.
        verificationClassType:
          type: string
          readOnly: true
          description: The verification class type mapped to the new expense type format
        categoryTemplateId:
          type: string
          description: The ID of the category template this category is based on
        dateCreated:
          type: string
          format: date-time
          readOnly: true
          description: The date and time the category was created
        defaultTaxPercent:
          type: number
          format: double
          description: Default tax percentage for the category
        deviantTaxPercent:
          type: number
          format: double
          description: Deviant tax percentage for the category
        nonDeductableVat:
          type: boolean
          description: Whether the VAT is non-deductable
        accountNumberMapping:
          type: string
          description: Account number mapping string
        accountingNumberId:
          type: string
          description: ID of the primary accounting number
        accountingNumbers:
          type: array
          description: List of accounting numbers associated with this category
          items:
            type: object
        expenseCodeId:
          type: string
          description: ID of the expense code
        salaryCodeId:
          type: string
          description: ID of the salary code
        taxAccountingNumberId:
          type: string
          description: ID of the tax accounting number
        taxSalaryCodeId:
          type: string
          description: ID of the tax salary code
        taxExpenseCodeId:
          type: string
          description: ID of the tax expense code
        budgetAmount:
          type: number
          format: double
          description: Budget amount for the category
        budgetName:
          type: string
          description: Budget name for the category
        budgetStartMonth:
          type: integer
          description: The month (1-12) the budget period starts
        mccCodes:
          type: array
          description: List of MCC (Merchant Category Codes) associated with this category
          items:
            type: string
        presetValues:
          type: array
          description: List of preset dimension values for the category
          items:
            type: object
        expenseCategoryFilter:
          type: string
          description: Filter applied to determine which expenses belong to this category
        showAccounting:
          type: boolean
          description: Whether accounting fields are shown for this category
        showRepresentation:
          type: boolean
          description: Whether representation fields are shown for this category
        settings:
          type: object
          description: Additional category settings as a free-form object
        employeeGroupId:
          type: string
          nullable: true
          description: >
            String (32-character hex string). ID of the employee group the
            category is restricted to. When the organization uses employee
            groups, per diem categories restricted to a group are only available
            to users in that group. `null` or an empty string removes the
            restriction. An unknown ID returns 404 `EMPLOYEE_GROUP_NOT_FOUND`.
        useAlternatePerDiemRate:
          type: boolean
          nullable: true
          description: >
            Only for per diem categories (`SubsistenceAllowanceCategory`).
            Whether the destination's alternate per diem rate is used for users
            in the category's employee group. Only applies in countries where
            alternate per diem rates are enabled.
    400Error:
      type: object
      properties:
        result:
          type: string
        code:
          type: string
        description:
          type: string
    404Error:
      type: object
      properties:
        result:
          type: string
        code:
          type: string
        description:
          type: string
      example:
        result: error
        code: ORGANIZATION_NOT_FOUND
        description: 'Failed to get organization for id: {orgId}'
    Uuid:
      type: string
      pattern: ^[0-9a-fA-F]{32}$
      description: UUID without dashes (32-character hex string)
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer

````