Extraer datos de facturas de PDF de Slack a Google Sheets con GPT-4o
Este es unMiscellaneous, AI Summarization, Multimodal AIflujo de automatización del dominio deautomatización que contiene 10 nodos.Utiliza principalmente nodos como Slack, HttpRequest, GoogleSheets, SlackTrigger, Agent. Extraer datos de facturas de PDF de Slack a Google Sheets usando GPT-4o
- •Bot Token de Slack o URL de Webhook
- •Pueden requerirse credenciales de autenticación para la API de destino
- •Credenciales de API de Google Sheets
- •Clave de API de OpenAI
Nodos utilizados (10)
Categoría
{
"meta": {
"instanceId": "e04cc86c30b0cecda8e6bbc7cc41459d9bf4d76816638a14d42d636b91913ebc",
"templateCredsSetupCompleted": true
},
"nodes": [
{
"id": "421fef2b-90cb-496d-8dd4-b613e10e9fe8",
"name": "Agregar fila en hoja",
"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": "Enviar un mensaje",
"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": "Estructurar salida",
"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": "Modelo de 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": "Recibir PDF de factura",
"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": "Obtener el 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": "Extraer información del PDF",
"type": "n8n-nodes-base.extractFromFile",
"position": [
-48,
0
],
"parameters": {
"options": {},
"operation": "pdf",
"binaryPropertyName": "=data"
},
"typeVersion": 1
},
{
"id": "b75eb6e0-6daa-436f-a415-1c86a455cc0e",
"name": "Extraer información de la factura",
"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": "Nota adhesiva",
"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": "Nota adhesiva1",
"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
}
]
]
}
}
}¿Cómo usar este flujo de trabajo?
Copie el código de configuración JSON de arriba, cree un nuevo flujo de trabajo en su instancia de n8n y seleccione "Importar desde JSON", pegue la configuración y luego modifique la configuración de credenciales según sea necesario.
¿En qué escenarios es adecuado este flujo de trabajo?
Intermedio - Varios, Resumen de IA, IA Multimodal
¿Es de pago?
Este flujo de trabajo es completamente gratuito, puede importarlo y usarlo directamente. Sin embargo, tenga en cuenta que los servicios de terceros utilizados en el flujo de trabajo (como la API de OpenAI) pueden requerir un pago por su cuenta.
Flujos de trabajo relacionados recomendados
Compartir este flujo de trabajo