Comprendre les paiements carte refusés
Liste les paiements carte refusés avec la raison exacte du refus et la remédiation à appliquer.
AP ManagerController📅 HebdoDébutantLecture seule
Demandez-le comme ça
Quels paiements carte ont été refusés ce mois-ci, et pourquoi ?
Quand l'utiliser
Quand des paiements par carte échouent et qu'il faut savoir pourquoi et quoi faire.
Ce que ça produit
Liste des paiements refusés avec reasonCodeLong (raison) et reasonCodeRemediation (solution) pour chacun.
Comment ça se déroule
- 1Liste les paiements carte refusés sur la période
- 2Donne la raison de chaque refus
- 3Indique ce que le porteur doit faire pour débloquer
- 4Repère les cartes refusées à répétition
- 5Présente les refus par collaborateur ou par carte
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 technique68/100 · 2 outils
CartesRéconciliationget_failed_transactionsget_transactions
# Audit des paiements carte refusés
## Pourquoi un tool séparé
`get_transactions` ne retourne que les paiements réussis (compensés). Les paiements refusés vivent dans un objet distinct, `get_failed_transactions`, avec un champ que `get_transactions` n'a pas : la raison du refus en langage clair (`reasonCodeLong`) et la remédiation (`reasonCodeRemediation`). Toujours afficher les deux à l'utilisateur pour qu'il n'ait pas besoin de relancer une question — c'est explicitement documenté comme le comportement attendu du tool.
## Différences avec get_transactions à connaître
- `merchantName` ici est le descripteur brut du réseau carte — **pas** comparable au `merchantName` de `get_transactions`, qui est dérivé du nom du fournisseur lié.
- `createdAt` reflète ici la date d'enregistrement du refus, alors que sur `get_transactions` il reflète la date de règlement (pas la date d'autorisation) — les deux champs ne se comparent pas directement entre les deux tools.
- Pas de fenêtre fixe par défaut : sans `startDate`, la couverture est les 30 derniers jours ; avec `startDate`, aucune limite de profondeur.
- ⚠️ `endDate` seul ne déplace pas cette fenêtre : il ne fait que raccourcir les 30 derniers jours, donc un `endDate` vieux de plus de 30 jours ne renvoie rien. Toujours passer `startDate` pour une période qui commence il y a plus de 30 jours.
- Sur `get_transactions`, `startDate`/`endDate` filtrent sur la date de règlement uniquement : les paiements réglés sans date de règlement sont exclus dès qu'un filtre de dates est posé. Une liste filtrée par dates peut donc sous-compter une période — ne pas présenter sa somme comme un total complet.
## Appel
```json
{
"tool": "get_failed_transactions",
"params": {
"companyId": "<companyId>",
"startDate": "2026-01-01"
}
}
```
## Résultat observé
Sur ce compte, sur la période testée : `{"data":[]}` — zéro paiement refusé. C'est un résultat normal et légitime à rapporter tel quel ("aucun paiement refusé sur la période") plutôt que de le traiter comme une erreur ou un signe que la requête a échoué.
## Piège devise
Chaque montant porte sa propre devise (`amountBilled.currency`, `amountDeclared.currency`) — il n'y a pas de champ `currencyBilled`/`currencyDeclared` séparé. Vérifier la devise sur chaque enregistrement avant de sommer. Si `amountDataIssue` est présent, ne jamais traiter le montant concerné comme zéro — le signaler explicitement à l'utilisateur.
## Exemples de prompts utilisateur
- "Quels paiements carte ont été refusés ce mois-ci, et pourquoi ?"
- "Y a-t-il des cartes avec des paiements refusés à répétition ?"
- "Donne-moi la raison et la solution pour chaque paiement refusé de [employé]"
Comment installer ce skill
/
- 1Télécharger le fichier
s67-audit-paiements-carte-refuses.mdvia le bouton ci-dessus. - 2Placer le fichier dans le répertoire
.claude/de votre projet (ou~/.claude/pour une installation globale).cp s67-audit-paiements-carte-refuses.md .claude/s67-audit-paiements-carte-refuses.md - 3Utiliser 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_failed_transactions, get_transactions.Skills similaires
★ Top