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

Telegram till Google Sheets, logga utgifter löpande

Rickard Andersson Partner, Nodenordic.se

Du köper något, tänker ”jag loggar det senare”, och sedan händer senare aldrig. En vecka går, kvitton försvinner ner i jackor och ditt Google Sheet blir en gissningslek.

Utgiftsloggning i Telegram drabbar soloföretagare först, ärligt talat. Men byråägare som jonglerar kundkostnader och marknadschefer som försöker stämma av verktygskostnader känner av det också. Det här flödet fångar utgifter i samma ögonblick de uppstår och skickar in dem i Google Sheets med kategorier, valutakonvertering och totalsummor som faktiskt förblir korrekta.

Du får se hur automatiseringen fungerar, vad du behöver för att köra den och vilka ändringar de flesta gör för att den ska passa deras kategorier och rapporteringsstil.

Så fungerar automatiseringen

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

n8n Workflow Template: Telegram till Google Sheets, logga utgifter löpande

Problemet: utgifter blir inte loggade när livet är stressigt

Utgiftsspårning fallerar i de små glappen mellan ”köp” och ”registrera”. Du sitter i en taxi, tar en kaffe med en kund, köper ett SaaS-tillägg, betalar i en annan valuta och lovar dig själv att du tar det vid skrivbordet. Sedan rullar dagen vidare. När du väl öppnar kalkylarket återskapar du historien från bankrader som säger saker som ”SQ *STORE 3941”. Det är långsamt, irriterande och det saboterar din rapportering i det tysta eftersom du slutar lita på totalsummorna.

Friktionen växer. Här är var det brukar haverera i verkligheten.

  • Du tappar 10 minuter per utgift på att leta efter ”rätt” detaljer (leverantör, kategori, anteckningar), och det blir snabbt mycket på en vecka.
  • Kvittofoton ligger i kamerarullen tills de är nedgrävda, vilket gör att du saknar skatteklar dokumentation när du behöver den.
  • Köp i utländsk valuta loggas fel eftersom du ”konverterar senare”, och sedan glömmer du vilken kurs du tänkte använda.
  • Kategoriseringen glider över tid, så en månad blir ”Måltider” till ”Restaurang”, och din analys blir ett städprojekt.

Lösningen: logga utgifter i Telegram, låt Google Sheets vara felfritt

Det här flödet gör Telegram till en lättviktig inkorg för utgifter. Du skickar ett meddelande till din bot direkt när det händer med vanlig text (”Uber till flygplatsen $34”), ett röstmeddelande medan du går eller ett kvittofoto direkt efter betalning. n8n känner av vilken typ av meddelande som kom in och skickar det till rätt hantering: röst transkriberas, kvittobilder skannas med datorseende och text tolkas direkt. Sedan avgör ett AI-steg om du loggar en utgift eller ställer en fråga (”Hur mycket har jag lagt på mat den här veckan?”). Om det är en utgift kan flödet dela upp flera poster, normalisera belopp, konvertera valutor till en basvaluta (USD som standard), tilldela en kategori från en definierad lista och lägga till en prydlig rad i Google Sheets. Till sist svarar den i Telegram med en bekräftelse eller en snabb insikt om din konsumtion.

Flödet startar med ett Telegram-meddelande. AI:n plockar ut belopp, handlare och kategori och använder en växelkursuppslagning vid behov. Google Sheets blir källan som gäller, medan Telegram fortsätter vara det enkla inmatningslagret som du faktiskt använder.

Det du får: automatisering vs. resultat

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

Säg att du loggar 20 utgifter på en vecka: några måltider, transport, små mjukvaruköp och ett par kvitton. Manuellt, även en ”snabb” process tar kanske 5 minuter styck när du ska hitta kvittot, välja kategori och skriva anteckningar, alltså runt 100 minuter totalt. Med det här flödet vidarebefordrar du en bild eller skickar ett röstmeddelande i Telegram på ungefär 30 sekunder och väntar sedan en minut på bearbetning. Det blir cirka 10 minuters faktisk insats för hela veckan, och arket hålls uppdaterat löpande.

