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

Fakturor i Google Drive, loggade i Google Sheets

Rickard Andersson Partner, Nodenordic.se

Fakturor är ofta där “snabb admin” förvandlas till en timme av detaljjakt. Du kopierar kundinfo från ett formulär, formaterar en faktura, exporterar en PDF, laddar upp den någonstans, skickar mejlet och loggar allt i ett kalkylark. Och ändå missas något.

Operations managers märker det när ordervolymen sticker iväg. Frilansare märker det när en kund frågar efter “den där fakturan från förra månaden”. Och små team som jobbar med fakturaautomation inser ofta att den verkliga smärtan är konsekvens, inte arbetsinsats.

Det här arbetsflödet gör en formulärinlämning till en korrekt formaterad PDF-faktura, en sparad fil i Google Drive och en prydlig loggrad i Google Sheets. Du får se exakt hur det fungerar, vad du behöver och vad du ska justera så att det matchar din faktureringsprocess.

Så fungerar den här automatiseringen

Hela n8n-flödet, från trigger till slutresultat:

n8n Workflow Template: Fakturor i Google Drive, loggade i Google Sheets

Problemet: fakturor blir röriga snabbt

Manuell fakturering låter enkelt tills du gör det varje dag. En enda order innebär fem olika “små” uppgifter: skapa ett ID, bygga fakturan, göra den till en PDF, spara filen, mejla den och sedan logga den för senare. Multiplicera det med 10 eller 30 ordrar och du hamnar i kalkylarks-skärselden. Värst är den mentala belastningen. Du går hela tiden och undrar: “Skickade jag den där?” eller “Var sparade jag PDF:en?” och du får inte svar förrän en kund svarar… eller din redovisningskonsult gör det.

Det blir mycket snabbt. Här är var det brukar fallera i riktiga verksamheter.

  • Order-ID:n krockar när någon “bara skriver in ett”, och plötsligt ser två fakturor identiska ut i dina register.
  • PDF:er hamnar utspridda på skrivbord och Drives, så sökning blir en veckoritual.
  • Kunder ber om omutskick eftersom mejl går iväg sent, eller så saknas bilagan.
  • Loggningen hoppas över när det är stressigt, vilket gör att din “fakturaflik” slutar vara pålitlig.

Lösningen: från formulär till faktura, automatiskt

Det här n8n-flödet startar i samma ögonblick som ett orderformulär skickas in via en webhook. Det genererar ett unikt faktura-ID (med prefixet INV-), kontrollerar din fakturalogg i Google Sheets så att ID:t inte redan är upptaget och genererar om det om det är det. När ID:t är bekräftat unikt mappar flödet orderdetaljerna till ett strukturerat fakturaformat, bygger fakturamarkup (HTML) och skickar den HTML:en till en HTML-till-PDF-tjänst via RapidAPI. När PDF:en är klar hämtar flödet den, sparar den i Google Drive med ett konsekvent filnamn, mejlar kunden med PDF:en som bilaga och lägger till en ny rad i Google Sheets med order-ID, kunduppgifter, totalsumma och Drive-länken.

Flödet börjar med en webhook och slutar med en loggad fakturarad som du kan filtrera, söka och stämma av senare. Däremellan tar det hand om det irriterande: unika ID:n, konsekvent PDF-generering och filhantering som följer dina namnregler. Du får fakturor som ser likadana ut varje gång och ett underlag du kan lita på.

Det du får: automatisering vs. resultat

Exempel: så här ser det ut i praktiken

Säg att du tar emot 20 ordrar i veckan. Manuellt kanske du lägger cirka 10 minuter per order på att formatera fakturan, exportera en PDF, ladda upp den till Drive, skicka mejlet och uppdatera ditt ark, vilket blir ungefär 3 timmar i veckan. Med det här flödet är formulärinlämningen det enda “steget” du gör. PDF-generering och uppladdningar kör i bakgrunden, så du landar på en snabb kontroll, kanske 10 minuter totalt per vecka. Det är ett par timmar tillbaka utan att du ändrar hur du säljer.

Det du behöver

  • n8n-instans (testa n8n Cloud gratis)
  • Alternativ för egen drift om du föredrar det (Hostinger fungerar bra)
  • Google Sheets för att lagra och kontrollera fakturaposter
  • Google Drive för att spara PDF:er med konsekventa filnamn
  • RapidAPI-nyckel (hämtas i RapidAPI-dashboarden)

Svårighetsgrad: Medel. Du kopplar konton, klistrar in en API-nyckel och gör mindre ändringar i en fakturamall (HTML) så att den matchar din profil.

Vill du inte sätta upp detta själv? Prata med en automationsspecialist (kostnadsfri 15-minuters konsultation).

Så fungerar det

En formulärinlämning triggar allt. Ditt orderformulär skickar kund- och varukorgsdetaljer till n8n via en webhook, så flödet startar direkt när någon köper.

Ett unikt faktura-ID skapas och verifieras. n8n genererar ett ID som INV-X92B7D och kontrollerar sedan Google Sheets för att bekräfta att just det ID:t inte redan finns i din fakturalogg. Om det finns genererar den ett nytt och kontrollerar igen.

