Bunsho Engine

Le centre de génération de documents d’un site WordPress : des PDF accessibles et conformes, des factures électroniques, et une bibliothèque de modèles rédigés dans l’administration.

Version 1.7.3, publiée le 26 octobre 2026 Journal des versions

Le téléchargement est réservé aux titulaires d'une licence.

En bref

Nature
Extension WordPress
Éditeur
Rama Likibi
Langues
Français
WordPress
7.1 ou plus récent, éprouvé jusqu'à 7.3
PHP
8.3 ou plus récent

Bunsho Engine produit les documents d’un site WordPress, et il les produit accessibles. Toute extension, tout thème, et l’assistante du site peuvent lui confier une demande ; il rend un PDF balisé qu’un lecteur d’écran traverse comme une page bien construite, et non comme une image de texte.

Des documents réellement accessibles

Chaque document sort conforme à la norme PDF/UA-1, et à PDF/A-3b quand l’archivage l’exige. Ce n’est pas une intention : l’arbre des balises porte les titres, les tableaux, les listes et les liens, aucun niveau de titre n’est sauté, les images décoratives restent hors de l’arbre, et la langue du document est déclarée. La conformité est mesurée à chaque livraison par un validateur indépendant.

L’accessibilité ne s’arrête pas au document : les écrans d’administration respectent le niveau AA des règles WCAG 2.1, se parcourent entièrement au clavier et s’annoncent correctement à un lecteur d’écran.

Trois circuits de production, au choix

Un service de conversion raccordé produit les documents les plus riches, par un navigateur sans écran ou par une suite bureautique. Un moteur embarqué en PHP pur produit les documents courts sans aucun service extérieur : un site sans serveur de conversion reste donc capable de produire ses documents. L’administrateur choisit son circuit, et une demande peut imposer le sien. Quand un service ne répond plus, le travail passe au suivant qui porte la même capacité, et le journal le dit.

Les factures électroniques

Une facture sort avec ses données structurées embarquées, au format Factur-X, dans un PDF/A-3b : elle est à la fois lisible par une personne et exploitable par un logiciel comptable. Les profils de la norme sont pris en charge, et le document reste accessible.

Des modèles rédigés dans l’administration

Un compositeur permet d’écrire ses propres modèles de document — contrats, attestations, conventions, courriers types — sans écrire une ligne de code. Un modèle porte ses parties, ses champs, ses articles et sous-articles numérotés, ses clauses conditionnelles et sa mise en page. Les valeurs se transmettent à la production, le texte reste celui du modèle, et chaque document produit garde la trace de la version du modèle qui l’a composé. Un modèle s’exporte et s’importe en JSON, ce qui permet de le préparer ailleurs ou de le partager entre sites.

Prêt pour la signature électronique

Un contrat peut porter, pour chaque partie, un champ de signature vide et balisé, nommé par l’appelant. Une extension de signature n’a plus qu’à le remplir : les validateurs classent alors chaque signature comme un remplissage de formulaire, et non comme une modification suspecte du document. Les champs portent leur nom accessible, et leur place dans l’ordre de lecture suit le libellé qui les annonce.

Quatorze mises en page, et votre identité

Quatorze modèles de mise en page couvrent la lettre, la facture, le relevé, le rapport, le compte rendu, le contrat et d’autres usages. L’identité de l’émetteur — raison sociale, adresse, mentions légales, logo — se règle une fois et sert tous les documents. Une extension tierce peut déclarer son propre habillage pour mettre les documents aux couleurs d’une marque, sans toucher à leur mise en page.

Pour les développeurs

Un contrat public stable est le seul point d’appui : ses fonctions ne changent pas de signature sans que sa version monte, et son historique est écrit dans le code. Un guide d’intégration, un guide des mises en page, un guide du compositeur et un relevé des vérifications accompagnent l’extension.

L’extension ne dépend d’aucune autre pour fonctionner. Elle s’intègre à l’assistante du site par treize capacités, qui lui permettent de produire un document, de le relire, de décrire un modèle ou de consulter le journal, selon les autorisations que l’administrateur accorde.

Exigences

WordPress 7.1 ou plus récent, PHP 8.3 ou plus récent. Les versions 8.3, 8.4 et 8.5 de PHP sont éprouvées. Un service de conversion est facultatif : sans lui, le moteur embarqué prend le relais.

Prérequis

WordPress
7.1 ou plus récent, éprouvé jusqu'à 7.3
PHP
8.3 ou plus récent, éprouvé jusqu'à 8.5

Installation

