{
  "openruna_format": "flow-graph-v1",
  "title": "Colombian Invoices Processing",
  "slug": "colombian-invoices-processing",
  "source_filename": "1765_Code_Filter_Process_Triggered.json",
  "nodes": [
    {
      "id": "Loop Over Items",
      "name": "Loop Over Items",
      "integration": "splitInBatches",
      "kind": "logic"
    },
    {
      "id": "OpenAI Chat Model",
      "name": "OpenAI Chat Model",
      "integration": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "kind": "action"
    },
    {
      "id": "Calculator",
      "name": "Calculator",
      "integration": "@n8n/n8n-nodes-langchain.toolCalculator",
      "kind": "action"
    },
    {
      "id": "Structured Output Parser",
      "name": "Structured Output Parser",
      "integration": "@n8n/n8n-nodes-langchain.outputParserStructured",
      "kind": "action"
    },
    {
      "id": "On Email receipt",
      "name": "On Email receipt",
      "integration": "gmail",
      "kind": "trigger"
    },
    {
      "id": "Get Filename and mimeType",
      "name": "Get Filename and mimeType",
      "integration": "code",
      "kind": "logic"
    },
    {
      "id": "Filter ZIP files only",
      "name": "Filter ZIP files only",
      "integration": "filter",
      "kind": "logic"
    },
    {
      "id": "Unzip Invoice",
      "name": "Unzip Invoice",
      "integration": "compression",
      "kind": "action"
    },
    {
      "id": "Just for style",
      "name": "Just for style",
      "integration": "noOp",
      "kind": "logic"
    },
    {
      "id": "Get filename and mimeType on extracted docs",
      "name": "Get filename and mimeType on extracted docs",
      "integration": "code",
      "kind": "logic"
    },
    {
      "id": "Split XML and PDF",
      "name": "Split XML and PDF",
      "integration": "switch",
      "kind": "logic"
    },
    {
      "id": "Extract PDF Data",
      "name": "Extract PDF Data",
      "integration": "extractFromFile",
      "kind": "action"
    },
    {
      "id": "Extract XML Data",
      "name": "Extract XML Data",
      "integration": "extractFromFile",
      "kind": "action"
    },
    {
      "id": "Convert to JSON",
      "name": "Convert to JSON",
      "integration": "xml",
      "kind": "action"
    },
    {
      "id": "Append both Docs",
      "name": "Append both Docs",
      "integration": "merge",
      "kind": "logic"
    },
    {
      "id": "Aggregate all Data into 1 list",
      "name": "Aggregate all Data into 1 list",
      "integration": "aggregate",
      "kind": "logic"
    },
    {
      "id": "Extract Data from PDF and XML",
      "name": "Extract Data from PDF and XML",
      "integration": "@n8n/n8n-nodes-langchain.agent",
      "kind": "action"
    },
    {
      "id": "Create initial PDF",
      "name": "Create initial PDF",
      "integration": "googleDrive",
      "kind": "action"
    },
    {
      "id": "Merge both flows",
      "name": "Merge both flows",
      "integration": "merge",
      "kind": "logic"
    },
    {
      "id": "Update PDF with actual name",
      "name": "Update PDF with actual name",
      "integration": "googleDrive",
      "kind": "action"
    },
    {
      "id": "Get Current Date",
      "name": "Get Current Date",
      "integration": "code",
      "kind": "logic"
    },
    {
      "id": "Create or update row",
      "name": "Create or update row",
      "integration": "googleSheets",
      "kind": "action"
    }
  ],
  "edges": [
    {
      "from": "Unzip Invoice",
      "to": "Loop Over Items"
    },
    {
      "from": "Convert to JSON",
      "to": "Append both Docs"
    },
    {
      "from": "Loop Over Items",
      "to": "Just for style"
    },
    {
      "from": "Loop Over Items",
      "to": "Get filename and mimeType on extracted docs"
    },
    {
      "from": "Append both Docs",
      "to": "Aggregate all Data into 1 list"
    },
    {
      "from": "Extract PDF Data",
      "to": "Append both Docs"
    },
    {
      "from": "Extract XML Data",
      "to": "Convert to JSON"
    },
    {
      "from": "Get Current Date",
      "to": "Create or update row"
    },
    {
      "from": "Merge both flows",
      "to": "Update PDF with actual name"
    },
    {
      "from": "On Email receipt",
      "to": "Get Filename and mimeType"
    },
    {
      "from": "Split XML and PDF",
      "to": "Create initial PDF"
    },
    {
      "from": "Split XML and PDF",
      "to": "Extract PDF Data"
    },
    {
      "from": "Split XML and PDF",
      "to": "Extract XML Data"
    },
    {
      "from": "Create initial PDF",
      "to": "Merge both flows"
    },
    {
      "from": "Create or update row",
      "to": "Loop Over Items"
    },
    {
      "from": "Filter ZIP files only",
      "to": "Unzip Invoice"
    },
    {
      "from": "Get Filename and mimeType",
      "to": "Filter ZIP files only"
    },
    {
      "from": "Update PDF with actual name",
      "to": "Get Current Date"
    },
    {
      "from": "Extract Data from PDF and XML",
      "to": "Merge both flows"
    },
    {
      "from": "Aggregate all Data into 1 list",
      "to": "Extract Data from PDF and XML"
    },
    {
      "from": "Get filename and mimeType on extracted docs",
      "to": "Split XML and PDF"
    }
  ]
}