Aller au contenu

API Reference — Fiscal API NF525

Documentation Interactive Swagger UI

L'interface ci-dessous est la documentation Swagger UI officielle du service backend-fiscal (fiscal_main.py). Elle est générée automatiquement par FastAPI et reflète l'état exact des routes exposées dans le périmètre LNE.

Périmètre affiché

Seules les routes du service backend-fiscal sont visibles ici. Les routes Business (res-api) ne font pas partie de ce périmètre et ne sont pas documentées dans ce portail.

Authentification requise

Les endpoints protégés nécessitent un token JWT. Utilisez le bouton Authorize dans Swagger UI et saisissez un token Bearer obtenu via POST /api/v1/auth/login.



Endpoints Fiscaux Clés

🔒 Authentification

Méthode Route Description
POST /api/v1/auth/login Authentification JWT — retourne access_token

📋 Commandes Fiscales

Méthode Route Description Événement Audit
POST /api/v1/orders Création d'une commande avec signature ECDSA ORDER_CREATED
GET /api/v1/orders/{id} Lecture d'une commande avec sa signature
PATCH /api/v1/orders/{id} Modification d'une commande ORDER_MODIFIED
DELETE /api/v1/orders/{id} Annulation d'une commande ORDER_CANCELLED
POST /api/v1/orders/{id}/pay Enregistrement du paiement ORDER_PAID

🛡️ Conformité & Intégrité

Méthode Route Description
GET /api/v1/compliance/verify-chain Vérification de la chaîne de signatures complète
GET /api/v1/compliance/public-key Clé publique ECDSA SECP256R1 pour vérification externe
GET /api/v1/audit/events Journal d'audit immuable (filtrable par type/date)

📊 Clôtures

Méthode Route Description Événement Audit
POST /api/v1/closures/daily Clôture journalière (Ticket Z) DAILY_CLOSE
POST /api/v1/closures/monthly Clôture mensuelle avec archivage MONTHLY_CLOSE
GET /api/v1/closures/daily Historique des clôtures journalières
GET /api/v1/closures/monthly Historique des clôtures mensuelles

📁 Export FEC

Méthode Route Description Événement Audit
GET /api/v1/fec/export Export FEC (article A47 A-1 du LPF) EXPORT_GENERATED
GET /api/v1/fec/archives Historique des exports archivés

ℹ️ Périmètre

Méthode Route Description
GET /info Déclaration officielle du périmètre fiscal LNE
GET /health Santé du service fiscal

Structure de Réponse — Commande avec Signature

{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "establishment_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "status": "paid",
  "total_amount": 42.50,
  "tax_amount": 7.08,
  "tax_rate": "20.00",
  "previous_signature": "3046022100a9f...e4d",
  "integrity_hash": "304502210089c...b2f",
  "signed_at": "2026-04-22T14:30:00Z",
  "created_at": "2026-04-22T14:28:00Z"
}

Champs d'inalterabilité

Les champs previous_signature, integrity_hash et signed_at sont non modifiables après écriture. Toute tentative de modification invalide la vérification de chaîne via /compliance/verify-chain.


Codes d'Erreur HTTP

Code Signification Contexte fiscal
200 Succès Lecture ou vérification réussie
201 Créé Commande ou clôture créée avec signature
400 Requête invalide Données manquantes ou format incorrect
401 Non authentifié Token JWT absent ou expiré
403 Accès refusé Rôle insuffisant pour l'opération
404 Non trouvé Route hors périmètre fiscal ou ressource inexistante
422 Erreur de validation Schéma Pydantic invalide
500 Erreur serveur Erreur interne — consulter les logs d'audit