---
title: "List accounting rules"
method: GET
path: "/v1/accounting/rules"
tags: ["Accounting"]
---

# List accounting rules

`GET /v1/accounting/rules`

Retrieve existing accounting rules with optional filtering.

## Query parameters

- `take` number, nullable
- `skip` number, nullable
- `ledger_id` string
- `ledger_id__not` string
- `ledger_id__isNull` string
- `ledger_id__isNotNull` string
- `ledger_id__equals` string
- `ledger_id__contains` string
- `ledger_id__startsWith` string
- `ledger_id__endWith` string
- `category` string
- `category__not` string
- `category__isNull` string
- `category__isNotNull` string
- `category__equals` string
- `category__contains` string
- `category__startsWith` string
- `category__endWith` string

## Response `200`

- PaginatedAccountingRule
  - `meta` object, required
    - `total` number, required — Total of existing items.
    - `taken` number, required — Number of items returned.
    - `skipped` number, required — Number of items skipped.
  - `data` AccountingRule[], required — List of AccountingRule.
    - `id` string, required — Unique identifier of the accounting rule.
    - `code` string, required — Auto-generated rule code (e.g. R-001).
    - `name` string, nullable, required — Optional user-defined name for the rule.
    - `ledger_id` string, required — Identifier of the ledger this rule belongs to.
    - `category` string, nullable, required — Rule category (e.g. accounting_software, invoice_posted).
    - `priority` number, required — Override order. Higher priority wins when multiple rules match.
    - `product_ids` string[], required — Product IDs to match. Empty means match all.
    - `product_types` string[], required — Product types to match. Allowed values: flat_fee, dynamic, seat, credit. Empty means match all.
    - `customer_ids` string[], required — Customer IDs for customer-specific overrides.
    - `currencies` string[], required — Currency codes to match (e.g. EUR, USD).
    - `countries` string[], required — Country codes for jurisdiction-based overrides.
    - `coupon_ids` string[], required — Coupon IDs to match. Empty means match all.
    - `client_provider_ids` string[], required — Client provider IDs to match. Empty means match all.
    - `payment_method_types` string[], required — Payment method types to match. Empty means match all.
    - `interval_period` string, nullable, required — Billing interval period filter (month, year, etc.).
    - `interval_count` number, nullable, required — Billing interval count filter.
    - `revenue_ledger_account_id` string, nullable, required — Revenue ledger account ID used for invoice line revenue routing.
    - `revenue_ledger_account` object, nullable — Expanded revenue ledger account reference when available.
      - `id` string, required — Unique identifier of the ledger account.
      - `code` string, required — Accounting code of the ledger account.
      - `name` string, required — Display name of the ledger account.
      - `integration` object, nullable, required — External provider reference associated with the ledger account.
        - `entity_id` string, required — ID of the entity in the provider.
        - `provider_name` 'adyen' | 'stripe' | 'mollie' | 'gocardless' | 'airwallex' | 'salesforce' | 'hubspot' | 'attio' | 'xero' | 'pennylane' | 'zoho-books' | 'exact-online' | 'quickbooks' | 'netsuite' | 'anrok' | 'chargebee' | 'slack' | 'plain' | 'zendesk' | 'pylon' | 'intercom' | 'front' | 'claap' | 'grain', required — Provider name.
        - `provider_account_id` string, required — ID of the connected provider account.
    - `deferred_revenue_ledger_account_id` string, nullable, required — Deferred revenue ledger account ID used before revenue is recognized.
    - `deferred_discount_ledger_account_id` string, nullable, required — Deferred discount ledger account ID used before discounts are recognized.
    - `contra_revenue_ledger_account_id` string, nullable, required — Contra revenue ledger account ID used for amounts that reduce revenue.
    - `discount_ledger_account_id` string, nullable, required — Discount ledger account ID used for recognized discounts.
    - `ar_ledger_account_id` string, nullable, required — Accounts receivable ledger account ID used for invoice posting.
    - `cash_ledger_account_id` string, nullable, required — Cash ledger account ID used for payment settlement.
    - `payments_clearing_ledger_account_id` string, nullable, required — Payments clearing ledger account ID used while payments settle.
    - `output_tax_ledger_account_id` string, nullable, required — Output tax ledger account ID used for tax liability.
    - `bad_debt_expense_ledger_account_id` string, nullable, required — Bad debt expense ledger account ID used for provider-side write-off routing.
    - `customer_credits_ledger_account_id` string, nullable, required — Customer credits ledger account ID used for credit balances.
    - `journal_id` string, nullable, required — Journal ID used to route entries in the accounting provider.
    - `entity_type` string, nullable, required — Entity type the rule applies to.
    - `created_at` string, date, required — Timestamp when the rule was created.
    - `updated_at` string, date, required — Timestamp when the rule was last updated.

---

[API](https://skmtc.dev/hyperline/apis/hyperline-api.md) · [All operations](https://skmtc.dev/hyperline/apis/hyperline-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/hyperline/hyperline-api/revisions/19fa5f22e39b/schema)