Det du behöver

  • n8n-instans (testa n8n Cloud gratis)
  • Alternativ för egen drift om du föredrar det (Hostinger fungerar bra)
  • Telegram Bot API för att ta emot meddelanden och svara.
  • Google Sheets för att lagra utgifter och totalsummor.
  • ElevenLabs API-nyckel (hämta den i din ElevenLabs-panel) för rösttranskribering.
  • Gemini eller en LLM-leverantör för att läsa kvitton och klassificera utgifter.
  • API-nyckel för växelkurs (hämta den på leverantörens kontosida) för valutakonvertering.

Kunskapsnivå: Medel. Du kopplar konton, klistrar in API-nycklar och bekräftar att dina kolumner i Google Sheet matchar flödets fält.

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

Så fungerar det

Ett Telegram-meddelande triggar flödet. Du skickar text, ett röstmeddelande eller ett kvittofoto till din Telegram-bot, och Telegram-triggern fångar upp det direkt.

Meddelandet routas efter typ. En router delar upp flödet beroende på vad du skickade. Röstmeddelanden hämtar ljudbilagan och kör en transkriberingsbegäran. Kvittobilder hämtas och analyseras med Google Gemini så att du får strukturerade fält som belopp, valuta och handlare.

AI avgör avsikten och extraherar detaljerna. En intent-klassificerare separerar ”utgiftsloggning” från allmänna ekonomifrågor. Om du skrev flera utgifter i ett meddelande delar ett annat AI-steg upp dem i korrekt formaterade rader och tolkar sedan belopp, kategorier och anteckningar.

Sheets uppdateras och Telegram får ett användbart svar. Valutakonverteringar hämtas via en växelkurs-API vid behov, utgifter läggs till i Google Sheets och flödet svarar med en bekräftelse samt valfria totalsummor eller insikter (inklusive dagliga utgiftsvarningar när du passerar 100 USD).

Du kan enkelt ändra basvalutan och kategorilistan utifrån dina behov. Se hela implementationsguiden nedan för anpassningsalternativ.

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

Steg 1: konfigurera Telegram-triggern

Konfigurera Telegram som startpunkt så att arbetsflödet startar när en användare skickar ett meddelande.

  1. Lägg till noden Telegram Intake Trigger och behåll Updates inställt på message.
  2. Credential Required: Anslut era telegramApi-uppgifter i Telegram Intake Trigger.
  3. Bekräfta att triggerns webhook är aktiv efter att uppgifterna har sparats.

Steg 2: anslut Google Sheets

Dessa Google Sheets-verktyg används av MCP-verktygshubben för att läsa, söka och lägga till utgiftsdata. Gruppera alla Google Sheets-verktyg tillsammans för att hålla autentiseringsuppgifterna konsekventa.

  1. Öppna varje Google Sheets-verktygsnod: Daily Total Reader, Balance Lookup Tool, Expense Query Tool, Append Expense Rows och Sheet Row Reader.
  2. Credential Required: Anslut era googleSheetsOAuth2Api-uppgifter för alla fem Google Sheets-verktygsnoder.
  3. Ställ in Document ID på ert kalkylblads-ID (ersätt [YOUR_ID]) och verifiera att bladintervallen är korrekta (t.ex. använder Daily Total Reader C1:C10).
  4. I Append Expense Rows, behåll Operation inställt på append och bekräfta att kolumnmappningarna använder AI-uttrycken, som {{$fromAI('Expense_Date', ``, 'string')}}.

⚠️ Vanlig fallgrop: Säkerställ att Google Sheet har rubriker som exakt matchar kolumnnamnen i Append Expense Rows (t.ex. Expense Date, Expense Amount (USD)), annars kan tillägget misslyckas utan tydligt felmeddelande.

Steg 3: konfigurera meddelanderouting och hantering av röst/kvitto

