Accès aux justificatifs

Télécharge les justificatifs d'une facture via des URLs S3 pré-signées valables 1 heure. Utile pour les audits documentaires ou les vérifications de conformité.

↓ Télécharger le skill (.md)
86/100·🔍 Ponctuel·IntermédiaireControllerAP Manager
ConformitéRéconciliationget_payable_attachments

🎯 But du skill

Télécharge les justificatifs d'une facture via des URLs S3 pré-signées valables 1 heure. Utile pour les audits documentaires ou les vérifications de conformité.

📊 Ce que ça produit

URLs d'accès valides 1h pour tous les justificatifs attachés à la facture, prêtes à ouvrir.

Bénéfice

Avant

Téléchargement manuel depuis l'interface Spendesk, un fichier à la fois.

Après

Accès direct aux URLs des justificatifs, prêtes à partager ou archiver en masse.



# Instructions — Accès aux justificatifs

## ⚠️ URLs à durée de vie limitée : 1 heure

Les URLs retournées par `get_payable_attachments` sont des **liens pré-signés AWS S3**.

```
X-Amz-Expires=3600 → expire dans 1 heure après génération
```

**Ne jamais :**
- Stocker ces URLs dans une base de données
- Les cacher dans un contexte conversationnel long
- Les transmettre à un système tiers qui les utiliserait plus tard

**Toujours :** partager l'URL immédiatement et dire à l'utilisateur qu'elle expire dans 1h.

## ⚠️ Cache tool = 3300s (55min)

Le tool lui-même est mis en cache pendant 55 minutes.
Si l'URL a été récupérée au début du cache, elle n'aura plus que **5 minutes** à la fin de la fenêtre de cache.
→ Pour un usage interactif, ne pas hésiter à rappeler le tool si le temps entre deux usages dépasse 30 minutes.

## Étape 1 — Obtenir le payableId

Appeler `get_payables` avec le filtre adéquat pour trouver la payable cible.
```json
{
  "companyId": "...",
  "filters": { "field": "documentaryEvidenceStatus", "operator": "=", "value": ["provided"] },
  "pageSize": 20
}
```
→ Extraire le champ `id` de la payable qui t'intéresse.

## Étape 2 — Récupérer les attachments

```json
{ "companyId": "...", "payableId": "<id-de-la-payable>" }
```

## Étape 3 — Interpréter les champs

Pour chaque attachment :
- `url` : lien de téléchargement direct (valide 1h) — à partager immédiatement
- `mimetype` : type MIME (`image/jpeg`, `application/pdf`, `image/png`, etc.) — indiquer à l'utilisateur
- `checksum` : hash MD5 du fichier pour vérification d'intégrité
- `attachedAt` : date d'attachement (format `YYYY-MM-DD`, pas datetime)

## Étape 4 — Présenter le résultat

```
Justificatif trouvé pour la facture [description] :
- Type : image/jpeg
- Attaché le : 2023-01-11
- Lien de téléchargement : [URL]
⚠️ Ce lien expire dans 1 heure. Après expiration, rappeler la commande pour obtenir un nouveau lien.
```

## Exemple live (données réelles)

```json
{
  "mimetype": "image/jpeg",
  "checksum": "107fc4b2a439cbeb84c91c9764b9744d",
  "attachedAt": "2023-01-11",
  "url": "https://spx-production.s3.eu-west-1.amazonaws.com/invoices/nTtrU1GKV_5633342?X-Amz-Expires=3600..."
}
```
→ Bucket S3 : `spx-production.s3.eu-west-1.amazonaws.com` (région EU)
→ Expiry : 3600s confirmé en live

## Exemple de prompt

- "Montre moi le justificatif de la facture Airbnb" → get_payables search + get_payable_attachments
- "Télécharge le PDF de la facture Oracle du mois dernier" → filter supplier + get_payable_attachments
- "Vérifier que la pièce jointe n'est pas corrompue" → comparer checksum local vs checksum API

Comment installer ce skill

/
  1. 1
    Télécharger le fichier s21-payable-attachments-url-expiry.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 s21-payable-attachments-url-expiry.md .claude/s21-payable-attachments-url-expiry.md
  3. 3
    Utiliser dans Claude Codele 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_payable_attachments.

Skills similaires

★ Top
95/100·🔍 Ponctuel·Expert

Audit de couverture MCP — Gap analysis automatisée

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