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

# Create ledger account

> Create a new ledger account in the chart of accounts



## OpenAPI

````yaml post /consumers/{consumer_id}/accounting/accounts
openapi: 3.1.0
info:
  title: Chift API
  description: >-
    The Chift API is a universal API giving you access to financial data from
    the software of your clients. It helps software companies to offer native
    integrations to their clients without the effort needed to maintain those
    native integrations. By using the APIs (Accounting, POS, eCommerce) of
    Chift, you connect once and allow your clients to use their software
    packages.
  version: 1.0.0
servers:
  - url: https://api.chift.eu
    description: Chift
security:
  - bearerAuth: []
paths:
  /consumers/{consumer_id}/accounting/accounts:
    post:
      tags:
        - Accounting
        - Ledger accounts
      summary: Create ledger account
      description: Create a new ledger account in the chart of accounts
      operationId: accounting_create_ledger_account
      parameters:
        - name: consumer_id
          in: path
          required: true
          schema:
            type: string
            format: uuid
            title: Consumer Id
        - name: folder_id
          in: query
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            title: Folder Id
          description: >-
            Id of the accounting folder instance. A folder represents a legal
            entity within the system. Required when the multiple folders feature
            is enabled.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LedgerAccountItemIn'
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AccountItem'
        '400':
          content:
            application/json:
              example:
                message: >-
                  A ledger account already exists with the same number in the
                  accounting system.
                status: error
              schema:
                $ref: '#/components/schemas/ChiftError'
          description: Bad Request
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      security:
        - mcp_auth:
            - accounting
            - accounting.ledger_accounts
components:
  schemas:
    LedgerAccountItemIn:
      properties:
        name:
          type: string
          minLength: 1
          title: Name
          description: >-
            Name or label of the ledger account as it appears in the accounting
            system.
        number:
          type: string
          minLength: 3
          title: Number
          description: >-
            The account number in the chart of accounts. Must be unique within
            the accounting folder. In some countries (e.g., France, Belgium,
            Spain), the number structure is constrained by local accounting
            rules and must follow official charts of accounts (e.g., Plan
            Comptable Général).
        type:
          anyOf:
            - $ref: '#/components/schemas/AccountItemType'
            - type: 'null'
          default: other
      type: object
      required:
        - name
        - number
      title: LedgerAccountItemIn
    AccountItem:
      properties:
        number:
          type: string
          title: Number
          description: >-
            The account number in the chart of accounts. Must be unique within
            the accounting folder. In some countries (e.g., France, Belgium,
            Spain), the number structure is constrained by local accounting
            rules and must follow official charts of accounts (e.g., Plan
            Comptable Général).
        name:
          type: string
          title: Name
          description: >-
            Name or label of the account as it appears in the accounting system.
            This is typically used for internal referencing and identification
            of the account.
        active:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Active
          description: >-
            Flag indicating whether the account is active. If True, the account
            is active and can be used in transactions. If False, the account is
            inactive and cannot be used for transactions.
          default: true
        type:
          anyOf:
            - $ref: '#/components/schemas/AccountItemType'
            - type: 'null'
          description: >-
            Represents the functional type of the ledger account, used to
            support common accounting operations such as payments, invoicing,
            tax handling, and reporting. The type here is more operational and
            aligned with how accounts are actually used in day-to-day processes
            (e.g., tracking receivables, recording VAT, handling bank
            transactions) 
        scheme_ids:
          anyOf:
            - items:
                type: string
              type: array
            - type: 'null'
          title: Scheme Ids
          description: >-
            List of scheme classification IDs linked to this ledger account. A
            scheme (e.g., RGS, SBR) provides a standardized classification
            structure for organizing accounts for reporting purposes. Multiple
            scheme codes can be associated with a single account.
        accounting_category:
          anyOf:
            - type: string
            - type: 'null'
          title: Accounting Category
          description: >-
            Category of the ledger account in the accounting system. This is the
            category of the account as defined in the accounting system.
      type: object
      required:
        - number
        - name
      title: AccountItem
    ChiftError:
      properties:
        message:
          type: string
          title: Message
        status:
          anyOf:
            - type: string
            - type: 'null'
          title: Status
          default: error
        detail:
          anyOf:
            - type: string
            - type: 'null'
          title: Detail
          default: ''
      type: object
      required:
        - message
      title: ChiftError
    HTTPValidationError:
      title: Validation Error
      required:
        - message
      type: object
      properties:
        message:
          title: Message
          type: string
          default: Validation error
        status:
          title: Status
          type: string
          default: error
        detail:
          title: Detail
          type: array
          items:
            $ref: '#/components/schemas/ValidationError'
    AccountItemType:
      type: string
      enum:
        - bank
        - cash
        - other_financial
        - receivable
        - payable
        - income
        - expense
        - other_expense
        - vat
        - other
      title: AccountItemType
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
        input:
          title: Input
        ctx:
          type: object
          title: Context
      type: object
      required:
        - loc
        - msg
        - type
      title: ValidationError
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >-
        This access token needs to be included in each of your request to the
        Chift API.

````