Fakturan sätts ihop och konverteras sedan till PDF. Flödet mappar fält (namn, e-post, artiklar, totalsumma, datum) till en fakturastruktur, bygger HTML-markupen och skickar den till ett HTML-till-PDF-API via en HTTP-request. En annan request hämtar den färdiga PDF-filen.

Filer och register hamnar där du förväntar dig. PDF:en laddas upp till Google Drive med ett filnamn som Invoice-INV-X92B7D.pdf, kunden får ett mejl med PDF:en som bilaga och Google Sheets får en ny rad med order-ID, totalsummor och en Drive-länk.

Du kan enkelt ändra fakturamallen och lagringsreglerna så att de matchar din process. Se hela implementationsguiden nedan för anpassningsalternativ.

Steg-för-steg-guide för implementation

Steg 1: Konfigurera webhook-triggern

Sätt upp den inkommande begäran som startar fakturaflödet.

  1. Lägg till Incoming Webhook Trigger som er triggernod.
  2. Ställ in Path till 7f884a07-861e-49da-bb0e-1ac6ca40ea00.
  3. Skicka en test-payload med customer_name, customer_email, products och total så att efterföljande noder har data.

Använd exempeldata (pin data) från Incoming Webhook Trigger för att validera formateringen för products som en array med rader (line items) med name, price och quantity.

Steg 2: Anslut Google Sheets för fakturasökning

Kontrollera om ett faktura-ID redan finns innan ni skapar ett nytt.

  1. Lägg till Create Invoice Code med den medföljande JavaScript-koden för att generera ett unikt order_id.
  2. I Lookup Invoice Record ställer ni Document till [YOUR_ID] och Sheet till Invoices.
  3. Ställ in sökfiltret Invoice ID till {{ $json.order_id }}.
  4. Inloggning krävs: Anslut era googleSheetsOAuth2Api-inloggningsuppgifter i Lookup Invoice Record.
  5. I Verify Missing Entry behåller ni villkoret att row_number är tomt med {{ $json.row_number }} för att bara gå vidare när ingen post finns.

⚠️ Vanlig fallgrop: Om Lookup Invoice Record inte returnerar row_number, säkerställ att ert ark har en kolumn med rubriken Invoice ID och att rubrikraden identifieras korrekt.

Steg 3: Sätt upp datamappning för faktura och generering av HTML

Mappa inkommande webhook-data till strukturerade fält och generera HTML-markupen för fakturan.

  1. I Map Invoice Fields ställer ni order_id till {{ $('Create Invoice Code').item.json.order_id }}.
  2. Ställ in customer_name till {{ $('Incoming Webhook Trigger').item.json.customer_name }} och customer_email till {{ $('Incoming Webhook Trigger').item.json.customer_email }}.
  3. Ställ in products till {{ $('Incoming Webhook Trigger').item.json.products }} och total till {{ $('Incoming Webhook Trigger').item.json.total }}.
  4. I Build Invoice Markup behåller ni den medföljande JavaScript-koden som bygger HTML-tabellen och totalsummor med hjälp av de mappade fälten.

Steg 4: Konvertera HTML till PDF och spara den

Konvertera HTML-fakturan till en PDF via API och spara den i Google Drive.

  1. I Convert HTML to PDF ställer ni URL till https://html2pdf2.p.rapidapi.com/html2pdf och Method till POST.
  2. Ställ in body-parametern html till {{ $json.html }}.
  3. Ställ in headers x-rapidapi-host till html2pdf2.p.rapidapi.com och x-rapidapi-key till [CONFIGURE_YOUR_API_KEY].
  4. I Fetch PDF from API ställer ni URL till [YOUR_PDF_URL] om API:t returnerar en nedladdningsbar länk.
  5. I Store PDF in Drive ställer ni Name till {{ $('Map Invoice Fields').item.json.order_id }} - {{ $('Map Invoice Fields').item.json.customer_name }}.
  6. Inloggning krävs: Anslut era googleDriveOAuth2Api-inloggningsuppgifter i Store PDF in Drive.

⚠️ Vanlig fallgrop: Noden Fetch PDF from API använder [YOUR_PDF_URL]. Ersätt detta med den faktiska URL:en som kommer från er PDF-konverteringstjänst eller mappa den från API-svaret.

Steg 5: Skicka fakturan och logga den till Sheets

Mejla fakturan till kunden och skriv posten till Google Sheets.

  1. I Send Invoice Email ställer ni To Email till {{ $('Map Invoice Fields').item.json.customer_email }}.
  2. Ställ in Subject till {{ $('Map Invoice Fields').item.json.order_id }} - New Invoice from Uppfy Shop .
  3. Uppdatera From Email till Uppfy Shop <[YOUR_EMAIL]> och ersätt [YOUR_PAYMENT_LINK] i HTML-body.
  4. Inloggning krävs: Anslut era smtp-inloggningsuppgifter i Send Invoice Email.
  5. I Log Invoice to Sheet behåller ni Operation som appendOrUpdate och mappar fält som Invoice ID till {{ $('Map Invoice Fields').item.json.order_id }} och Invoice URL till {{ $('Store PDF in Drive').item.json.webViewLink }}.
  6. Inloggning krävs: Anslut era googleSheetsOAuth2Api-inloggningsuppgifter i Log Invoice to Sheet.