Routa inkommande meddelanden efter typ och hämta röst- eller bilddata vid behov.

  1. I Message Type Router, behåll de tre reglerna som identifierar text, ljud och bild med uttryck som {{$json.message.toJsonString()}} och {{$json.message.document.mime_type}}.
  2. Konfigurera Fetch Voice Attachment med File ID inställt på {{$json.message.voice.file_id}}.
  3. Konfigurera Retrieve Receipt Image med File ID inställt på {{$('Telegram Intake Trigger').item.json.message.document.thumbnail.file_id}}.
  4. I Voice Transcription Call, ställ in URL till https://api.elevenlabs.io/v1/speech-to-text, Method till POST och behåll Content Type som multipart-form-data.
  5. Credential Required: Anslut era httpHeaderAuth-uppgifter i Voice Transcription Call för ElevenLabs API.
  6. Credential Required: Anslut era telegramApi-uppgifter i Fetch Voice Attachment och Retrieve Receipt Image.

⚠️ Vanlig fallgrop: Om ni skickar ett ljudmeddelande men ElevenLabs-uppgifterna saknas kommer Voice Transcription Call att returnera ett autentiseringsfel och ingen transkription når Assemble Prompt Fields.

Steg 4: bygg prompt-sammansättning och intentsrouting

Skapa den enhetliga prompten och klassificera intent så att arbetsflödet kan dela upp mellan utgiftsregistrering och frågehantering.

  1. I Assemble Prompt Fields, ställ in värdet för Prompt till {{$json.text}}{{ $('Telegram Intake Trigger').item.json.message.text }}{{ $json.content.parts[0].text }}.
  2. I Intent Classifier Step, ställ in Text till {{$json.Prompt}} och behåll Prompt Type som define med Has Output Parser aktiverat.
  3. I Expense vs Query Branch, bekräfta att villkoret kontrollerar att Left Value {{$json.text}} är lika med other.
  4. Säkerställ att Message Type Router routar till Assemble Prompt Fields och att Intent Classifier Step routar till Expense vs Query Branch enligt exekveringsflödet.

Steg 5: konfigurera AI-extraktion och finansorkestrering

Konfigurera kvittotolkaren, utgiftsuppdelningen och den primära finansagenten med rätt LLM:er och verktyg.

  1. I Receipt Data Extractor, behåll Resource inställt på image, Input Typebinary och den detaljerade extraktionsprompten enligt angiven mall.
  2. Credential Required: Anslut era Google Gemini-uppgifter i Receipt Data Extractor.
  3. I Split Expense Entries, ställ in Text till {{$('Assemble Prompt Fields').item.json.Prompt}} och behåll Prompt Type som define.
  4. Anslut LLM-noderna som modeller: Intent Model Core för Intent Classifier Step, Expense Parsing Core för Split Expense Entries och Primary Finance LLM för Finance Orchestrator. Credential Required: Anslut era Azure OpenAI-uppgifter i var och en av dessa LLM-noder (modell gpt-4.1).
  5. I Finance Orchestrator, behåll Text inställt på {{$('Telegram Intake Trigger').item.json.message.text}}{{ $json.text }} och bekräfta att systemmeddelandet definierar finansreglerna.
  6. Konfigurera Currency Rate Fetcher med URL inställd på https://v6.exchangerate-api.com/v6/[CONFIGURE_YOUR_API_KEY]/pair/USD/{{$fromAI('exchange_currency')}}.

För AI-verktyg som Daily Total Reader, Balance Lookup Tool, Expense Query Tool, Currency Rate Fetcher, Append Expense Rows och Sheet Row Reader, säkerställ att verktygskonfigurationen är åtkomlig från inställningen för MCP Hub Trigger så att agenten kan anropa dem korrekt.

Steg 6: konfigurera utgående svar

Skicka finansassistentens svar tillbaka till användaren i Telegram.

  1. I Send Telegram Reply, ställ in Text till {{$json.output}}.
  2. Ställ in Chat ID till {{$('Telegram Intake Trigger').item.json.message.chat.id}} så att svaren går till rätt konversation.
  3. Credential Required: Anslut era telegramApi-uppgifter i Send Telegram Reply.

Steg 7: testa och aktivera ert arbetsflöde

