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

# Create a new tax code



## OpenAPI

````yaml post /v0/tax-codes
openapi: 3.0.1
info:
  title: Gjoll API
  description: Gjoll OpenAPI definitions
  termsOfService: https://pleo.io/terms/
  contact:
    email: team-accounting-core@pleo.io
  license:
    name: Apache 2.0
    url: http://www.apache.org/licenses/LICENSE-2.0.html
  version: 84.1.2
servers:
  - url: https://external.pleo.io
    description: Production server
  - url: https://external.staging.pleo.io
    description: Staging server
security:
  - bearerAuth: []
  - basicAuth: []
tags:
  - name: reconciliation
    description: Reconciliation API
  - name: accounts
    description: Accounts API
  - name: categories
    description: Categories API
  - name: tax-codes
    description: Tax Codes API
  - name: accounting-entries
    description: |-
      The Accounting Entries API endpoints enable you to perform the following:
        - Apply filters and search for accounting entries and accounting receipts.
        - Retrieve list of accounting entries and accounting receipts.
        - Retrieve details of a specific accounting entry.
paths:
  /v0/tax-codes:
    post:
      tags:
        - tax-codes
      summary: Create a new tax code
      operationId: createTaxCode
      requestBody:
        content:
          application/json;charset=UTF-8:
            schema:
              $ref: '#/components/schemas/TaxCodeCreateUpdateModel'
        required: true
      responses:
        default:
          description: default response
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/DataResponseTaxCodeModel'
components:
  schemas:
    TaxCodeCreateUpdateModel:
      required:
        - archived
        - companyId
        - name
        - rate
        - type
      type: object
      properties:
        archived:
          type: boolean
          description: >-
            Boolean flag used to archive or unarchive a category (when set to
            true, account is not visible or usable on the platform)
        code:
          type: string
          description: The accounting system's internal identifier of the tax code
          nullable: true
          example: '01'
        companyId:
          type: string
          description: Company ID the tax code is being created/updated for
          format: uuid
        ingoingTaxAccount:
          type: string
          description: Ingoing tax account usually used to account for reverse VAT
          nullable: true
        name:
          type: string
          description: Name of the tax code
          example: Standardmoms (25 %)
        outgoingTaxAccount:
          type: string
          description: Outgoing tax account usually used to account for reverse VAT
          nullable: true
        rate:
          type: number
          description: >-
            Percentage rate applied for this tax code (This is represented in
            decimals and not the percentage. e.g. 20% tax rate would be 0.20)
        type:
          $ref: '#/components/schemas/TaxCodeTypeModel'
    DataResponseTaxCodeModel:
      required:
        - data
      type: object
      properties:
        data:
          $ref: '#/components/schemas/TaxCodeModel'
    TaxCodeTypeModel:
      type: string
      description: >-
        Classification of this tax code. Exclusive tax codes are not currently
        supported.
      enum:
        - inclusive
        - exclusive
        - reverse
    TaxCodeModel:
      required:
        - archived
        - companyId
        - createdAt
        - id
        - name
        - rate
        - type
        - updatedAt
      type: object
      properties:
        accountingIntegrationSystem:
          type: string
          description: Accounting integration system
          nullable: true
        archived:
          type: boolean
          description: >-
            Boolean flag used to archive or unarchive an account (when set to
            true, account is not visible or usable on the platform)
        code:
          type: string
          description: The accounting system's internal identifier of the tax code
          nullable: true
          example: '01'
        companyId:
          type: string
          description: The Pleo unique identifier of the company the tax code belongs to
          format: uuid
        createdAt:
          pattern: YYYY-MM-DDTHH:mi:ssZ
          type: string
          description: Date and time the tax code was created
          format: date-time
        id:
          type: string
          description: The unique identifier generated by Pleo for the tax code
          format: uuid
        ingoingTaxAccount:
          type: string
          description: Ingoing tax account usually used to account for reverse VAT
          nullable: true
        name:
          type: string
          description: Name of the tax code
          example: Standardmoms (25 %)
        outgoingTaxAccount:
          type: string
          description: Outgoing tax account usually used to account for reverse VAT
          nullable: true
        rate:
          type: number
          description: >-
            Percentage rate applied for this tax code (This is represented in
            decimals and not the percentage. e.g. 20% tax rate would be 0.20)
        type:
          $ref: '#/components/schemas/TaxCodeTypeModel'
        updatedAt:
          pattern: YYYY-MM-DDTHH:mi:ssZ
          type: string
          description: Date and time the tax code was last updated
          format: date-time
  securitySchemes:
    bearerAuth:
      type: http
      description: >-
        JWT Bearer token authentication. Include the token in the Authorization
        header as: `Bearer <token>`
      scheme: bearer
      bearerFormat: JWT
    basicAuth:
      type: http
      description: >-
        Basic HTTP authentication using API key. Use your API key as the
        username and leave the password empty. The credentials will be Base64
        encoded automatically.
      scheme: basic

````