Steg 6: Testa och aktivera ert workflow

Kör ett fullständigt test för att bekräfta skapande av faktura, leverans och loggning.

  1. Klicka på Execute Workflow och skicka en test-webhook-begäran till Incoming Webhook Trigger.
  2. Bekräfta att Create Invoice Code genererar ett order_id och att Verify Missing Entry passerar när ingen matchning finns.
  3. Verifiera att Store PDF in Drive skapar en PDF i Google Drive och att Send Invoice Email levererar till kunden.
  4. Kontrollera Log Invoice to Sheet för en ny eller uppdaterad rad med Status som Unpaid.
  5. När allt är validerat växlar ni workflowet till Active för att hantera fakturor i produktion.
🔒

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

Få den kompletta implementeringsguiden + nedladdningsbar mall

Vanliga fallgropar

  • Behörigheter i Google Drive kan blockera uppladdningar om det kopplade kontot saknar åtkomst. Om filer inte dyker upp, kontrollera n8n-inloggningen och bekräfta att målmappen är delad med det kontot.
  • Om du använder Wait-noder eller extern rendering varierar processtiderna. Öka väntetiden om nedströmsnoder fallerar på tomma svar.
  • RapidAPI-planer och nycklar kan slå i rate limits eller sluta gälla efter ändringar. Om PDF-konverteringen plötsligt misslyckas, kolla RapidAPI-dashboarden först och bekräfta att endpointen fortfarande returnerar en fil.
  • Standardprompter i AI-noder är generiska. Lägg in din tonalitet tidigt, annars kommer du redigera resultaten för alltid.

Vanliga frågor

Hur lång tid tar det att sätta upp den här fakturaautomationen?

Cirka 45 minuter om dina Google-konton och din API-nyckel är redo.

Behöver jag kunna koda för att automatisera loggning och arkivering av fakturor?

Nej. Du kopierar en liten snippet för faktura-ID:t och redigerar en HTML-mall, men i övrigt är det mest “fyll i fält och koppla konton”.

Är n8n gratis att använda för det här arbetsflödet för fakturaautomation?

Ja. n8n har ett gratis alternativ för egen drift och en gratis provperiod på n8n Cloud. Cloud-planer börjar på $20/månad för högre volymer. Du behöver också räkna in RapidAPI-kostnader för HTML-till-PDF-konvertering.

Var kan jag hosta n8n för att köra den här automatiseringen?

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

Kan jag anpassa det här arbetsflödet för fakturaautomation till Dropbox istället för Google Drive?

Ja, men. Du byter ut noden “Store PDF in Drive” mot en nod för uppladdning till Dropbox och behåller samma filnamnslogik. De flesta anpassar också faktura-HTML:en i steget “Build Invoice Markup” och justerar sedan Google Sheets-kolumnerna i noden “Log Invoice to Sheet” så att de matchar deras bokföringsformat. Om du vill lägga till moms, rader med artikelposter eller en logotyp görs allt i mallen.

Varför misslyckas min Google Drive-anslutning i det här arbetsflödet?

Oftast handlar det om behörigheter eller att fel Google-konto är kopplat i n8n. Anslut Google Drive-inloggningen på nytt, bekräfta att målmappen fortfarande finns och se till att kontot kan ladda upp till den. Om du använder en Shared Drive kan du också behöva ha rätt scope aktiverat i inloggningsinställningarna.

Hur många fakturor klarar den här fakturaautomationen?

Med n8n Cloud Starter kan du köra tusentals exekveringar per månad, och vid egen drift beror det främst på din server. I praktiken är flaskhalsen oftast PDF-konverteringstjänsten och begränsningar för e-postutskick, inte n8n i sig.

Är den här fakturaautomationen bättre än att använda Zapier eller Make?

Ofta, ja. Det här flödet har ett mönster med “generera ID, kontrollera Sheets, loopa vid dubblett” som blir klumpigt (och ibland dyrt) i Zapier eller Make eftersom förgreningar och retries snabbt ökar antalet tasks. n8n gör det också enklare att bygga fakturamarkup, skicka den till ett HTTP-API och sedan hantera den returnerade filen på ett snyggt sätt. En annan praktisk fördel är egen drift, som tar bort exekveringstak när volymen växer. Zapier eller Make kan fortfarande vara bra för ett enkelt tvåstegsflöde “formulär → e-post”, men detta är en mer komplett faktureringspipeline. Om du är osäker, prata med en automationsspecialist så får du ett rakt svar.

Det här är den typen av fakturaautomation du sätter upp en gång och sedan slutar tänka på. Flödet tar hand om det repetitiva, och din fakturering håller sig äntligen prydlig.

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