Dépenses carte au-dessus d'un seuil de montant

Filtre les transactions carte au-dessus d'un seuil défini pour identifier les dépenses exceptionnelles. Utile pour les revues de contrôle interne et les alertes de dépassement.

↓ Télécharger le skill (.md)
85/100·📅 Hebdo·IntermédiaireCFOControllerFinance Analyst
CartesConformitéget_payables

🎯 But du skill

Filtre les transactions carte au-dessus d'un seuil défini pour identifier les dépenses exceptionnelles. Utile pour les revues de contrôle interne et les alertes de dépassement.

📊 Ce que ça produit

Liste des transactions carte dépassant le seuil avec montant, employé, date et description.

⚡ Bénéfice

Avant

Export des transactions puis filtre manuel dans Excel pour identifier les montants élevés.

Après

Transactions anormales filtrées instantanément, prêtes pour la revue de contrôle.



# Dépenses carte au-dessus d'un seuil de montant

## Pattern : filtre composé AND [payableType + grossAmount]

Ce filtre composé **fonctionne correctement** dans `get_payables` (le filtre [payableType + bookkeepingStatus] fonctionne lui aussi — voir skill S11).

```json
{
  "companyId": "<companyId>",
  "filters": {
    "operator": "and",
    "subfilters": [
      {
        "field": "payableType",
        "operator": "=",
        "value": ["singleCardPurchase", "physicalCardPurchase"]
      },
      {
        "field": "grossAmount",
        "operator": ">",
        "value": 500
      }
    ]
  },
  "pageSize": 20
}
```

## ⚠️ Format du filtre grossAmount : valeur DÉCIMALE en EUR

- `value: 500` = 500 EUR — format décimal
- **Pas** `50000` (coefficient entier comme dans les champs `amount` de la réponse)
- Le filtre s'applique sur le `functionalAmount` (EUR) — les dépenses USD sont converties avant comparaison

| Filtre souhaité | Valeur correcte | Valeur incorrecte |
|-----------------|-----------------|-------------------|
| > 500 EUR | `value: 500` | `value: 50000` |
| > 1 000 EUR | `value: 1000` | `value: 100000` |
| > 2 500 EUR | `value: 2500` | `value: 250000` |

Rappel : dans la réponse, `amount.amount = 50000` avec `precision: 2` = 500 EUR.

## Types de payables cartes

| Type | Description |
|------|-------------|
| `singleCardPurchase` | Achat sur carte virtuelle à usage unique |
| `physicalCardPurchase` | Achat sur carte physique (paiement en magasin / terminal) |
| `subscription` | Achat récurrent sur carte de souscription |
| `multiUseCardPurchase` | Achat sur carte virtuelle multi-usage |

→ Pour capturer TOUS les achats carte : inclure les 4 types dans `value` (`singleCardPurchase`, `physicalCardPurchase`, `multiUseCardPurchase`, `subscription`).

## Opérateurs disponibles sur grossAmount

| Opérateur | Signification |
|-----------|---------------|
| `>` | Strictement supérieur |
| `>=` | Supérieur ou égal |
| `<` | Strictement inférieur |
| `<=` | Inférieur ou égal |
| `=` | Égal exactement |

## spendingAmount ≠ amount (piège)

Sur les dépenses carte, `spendingAmount` est le montant exprimé dans la devise de dépense (carte) ; il peut différer de `amount` et ne doit pas être lu comme le montant comptabilisé :

```json
{
  "amount": { "amount": 329700, "currency": "EUR", "precision": 2 },        // 3 297 EUR réels
  "spendingAmount": { "amount": 450000, "currency": "EUR", "precision": 2 } // 4 500 EUR = plafond carte
}
```

→ Toujours utiliser `amount` (ou `functionalAmount` pour les multi-devises) pour analyser les montants dépensés.
→ `spendingAmount` = plafond autorisé — utile uniquement pour analyser l'utilisation des limites.

## Cas multi-devises

Les dépenses carte peuvent être en USD (ex : SaaS, abonnements étrangers) :

```json
{
  "currency": "USD",
  "functionalCurrency": "EUR",
  "functionalExchangeRate": 0.9295,
  "amount": { "amount": 98692, "currency": "USD", "precision": 2 },
  "functionalAmount": { "amount": 91827, "currency": "EUR", "precision": 2 }
}
```

→ Le filtre `grossAmount > 500` filtre sur `functionalAmount` (EUR) — une dépense de 900 USD = 837 EUR est donc incluse dans `grossAmount > 500`.

## Champs utiles pour analyser les résultats

| Champ | Utilisation |
|-------|-------------|
| `description` | Libellé de la dépense |
| `amount` / `functionalAmount` | Montant (devise locale / EUR) — coefficient / 10^precision |
| `counterparty.supplierId` | ID du fournisseur — résoudre avec `get_suppliers(ids=[...])` |
| `memberId` | ID de l'employé ayant fait la dépense |
| `creationDate` | Date de la dépense |
| `payableType` | Type de carte utilisée |
| `itemLines[].analyticalFieldAssociations` | Cost center, champs analytiques |

## Ajouter un filtre de période

```json
{
  "companyId": "<companyId>",
  "filters": {
    "operator": "and",
    "subfilters": [
      { "field": "payableType", "operator": "=", "value": ["singleCardPurchase", "physicalCardPurchase"] },
      { "field": "grossAmount", "operator": ">", "value": 1000 },
      { "field": "payableDate", "operator": "between", "value": { "from": "2026-01-01T00:00:00.000Z", "to": "2026-06-30T23:59:59.999Z" } }
    ]
  },
  "pageSize": 20
}
```

## Exemples de prompts

- "Liste les achats carte supérieurs à 1 000 EUR ce trimestre"
- "Quelles sont les dépenses carte physique au-dessus de 200 EUR en juin ?"
- "Identifie les achats exceptionnels (> 2 000 EUR) sur les 3 derniers mois"
- "Affiche toutes les dépenses carte virtuelle > 500 EUR du mois de mars"

Comment installer ce skill

/
  1. 1
    Télécharger le fichier s15-depenses-carte-seuil-montant.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 s15-depenses-carte-seuil-montant.md .claude/s15-depenses-carte-seuil-montant.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 get_payables.

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?