URL de base
https://freebillgen.com/api/v1
Authentification
Chaque requête utilise un jeton Bearer. Créez-en un sous Paramètres → Clés API, attribuez-lui les portées de lecture/écriture par ressource nécessaires, définissez une expiration facultative et envoyez-le avec chaque requête :
Authorization: Bearer <your-api-key>Les requêtes sont authentifiées auprès du compte qui a créé la clé et vérifiées par rapport aux portées attribuées. Gardez le jeton secret et révoquez-le s'il est exposé ou n'est plus nécessaire.
Ce que vous pouvez faire
- Consultez les factures, clients, entreprises, paiements et échéanciers récurrents
- Créez-les et mettez-les à jour (API en écriture - Pro)
- Récupérez les rapports de TVA et de balance âgée au format JSON
- Consultez la même file limitée « Prochaines actions » utilisée par le tableau de bord
- Consultez les fichiers de factures électroniques fournisseurs téléversés manuellement dans la boîte de réception (pas un point de réception Peppol/e-mail)
- Téléchargez les mappages génériques OASIS UBL et UN/CEFACT CII pour consultation (non validés par profil)
- Enregistrez des points de terminaison webhook pour les événements de facturation et de paiement (Pro)
- Idempotency-Key sur les écritures prises en charge - des données de requête modifiées sous la même clé renvoient un code 409
- Pagination par curseur via links.next, ajustable avec per_page (max. 100)
- Permettez aux agents IA de lire toute facture partagée - schema.org/Invoice JSON-LD, ainsi que Accept: application/json ou text/markdown sur chaque lien de partage signé
- Serveur MCP en lecture seule, sans authentification, à l'adresse https://freebillgen.com/api/mcp (get_invoice, verify_invoice) pour les agents IA
Conventions
- Idempotence
- Pour les appels de création et d'action pris en charge, envoyez un Idempotency-Key unique. Réessayer avec des données de requête identiques rejoue le succès initial ; des données de requête modifiées renvoient un code 409.
- Pagination
- Les listes de ressources persistantes utilisent une pagination par curseur - suivez links.next (ou transmettez ?cursor=...) et ajustez ?per_page= (max. 100). Le flux d'actions borné signale sa limite et son état tronqué.
- Montants
- Les montants monétaires sont des chaînes JSON exactes formatées selon l'échelle ISO 4217 de la devise, par exemple « 121.00 » pour l'EUR ou « 500 » pour le JPY. Les prix unitaires peuvent conserver une précision d'entrée supplémentaire.
- Identifiants
- Chaque ressource est désignée par un identifiant opaque, jamais par un numéro séquentiel.
Exemple : lister vos factures
curl https://freebillgen.com/api/v1/invoices \
-H "Authorization: Bearer $FREEBILLGEN_API_KEY"
Ouvrir la référence interactive complète de l'API →
Questions sur l'API de facturation
L'API de facturation est-elle gratuite ?
Oui - l'API en lecture est incluse dans l'offre gratuite, sans frais. L'API en écriture et les webhooks sortants sont inclus dans Lifetime Pro à 49 € TTC : un paiement unique, sans abonnement mensuel ni renouvellement annuel.
Comment m'authentifier ?
Créez un jeton Bearer sous Paramètres -> Clés API, attribuez-lui des portées de lecture/écriture par ressource et envoyez-le en tant qu'en-tête Authorization: Bearer sur chaque requête. Les clés sont limitées à votre propre compte et peuvent être révoquées ou arriver à expiration.
Puis-je créer des factures par programmation ?
Oui, via l'API en écriture, qui fait partie du module complémentaire Pro. Elle produit les mêmes factures professionnelles que l'application web, avec une numérotation séquentielle et un traitement de la TVA configurable appliqués côté serveur. L'API ne certifie pas la conformité au droit local.
Comment éviter de créer des factures en double lors d'une nouvelle tentative ?
Envoyez une clé Idempotency-Key unique lors de l'appel de création. Une nouvelle tentative avec des données de requête identiques et cette clé renvoie le résultat initial. Sa réutilisation avec des données de requête modifiées renvoie un code 409 au lieu de rejouer silencieusement une autre facture.
Puis-je consulter les factures que j'ai reçues ?
Oui, gratuitement. GET /api/v1/inbox répertorie les fichiers fournisseurs UBL/CII pris en charge que vous avez téléversés manuellement et que FreeBillGen a analysés, l'original étant conservé à des fins d'audit ; GET /api/v1/inbox/{id} en renvoie un. La reconnaissance syntaxique ne constitue pas une validation de profil, et ces points d'accès ne font pas de FreeBillGen un point de réception Peppol, réseau gouvernemental ou e-mail.
Un agent IA peut-il lire une facture sans compte ?
Oui. Chaque facture que vous partagez via son lien public signé est lisible par les agents à la même URL : la page intègre un JSON-LD schema.org/Invoice, et l’envoi d’Accept: application/json renvoie une facture structurée (parties, lignes de facture, totaux, solde dû, options de paiement) tandis que Accept: text/markdown renvoie un rendu épuré à faible nombre de tokens. Il existe également un serveur MCP (Model Context Protocol) sans authentification et en lecture seule à l’adresse https://freebillgen.com/api/mcp avec les outils get_invoice et verify_invoice. La signature du lien fait office de jeton d’accès. Considérez l’URL complète comme une information confidentielle, car toute personne qui la reçoit peut ouvrir la facture.