Suivre la tendance mensuelle des dépenses

Visualise l'évolution mensuelle des dépenses de l'entreprise triées chronologiquement. Particulièrement utile pour les revues de performance budgétaire et la détection de tendances.

CFOFinance Analyst📆 MensuelDébutantLecture seule

Demandez-le comme ça

Montre la tendance de nos dépenses sur les 12 derniers mois.

Quand l'utiliser

Quand vous voulez voir l'évolution des dépenses mois par mois et repérer un mois anormal.

Ce que ça produit

Série chronologique mensuelle des dépenses avec montants et variations mois-sur-mois.

Comment ça se déroule

  1. 1Totalise les dépenses de chaque mois sur un an
  2. 2Remet les mois dans l'ordre chronologique
  3. 3Calcule la moyenne et la variation d'un mois à l'autre
  4. 4Signale le dernier mois s'il est incomplet
  5. 5Repère les mois nettement au-dessus ou en dessous de la moyenne

Ce qui vous protège

  • Ce skill ne fait que lire : il ne modifie rien dans Spendesk
  • Il agit avec vos permissions et votre rôle, jamais au-delà
  • L'assistant ne peut ni approuver ni payer
▸Détail technique87/100 · 1 outils
Analyse des dépensesRapportsspendesk_analyze_spend

# Instructions — Tendance mensuelle des dépenses

## ⚠️ Tri par défaut = montant décroissant (pas chronologique)

Sans `sortBy`, les mois sont retournés du plus élevé au plus faible :
```
2026-01 (10.7%) → 2025-12 (10.3%) → 2025-10 (9.4%) → ...
```

Pour un **graphique de tendance chronologique**, toujours spécifier :
```json
"sortBy": "name",
"sortOrder": "asc"
```
→ Les mois sont alors retournés dans l'ordre `2025-07 → 2025-08 → ... → 2026-06`.

## ⚠️ Utiliser limit=12 pour une année complète

Par défaut `limit=10` → pour un groupBy=month sur 12 mois, les 2 mois les moins importants tombent dans "Others". Toujours passer `limit=12`. La période ne peut pas dépasser 366 jours par appel : pour 2 ans, faire deux appels d'un an (chacun avec `limit=12`) et ne combiner les résultats qu'une fois les deux terminés.

## ⚠️ Dernier mois partiel

Si la période inclut le mois en cours, le dernier mois aura un montant plus bas (données partielles).
Toujours indiquer : *"Les données du mois de [mois courant] sont partielles."*

## Étape 1 — Appel mensuel

```json
{
  "companyId": "...",
  "fromDate": "YYYY-MM-DD",
  "toDate": "YYYY-MM-DD",
  "groupBy": ["month"],
  "sortBy": "name",
  "sortOrder": "asc",
  "limit": 12
}
```

## Étape 2 — Interpréter les champs

Chaque row :
- `key` : `"YYYY-MM"` — mois au format ISO (ex: `"2025-07"`)
- `amount` : total des dépenses du mois (coefficient entier, diviser par 10^precision)
- `count` : nombre de payables dans le mois
- `share` : poids relatif du mois dans la répartition, en % (calculé sur les montants des lignes de payables ; ne se recalcule pas à partir de `summary.totalAmount`)

## Étape 3 — Calculer les métriques de tendance

```
moyenne_mensuelle = summary.totalAmount / nb_mois
mois_max = max(data[].amount)
mois_min = min(data[].amount)
variation_m_sur_m = (mois_n.amount - mois_n-1.amount) / mois_n-1.amount × 100
```

## Étape 4 — Détecter les anomalies

Alerter sur :
- Mois avec `count` très bas mais `amount` élevé → quelques grosses factures
- Mois avec variation > ±30% par rapport au mois précédent → pic ou creux à expliquer
- Mois courant incomplet → mentionner explicitement

## Exemple live (données réelles, juil. 2025 → juin 2026, trié par montant — pas par date)

| Rang | Mois | Montant (EUR) | Count | Share |
|------|------|--------------|-------|-------|
| 1 | 2026-01 | 1 769 755 | 605 | 10.7% |
| 2 | 2025-12 | 1 697 623 | 666 | 10.3% |
| 3 | 2025-10 | 1 554 335 | 774 | 9.4% |
| 4 | 2026-02 | 1 531 954 | 742 | 9.3% |
| 5 | 2026-03 | 1 464 520 | 688 | 8.9% |
| 6 | 2025-08 | 1 457 602 | 339 | 8.8% |
| 7 | 2026-04 | 1 368 217 | 801 | 8.3% |
| 8 | 2025-11 | 1 290 375 | 652 | 7.8% |
| 9 | 2025-07 | 1 200 645 | 387 | 7.3% |
| 10 | 2025-09 | 1 149 472 | 444 | 7.0% |
| 11 | 2026-05 | 1 129 378 | 492 | 6.8% |
| 12 | 2026-06 | 910 700 | 609 | 5.5% |

→ Aucune row "Others" ✅ (limit=12 = 12 mois)
→ Total : 16 524 574,27 EUR sur 12 mois
→ Moyenne mensuelle : **~1 377 048 EUR/mois**
→ Juin 2026 est le plus bas (données partielles — mois en cours au moment du test)

Avec `sortBy=name, sortOrder=asc` : les mêmes données seraient retournées dans l'ordre jul-25, aug-25, ..., jun-26.

## Exemple de prompt

- "Montre la tendance de nos dépenses sur les 12 derniers mois" → groupBy=month, sortBy=name, sortOrder=asc, limit=12
- "Quel mois a-t-on le plus dépensé ?" → groupBy=month, sortBy=amount (défaut), limit=1
- "Évolution mois par mois depuis janvier 2026" → fromDate=2026-01-01, toDate=aujourd'hui, groupBy=month, sortBy=name

Comment installer ce skill

/
  1. 1
    Télécharger le fichier s06-monthly-trend.md via le bouton ci-dessus.
  2. 2
    Placer le fichier dans le répertoire .claude/ de votre projet (ou ~/.claude/ pour une installation globale).
    cp s06-monthly-trend.md .claude/s06-monthly-trend.md
  3. 3
    Utiliser dans Claude Code — le skill est automatiquement découvert. Décrivez votre besoin en langage naturel et Claude appliquera les instructions du skill.
💡 Assurez-vous que le MCP Spendesk est configuré dans votre .claude/settings.json avec les outils spendesk_analyze_spend.

Skills similaires

★ Top
95/100·🔍 Ponctuel·Expert

Auditer la couverture du MCP

Sonde tous les outils MCP disponibles, re-évalue la couverture des 50 cas d'usages persona, détecte les nouveaux champs ou outils, et régénère le rapport d'analyse des gaps.

CFOControllerAP Manager
90/100·📅 Hebdo·Débutant

Demandes de carte via get_requests

Explique comment utiliser get_requests pour les demandes de carte et pourquoi les remboursements de frais n'y apparaissent pas. Évite une source de confusion fréquente entre deux workflows distincts.

ControllerFinance Analyst
90/100·🔍 Ponctuel·Intermédiaire

Cost centers actifs vs archivés

Distingue les centres de coût actifs des archivés via le bon usage de get_cost_centers. Évite le piège de la convention de nommage isArchived vs isActive qui est contre-intuitive.

ControllerFinance Analyst

Interested in AI Agent services or Custom Integrations?