Extraction des données de factures PDF depuis Slack vers Google Sheets avec GPT-4o
Ceci est unMiscellaneous, AI Summarization, Multimodal AIworkflow d'automatisation du domainecontenant 10 nœuds.Utilise principalement des nœuds comme Slack, HttpRequest, GoogleSheets, SlackTrigger, Agent. Extraire des données de factures à partir de PDF Slack vers Google Sheets avec GPT-4o
- •Token Bot Slack ou URL Webhook
- •Peut nécessiter les informations d'identification d'authentification de l'API cible
- •Informations d'identification Google Sheets API
- •Clé API OpenAI
Nœuds utilisés (10)
Catégorie
{
"meta": {
"instanceId": "e04cc86c30b0cecda8e6bbc7cc41459d9bf4d76816638a14d42d636b91913ebc",
"templateCredsSetupCompleted": true
},
"nodes": [
{
"id": "421fef2b-90cb-496d-8dd4-b613e10e9fe8",
"name": "Ajouter une ligne dans la feuille",
"type": "n8n-nodes-base.googleSheets",
"position": [
528,
0
],
"parameters": {
"operation": "append",
"sheetName": {
"__rl": true,
"mode": "list",
"value": ""
},
"documentId": {
"__rl": true,
"mode": "list",
"value": ""
}
},
"credentials": {
"googleSheetsOAuth2Api": {
"id": "OADOUEa3B96W0iqk",
"name": "Google Sheets account 2"
}
},
"typeVersion": 4.7
},
{
"id": "1f16c6d5-fc5a-4ff6-b77b-f3bcc60040fc",
"name": "Envoyer un message",
"type": "n8n-nodes-base.slack",
"position": [
752,
0
],
"webhookId": "bae395be-21a2-47f4-86ca-1991460e5cec",
"parameters": {
"text": "=---\nInvoice date: {{ $json.invoice_date }}\nBilling to: {{ $json['billing to'] }}\nEmail: {{ $json.email }}\nTotal Amount: {{ $json.total_amount }}\nDue date: {{ $json.due_date }}",
"select": "channel",
"channelId": {
"__rl": true,
"mode": "list",
"value": "C09ECEMB012",
"cachedResultName": "invoice"
},
"otherOptions": {}
},
"credentials": {
"slackApi": {
"id": "VLK4L2mMCF7UFZXF",
"name": "Slack account 4"
}
},
"typeVersion": 2.3
},
{
"id": "00111f6b-fd0b-49d9-80f6-3f0ca060de18",
"name": "Structurer la sortie",
"type": "@n8n/n8n-nodes-langchain.outputParserStructured",
"position": [
312,
224
],
"parameters": {
"jsonSchemaExample": "[{\n\t\"billing to\": \"Toshiki Hirao\",\n\t\"total_amount\": \"1000\",\n \"invoice_date\": \"2025/04/29\",\n \"due_date\" : \"2025/05/29\",\n \"email\": \"xxx@yyy.jp\"\n}]\n"
},
"typeVersion": 1.3
},
{
"id": "492e5b93-bde0-4335-843e-0f63ba151b53",
"name": "Modèle d'IA",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
184,
224
],
"parameters": {
"model": {
"__rl": true,
"mode": "list",
"value": "gpt-4o",
"cachedResultName": "gpt-4o"
},
"options": {}
},
"credentials": {
"openAiApi": {
"id": "in4FUooE7goQS8l0",
"name": "OpenAi account 2"
}
},
"typeVersion": 1.2
},
{
"id": "abc9bc40-d167-41e7-921b-1e5d8afd6810",
"name": "Recevoir le PDF de facture",
"type": "n8n-nodes-base.slackTrigger",
"position": [
-496,
0
],
"webhookId": "c612a1bc-e6ae-4ce0-8776-e707ae30fc11",
"parameters": {
"options": {},
"trigger": [
"message"
],
"channelId": {
"__rl": true,
"mode": "list",
"value": "C09ECEMB012",
"cachedResultName": "invoice"
}
},
"credentials": {
"slackApi": {
"id": "VLK4L2mMCF7UFZXF",
"name": "Slack account 4"
}
},
"notesInFlow": false,
"typeVersion": 1
},
{
"id": "1be006ae-9577-413f-be7d-3b3c82945b7b",
"name": "Récupérer le PDF",
"type": "n8n-nodes-base.httpRequest",
"position": [
-272,
0
],
"parameters": {
"url": "={{ $json.files[0].url_private_download }}",
"options": {
"response": {
"response": {
"responseFormat": "file"
}
}
},
"authentication": "predefinedCredentialType",
"nodeCredentialType": "slackApi"
},
"credentials": {
"slackApi": {
"id": "VLK4L2mMCF7UFZXF",
"name": "Slack account 4"
}
},
"typeVersion": 4.2
},
{
"id": "e4b2917c-dd4b-47f9-a16d-3b234b548f0d",
"name": "Extraire les informations du PDF",
"type": "n8n-nodes-base.extractFromFile",
"position": [
-48,
0
],
"parameters": {
"options": {},
"operation": "pdf",
"binaryPropertyName": "=data"
},
"typeVersion": 1
},
{
"id": "b75eb6e0-6daa-436f-a415-1c86a455cc0e",
"name": "Extraire les informations de la facture",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
176,
0
],
"parameters": {
"text": "=please read and understand the input data({{ $json.text }}). I would like you to extract billing to, email, total amount, invoice date and due date. ",
"options": {
"systemMessage": ""
},
"promptType": "define",
"hasOutputParser": true
},
"typeVersion": 2.1
},
{
"id": "54cacdd2-806a-40d5-9e3a-986b9d042dfc",
"name": "Note adhésive",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1056,
-144
],
"parameters": {
"width": 464,
"height": 1024,
"content": "## How it works\n1. Receive invoice in Slack – When a PDF invoice is uploaded to a designated Slack channel, the workflow is triggered.\n2. Fetch the PDF – The file is downloaded automatically for processing.\n3. Extract data from PDF – Basic text extraction is performed to capture invoice content.\n4. AI-powered invoice parsing – An AI model interprets the extracted text and structures essential fields such as company name, invoice number, total amount, invoice date, and due date.\n5. Save to Google Sheets – The structured invoice data is appended as a new row in a Google Sheet for easy tracking and reporting.\n6. Slack confirmation – A summary of the saved invoice details is sent back to Slack to notify the team.\n\n## How to use\n1. Import the workflow into your n8n instance.\n2. Connect Slack – Authenticate your Slack account and set up the trigger channel where invoices will be uploaded.\n3. Connect Google Sheets – Authenticate with Google Sheets and specify the target spreadsheet and sheet name.\n4. Configure the AI extraction – Adjust the parsing prompt or output structure to fit your preferred data fields (e.g., vendor name, invoice ID, amount, dates).\n5. Test the workflow – Upload a sample invoice PDF in Slack and verify that the data is correctly extracted and saved to Google Sheets.\n\n## Requirements\n- An n8n instance (cloud)\n- Slack account with permission to read uploaded files and post messages\n- Google account with access to the spreadsheet you want to update\n- AI integration (e.g., OpenAI GPT or another LLM with PDF parsing capabilities)\n- A designated Slack channel for receiving invoice PDFs"
},
"typeVersion": 1
},
{
"id": "cbb83217-4629-4870-8340-5d65ac37f3b0",
"name": "Note adhésive 1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-576,
-352
],
"parameters": {
"width": 576,
"height": 272,
"content": "## Workflow\nAutomate Invoice Extraction from Slack to Google Sheets with GPT Model\n\n## Introduction\nManaging invoices manually can be time-consuming and error-prone. This workflow automates the process by extracting key invoice details from PDFs shared in Slack, structuring the information with AI, saving it to Google Sheets, and sending a confirmation back to Slack. It’s a seamless way to keep your financial records organized without manual data entry."
},
"typeVersion": 1
}
],
"pinData": {},
"connections": {
"492e5b93-bde0-4335-843e-0f63ba151b53": {
"ai_languageModel": [
[
{
"node": "b75eb6e0-6daa-436f-a415-1c86a455cc0e",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"1be006ae-9577-413f-be7d-3b3c82945b7b": {
"main": [
[
{
"node": "e4b2917c-dd4b-47f9-a16d-3b234b548f0d",
"type": "main",
"index": 0
}
]
]
},
"1f16c6d5-fc5a-4ff6-b77b-f3bcc60040fc": {
"main": [
[]
]
},
"00111f6b-fd0b-49d9-80f6-3f0ca060de18": {
"ai_outputParser": [
[
{
"node": "b75eb6e0-6daa-436f-a415-1c86a455cc0e",
"type": "ai_outputParser",
"index": 0
}
]
]
},
"421fef2b-90cb-496d-8dd4-b613e10e9fe8": {
"main": [
[
{
"node": "1f16c6d5-fc5a-4ff6-b77b-f3bcc60040fc",
"type": "main",
"index": 0
}
]
]
},
"abc9bc40-d167-41e7-921b-1e5d8afd6810": {
"main": [
[
{
"node": "1be006ae-9577-413f-be7d-3b3c82945b7b",
"type": "main",
"index": 0
}
]
]
},
"b75eb6e0-6daa-436f-a415-1c86a455cc0e": {
"main": [
[
{
"node": "421fef2b-90cb-496d-8dd4-b613e10e9fe8",
"type": "main",
"index": 0
}
]
]
},
"e4b2917c-dd4b-47f9-a16d-3b234b548f0d": {
"main": [
[
{
"node": "b75eb6e0-6daa-436f-a415-1c86a455cc0e",
"type": "main",
"index": 0
}
]
]
}
}
}Comment utiliser ce workflow ?
Copiez le code de configuration JSON ci-dessus, créez un nouveau workflow dans votre instance n8n et sélectionnez "Importer depuis le JSON", collez la configuration et modifiez les paramètres d'authentification selon vos besoins.
Dans quelles scénarios ce workflow est-il adapté ?
Intermédiaire - Divers, Résumé IA, IA Multimodale
Est-ce payant ?
Ce workflow est entièrement gratuit et peut être utilisé directement. Veuillez noter que les services tiers utilisés dans le workflow (comme l'API OpenAI) peuvent nécessiter un paiement de votre part.
Workflows recommandés
Partager ce workflow