Behöver ert företag hjälp med att implementera AI? Kontakta oss och få prisoffert här →
AI Skolan
januari 22, 2026

PDF generator API + Gmail: certifikat skickas rätt

Rickard Andersson Partner, Nodenordic.se

Certifikatförfrågningar kommer alltid vid sämsta möjliga tidpunkt. Du gräver i gamla kalkylblad, letar efter den “slutgiltiga-slutgiltiga” PDF-mallen och hoppas att du inte stavar fel på ett namn innan du trycker på skicka.

Den här certifikat-e-postautomationen träffar utbildningskoordinatorer först, men kurskreatörer och ops-ansvariga fastnar ofta i den också. Resultatet är enkelt: certifikaten skickas ut automatiskt, varje certifikat får ett unikt ID och du kan verifiera eller skicka om utan att bygga om något.

Nedan ser du hur arbetsflödet genererar en PDF från en mall, mejlar den via Gmail, loggar posten och exponerar en verifierings-endpoint som du kan dela publikt.

Så fungerar den här automationen

Se hur detta löser problemet:

n8n Workflow Template: PDF generator API + Gmail: certifikat skickas rätt

Utmaningen: certifikat är enkla att skapa… tills du behöver skala

Att skapa ett certifikat manuellt är störigt. Att skapa femtio efter att en kohort avslutas blir ett miniprojekt du inte hade planerat. Du kopierar namn från ett formulär, justerar en PDF, exporterar, döper om filen, bifogar den i ett mejl och sedan svarar någon två veckor senare och ber om en ny utskickning för att “jag hittar det inte”. Samtidigt vidarebefordrar en annan person ett certifikat till en arbetsgivare och du får frågan: “Kan du bekräfta att detta är äkta?” Det kan du, men först efter att du letar i inkorgen eller i en mappstruktur som kändes rimlig då.

Det blir snabbt mycket. Och det smärtsamma är inte bara tiden, utan förtroendet och konsekvensen.

  • Små stavfel smyger sig in när du manuellt kopierar namn och kursnamn, och de misstagen är pinsamma att rätta i efterhand.
  • Mejltrådar blir din “databas”, vilket gör omskickningar och revisioner långsamma och opålitliga.
  • Utan ett unikt certifikat-ID blir verifiering en fram-och-tillbaka-dialog i stället för en snabb kontroll.
  • Malländringar blir en brandkårsutryckning eftersom ditt flöde är låst till en specifik fil eller layout.

Lösningen: generera, mejla och verifiera certifikat automatiskt

Det här arbetsflödet gör certifikatutskick till en tjänst, inte en uppgift. En publik webhook för “skapa certifikat” tar emot deltagaruppgifter (förnamn, efternamn, kurs, e-post). Automationen genererar ett unikt certifierings-ID, kontrollerar att det inte redan används och lagrar posten i en n8n Data Table så att du har en pålitlig källa för sanningen. Därefter skickar den en JSON-payload till en mall i PDF Generator API, som skapar en korrekt formaterad, varumärkesanpassad PDF utan att du behöver bygga HTML eller pilla med layout i arbetsflödet. Till sist skickar Gmail certifikatet som bilaga, så mottagaren får ett proffsigt dokument på minuter, inte dagar.

En andra publik endpoint hanterar verifiering. När någon anger ett ID slår arbetsflödet upp det och returnerar ett giltigt/ogiltigt-svar plus grundläggande deltagarinformation. Det gör omskickningar enkla, och äkthetskontroller slutar avbryta din dag.

Vad som förändras: före vs. efter

Praktisk effekt i verkligheten

Säg att du håller en workshop med 30 deltagare och du utfärdar certifikat varje vecka. Manuellt tar även en “snabb” process kanske 8 minuter per person med PDF-ändringar, export, namngivning och mejl, vilket blir runt 4 timmar varje vecka. Med det här arbetsflödet skickar du in deltagardatan en gång (eller skickar den från ett formulär), väntar på att PDF:en genereras och låter Gmail leverera den automatiskt. Din manuella tid sjunker till ungefär 10 minuter totalt, mest för stickprovskontroll och för att svara på faktiska frågor.

