Les deux derniers jours, j’ai travaillé sur cette automatisation pour rédiger et envoyer des devis complets. Ça fonctionne bien quand j’utilise un nœud « HTML en PDF », et je peux envoyer un PDF avec les données brutes non formatées. Mais quand j’essaie de formater les données dans un modèle, le PDF s’affiche vide. Me manque-t-il quelque chose ?
Bonjour @Tim_Barrett
La raison pour laquelle votre PDF s’affiche vierge est que vous mélangez deux méthodes différentes de génération de PDF dans votre flux de travail. Vous tentez d’utiliser une approche basée sur des modèles (via l’API Générateur PDF), mais vous l’alimentez avec un fichier binaire (via le nœud Convertir en fichier) et vous fournissez des données JSON invalides.
Voici les trois problèmes spécifiques et comment les résoudre :
- Le nœud
Convertir en fichierprend votre texte et le transforme en fichier HTML binaire. Cependant, le nœud API Générateur PDF ne « convertit » pas un fichier existant en modèle ; il crée un nouveau fichier en fusionnant des données JSON dans un modèle prédéfini.
En plaçant Convertir en fichier avant le générateur PDF, vous transformez l’entrée d’un objet JSON (dont l’API a besoin) en un objet binaire, ce qui amène l’API à ne pas trouver les données dont elle a besoin pour remplir le modèle.
Correction : Supprimez le nœud Convertir en fichier et connectez Éditer les champs1 directement à Générer un document PDF.
- Dans votre nœud
Générer un document PDF, vous avez défini les données comme suit :={} {{ $json.output }}
Ce n’est pas du JSON valide. L’API Générateur PDF nécessite un objet JSON où les clés correspondent aux espaces réservés que vous avez créés dans le tableau de bord de votre modèle API Générateur PDF.
Correction : Modifiez le champ data pour qu’il soit un objet JSON approprié. Par exemple, si votre modèle a un espace réservé appelé {{quote_content}}, votre champ de données devrait ressembler à ceci :
{
"quote_content": "{{ $json.output }}"
}
- Pour que les données apparaissent réellement sur le PDF, la clé que vous utilisez dans n8n doit correspondre exactement au nom de la variable dans votre modèle (ID : 1649628).
- Si votre modèle est vierge : Cela signifie que l’API a reçu la requête, mais n’a pas pu trouver de clés dans votre JSON qui correspondaient aux balises
{{variable}}dans votre conception. - Recommandation : Vérifiez votre modèle dans le tableau de bord de l’API Générateur PDF. Si vous avez des balises comme
{{client_name}}ou{{total_price}}, vous devez les fournir spécifiquement dans le JSON :
{
"client_name": "{{ $("Éditer les champs").item.json["What's your name?"] }}",
"quote_content": "{{ $json.output }}"
}
Pour ce flux de devis, isolez si le PDF vide est dû aux données de modèle ou au rendu. Avant le nœud PDF, ajoutez un nœud Définir/Modifier des champs qui produit un petit objet dont les clés correspondent à un espace réservé du modèle, par exemple eventName et guestCount, puis exécutez le nœud PDF avec cela.
Si le PDF avec un seul champ s’affiche, le modèle est correct et le problème vient de la forme de la sortie de l’IA ; analysez la sortie de l’agent en champs JSON nommés avant le nœud PDF. Si le test d’un seul champ reste vide, la limite suivante est l’identifiant du modèle ou les noms des espaces réservés plutôt que le flux n8n.
Salut Kjooleng
Merci pour ta réponse.
J’ai essayé tes étapes plusieurs fois, mais j’obtiens toujours un modèle vide. J’ai mis à jour les variables présentes dans mon modèle pour qu’elles correspondent à mes feuilles de calcul, et j’ai mis à jour les données pour qu’elles soient du JSON valide.
J’ai abandonné le modèle de devis de l’API PDF Generator pour un modèle vierge que j’ai créé dans l’espoir d’organiser les données. Je sais que je suis près du but, mais il me manque juste une dernière étape pour que ça fonctionne.
As-tu des idées ?
Je n’ai aucun problème. Vous devez suivre les instructions avec attention. Ne copiez pas aveuglément
Ceci devrait vous aider
Le mot-clé est très probablement celui-ci
Dans mon cas, ma variable de modèle est output. Assurez-vous d’ajuster la vôtre en conséquence
@Tim_Barrett, vous pouvez essayer d’utiliser le nœud de PDF API Hub qui vous permet de générer des PDF à l’aide d’un modèle.
Voici le lien du nœud vérifié:

