Sincronización en tiempo real de facturas de QuickBooks a Slack

Intermedio

Este es unInvoice Processing, Multimodal AIflujo de automatización del dominio deautomatización que contiene 10 nodos.Utiliza principalmente nodos como Code, Slack, Webhook, Quickbooks. Automatizar recordatorios de facturas de QuickBooks en tiempo real en Slack

Requisitos previos
  • Bot Token de Slack o URL de Webhook
  • Punto final de HTTP Webhook (n8n generará automáticamente)
Vista previa del flujo de trabajo
Visualización de las conexiones entre nodos, con soporte para zoom y panorámica
Exportar flujo de trabajo
Copie la siguiente configuración JSON en n8n para importar y usar este flujo de trabajo
{
  "id": "HryakGwRjy2LO1wa",
  "meta": {
    "instanceId": "1a54c41d9050a8f1fa6f74ca858828ad9fb97b9fafa3e9760e576171c531a787"
  },
  "name": "Real-Time QuickBooks Invoice Sync to Slack",
  "tags": [],
  "nodes": [
    {
      "id": "4cbf005e-2368-4c6d-b3ab-e3530953ad40",
      "name": "QuickBooks Disparador Webhook",
      "type": "n8n-nodes-base.webhook",
      "position": [
        120,
        900
      ],
      "webhookId": "{YOUR_WEBHOOK_ID}",
      "parameters": {
        "path": "quickbooks-invoice",
        "options": {},
        "httpMethod": "POST"
      },
      "typeVersion": 1
    },
    {
      "id": "0537ea5b-7013-4190-97ae-6e54501049bc",
      "name": "Código",
      "type": "n8n-nodes-base.code",
      "position": [
        1300,
        900
      ],
      "parameters": {
        "jsCode": "return items.map(item => {\n  return {\n    json: {\n      ID: item.json.Id,\n      Domain: item.json.domain,\n      \"Customer Name\": item.json.CustomerRef?.name || \"\",\n      \"Due Date\": item.json.DueDate || \"\"\n    }\n  };\n});\n"
      },
      "typeVersion": 2
    },
    {
      "id": "edb8d672-8327-4218-810e-17fc6a24d35f",
      "name": "Obtener una factura",
      "type": "n8n-nodes-base.quickbooks",
      "position": [
        740,
        900
      ],
      "parameters": {
        "resource": "invoice",
        "invoiceId": "={{ $json.body.eventNotifications[0].dataChangeEvent.entities[0].id }}"
      },
      "typeVersion": 1
    },
    {
      "id": "75b72ba9-98a1-4369-a930-2189e3cead72",
      "name": "Nota adhesiva",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        0,
        -40
      ],
      "parameters": {
        "color": 3,
        "width": 480,
        "height": 360,
        "content": "## 🛠️ Prerequisites\n\nBefore running this workflow, make sure the following are set up:\n\n1. **QuickBooks Webhook Configuration**  \n   - Connect the **production URL** of your webhook to the **Intuit Developer Portal** for your specific company.  \n   - Ensure **Invoice** events are subscribed and activated (e.g., create, update, delete).\n\n2. **Slack account Integration**  \n   - Connect your **Slack client credentials**.  \n\n\nOnce these are in place, your workflow will seamlessly capture and log every invoice change in real time. 🚀📊\n"
      },
      "typeVersion": 1
    },
    {
      "id": "ca26318b-5b28-4f13-b46e-ec7c6e055579",
      "name": "Nota adhesiva1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -60,
        1040
      ],
      "parameters": {
        "width": 380,
        "height": 360,
        "content": "### Step 1: Webhook Trigger Activated! 🪝📢\n\nThis node is the **starting point** of the workflow.\n\nIt listens for **invoice changes in QuickBooks**\n\nWhat it does:\n\n- 📡 Captures the event in real time from QuickBooks.\n- 📦 Passes the invoice data into the workflow instantly.\n- 🔄 Eliminates the need for manual checks or periodic polling.\n"
      },
      "typeVersion": 1
    },
    {
      "id": "de869e01-8b5d-40f6-a441-367ed61d32cd",
      "name": "Nota adhesiva2",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        560,
        480
      ],
      "parameters": {
        "color": 5,
        "width": 460,
        "height": 400,
        "content": "### Step 2: Invoice Data Fetcher 📄🔍\n\nThis node uses the **Get an Invoice** operation to pull full details of the invoice from QuickBooks.\n\nWhy this step is important:\n\n- ✅ Retrieves complete and up-to-date invoice information.\n- 📊 Captures fields like invoice number, date, customer.\n- 🧾 Ensures the Google Sheet reflects the exact state of the invoice at the moment of the event.\n\nIt’s the step that turns a simple event notification into a fully detailed record. 📥✨\n"
      },
      "typeVersion": 1
    },
    {
      "id": "9e919726-2e33-4d1a-90af-ce811a5435c0",
      "name": "Nota adhesiva3",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1140,
        1040
      ],
      "parameters": {
        "color": 3,
        "width": 420,
        "height": 320,
        "content": "### Step 3: JSON Formatter 🛠️📦\n\nThis **Code** node takes the raw invoice data from QuickBooks and formats it into a clean, structured JSON object—ready to be sent to Slack channel\n\nWhat it does:\n\n- 🧹 Extracts only the necessary fields (e.g., id, domain, Customer Name, Due Date).\n- 🔄 Converts the data into the correct order and structure for the message.\n- 📐 Ensures consistent formatting so every message in the channel stays organized.\n\n"
      },
      "typeVersion": 1
    },
    {
      "id": "7e01de38-6b16-48fa-b125-dd0da09472de",
      "name": "Nota adhesiva4",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1700,
        440
      ],
      "parameters": {
        "color": 6,
        "width": 540,
        "height": 440,
        "content": "### Step 4: Slack Message Generator 💬⚡\n\nThis node creates a **custom message** to notify your Slack channel about the new or updated invoice.\n\n**Sample message format**:  \n> Invoice having ID: `160` having the Domain: `QBO` for the customer `Rondonuwu Fruit and Vegi` which is due on `2025-09-07` has been generated successfully.\n\nWhat it does:\n\n- 🧠 Dynamically fills in invoice details (ID, Domain, Customer Name, Due Date).\n- 📢 Prepares a human-readable message for instant team updates.\n- ✅ Keeps everyone in the loop without having to check QuickBooks manually.\n\nClear, concise, and delivered straight to your Slack workspace. 📡\n"
      },
      "typeVersion": 1
    },
    {
      "id": "0bd08387-d175-44f4-8f83-d37792c76de0",
      "name": "Enviar un mensaje",
      "type": "n8n-nodes-base.slack",
      "position": [
        1960,
        900
      ],
      "webhookId": "3022ba8d-9f02-474a-9bed-997eea9a690d",
      "parameters": {
        "text": "=Invoice having ID: {{ $json.ID }} having the Domain: {{ $json.Domain }} for the customer {{ $json[\"Customer Name\"] }} which is due on {{ $json[\"Due Date\"] }} has been generated successfully\n",
        "select": "channel",
        "blocksUi": "=[\n  {\n    \"type\": \"section\",\n    \"text\": {\n      \"type\": \"mrkdwn\",\n      \"text\": \"Invoice having ID: {{ $json.ID }} having the Domain: {{ $json.Domain }} for the customer {{ $json['Customer Name'] }} which is due on {{ $json['Due Date'] }} has been generated successfully\"\n    }\n  }\n]\n",
        "channelId": {
          "__rl": true,
          "mode": "list",
          "value": "{YOUR_SLACK_CHANNEL_ID}",
          "cachedResultName": "n8nmessages"
        },
        "messageType": "block",
        "otherOptions": {},
        "authentication": "oAuth2"
      },
      "typeVersion": 2.3
    },
    {
      "id": "33917945-18e9-4a9a-8bf2-9bb131838de5",
      "name": "Nota adhesiva5",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        1880,
        1120
      ],
      "parameters": {
        "color": 3,
        "width": 420,
        "height": 320,
        "content": "### Get in Touch\n\nPlease feel free to reachout to us, if you need any help in settin up this workflow.\n\nWe can also help customize workflow pet the use-case. \n\nReach out us at: getstarted@intuz.com\n\nWebsite: https://www.intuz.com/\n\n"
      },
      "typeVersion": 1
    }
  ],
  "active": false,
  "pinData": {},
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "51ee5907-ffb1-46fe-8ea9-cda24f3190a9",
  "connections": {
    "Code": {
      "main": [
        [
          {
            "node": "0bd08387-d175-44f4-8f83-d37792c76de0",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "edb8d672-8327-4218-810e-17fc6a24d35f": {
      "main": [
        [
          {
            "node": "Code",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "QuickBooks Webhook": {
      "main": [
        [
          {
            "node": "edb8d672-8327-4218-810e-17fc6a24d35f",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}
Preguntas frecuentes

¿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 - Procesamiento de facturas, 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.

Información del flujo de trabajo
Nivel de dificultad
Intermedio
Número de nodos10
Categoría2
Tipos de nodos5
Descripción de la dificultad

Adecuado para usuarios con experiencia intermedia, flujos de trabajo de complejidad media con 6-15 nodos

Autor
Intuz

Intuz

@intuz

Workflow automation can help automate your routine activities and help saves $$$, as well as hours of time. As a boutique tech consulting company, Intuz help businesses with custom AI/ML, AI Workflow Automations, and software development. Automate your business workflow for: Sales Marketing Accounting Finance Operations E-Commerce Customer Support Admin & Backoffice Logistics & Supply Chain

Enlaces externos
Ver en n8n.io

Compartir este flujo de trabajo

Categorías

Categorías: 34