Kör kontrollerade tester för att verifiera routing, AI-tolkning och Google Sheets-uppdateringar innan ni slår på det för daglig användning.

  1. Klicka på Execute Workflow och skicka ett testmeddelande till er Telegram-bot (t.ex. en textutgift, ett röstmeddelande och ett bildkvitto).
  2. Verifiera att textmeddelanden går genom Message Type RouterAssemble Prompt FieldsIntent Classifier StepExpense vs Query BranchFinance Orchestrator.
  3. Bekräfta att utgiftsposter lägger till nya rader i Google Sheets via Append Expense Rows och att sammanfattningar skickas via Send Telegram Reply.
  4. Om resultaten ser korrekta ut, växla arbetsflödet till Active för att börja spåra utgifter i produktion.
🔒

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

Få den kompletta implementeringsguiden + nedladdningsbar mall

Vanliga fallgropar

  • Inloggningsuppgifter för Telegram Bot API kan löpa ut eller sakna behörigheter. Om meddelanden slutar trigga, kontrollera först bot-token och webhook-status i din BotFather-konfiguration.
  • Om du använder Wait-noder eller extern bearbetning (transkribering eller kvittoanalys) varierar tiderna. Öka väntetiden om efterföljande noder fallerar på tomma svar.
  • Standardprompter i AI-noder är generiska. Lägg in ert tonläge och era faktiska kategoriregler tidigt, annars kommer du att sitta och redigera output för alltid.

Vanliga frågor

Hur lång tid tar det att sätta upp den här automatiseringen för utgiftsloggning i Telegram?

Cirka 30 minuter om din Telegram-bot och ditt Google Sheet är redo.

Behöver jag kunna koda för att automatisera utgiftsloggning i Telegram?

Nej. Du kopplar mest konton och klistrar in några API-nycklar. ”Jobbet” är i princip bara att matcha fält mot kolumnerna i ditt Google Sheet.

Är n8n gratis att använda för det här flödet för utgiftsloggning i Telegram?

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 med API-kostnader för dina AI- och transkriberingsleverantörer, samt din växelkurs-API.

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ärd 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 flödet för utgiftsloggning i Telegram till en annan basvaluta och kategorilista?

Ja, och det bör du. Ändra basvalutan där flödet hanterar konvertering (växelkurs-hämtningen och fälten som skickas in i finance-agenten), och uppdatera sedan kategorilistan i systemprompten som används av ekonomi-LLM:en. Vanliga justeringar är nya kategorier för din verksamhet (som ”Underkonsulter” eller ”Annonskostnader”), att höja eller sänka tröskeln för den dagliga varningen vid 100 USD och att lägga till striktare regler för vad som räknas som ersättningsbart.

Varför fallerar min Telegram-anslutning i det här flödet?

Oftast är det en ogiltig eller roterad bot-token, så n8n kan inte hämta uppdateringar längre. Uppdatera Telegram-inloggningen i n8n och bekräfta att boten fortfarande får ta emot meddelanden. Om det fungerar ett tag och sedan slutar kan även rate limits dyka upp när du processar många bilder eller röstmeddelanden efter varandra.

Hur många utgifter kan den här automatiseringen för utgiftsloggning i Telegram hantera?

Väldigt många för ett mindre team.

Är den här automatiseringen för utgiftsloggning i Telegram bättre än att använda Zapier eller Make?

För multimodala indata (text, röst, kvitton) och förgrenad logik är n8n oftast ett smidigare val eftersom du kan bygga mer komplexa flöden utan att betala per ”steg” på samma sätt. Det ger dig också en riktig väg för egen drift, vilket blir viktigt när du loggar stora volymer utgifter eller kör dagliga sammanfattningar. Zapier eller Make kan gå snabbare för en enkel setup ”Telegram-meddelande → rad i Google Sheets”, men de blir snabbt klumpiga när du lägger till OCR, transkribering och AI-klassificering. Vill du ha hjälp att välja rätt upplägg, prata med en automationsexpert.

När det här väl rullar slutar ditt kalkylark vara ett helgprojekt. Flödet tar hand om den repetitiva insamlingen så att dina siffror förblir trovärdiga hela månaden.

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