AutomationFlowsAI & RAG › Ai-powered Accounting Reports From Sabre Edi with Gpt-4 and Pinecone RAG

Ai-powered Accounting Reports From Sabre Edi with Gpt-4 and Pinecone RAG

ByMohan Gopal @mohan on n8n.io

This workflow automates the process of reading EDI files generated by Sabre, parsing them using an AI Agent, and producing structured accounting reports like:

Event trigger★★★★☆ complexityAI-powered20 nodesPinecone Vector StoreOpenAI EmbeddingsDocument Default Data LoaderText Splitter Recursive Character Text SplitterGoogle DriveOpenAI ChatAgent
AI & RAG Trigger: Event Nodes: 20 Complexity: ★★★★☆ AI nodes: yes Added:

This workflow corresponds to n8n.io template #5130 — we link there as the canonical source.

This workflow follows the Agent → Documentdefaultdataloader recipe pattern — see all workflows that pair these two integrations.

The workflow JSON

Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →

Download .json
{
  "id": "HWsEhnkLn4XfhWIc",
  "name": "05 EDI File Processing - Completed",
  "tags": [
    {
      "id": "oKGIn6U0wpeHShTN",
      "name": "working flow",
      "createdAt": "2025-06-02T06:27:44.762Z",
      "updatedAt": "2025-06-02T06:27:44.762Z"
    }
  ],
  "nodes": [
    {
      "id": "ac1d38b5-6177-4b36-9a23-c26889e94a78",
      "name": "When clicking \u2018Test workflow\u2019",
      "type": "n8n-nodes-base.manualTrigger",
      "position": [
        -280,
        1060
      ],
      "parameters": {},
      "typeVersion": 1
    },
    {
      "id": "2daa8cbd-acc8-4365-938b-b3caf49ad9ea",
      "name": "Pinecone Vector Store1",
      "type": "@n8n/n8n-nodes-langchain.vectorStorePinecone",
      "position": [
        540,
        100
      ],
      "parameters": {
        "mode": "insert",
        "options": {},
        "pineconeIndex": {
          "__rl": true,
          "mode": "list",
          "value": "package1536",
          "cachedResultName": "package1536"
        }
      },
      "credentials": {
        "pineconeApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1.1
    },
    {
      "id": "52f425bf-9269-43fc-a685-482ea5cf3e0c",
      "name": "Embeddings OpenAI1",
      "type": "@n8n/n8n-nodes-langchain.embeddingsOpenAi",
      "position": [
        440,
        360
      ],
      "parameters": {
        "options": {}
      },
      "credentials": {
        "openAiApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "7ed2dc8d-60ef-4c65-935c-fca4e7502c06",
      "name": "Default Data Loader1",
      "type": "@n8n/n8n-nodes-langchain.documentDefaultDataLoader",
      "position": [
        600,
        360
      ],
      "parameters": {
        "options": {},
        "dataType": "binary"
      },
      "typeVersion": 1
    },
    {
      "id": "44ad4300-31f9-4e14-904a-de23f9a5b81c",
      "name": "Recursive Character Text Splitter1",
      "type": "@n8n/n8n-nodes-langchain.textSplitterRecursiveCharacterTextSplitter",
      "position": [
        680,
        540
      ],
      "parameters": {
        "options": {},
        "chunkOverlap": 50
      },
      "typeVersion": 1
    },
    {
      "id": "f9512cb3-5b71-4a65-91eb-19f01130c459",
      "name": "Google Drive",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        120,
        100
      ],
      "parameters": {
        "filter": {
          "folderId": {
            "__rl": true,
            "mode": "list",
            "value": "1fuSiN8yukGRr27nigbt4oUsffIpzg_L7",
            "cachedResultUrl": "https://drive.google.com/drive/folders/1fuSiN8yukGRr27nigbt4oUsffIpzg_L7",
            "cachedResultName": "SabreEDIFileGuide"
          }
        },
        "options": {},
        "resource": "fileFolder",
        "returnAll": true
      },
      "credentials": {
        "googleDriveOAuth2Api": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 3
    },
    {
      "id": "cc3a857b-9053-4fbf-aec0-91604a3cc608",
      "name": "Google Drive1",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        300,
        100
      ],
      "parameters": {
        "fileId": {
          "__rl": true,
          "mode": "id",
          "value": "={{ $json.id }}"
        },
        "options": {},
        "operation": "download"
      },
      "credentials": {
        "googleDriveOAuth2Api": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 3
    },
    {
      "id": "cbdd35c6-8c8b-4eb4-910b-ef77cd440916",
      "name": "Sticky Note",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -320,
        -60
      ],
      "parameters": {
        "width": 1740,
        "height": 740,
        "content": "## Vectorizing Sabre Interface User Record (IUR) \n**The Sabre Interface User Record (IUR) supports travel agency back-office functions for Ticketing, Invoicing and Itinerary type entries. The IUR is used to store and transmit information gathered from the Passenger Name Record (PNR) in Sabre to the back-office system via an asynchronous communications device utilizing a standard EIA-RS2312C signal transmission.**"
      },
      "typeVersion": 1
    },
    {
      "id": "c25c8091-66ab-4ba9-88be-cc5870a88b98",
      "name": "OpenAI Chat Model",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        500,
        1280
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4o-mini"
        },
        "options": {}
      },
      "credentials": {
        "openAiApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "de06cb47-a14a-4c4a-8398-679bd4ed6e4f",
      "name": "Pinecone Vector Store",
      "type": "@n8n/n8n-nodes-langchain.vectorStorePinecone",
      "position": [
        660,
        1280
      ],
      "parameters": {
        "mode": "retrieve-as-tool",
        "options": {
          "pineconeNamespace": ""
        },
        "toolName": "PackageDetails",
        "pineconeIndex": {
          "__rl": true,
          "mode": "list",
          "value": "package1536",
          "cachedResultName": "package1536"
        },
        "toolDescription": "Return the Accounts Payable details reading the information from the input file. "
      },
      "credentials": {
        "pineconeApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1.1
    },
    {
      "id": "c06ce64d-e52d-4901-8d9b-78276315a43c",
      "name": "Embeddings OpenAI",
      "type": "@n8n/n8n-nodes-langchain.embeddingsOpenAi",
      "position": [
        680,
        1440
      ],
      "parameters": {
        "options": {}
      },
      "credentials": {
        "openAiApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "17f220b8-51c3-4819-b14d-44acb827e9d1",
      "name": "Extract from File",
      "type": "n8n-nodes-base.extractFromFile",
      "position": [
        320,
        1060
      ],
      "parameters": {
        "options": {},
        "operation": "text"
      },
      "typeVersion": 1
    },
    {
      "id": "1a62d317-36fa-4cbf-991e-ae9fefc43da4",
      "name": "Account Receivable Agent",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        540,
        1060
      ],
      "parameters": {
        "text": "=\nUse the incoming EDI files and generate Account Receivable Report by going throug each file, listing the account receivables for each PNR and the passenger data. \n {{ $json.data }}",
        "options": {
          "systemMessage": "##Role##\nYou are an Accounting and Finance Reporting Expert and you understand the incoming EDI file from which you extract data and compile Accounts Receivable (AR) Summary Report\n\nInstruction:\nRead the incoming EDI file and identify the accounting info and generate accounting receivable report. \nIf there are data that you don't understand, query the pinecone vector database where the complete guidelines is stored for the undersatnding. \nOutput just the table with the data. No need to give a dscription in the begining. \n\nGenerate report in the below tabular format that is extractable in JSON format: \n\n{\n  [\n    {\"passenger\": \"Sergei\", \"fare\": 414, \"tax\": 34.88, \"total\": 448.88}\n  ]\n}\nNote:\nNever ever create your own AR report if in doubt or missing data.\n"
        },
        "promptType": "define",
        "hasOutputParser": true
      },
      "typeVersion": 1.9
    },
    {
      "id": "f3d494ce-439e-4b74-96c7-b4aeea412b6b",
      "name": "Sticky Note1",
      "type": "n8n-nodes-base.stickyNote",
      "position": [
        -320,
        720
      ],
      "parameters": {
        "width": 1740,
        "height": 860,
        "content": "## Reports from EDI file\n1. Accounts Receivable (AR) Summary Report\n2. Accounts Payable (AP) Report\n3. Tax and Surcharges Report\n4. Passenger Revenue Report\n5. Daily Sales Report\n6. Uncollected Revenue / Payment Status Report\n7. Commission Report (if applicable)\n8. Audit & Compliance Report\n9. Ticketing Report\n10. Profit Margin Report (if commission & supplier cost known)\n"
      },
      "typeVersion": 1
    },
    {
      "id": "12e76ce9-9bf6-42ea-9059-252a1e39d50d",
      "name": "Google Drive: extract files",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        -80,
        1060
      ],
      "parameters": {
        "filter": {
          "folderId": {
            "__rl": true,
            "mode": "list",
            "value": "172VdwV-JNLv0H7i7OXRMjYqIshg6ow1O",
            "cachedResultUrl": "https://drive.google.com/drive/folders/172VdwV-JNLv0H7i7OXRMjYqIshg6ow1O",
            "cachedResultName": "EDIFileForProcessing"
          }
        },
        "options": {},
        "resource": "fileFolder",
        "returnAll": true
      },
      "credentials": {
        "googleDriveOAuth2Api": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 3
    },
    {
      "id": "a7f51cdc-614e-460a-8327-9cc20c61741a",
      "name": "Google Drive: download file contents",
      "type": "n8n-nodes-base.googleDrive",
      "position": [
        120,
        1060
      ],
      "parameters": {
        "fileId": {
          "__rl": true,
          "mode": "id",
          "value": "={{ $json.id }}"
        },
        "options": {},
        "operation": "download"
      },
      "credentials": {
        "googleDriveOAuth2Api": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 3
    },
    {
      "id": "296bbaf6-a5fb-4be4-8e83-cb8d6a696b12",
      "name": "OpenAI Chat Model1",
      "type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
      "position": [
        960,
        1280
      ],
      "parameters": {
        "model": {
          "__rl": true,
          "mode": "list",
          "value": "gpt-4o-mini"
        },
        "options": {}
      },
      "credentials": {
        "openAiApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "74f71aa2-dde2-4bb8-8142-dfe5bb0ca896",
      "name": "Pinecone Vector Store2",
      "type": "@n8n/n8n-nodes-langchain.vectorStorePinecone",
      "position": [
        1120,
        1280
      ],
      "parameters": {
        "mode": "retrieve-as-tool",
        "options": {
          "pineconeNamespace": ""
        },
        "toolName": "PackageDetails",
        "pineconeIndex": {
          "__rl": true,
          "mode": "list",
          "value": "package1536",
          "cachedResultName": "package1536"
        },
        "toolDescription": "Return the Tax Summary aligning to the input file"
      },
      "credentials": {
        "pineconeApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1.1
    },
    {
      "id": "5206c19e-bd8b-4e24-bf6d-225af26fdd48",
      "name": "Embeddings OpenAI2",
      "type": "@n8n/n8n-nodes-langchain.embeddingsOpenAi",
      "position": [
        1140,
        1440
      ],
      "parameters": {
        "options": {}
      },
      "credentials": {
        "openAiApi": {
          "name": "<your credential>"
        }
      },
      "typeVersion": 1.2
    },
    {
      "id": "a1b109f9-3259-48d7-a426-c876d3aaf97e",
      "name": "Tax and Surcharges Report",
      "type": "@n8n/n8n-nodes-langchain.agent",
      "position": [
        1000,
        1060
      ],
      "parameters": {
        "text": "=\nUse the incoming EDI files and generate Tax and Surcharges Report by going through each file, listing the tax surcharge report for each PNR and the passenger data. \n {{ $json.data }}",
        "options": {
          "systemMessage": "##Role##\nYou are an Accounting and Finance Reporting Expert and you understand the incoming EDI file from which you extract data and compile Tax and Surcharges Report\n\nInstruction:\nRead the incoming EDI file and identify the accounting info and generate accounting receivable report. \nIf there are data that you don't understand, query the pinecone vector database where the complete guidelines is stored for the undersatnding. \nOutput just the table with the data. No need to give a dscription in the begining. \n\nGenerate report in the below tabular format that is extractable in JSON format: \n\n [\n    {\"taxType\": \"JD\", \"amount\": 23.84}\n  ]\n\nNote:\nNever ever create your own Tax report if in doubt or missing data.\n"
        },
        "promptType": "define",
        "hasOutputParser": true
      },
      "typeVersion": 1.9
    }
  ],
  "active": false,
  "settings": {
    "executionOrder": "v1"
  },
  "versionId": "c9cacda3-eb77-4755-a95b-fd7f97615d4d",
  "connections": {
    "Google Drive": {
      "main": [
        [
          {
            "node": "Google Drive1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Google Drive1": {
      "main": [
        [
          {
            "node": "Pinecone Vector Store1",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Embeddings OpenAI": {
      "ai_embedding": [
        [
          {
            "node": "Pinecone Vector Store",
            "type": "ai_embedding",
            "index": 0
          }
        ]
      ]
    },
    "Extract from File": {
      "main": [
        [
          {
            "node": "Account Receivable Agent",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "OpenAI Chat Model": {
      "ai_languageModel": [
        [
          {
            "node": "Account Receivable Agent",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Embeddings OpenAI1": {
      "ai_embedding": [
        [
          {
            "node": "Pinecone Vector Store1",
            "type": "ai_embedding",
            "index": 0
          }
        ]
      ]
    },
    "Embeddings OpenAI2": {
      "ai_embedding": [
        [
          {
            "node": "Pinecone Vector Store2",
            "type": "ai_embedding",
            "index": 0
          }
        ]
      ]
    },
    "OpenAI Chat Model1": {
      "ai_languageModel": [
        [
          {
            "node": "Tax and Surcharges Report",
            "type": "ai_languageModel",
            "index": 0
          }
        ]
      ]
    },
    "Default Data Loader1": {
      "ai_document": [
        [
          {
            "node": "Pinecone Vector Store1",
            "type": "ai_document",
            "index": 0
          }
        ]
      ]
    },
    "Pinecone Vector Store": {
      "ai_tool": [
        [
          {
            "node": "Account Receivable Agent",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Pinecone Vector Store1": {
      "main": [
        []
      ]
    },
    "Pinecone Vector Store2": {
      "ai_tool": [
        [
          {
            "node": "Tax and Surcharges Report",
            "type": "ai_tool",
            "index": 0
          }
        ]
      ]
    },
    "Account Receivable Agent": {
      "main": [
        []
      ]
    },
    "Google Drive: extract files": {
      "main": [
        [
          {
            "node": "Google Drive: download file contents",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "When clicking \u2018Test workflow\u2019": {
      "main": [
        [
          {
            "node": "Google Drive: extract files",
            "type": "main",
            "index": 0
          }
        ]
      ]
    },
    "Recursive Character Text Splitter1": {
      "ai_textSplitter": [
        [
          {
            "node": "Default Data Loader1",
            "type": "ai_textSplitter",
            "index": 0
          }
        ]
      ]
    },
    "Google Drive: download file contents": {
      "main": [
        [
          {
            "node": "Extract from File",
            "type": "main",
            "index": 0
          }
        ]
      ]
    }
  }
}

Credentials you'll need

Each integration node will prompt for credentials when you import. We strip credential IDs before publishing — you'll add your own.

Pro

For the full experience including quality scoring and batch install features for each workflow upgrade to Pro

About this workflow

This workflow automates the process of reading EDI files generated by Sabre, parsing them using an AI Agent, and producing structured accounting reports like:

Source: https://n8n.io/workflows/5130/ — original creator credit. Request a take-down →

More AI & RAG workflows → · Browse all categories →

Related workflows

Workflows that share integrations, category, or trigger type with this one. All free to copy and import.

AI & RAG

Your AI workforce is ready. Are you?

Google Sheets Tool, Mcp Trigger, Google Drive +29
AI & RAG

This advanced n8n workflow automates the full lead enrichment, qualification, and personalized outreach process tailored specifically for the B2B real estate sector. Integrating top platforms like Api

N8N Nodes Fillout, OpenAI Chat, Pinecone Vector Store +11
AI & RAG

This n8n template automatically classifies incoming emails (Sales, Support, Internal, Finance, Promotions) and routes them to a dedicated OpenAI LLM Agent for processing. Depending on the category, th

OpenAI, Gmail, Text Classifier +16
AI & RAG

Automate Outreach Prospect automates finding, enriching, and messaging potential partners (like restaurants, malls, and bars) using Apify Google Maps scraping, Perplexity enrichment, OpenAI LLMs, Goog

@Devlikeapro/N8N Nodes Waha, Google Drive Trigger, @Apify/N8N Nodes Apify +14
AI & RAG

Chat with docs - 5minAI New version. Uses httpRequest, documentDefaultDataLoader, textSplitterRecursiveCharacterTextSplitter, embeddingsOpenAi. Event-driven trigger; 62 nodes.

HTTP Request, Document Default Data Loader, Text Splitter Recursive Character Text Splitter +10