Krav

  • n8n-instans (testa n8n Cloud gratis)
  • Alternativ för egen drift om du föredrar det (Hostinger fungerar bra)
  • PDF Generator API för att rendera PDF:er från en mall
  • Gmail för att mejla certifikat som bilagor
  • n8n Data Table (skapa den i n8n)

Svårighetsnivå: Medel. Du kopplar konton, exponerar webhooks publikt och bekräftar några fältmappningar.

Behöver du hjälp att implementera detta? Prata med en automationsexpert (gratis 15-minuters konsultation).

Flödet i arbetsflödet

En skapa-certifikat-förfrågan kommer in. “Incoming Create Webhook” tar emot förnamn, efternamn, kursuppgifter och mottagarens e-post. Det är detta du kopplar till ditt formulär, LMS eller interna adminverktyg.

Ett unikt certifierings-ID genereras och kontrolleras. Arbetsflödet skapar ett ID, slår upp det i n8n Data Table och går bara vidare när det verkligen är oanvänt. Om det blir en krock genererar det ett nytt och kontrollerar igen, så att du inte får dubbletter senare.

Posten lagras, sedan skapas PDF:en. Deltagardata läggs till i Data Table och skickas sedan som en JSON-payload till din mall i PDF Generator API. Mallen hanterar typsnitt, färger, logotyper och layout, vilket gör att själva automationsflödet kan hållas enkelt.

Gmail skickar certifikatet automatiskt. Den genererade PDF:en bifogas i ett Gmail-meddelande med din ämnesrad och brödtext. Mottagaren får certifikatet direkt, och du har en sparad post som stödjer omskickningar och verifiering.

Du kan enkelt justera certifikatfälten för att inkludera saker som kohortnamn eller instruktör, beroende på dina behov. Se hela implementationsguiden nedan för anpassningsalternativ.

Steg-för-steg-guide för implementering

Steg 1: Konfigurera webhook-triggern

Konfigurera de två webhook-ingångarna som startar skapande av certifikat och validering av certifikat.

  1. Öppna Incoming Create Webhook och ställ in Path till certifications2.
  2. I Incoming Create Webhook ställer ni in HTTP Method till POST och Response Mode till lastNode.
  3. Öppna Incoming Check Webhook och ställ in Path till certificationscheck2.
  4. I Incoming Check Webhook ställer ni in HTTP Method till POST och Response Mode till responseNode.
  5. Verifiera flödet: Incoming Create WebhookCreate Unique Certificate ID och Incoming Check WebhookRetrieve ID Record.
Tips: Era inkommande förfrågningar måste inkludera headers för name, surname, email, course, och för kontroller id, eftersom dessa refereras av uttryck genom hela workflowet.

Steg 2: Anslut datatabellen för certifieringar

Konfigurera Data Table-noderna som lagrar och slår upp certifikat-ID:n.

  1. Öppna Append Certification Record och välj den Data Table där Data Table ID är inställt på [YOUR_ID] (ersätt med ert faktiska tabell-ID).
  2. I Append Certification Record mappar ni kolumner: Name till {{ $('Incoming Create Webhook').item.json.headers.name }}, Surname till {{ $('Incoming Create Webhook').item.json.headers.surname }}, och CertificationID till {{ $('Create Unique Certificate ID').item.json.id }}.
  3. Öppna Lookup Certificate ID och ställ in Operation till get med Return All aktiverat.
  4. I Lookup Certificate ID ställer ni in filtret CertificationID till {{ $json.id }}.
  5. Öppna Retrieve ID Record och ställ in Operation till get med Return All aktiverat.
  6. I Retrieve ID Record ställer ni in filtret CertificationID till {{ $json.headers.id }}.
⚠️ Vanlig fallgrop: Om ert Data Table-schema inte innehåller Name, Surname och CertificationID kommer append- och lookup-operationerna att misslyckas.

Steg 3: Sätt upp logik för ID-generering och validering

