Générer des PDF depuis Airtable

Il n’y a pas d’extension PDFMonkey dans Airtable. Vos enregistrements peuvent quand même devenir des PDF : via Zapier, Make ou n8n, ou avec un court script d’automatisation Airtable.

Pas d’extension, mais deux façons de s’en passer

Vous ne trouverez pas d’extension PDFMonkey dans Airtable. Nous préférons vous le dire ici plutôt que de vous laisser la chercher. Nous avons en revanche des intégrations officielles avec Zapier, Make et n8n, les outils auxquels la plupart des bases Airtable sont déjà branchées. Et si un peu de JavaScript ne vous fait pas peur, un script d’automatisation Airtable peut appeler directement notre API.

Beaucoup d’équipes gèrent leurs commandes, clients, événements ou formations dans Airtable. Un jour, un enregistrement passe à une certaine étape, « Gagné » ou « À facturer » par exemple, et quelqu’un doit en tirer un document. D’habitude, cela veut dire copier-coller dans un traitement de texte, et c’est justement ce que PDFMonkey peut faire à votre place : une facture ou un devis, un certificat pour chaque participant, un rapport client qui reprend les enregistrements liés, un bon de livraison par commande. Les images fonctionnent aussi (WebP, PNG ou JPG), si votre modèle est de type Image.

Avec Zapier, Make ou n8n

  1. Concevez votre modèle dans PDFMonkey, avec le Builder visuel ou en code. Nommez les variables comme vos champs Airtable, cela simplifie la suite. Publiez-le.
  2. Dans votre outil d’automatisation, partez d’un déclencheur Airtable, par exemple un nouvel enregistrement ou un enregistrement modifié.
  3. Ajoutez l’étape PDFMonkey Generate Document et faites correspondre vos champs Airtable aux variables du modèle. Les lignes de détail, comme celles d’une facture, peuvent être envoyées sous forme de liste.
  4. Envoyez ensuite le fichier là où il doit aller : en pièce jointe de l’enregistrement, par e-mail à votre client, ou sur un espace de stockage.

Lignes de détail reliées dans l’action PDFMonkey Generate Document de Zapier : produit, quantité, prix unitaire et total pour chaque ligne

Ici dans Zapier : chaque champ de ligne devient une colonne du tableau dans votre document.

Faites l’étape 4 pendant la même exécution. Les liens de téléchargement de PDFMonkey expirent au bout d’une heure : un lien gardé pour plus tard ne fonctionnera pas.

Nos guides détaillent la mise en place pas à pas : Zapier, Make et n8n.

Avec un script d’automatisation Airtable

Si votre plan Airtable inclut les scripts d’automatisation, une action Run a script peut appeler l’API PDFMonkey avec fetch(). Enregistrez votre clé d’API PDFMonkey comme secret Airtable, ajoutez l’ID de l’enregistrement en variable d’entrée, puis adaptez les noms de table, de champs et de modèle ci-dessous :

// Automatisation Airtable → action « Run a script »
// Variable d'entrée : recordId — Secret : PDFMONKEY_API_KEY
const { recordId } = input.config();
const table = base.getTable('Factures');
const record = await table.selectRecordAsync(recordId);

const response = await fetch('https://api.pdfmonkey.io/api/v1/documents/sync', {
  method: 'POST',
  headers: {
    'Authorization': `Bearer ${input.secret('PDFMONKEY_API_KEY')}`,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    document: {
      document_template_id: 'ID_DE_VOTRE_MODELE',
      status: 'pending',
      payload: {
        customerName: record.getCellValueAsString('Client'),
        total: record.getCellValue('Total'),
      },
      meta: { _filename: `Facture ${record.getCellValueAsString('Numéro')}.pdf` },
    },
  }),
});

const body = await response.json();
// Clé d'API erronée, modèle non publié… : l'API renvoie des erreurs, pas de document
if (!response.ok) {
  throw new Error(JSON.stringify(body.errors ?? body));
}

const { document_card } = body;
if (document_card.status !== 'success') {
  throw new Error(document_card.failure_cause);
}

// Airtable télécharge le fichier et en conserve sa propre copie
await table.updateRecordAsync(recordId, {
  PDF: [{ url: document_card.download_url, filename: document_card.filename }],
});

Nous passons ici par l’endpoint /sync, parce qu’il attend le document et le renvoie en une seule requête, ce qui garde le script court. Les scripts Airtable ont toutefois une limite de temps d’exécution. Si vos documents sont lourds, créez-les plutôt avec l’endpoint asynchrone classique et laissez un webhook vous prévenir quand ils sont prêts.

Quelle que soit la voie choisie, vous pouvez créer un compte PDFMonkey gratuit et faire un premier essai sur un seul enregistrement. Et si votre base est organisée d’une façon à laquelle nous n’avons pas pensé, racontez-nous !

Questions fréquentes

PDFMonkey a-t-il une intégration Airtable native ?

Non, il n’existe pas d’extension PDFMonkey dans Airtable. Vous reliez les deux grâce à nos intégrations officielles pour Zapier, Make ou n8n, qui proposent toutes des déclencheurs Airtable, ou avec un script d’automatisation Airtable qui appelle l’API REST de PDFMonkey.

Peut-on joindre le PDF généré à l’enregistrement Airtable ?

Oui. Écrivez l’URL de téléchargement dans un champ pièce jointe pendant la même exécution : Airtable télécharge le fichier et en conserve sa propre copie. Faites-le tout de suite, car les URL de téléchargement de PDFMonkey expirent au bout d’une heure.

Zapier, Make ou n8n : lequel choisir ?

Celui que vous utilisez déjà. Les trois disposent d’une intégration PDFMonkey officielle et savent réagir aux enregistrements Airtable nouveaux ou modifiés. n8n peut en plus être auto-hébergé, si cela compte pour vous.

Existe-t-il un plan gratuit ?

Oui. Le plan Gratuit comprend 20 documents par mois, sans limite de durée et sans carte bancaire. Chaque nouveau compte démarre aussi avec un essai de 30 jours qui inclut 300 documents. Les plans payants commencent à 5 € par mois avec Starter (300 documents par mois).

Faut-il connaître le HTML pour créer son modèle ?

Non. À la création d’un modèle, vous choisissez entre deux modes : le Builder visuel en glisser-déposer, ou un modèle Code écrit en HTML, CSS et Liquid. Un modèle utilise l’un ou l’autre, jamais les deux. Vos données Airtable sont envoyées de la même façon dans les deux cas.

Où mes données sont-elles hébergées ?

Dans l’Union européenne. Les serveurs applicatifs, le stockage des fichiers et les moteurs de rendu de PDFMonkey tournent à Paris, et la base de données à Francfort. Un accord de traitement des données (DPA) conforme au RGPD est disponible.

Autres intégrations no-code

PDFMonkey fonctionne aussi avec Zapier, Make, n8n, Bubble et Glide. Si vos données sont plutôt dans un tableur, jetez un œil à Google Sheets.

Et si les PDS étaient simples ?
Essayez PDFMonkey gratuitement dès aujourd’hui.

Pas de CB. Pas d’engagement.