---
title: "Lire la balance âgée"
description: "Analyser les encours nets par ancienneté, devise et compte client."
canonical: https://developer.billabex.com/fr/guides/balance-agee/
lang: fr
alternate: https://developer.billabex.com/en/guides/aging-balance/
last-updated: 2026-10-25
---

# Lire la balance âgée

> Analyser les encours nets par ancienneté, devise et compte client.

Source: https://developer.billabex.com/fr/guides/balance-agee/
Langue: Français (fr)
Version anglaise: https://developer.billabex.com/en/guides/aging-balance/

La balance âgée répartit les montants restant à recevoir dans cinq tranches. Elle est nette des
avoirs non imputés, appliqués d'abord aux montants les plus anciens du même compte et de la même
devise.

Les comptes passés en perte sont exclus. La balance ne convertit aucune devise, chaque montant
reste dans sa devise d'origine.

## Autorisation

Les deux endpoints acceptent le scope OAuth `accounts:read` ou `accounts:all`.

## Lire les totaux

```http
GET https://next.billabex.com/api/public/v1/aging-balance?organizationId=ORGANIZATION_ID
Authorization: Bearer YOUR_ACCESS_TOKEN
```

La réponse contient une entrée par devise. Chaque tranche porte son montant net ainsi que le
nombre de comptes et de factures qui conservent un montant positif.

```json
{
  "byCurrency": [
    {
      "currencyCode": "EUR",
      "notDue": 12500,
      "notDueAccountCount": 4,
      "notDueInvoiceCount": 7,
      "d0_30": 8200,
      "d0_30AccountCount": 3,
      "d0_30InvoiceCount": 5,
      "d31_60": 4100,
      "d31_60AccountCount": 2,
      "d31_60InvoiceCount": 2,
      "d61_90": 1800,
      "d61_90AccountCount": 1,
      "d61_90InvoiceCount": 1,
      "d90Plus": 900,
      "d90PlusAccountCount": 1,
      "d90PlusInvoiceCount": 1
    }
  ]
}
```

## Comparer avec un instant passé

Ajoutez `receivablesAt`, un instant ISO 8601, pour obtenir en plus ce que les factures devaient
strictement avant cet instant, par devise. La règle est celle des tranches : seules les factures au
solde positif comptent, et les comptes passés en perte aujourd'hui sont exclus des deux côtés.
Les factures d'aujourd'hui (somme des cinq tranches) se comparent donc directement à ce montant.

```http
GET https://next.billabex.com/api/public/v1/aging-balance?organizationId=ORGANIZATION_ID&receivablesAt=2026-10-01T00:00:00.000Z
Authorization: Bearer YOUR_ACCESS_TOKEN
```

```json
{
  "byCurrency": [],
  "receivablesAt": {
    "at": "2026-10-01T00:00:00.000Z",
    "byCurrency": [{ "currencyCode": "EUR", "amount": 24800 }]
  }
}
```

`receivablesAt` vaut `null` quand l'historique financier de l'organisation ne couvre pas cet
instant.

## Ventiler par compte

`currencyCode` est obligatoire. La liste utilise `first` et `after`, comme les autres endpoints
paginés.

```http
GET https://next.billabex.com/api/public/v1/aging-balance/accounts?organizationId=ORGANIZATION_ID&currencyCode=EUR&first=20&sortBy=d90Plus&sortOrder=desc
Authorization: Bearer YOUR_ACCESS_TOKEN
```

Chaque ligne contient les cinq tranches, `totalOutstanding`, `overdueOutstanding` et
`overdueRate`. Un taux de `100` signifie que tout l'encours du compte est échu.

Champs de tri disponibles : `fullName`, `notDue`, `d0_30`, `d31_60`, `d61_90`, `d90Plus`,
`totalOutstanding`, `overdueOutstanding` et `overdueRate`.

Filtres disponibles :

| Champ                     | Opérateurs                                                            |
| ------------------------- | --------------------------------------------------------------------- |
| `accountName`             | `contains`, `startsWith`, `equals`                                    |
| `tags`                    | `containsAny`, `containsAll`, `containsNone`, `isEmpty`, `isNotEmpty` |
| `dunningPaused`           | `isTrue`, `isFalse`                                                   |
| `paymentMethod`, `source` | `is`, `isNot`, `isAnyOf`, `isEmpty`, `isNotEmpty`                     |
| `collectiveProceeding`    | `is`, `isNot`, `isAnyOf`                                              |
| Montants et taux          | `equals`, `greaterThan`, `lessThan`, `between`                        |

Exemple, clients dont plus de 60 % de l'encours est échu :

```http
GET https://next.billabex.com/api/public/v1/aging-balance/accounts?organizationId=ORGANIZATION_ID&currencyCode=EUR&filters=overdueRate%3AgreaterThan%3A60
Authorization: Bearer YOUR_ACCESS_TOKEN
```

Le curseur `pageInfo.endCursor` est lié à la devise, aux filtres, au tri et à la taille de page.
Supprimez-le dès qu'un de ces paramètres change.

## MCP

Les outils `get-aging-balance` et `list-aging-balance-by-account` fournissent les mêmes données avec
le scope `mcp:read`. La liste accepte `first`, `after`, `filters`, `sortBy` et `sortOrder` ;
`get-aging-balance` accepte `receivablesAt`.

---

Billabex developer portal. OpenAPI specification: https://developer.billabex.com/openapi.json.
Agent instructions: https://developer.billabex.com/llms.txt. Complete documentation: https://developer.billabex.com/llms-full.txt.