Generera unika ID:n och validera dem för både skapande- och verifieringsflöden.

  1. Öppna Create Unique Certificate ID och behåll JavaScript Code som angivet för att generera ett unikt ID.
  2. Bekräfta flödet för ID-unikhet: Create Unique Certificate IDLookup Certificate IDCheck ID Availability.
  3. I Check ID Availability säkerställer ni att villkoret kontrollerar ett tomt resultat (det konfigurerade villkoret använder {{ $json }} med operatorn empty).
  4. Verifiera valideringsflödet: Retrieve ID RecordValidate Certificate RecordReturn Valid Response eller Return Invalid Response.
  5. I Validate Certificate Record bekräftar ni jämförelsen mellan {{ $json.CertificationID }} och {{ $('Incoming Check Webhook').item.json.headers.id }}.
Tips: Om ni får oväntade ogiltiga svar, logga det inkommande header-ID:t och de hämtade CertificationID-värdena för att bekräfta exakta matchningar.

Steg 4: Konfigurera PDF-generering och e-postutskick

Generera certifikat-PDF:en och skicka den till mottagaren via e-post.

  1. Öppna Generate PDF File och välj mallen genom att ställa in Template ID till [YOUR_ID].
  2. I Generate PDF File ställer ni in Data till det JSON-uttryck som visas: { "DueDate": "{{$now.toISODate()}}", "Candidate": "{{$('Incoming Create Webhook').item.json.headers.name}} {{$('Incoming Create Webhook').item.json.headers.surname}}", "CourseName": "{{ $('Incoming Create Webhook').item.json.headers.course }}", "ID": "{{ $('Create Unique Certificate ID').item.json.id }}" }.
  3. Ställ in Document Output till file i Generate PDF File.
  4. Credential Required: Anslut era pdfGeneratorApi-uppgifter i Generate PDF File.
  5. Öppna Send Certificate Email och ställ in Send To till {{ $('Incoming Create Webhook').item.json.headers.email }}.
  6. I Send Certificate Email ställer ni in Subject till Your certification is ready! och Message till Attached you find your new certification!.
  7. Lägg till bilagemappningen i Send Certificate Email till document.pdf.
  8. Credential Required: Anslut era gmailOAuth2-uppgifter i Send Certificate Email.
⚠️ Vanlig fallgrop: Om PDF:en kommer tom eller saknas, bekräfta att Generate PDF File outputtar en binär fil och att Send Certificate Email refererar document.pdf.

Steg 5: Konfigurera webhook-svar

Returnera tydliga JSON-svar för valideringskontroller.

  1. Öppna Return Valid Response och ställ in Respond With till json.
  2. I Return Valid Response ställer ni in Response Body till { "ok": "true", "name": "{{ $('Retrieve ID Record').item.json.Name }}", "surname": "{{ $('Retrieve ID Record').item.json.Surname }}" }.
  3. Öppna Return Invalid Response och ställ in Respond With till json.
  4. I Return Invalid Response ställer ni in Response Body till { "ok": "false" }.

Steg 6: Testa och aktivera ert workflow

Kör end-to-end-tester för både skapande- och valideringsvägar, och aktivera sedan workflowet.

  1. Klicka på Execute Workflow och skicka en POST-förfrågan till Incoming Create Webhook-URL:en med headers för name, surname, email och course.
  2. Bekräfta att en ny post läggs till av Append Certification Record, och verifiera att Generate PDF File outputtar en fil och att Send Certificate Email levererar meddelandet med bilaga.
  3. Skicka en POST-förfrågan till Incoming Check Webhook-URL:en med headern id och verifiera att Return Valid Response returnerar "ok": "true" med för- och efternamn.
  4. Testa med ett ogiltigt ID och bekräfta att Return Invalid Response returnerar "ok": "false".
  5. När testerna passerar, slå på workflowet till Active för att möjliggöra körning i produktion.
🔒

Lås upp fullständig steg-för-steg-guide

Få den kompletta implementeringsguiden + nedladdningsbar mall