Première question à trancher : avez-vous besoin d’installer un logiciel sur votre serveur ?
Bunsho Engine embarque son propre moteur de production, en PHP pur. Dès l’activation, sans rien installer de plus, votre site sait produire un document HTML vers PDF, le sortir en PDF/A, et y embarquer une facture Factur-X. Pour une attestation, une lettre, un contrat, une facture : cela suffit.
Au-delà, il faut un service de conversion sur votre serveur. Il s’agit de Gotenberg, un logiciel libre qui tourne en conteneur. Vous en avez besoin si vous voulez l’une de ces choses : convertir un fichier bureautique en PDF, partir d’une adresse web ou d’un texte en Markdown, dessiner des images vectorielles dans vos documents, fusionner ou faire tourner des PDF, y poser un filigrane ou un tampon, y joindre des pièces, les chiffrer — ou produire des documents de plus de 300 lignes de tableau.
Cette dernière limite mérite votre attention : au-delà de 300 lignes de tableau, le moteur embarqué ne garantit plus la conformité PDF/UA de ce qu’il produit. Si vous éditez des relevés ou des rapports volumineux, installez le service.
Pour installer le service de conversion, sur un serveur où Docker est disponible :
docker run -d --name gotenberg -p 127.0.0.1:3000:3000 gotenberg/gotenberg:8
Il écoute alors sur la boucle locale, port 3000, et n’est pas exposé au web. C’est l’adresse que Bunsho emploie par défaut. Si votre hébergement ne permet pas de conteneur, demandez-le à votre hébergeur, ou restez sur le moteur embarqué.
Ensuite, dans WordPress :
Installez l’extension depuis l’archive, par la page des extensions, puis activez-la. Elle vérifie d’elle-même PHP et WordPress : en deçà de PHP 8.3 ou de WordPress 7.1, elle reste inerte et vous le dit, sans rien casser.
Ouvrez le menu « Bunsho Engine ». L’onglet « État » vous dit ce qui fonctionne, service par service. Si vous avez installé Gotenberg, allez dans l’onglet « Services » : indiquez son adresse si elle diffère de celle par défaut, interrogez-le d’un bouton, et laissez le service préféré en répartition automatique — les documents courts partiront au moteur embarqué, les longs au service.
Renseignez l’identité de l’émetteur, sous-page « Identité ». Elle sert tous vos documents : raison sociale, statut, adresse, coordonnées, mentions légales, logo. Sans elle, vos documents sortent sans en-tête ni pied d’identité.
Choisissez votre mise en page et votre habillage par défaut, sous-page « Designs ».
Activez votre clé de licence, onglet « Licence », pour recevoir les mises à jour. L’extension produit des documents sans licence : la clé ne commande que les mises à jour.
Pour produire votre premier document : sous-page « Modèles », onglet « Rédaction ». Écrivez un modèle, enregistrez-le, demandez un aperçu. Vos documents enregistrés se retrouvent dans la sous-page « Documents ».
Si quelque chose ne va pas : l’onglet « Journal » dit ce que l’extension a fait, demande par demande, avec le motif de chaque refus en français.

Questions fréquentes

Faut-il un serveur de conversion pour produire des documents ?

Non. Un moteur embarqué en PHP pur produit les documents sans aucun service extérieur, dès l’activation. Un service de conversion apporte les images vectorielles, les documents longs et la conversion de fichiers bureautiques ; l’administrateur choisit lequel des deux travaille, ou laisse la répartition automatique.

Les documents sont-ils vraiment accessibles, ou seulement annoncés comme tels ?

Chaque livraison est mesurée par veraPDF, un validateur indépendant, en PDF/UA-1 et en PDF/A-3b. L’onglet « Accessibilité » de cette fiche dit ce qui a été vérifié, avec quels outils, et quelles limites subsistent.

Mes documents existants vont-ils changer d’aspect après une mise à jour ?

Non, sauf mention explicite dans le journal des versions. Un document déjà produit est un fichier : il ne bouge pas. Pour qu’un contrat signé reste identique à ce qu’il était, archivez le PDF ou le corps composé : l’extension ne conserve pas les documents rendus à l’appelant.

Puis-je écrire mes propres modèles de contrat sans développeur ?

Oui. Le compositeur permet d’écrire un modèle dans l’administration : parties, champs, articles et sous-articles numérotés, clauses conditionnelles, mise en page. Un type « Document libre » est fourni, dont les modèles portent eux-mêmes leurs champs : aucune extension tierce n’est nécessaire.

Qu’est-ce qui garantit qu’un contrat produit aujourd’hui pourra être rejoué demain ?

Chaque document produit depuis un modèle porte l’identifiant du modèle, le numéro de sa révision et son empreinte. Consignez-les avec le document : une révision ancienne se rejoue par son numéro.

L’assistante du site peut-elle écrire mes contrats ?

Elle peut produire un document depuis un modèle que vous avez rédigé, en ne fournissant que les valeurs : le texte reste celui du modèle. C’est la voie à préférer pour un contrat ou une attestation. L’administrateur décide, capacité par capacité, ce qu’elle est autorisée à faire.

Combien de temps prend un document long ?

Comptez une vingtaine de secondes et 300 Mo de mémoire PHP pour 10 000 lignes de tableau, qui est le plafond par document. Au-delà, la demande est refusée avant toute conversion, avec un message qui invite à découper par période. Une production de cette taille relève d’une action d’administration ou d’une tâche de fond, pas d’une page publique.

Que se passe-t-il si le service de conversion tombe en pleine production ?

Le travail passe au service suivant qui porte la même capacité, et le journal le dit. Un refus de validation, lui, ne se reprend pas ailleurs : il vient de la demande, et son message nomme la clé en cause.

Les factures sont-elles conformes à la facturation électronique ?

Une facture sort au format Factur-X, données structurées embarquées dans un PDF/A-3b : lisible par une personne, exploitable par un logiciel comptable. Les profils de la norme sont pris en charge.

Peut-on signer électroniquement les documents produits ?

L’extension ne signe pas, mais elle prépare : un contrat peut porter, pour chaque partie, un champ de signature vide et balisé. Une extension de signature n’a plus qu’à le remplir, et les validateurs classent alors chaque signature comme un remplissage de formulaire plutôt que comme une modification suspecte.

L’extension dépend-elle d’autres extensions ?

Non, elle fonctionne seule. Elle offre un contrat public aux extensions et aux thèmes qui veulent lui confier leurs documents, et s’intègre à l’assistante du site si elle est présente.

Où vont les documents enregistrés ?

Dans un répertoire protégé contre l’accès direct par le web. Ils se relisent par leur identifiant, jamais par une adresse publique, et se téléchargent depuis la sous-page « Documents ». À vous de décider qui a le droit de les relire.

Services extérieurs

Cette application ne contacte aucun service extérieur.