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

# Delete an account

> Deletes an account together with its balances. A balance that still owes pending fees (0527) or that other balances still owe pending fees to (0528) is refused with 422. A state that cannot be established answers 503 (0520) and may be retried. The CRM instrument linked to the account is soft-deleted. The active account plan assignment of the account ends; its history stays readable. In every fee package of the ledger, a fee whose creditAccount is the account's alias is removed and the alias leaves waivedAccounts; a package left without fees is disabled. In billing packages, a debitAccountAlias, creditAccountAlias or maintenanceCreditAccount equal to the alias is cleared and the package is disabled; the alias leaves accountTarget.aliases, and the package is disabled only when that list empties. These effects happen before the account is deleted. If one of them fails, the account stays in place and the request may be retried.



## OpenAPI

````yaml /pt/openapi/v3-current/ledger.yaml delete /v1/organizations/{organization_id}/ledgers/{ledger_id}/accounts/{account_id}
openapi: 3.1.0
info:
  title: Midaz Ledger API
  version: 4.0.0
servers:
  - url: https://ledger.sandbox.lerian.net
security: []
tags:
  - name: Account Block Exceptions (v2)
  - name: Account Plan Assignments (v2)
  - name: Account Plans (v2)
  - name: Account Types (v1)
  - name: Account Types (v2)
  - name: Accounts (v1)
  - name: Accounts (v2)
  - name: Asset Rates (v1)
  - name: Assets (v1)
  - name: Assets (v2)
  - name: Balances (v1)
  - name: Balances (v2)
  - name: Billing Calculate (v2)
  - name: Billing Packages (v2)
  - name: Composition (v2)
  - name: Dashboard (v1)
  - name: Dashboard (v2)
  - name: Encryption (v2)
  - name: Fee Charges (v2)
  - name: Fee Debts (v2)
  - name: Fees (v2)
  - name: Holders (v2)
  - name: Instruments (v2)
  - name: Ledgers (v1)
  - name: Ledgers (v2)
  - name: Metadata Indexes (v1)
  - name: Metadata Indexes (v2)
  - name: Operation Routes (v1)
  - name: Operation Routes (v2)
  - name: Operations (v1)
  - name: Operations (v2)
  - name: Organizations (v1)
  - name: Organizations (v2)
  - name: Packages (v2)
  - name: Portfolios (v1)
  - name: Portfolios (v2)
  - name: Protection (v2)
  - name: Segments (v1)
  - name: Segments (v2)
  - name: Transaction Routes (v1)
  - name: Transaction Routes (v2)
  - name: Transactions (v1)
  - name: Transactions (v2)
paths:
  /v1/organizations/{organization_id}/ledgers/{ledger_id}/accounts/{account_id}:
    delete:
      tags:
        - Accounts (v1)
      summary: Delete an account
      description: >-
        Deletes an account together with its balances. A balance that still owes
        pending fees (0527) or that other balances still owe pending fees to
        (0528) is refused with 422. A state that cannot be established answers
        503 (0520) and may be retried. The CRM instrument linked to the account
        is soft-deleted. The active account plan assignment of the account ends;
        its history stays readable. In every fee package of the ledger, a fee
        whose creditAccount is the account's alias is removed and the alias
        leaves waivedAccounts; a package left without fees is disabled. In
        billing packages, a debitAccountAlias, creditAccountAlias or
        maintenanceCreditAccount equal to the alias is cleared and the package
        is disabled; the alias leaves accountTarget.aliases, and the package is
        disabled only when that list empties. These effects happen before the
        account is deleted. If one of them fails, the account stays in place and
        the request may be retried.
      operationId: deleteAccount
      parameters:
        - description: Organization ID (UUID)
          in: path
          name: organization_id
          required: true
          schema:
            description: Organization ID (UUID)
            type: string
        - description: Ledger ID (UUID)
          in: path
          name: ledger_id
          required: true
          schema:
            description: Ledger ID (UUID)
            type: string
        - description: Account ID (UUID)
          in: path
          name: account_id
          required: true
          schema:
            description: Account ID (UUID)
            type: string
        - description: Bearer token (forwarded to the service)
          in: header
          name: Authorization
          schema:
            description: Bearer token (forwarded to the service)
            type: string
      responses:
        '204':
          description: No Content
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LegacyError'
          description: Unprocessable Entity
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LegacyError'
          description: Internal Server Error
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LegacyError'
          description: Error
      deprecated: true
      security:
        - BearerAuth: []
components:
  schemas:
    LegacyError:
      additionalProperties: false
      properties:
        code:
          description: >-
            Stable, machine-readable midaz error code. Identical to the code /v2
            returns for the same condition.
          examples:
            - '0065'
          type: string
        entityType:
          description: >-
            The domain entity the error concerns. Present only on
            field-validation errors.
          examples:
            - Account
          type: string
        fields:
          additionalProperties: {}
          description: >-
            Per-field validation detail, keyed by field name. The value is the
            violation message for a known field and the offending value for an
            unexpected one, so it is not always a string. The /v2 contract
            carries these as the 'errors' array.
          type: object
        message:
          description: >-
            Human-readable explanation of this occurrence. The /v2 contract
            carries this as 'detail'.
          type: string
        title:
          description: Short, human-readable summary of the error.
          examples:
            - Invalid Path Parameter
          type: string
      required:
        - title
        - message
        - code
      type: object
  securitySchemes:
    BearerAuth:
      bearerFormat: JWT
      description: JWT bearer token issued by the identity provider.
      scheme: bearer
      type: http

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.