Se upp för

  • Gmail OAuth2-uppgifter kan löpa ut eller kräva specifika behörigheter. Om något slutar fungera, kontrollera först status för uppgifterna i n8n under Credentials.
  • Platshållare i PDF Generator API-mallen måste matcha dina JSON-nycklar exakt. Om din PDF renderas med tomma fält, jämför mallens UI och payloaden i noden “Generate PDF File” sida vid sida.
  • Publika webhooks behöver en stabil URL och rimlig säkerhet. Om du exponerar den här endpointen mot internet, lägg till en delad hemlighet eller begränsa åtkomst, annars kan vem som helst försöka generera certifikat.

Vanliga frågor

Hur snabbt kan jag implementera den här certifikat-e-postautomationen?

Cirka en timme om din PDF-mall och Gmail-åtkomst är redo.

Kan icke-tekniska team implementera den här certifikat-e-postautomationen?

Ja, men någon behöver hantera den initiala exponeringen av webhook och uppgifter/credentials. Efter det handlar det mest om att fylla i fält, testa med en exempel-mottagare och justera mejltexten.

Är n8n gratis att använda för det här arbetsflödet för certifikat-e-postautomation?

Ja. n8n har ett gratis alternativ för egen drift och en gratis provperiod på n8n Cloud. Cloud-planer börjar på 20 USD/månad för högre volym. Du behöver också räkna in användningsavgifter för PDF Generator API baserat på hur många certifikat du genererar.

Var kan jag hosta n8n för att köra den här certifikat-e-postautomationen?

Två alternativ: n8n Cloud (hanterat, enklast att komma igång) eller egen drift på en VPS. För egen drift är Hostinger VPS prisvärd och hanterar n8n bra. Egen drift ger dig obegränsade körningar, men kräver grundläggande serveradministration.

Hur anpassar jag den här certifikat-e-postautomationen till mina specifika utmaningar?

Du kan byta PDF-mall utan att röra logiken genom att uppdatera noden “Generate PDF File” så att den pekar på en annan PDF Generator API-mall. Vanliga anpassningar är att lägga till extra fält i Data Table (t.ex. kohort eller betyg), ändra mejlinnehållet i “Send Certificate Email” och returnera fler detaljer i verifieringssvaret om din use case kräver det.

Varför misslyckas min PDF Generator API-anslutning i det här arbetsflödet?

Oftast beror det på en ogiltig eller saknad API-nyckel i noden “Generate PDF File”. Det kan också vara en mall-mismatch där platshållarna i PDF Generator API inte matchar JSON-nycklarna du skickar, så att requesten lyckas men resultatet blir fel. Om du genererar många certifikat i en kort burst kan även rate limits dyka upp, så det kan hjälpa att sprida ut förfrågningarna.

Vilken kapacitet har den här lösningen för certifikat-e-postautomation?

På en typisk n8n Cloud-plan kan du hantera tusentals körningar per månad, och egen drift tar bort den körningsbegränsningen (din server blir begränsningen). I praktiken är flaskhalsarna Gmails sändningsgränser och genomströmningen i PDF-genereringen, inte själva arbetsflödeslogiken.

Är den här certifikat-e-postautomationen bättre än att använda Zapier eller Make?

Ofta, ja. Det här arbetsflödet behöver två publika endpoints (skapa och verifiera), en pålitlig unikhetskontroll för certifierings-ID:n och en lagrad post som du kan fråga mot senare. n8n hanterar den typen av branching och datauppslagningar på ett rent sätt, och du kan köra egen drift om du inte vill ha prissättning per task. Zapier eller Make kan fortfarande fungera om du bara behöver “formulärinskick → skicka mejl”, men verifiering och hantering av ID-krockar blir snabbt klumpigt. Om du väljer mellan plattformar, prata med en automationsexpert så mappar vi det mot din volym och dina compliance-krav.

När detta är live slutar certifikaten att vara en återkommande stress. Du får renare leverans, enklare omskickningar och ett verifieringsspår som du faktiskt kan lita på.

Kontakta oss

Hör av dig, så diskuterar vi hur just din verksamhet kan dra nytta av alla fantastiska möjligheter som AI skapar.

×

Använd mall

Få direkt tillgång till denna n8n-arbetsflödes JSON-fil

Launch login modal Launch register modal