Que peut lire et écrire un logiciel dans Pennylane ?
Par l'API v2, un logiciel métier agit sur presque toute la chaîne qui va de la facture à l'écriture comptable. La documentation développeur de Pennylane distingue trois API : l'API Company, pour une entreprise ; l'API Firm, pour un cabinet comptable qui consulte plusieurs dossiers ; l'API Firm Group, accordée sur demande pour créer des sociétés ou des utilisateurs en masse. Pour relier votre logiciel, c'est l'API Company qui compte.
| Domaine | Ce que l'API v2 permet, d'après la documentation de Pennylane |
|---|---|
| Ventes | Créer une facture client avec l'éditeur de Pennylane, importer une facture déjà émise ailleurs, créer un devis puis le convertir en facture, lier un avoir à une facture |
| Achats | Importer une facture fournisseur, filtrer les factures reçues |
| Référentiels | Clients, fournisseurs, produits, catégories analytiques, comptes du plan comptable |
| Comptabilité | Créer des écritures, y compris avec étiquettes analytiques, et lire les lignes d'écriture |
| Banque | Créer et lire des transactions, rapprocher une facture et une transaction |
| Documents | Déposer des PDF et les attacher à une facture ou à une écriture |
La page des cas d'usage de Pennylane signale aussi ce qui n'est pas encore couvert, par exemple la création de factures d'acompte ou de bons de livraison ; un guide consacré à la facture d'acompte figure pourtant dans la même documentation, donc vérifiez votre cas avec Pennylane avant de chiffrer. Pour de l'analyse en volume, Pennylane propose le Data Sharing, une connexion en lecture seule, avec quelques heures de décalage, pensée pour les outils de BI.
Jeton d'entreprise ou OAuth 2.0 : quel accès demander ?
Le mode d'accès dépend de qui construit l'intégration et pour qui. Une entreprise qui fait relier son propre logiciel utilise un jeton d'entreprise ; un éditeur qui vend son logiciel à de nombreux clients Pennylane enregistre une application OAuth 2.0.
| Critère | Jeton d'entreprise | Application OAuth 2.0 |
|---|---|---|
| Pour qui | Une entreprise et ses prestataires | Un éditeur de logiciel tiers |
| Condition | Formule Essential ou supérieure ; génération par un administrateur (rôles Executive, Internal Accountant ou External Accountant) | Application enregistrée auprès de l'équipe partenariats de Pennylane, qui fournit un identifiant et un secret |
| Où | Paramètres, Connectivité, Développeurs | Flux d'autorisation par code sur app.pennylane.com |
| Droits | Lecture seule ou lecture et écriture, par périmètre (scopes) | Périmètres listés dans la demande d'autorisation ; l'utilisateur choisit son entreprise et accorde l'accès |
| Durée | 1, 6 ou 12 mois, ou illimitée ; jeton affiché une seule fois | Jeton d'accès de 24 heures, jeton de rafraîchissement de 90 jours, remplacé à chaque usage |
La limite d'appels est la même partout : 25 requêtes par fenêtre de 5 secondes et par jeton, en production comme en bac à sable. Au-delà, Pennylane répond par une erreur 429 et un en-tête retry-after qui indique le nombre de secondes à attendre. Pour les essais, une entreprise crée elle-même un compte bac à sable depuis son menu de profil (Test environment) ; un intégrateur le demande à l'équipe partenariats.
Webhooks ou journal des modifications : comment suivre ce qui change ?
Pour savoir qu'une facture a été payée ou qu'un fournisseur a changé d'adresse, votre logiciel dispose de deux mécanismes, qu'il est prudent de combiner.
- Les webhooks, encore en bêta en 2026 selon Pennylane, qui conseille de s'appuyer en parallèle sur les journaux de modifications. Trois événements sont listés : changement du statut de facturation électronique d'une facture client, création d'un fichier dans la gestion documentaire, réception d'une facture fournisseur par la facturation électronique. L'adresse de réception doit être en HTTPS. En cas d'échec temporaire, Pennylane réessaie avec des délais croissants, de 30 secondes à 12 heures ; une réponse 401, 403, 404 ou 410 désactive l'abonnement immédiatement, sans réactivation automatique.
- Les journaux de modifications (changelogs), disponibles pour les factures clients et fournisseurs, les clients, les fournisseurs, les produits, les lignes d'écriture et les transactions. Les changements y sont conservés quatre semaines. La méthode décrite par Pennylane : parcourir toutes les pages de résultats, puis seulement enregistrer la date du dernier changement traité comme point de départ du passage suivant.
Conséquence pratique : une synchronisation arrêtée plus de quatre semaines ne rattrape plus son retard par le journal ; la resynchronisation complète doit être prévue dès la conception. Voir aussi notre définition du webhook.
Cinq flux concrets entre un logiciel métier et Pennylane
- De l'intervention à la facture. Le technicien fait signer le bon d'intervention sur sa tablette. Le logiciel métier vérifie que le client existe dans Pennylane (sinon il le crée), retrouve les produits facturés, puis crée la facture client ; Pennylane génère le PDF. Le numéro de facture remonte dans la fiche d'intervention.
- Des factures déjà émises par votre outil. Si votre logiciel numérote et produit lui-même ses factures, on les importe : dépôt du fichier, puis appel d'import avec toutes les données. L'import ne lit pas le PDF, précise la documentation (pas de reconnaissance de caractères) : chaque montant doit être transmis.
- Du devis signé à la facture. Le devis accepté dans votre outil est créé dans Pennylane, puis converti en facture à la livraison, sans ressaisie des lignes.
- Du paiement à l'arrêt des relances. Chaque nuit, le service d'intégration lit le journal des transactions et les rapprochements ; une facture soldée passe au statut payé dans le logiciel métier, qui cesse de la relancer. Le sujet est détaillé dans notre page sur les relances d'impayés.
- De la facture fournisseur au chantier. Quand une facture fournisseur arrive par la facturation électronique, le webhook prévient le logiciel métier, qui propose de la rattacher à la commande d'achat ou au chantier concerné. Ce flux prend place dans la réforme décrite sur notre page consacrée à la facture électronique dans un logiciel métier.
Ce qui casse une intégration Pennylane, et comment l'éviter
- Les évolutions de l'API v2. Pennylane a publié pour 2026 un calendrier de changements : préversion le 14 janvier, nouveau comportement par défaut le 8 avril, ancien comportement supprimé le 1er juillet 2026. Le périmètre « ledger » y est remplacé par des périmètres plus fins (journaux, comptes, écritures) et plusieurs listes passent à une pagination par curseur. Une intégration écrite en 2025 sans suivi de ces annonces a pu cesser de fonctionner.
- Les factures finalisées. Une facture client créée hors brouillon est considérée comme finalisée : pour l'annuler, la documentation de Pennylane indique qu'il faut créer un avoir. Les montants se contrôlent donc dans le logiciel métier avant l'envoi, pas après.
- Les doublons. Un appel répété après une coupure réseau peut créer deux fois le même client ou la même facture. Le service d'intégration conserve la correspondance entre l'identifiant de votre logiciel et celui de Pennylane, et la consulte avant toute création.
- Les jetons. Un jeton n'est affiché qu'une fois et peut expirer : il se range dans un coffre de secrets, avec une alerte avant l'échéance. Autre piège : un jeton privé du périmètre de lecture d'un événement ne reçoit rien (la documentation des webhooks évoque selon les passages un refus de l'abonnement ou des envois sautés) ; les périmètres se vérifient donc avant de s'abonner.
- Les données personnelles. Les fiches clients d'un artisan ou d'une profession libérale concernent souvent des particuliers. Le flux ne transmet que les champs utiles et figure dans votre registre des traitements ; notre guide RGPD et logiciel métier détaille ces obligations.
Faut-il développer, ou une liaison existante suffit-elle ?
Si votre logiciel métier est un produit du marché, demandez d'abord à son éditeur s'il propose déjà une liaison avec Pennylane : cela ne coûte rien. Pour un besoin d'analyse, le Data Sharing alimente un outil de BI sans service à maintenir.
Le développement sur mesure devient pertinent quand :
- votre logiciel est spécifique ou ancien, et aucun connecteur ne le connaît ;
- le flux suit des règles propres à votre métier (facturation à l'avancement, regroupement de bons, ventilation analytique par chantier) ;
- vous devez rejouer sans perte ce qui a échoué, avec un journal consultable ;
- plusieurs outils gravitent autour de Pennylane : paiement, CRM, application terrain.
La mécanique générale de ces liaisons est décrite dans notre page connecter ses outils par API.
Ce que YMHB Web construit et vous remet
YMHB Web écrit un petit service d'intégration (Node.js, avec une base PostgreSQL pour la table de correspondance et le journal), hébergé sur votre compte. Le jeton Pennylane est généré par votre administrateur et reste à votre nom. Vous recevez :
- le code source, déposé chez vous et documenté, qui vous appartient au paiement intégral ;
- un journal où chaque facture envoyée apparaît avec la réponse de Pennylane ;
- des alertes en cas d'erreurs répétées, de jeton proche de l'expiration ou d'abonnement webhook désactivé ;
- une procédure de resynchronisation complète, testée en bac à sable.
Le projet commence par un cadrage des flux et des règles comptables, si possible avec votre expert-comptable ; le chiffrage vient ensuite, en forfait global. L'architecture de ces services est présentée dans notre offre API et microservices.
Questions fréquentes
L'API de Pennylane est-elle incluse dans toutes les formules ?
Non. Selon la documentation développeur de Pennylane, l'API Company est ouverte par défaut aux comptes en formule Essential ou supérieure, et une entreprise en formule Starter doit passer à Essential pour générer un jeton. Le jeton est créé par un administrateur du compte, dans Paramètres, Connectivité, Développeurs, avec des droits en lecture seule ou en lecture et écriture.
Combien de requêtes l'API Pennylane accepte-t-elle ?
L'API v2 de Pennylane accepte 25 requêtes par fenêtre de 5 secondes, et cette limite s'applique à chaque jeton, pas à chaque entreprise. Au-delà, Pennylane renvoie une erreur HTTP 429 avec un en-tête retry-after qui indique le délai d'attente. Un service d'intégration bien construit lit ces en-têtes et étale ses envois au lieu d'échouer.
Pennylane propose-t-il des webhooks ?
Oui, mais les webhooks de Pennylane sont en bêta en 2026 et ne couvrent que trois événements : statut de facturation électronique d'une facture client, nouveau fichier dans la gestion documentaire, facture fournisseur reçue par facturation électronique. Pennylane recommande de s'appuyer aussi sur les journaux de modifications, qui gardent quatre semaines d'historique pour les factures, les tiers, les produits et les transactions.
Peut-on tester une intégration Pennylane sans toucher à sa vraie comptabilité ?
Oui. Une entreprise cliente de Pennylane peut créer un compte bac à sable depuis son menu de profil, rubrique Test environment : elle dispose alors de deux comptes, le réel et celui d'essai. Un éditeur ou un intégrateur demande son bac à sable à l'équipe partenariats de Pennylane. Les limites d'appels y sont les mêmes qu'en production.
Peut-on corriger une facture envoyée par l'API dans Pennylane ?
Une facture client créée par l'API Pennylane est considérée comme finalisée, sauf si elle a été créée en brouillon. Pour annuler une facture finalisée, la documentation de Pennylane indique qu'il faut créer un avoir, que l'API permet de lier à la facture d'origine. D'où l'intérêt de contrôler les montants dans le logiciel métier avant l'envoi, ou de créer la facture en brouillon quand une validation dans Pennylane est prévue.
À lire aussi
Sources
- Pennylane, documentation développeur : API Overview (types de jetons, OAuth 2.0, bac à sable)
- Pennylane, What APIs are available (API Company, Firm, Firm Group ; formule Essential ou supérieure)
- Pennylane, Generating my API token (rôles administrateurs, formule Essential, durées, lecture seule ou écriture)
- Pennylane, OAuth 2.0 walkthrough (enregistrement auprès des partenariats, jetons de 24 heures et 90 jours)
- Pennylane, Rate Limiting in API v2 (25 requêtes par 5 secondes et par jeton, erreur 429)
- Pennylane, Getting started (création du bac à sable)
- Pennylane, Webhooks (fonctionnalité en bêta)
- Pennylane, List of webhook events
- Pennylane, Webhooks : Failures & Lifecycle (nouveaux essais de 30 secondes à 12 heures, désactivation)
- Pennylane, Webhooks : Rules & limits (adresse HTTPS, périmètres manquants)
- Pennylane, Tracking data changes (journaux de modifications conservés 4 semaines)
- Pennylane, Supported use cases (cas couverts et non couverts, dont la facture d'acompte)
- Pennylane, Import vs create a customer invoice (pas d'OCR à l'import, facture finalisée hors brouillon)
- Pennylane, Data Sharing or API : which should you use ? (lecture seule, quelques heures de décalage, outils de BI)
- Pennylane, 2026 API changes migration guide (calendrier du 14 janvier au 1er juillet 2026)
