> ## 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.

# Managing Accounts

> Create, edit, and delete Accounts from the Lerian Console to keep your Ledger structure clean and current.

Use **Midaz Module** to manage **Accounts** associated with your Ledger. Accounts are the fundamental units that hold balances and participate in transactions within your financial system.

## What are Accounts?

***

Accounts represent individual balance holders within your ledger structure. Each account:

* **Holds balances** in a specific asset (currency or commodity)
* **Participates in transactions** as sources or destinations of funds
* **Belongs to an entity** such as a customer, business unit, or external party
* **Can be organized** using portfolios, segments, and account types
* **Tracks history** with complete audit trails of all movements

Accounts can be classified as:

* **Internal Accounts** - Accounts you create and manage for your organization's operations
* **External Accounts** - Automatically created accounts representing external assets or liabilities

For technical details, refer to the [Accounts](/en/midaz/accounts) page.

## Key concepts

***

* **Account Types** - Classify accounts according to your organization's financial structure (e.g., `checking`, `savings`, `revenue`). Enable validation to enforce account type rules.

* **Account Alias** - A unique, human-readable identifier (e.g., `@customer_john_doe`) that makes it easier to reference accounts in transactions and queries.

* **Portfolios** - Group related accounts together for reporting and management purposes. Useful for tracking customer portfolios or business divisions.

* **Segments** - Organize accounts into hierarchical structures for complex organizational needs like cost centers or departments.

## Accessing the Accounts page

***

To open the **Accounts** page, select the **Accounts** option in the **Accounts** section of the leftside menu.

The **Accounts** page displays a table listing all Accounts in the current Ledger, including:

* **Name** - The account's display name
* **Alias** - The unique identifier (if set)
* **Type** - The account type classification
* **Asset Code** - The currency or commodity code
* **Entity** - The owner or associated entity
* **Balance** - Current balance in the account
* **Status** - Active, locked, or external (indicated by padlock icon)

<Note>
  The padlock icon <Icon icon="lock" /> indicates that the account **cannot** be edited or deleted. This applies to **external accounts** that are automatically created when you create Assets.
</Note>

### Available actions

From the **Accounts** page, you can:

<Columns cols={2}>
  <Card title="Create an Account" icon="plus" horizontal href="/en/platform/lerian-console/midaz-console/creating-an-account">
    Add internal accounts for customers, departments, or business operations
  </Card>

  <Card title="Edit Account information" icon="pen" horizontal href="/en/platform/lerian-console/midaz-console/editing-account-information">
    Modify account details, metadata, and organizational settings
  </Card>

  <Card title="Delete an Account" icon="trash" horizontal href="/en/platform/lerian-console/midaz-console/deleting-an-account">
    Remove accounts that are no longer needed (internal accounts only)
  </Card>
</Columns>

## Account organization strategies

***

<AccordionGroup>
  <Accordion title="Customer Account structure">
    Create separate accounts for each customer, organized by account type and asset code.

    **Example**:

    * Customer checking account: `@customer_123_checking` (Type: `checking`, Asset: `USD`)
    * Customer savings account: `@customer_123_savings` (Type: `savings`, Asset: `USD`)
    * Group both under a Portfolio: `Customer 123 Portfolio`
  </Accordion>

  <Accordion title="Treasury and float management">
    Set up dedicated treasury accounts to manage liquidity and operational funds.

    **Example**:

    * Main treasury: `@treasury_main` (Type: `treasury`, Asset: `USD`)
    * Reserve fund: `@treasury_reserve` (Type: `reserve`, Asset: `USD`)
    * Float account: `@float_operations` (Type: `float`, Asset: `USD`)
  </Accordion>

  <Accordion title="Multi-currency operations">
    Create separate accounts for each currency your organization handles.

    **Example**:

    * USD operations: `@ops_usd` (Type: `operations`, Asset: `USD`)
    * EUR operations: `@ops_eur` (Type: `operations`, Asset: `EUR`)
    * BRL operations: `@ops_brl` (Type: `operations`, Asset: `BRL`)
  </Accordion>

  <Accordion title="Department cost centers">
    Use segments and account types to track departmental expenses.

    **Example**:

    * Engineering expenses: `@eng_expenses` (Type: `expense`, Segment: `Engineering`)
    * Marketing expenses: `@mkt_expenses` (Type: `expense`, Segment: `Marketing`)
    * Consolidate with parent segment for organization-wide reporting
  </Accordion>
</AccordionGroup>

## Account type validation

***

If enabled, you can enforce account type validation to ensure accounts follow your organization's financial structure.

### Enabling Account type validation

To activate account type validation for a specific ledger, configure it in the `.env` files:

```shellscript theme={null}
# Account Types Validation
MIDAZ_ACCOUNT_TYPE_VALIDATION_ENABLED=true
# List of <organization-id>:<ledger-id> separated by comma
MIDAZ_ACCOUNT_TYPE_VALIDATION=<organization-id>:<ledger-id>
```

<Warning>
  Once you enable Account Type validation, the Account Type becomes a **required field** when creating new accounts. Existing accounts without types may need to be updated.
</Warning>

For more information about managing account types, see [Managing Account Types](/en/platform/lerian-console/midaz-console/managing-account-types).

## Best practices

***

<Steps>
  <Step title="Use descriptive names and aliases">
    Name accounts clearly and use aliases for easy reference (e.g., `@customer_john_checking` instead of UUID references).
  </Step>

  <Step title="Leverage account types">
    Enable account type validation to enforce your chart of accounts structure and prevent misclassification.
  </Step>

  <Step title="Organize with portfolios">
    Group related accounts into portfolios for better reporting and management, especially for customer relationships.
  </Step>

  <Step title="Plan your asset codes">
    Use consistent asset code conventions (ISO 4217 for currencies) to simplify multi-currency operations.
  </Step>

  <Step title="Document with metadata">
    Use metadata fields to store additional context like customer IDs, department codes, or integration references.
  </Step>
</Steps>

<Note>
  Accounts are the foundation of your ledger system. Proper account structure and organization directly impacts the clarity of your financial operations and reporting capabilities.
</Note>
