Aller au contenu
Documentation
Français
Ouvrir l'application

Vue d'ensemble de l'API

Présentation de l'API REST NovaFisko v1, de ses environnements, de ses formats et des outils fournis pour connecter votre solution.

L'API NovaFisko est l'interface que l'application elle-même utilise sur le web, sur ordinateur et sur mobile. Tout ce que vous voyez dans les onglets Écritures, Documents, Banque, TVA, Exports ou Peppol passe par elle. Votre intégration dispose donc exactement des mêmes possibilités : créer un dossier, pousser une facture avec son PDF, lire le grand livre, télécharger le dossier complet d'un exercice ou suivre les changements en continu.

En bref

Élément Valeur
URL de base https://api.novafisko.com/v1
Style REST, corps JSON en UTF-8
Authentification Jeton porteur (Authorization: Bearer ...)
Version v1, portée par le chemin
Langues des messages fr, nl, en, de
Spécification OpenAPI 3.1

Un appel minimal, sans authentification, permet de vérifier que le service répond :

curl https://api.novafisko.com/v1/status
{
  "ok": true,
  "time": "2026-10-05T08:12:44+00:00"
}

GET /v1/ping renvoie la même information sous la forme {"ok": true, "server_time": "..."} sans toucher à la base de données. Utilisez-le comme sonde de connectivité.

Environnements

Environnement URL de base Usage
Production https://api.novafisko.com/v1 Données réelles des cabinets
Démonstration https://api.novafisko.com/v1 avec un jeton de démonstration Bac à sable, données fictives réinitialisées chaque nuit

Il n'existe pas d'hôte de test séparé. Le bac à sable est un cabinet de démonstration hébergé sur la même API : vous obtenez un jeton en un appel, sans créer de compte.

curl -X POST https://api.novafisko.com/v1/auth/demo \
  -H "Content-Type: application/json" \
  -d '{"locale": "fr", "device_name": "integration-sandbox"}'
{
  "token": "412|Qm9uam91ciBsZSBtb2RlIGTDqW1v",
  "user": {
    "id": 9034,
    "name": "Visiteur démo",
    "email": "demo-7f3a9c@demo.novafisko.com",
    "locale": "fr",
    "is_platform_admin": false,
    "is_demo": true,
    "firms": [
      {"public_token": "Fd7hQ2mN8sXa", "name": "Fiduciaire Démo", "role": "manager"}
    ],
    "managed_firms": [
      {"public_token": "Fd7hQ2mN8sXa", "name": "Fiduciaire Démo"}
    ]
  },
  "demo": {
    "firm": {"public_token": "Fd7hQ2mN8sXa", "name": "Fiduciaire Démo"},
    "companies": [
      {"public_token": "k3Jd9fPq2LmX", "code": "COMPTOIR", "name": "Le Comptoir Montois SRL"},
      {"public_token": "Pw8sTz4YbN1c", "code": "PIXELWERK", "name": "Pixelwerk SRL"},
      {"public_token": "Lb5vRe7HuK2d", "code": "LAMBERT", "name": "Lambert Électricité"},
      {"public_token": "Sc2oUv9XaM6e", "code": "SCENES", "name": "Scènes Ouvertes ASBL"}
    ],
    "expires_at": "2026-10-06T08:12:44+00:00",
    "resets_at": "2026-10-06T03:15:00+02:00"
  }
}

Le cabinet de démonstration contient quatre dossiers belges fictifs avec deux exercices, des écritures, des extraits bancaires, des déclarations TVA et des documents à valider. Vous pouvez y écrire librement.

Attention

En mode démonstration, tout effet externe est bloqué avec une réponse 403 et le code demo_mode : inscription Peppol, envoi vers Novadesko, e-mails, intégrations, clés de licence, webhooks et suppression de dossier. Les données sont réinitialisées chaque nuit à 03:15 (heure de Bruxelles) et un jeton de démonstration ne vit pas plus de 24 heures.

Si le cabinet de démonstration est momentanément indisponible, l'appel répond 503 avec le code demo_unavailable.

Formats

  • Les corps de requête sont en JSON (Content-Type: application/json), sauf le dépôt de fichiers qui utilise multipart/form-data.
  • Les réponses sont toujours en JSON, y compris les erreurs, sauf les exports (PDF, XLSX, CSV, ZIP, XML) qui renvoient le fichier.
  • Les dates sont au format ISO 8601, les montants sont des chaînes décimales avec un point. Le détail figure dans Conventions.
  • Les erreurs suivent une forme unique {message, code, errors} décrite dans Erreurs et limites.

Outils fournis

Outil Adresse
Spécification OpenAPI 3.1 (JSON) https://docs.novafisko.com/openapi/novafisko-v1.json
Spécification OpenAPI 3.1 (YAML) https://docs.novafisko.com/openapi/novafisko-v1.yaml
Collection Postman https://docs.novafisko.com/openapi/novafisko-v1.postman_collection.json
Référence interactive Référence de l'API

La spécification décrit chaque route avec ses paramètres, ses schémas et des exemples. Vous pouvez l'importer dans Postman, Insomnia ou Bruno, ou générer un client avec l'outil de votre choix.

Astuce

Dans la collection Postman, renseignez les variables base_url et token une seule fois. Toutes les requêtes les réutilisent.

Ce que couvre l'API

Domaine Exemples de routes
Authentification auth/login, auth/me, auth/tokens, auth/demo
Cabinet firms/{firm}, équipe, licence, activité, webhooks
Dossiers companies, paramètres, intégrité
Référentiels comptes, journaux, tiers, codes TVA, exercices et périodes
Écritures entries, entries/invoice, extourne
Documents documents, document-imports (PDF, images, XML, ZIP)
Banque mouvements, rapprochement, règles, fichiers CODA
TVA déclarations, Intervat XML, listings
Clôture et états balance, grand livre, comptes annuels, immobilisations
Exports livres en PDF, XLSX, CSV et dossier complet en ZIP
Peppol inscription, transport, annuaire, statut des tiers
Historique révisions, retour en arrière, corbeille, activité
Synchronisation sync/bootstrap, sync/pull, sync/push

Par où commencer

  1. Obtenez un jeton : lisez Authentification.
  2. Parcourez les Conventions pour éviter les pièges de format.
  3. Suivez un cas d'usage, par exemple Pousser une facture d'achat.
  4. Branchez les webhooks pour être prévenu des changements au lieu d'interroger l'API.

Voir aussi