Telegram経由でChatGPT-4o-miniを使った自動インボイス分析
中級
これはInvoice Processing, AI Summarization分野の自動化ワークフローで、12個のノードを含みます。主にIf, Code, Telegram, HttpRequest, Agentなどのノードを使用。 Telegramを使ってChatGPT-4o-miniで自動化されたインボイス分析
前提条件
- •Telegram Bot Token
- •ターゲットAPIの認証情報が必要な場合あり
- •OpenAI API Key
ワークフロープレビュー
ノード接続関係を可視化、ズームとパンをサポート
ワークフローをエクスポート
以下のJSON設定をn8nにインポートして、このワークフローを使用できます
{
"id": "sBbL7CfgioXi9VJc",
"meta": {
"instanceId": "b91e510ebae4127f953fd2f5f8d40d58ca1e71c746d4500c12ae86aad04c1502"
},
"name": "Automate invoice analysis via Telegram with ChatGPT-4o-mini extraction",
"tags": [],
"nodes": [
{
"id": "b6433fae-ab23-4504-bf1c-07d98177799e",
"name": "Telegramトリガー",
"type": "n8n-nodes-base.telegramTrigger",
"position": [
-464,
32
],
"webhookId": "11b31e8e-4b0b-47a3-ba82-b4ffea5e34ae",
"parameters": {
"updates": [
"message"
],
"additionalFields": {}
},
"typeVersion": 1.2
},
{
"id": "e631a3ed-6930-4da7-a5dc-f33b4c852426",
"name": "ドキュメント確認",
"type": "n8n-nodes-base.if",
"position": [
-304,
32
],
"parameters": {
"options": {},
"conditions": {
"options": {
"leftValue": "",
"caseSensitive": true,
"typeValidation": "strict"
},
"combinator": "and",
"conditions": [
{
"id": "1",
"operator": {
"type": "object",
"operation": "exists"
},
"leftValue": "={{ $json.message.document }}",
"rightValue": ""
}
]
}
},
"typeVersion": 2
},
{
"id": "a22e54b3-e4e0-4b67-8e8f-ef9a5f163fdb",
"name": "Telegramからのファイル取得",
"type": "n8n-nodes-base.telegram",
"position": [
-128,
-64
],
"webhookId": "620221c5-ea8f-4c9e-bb04-b70114f27cb2",
"parameters": {
"fileId": "={{ $json.message.document.file_id }}",
"resource": "file",
"additionalFields": {}
},
"typeVersion": 1.2
},
{
"id": "e93556dc-7af4-4e7d-9cb0-82aa0da39ed8",
"name": "HTTPリクエスト - ファイルダウンロード",
"type": "n8n-nodes-base.httpRequest",
"position": [
32,
-64
],
"parameters": {
"url": "=https://api.telegram.org/file/bot{{ $credentials.telegramApi.accessToken }}/{{ $json.result.file_path }}",
"options": {
"response": {
"response": {
"responseFormat": "file"
}
}
}
},
"typeVersion": 4.2
},
{
"id": "aebfd1a1-bb29-4dbe-af72-4a6e986d4f79",
"name": "請求書データ抽出",
"type": "n8n-nodes-base.extractFromFile",
"position": [
176,
-64
],
"parameters": {
"operation": "extractFromPDF"
},
"typeVersion": 1
},
{
"id": "c9bf8764-2bc9-4861-b477-bbb60d516f34",
"name": "AIエージェント - 請求書分析",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
320,
-64
],
"parameters": {
"text": "=Analyze the following invoice text and extract key information:\n\n{{ $json.text }}\n\nProvide the following details:\n1. Invoice Number\n2. Invoice Date\n3. Vendor/Supplier Name\n4. Total Amount\n5. Currency\n6. Due Date\n7. Line Items (if available)\n8. Payment Status\n9. Any discrepancies or issues found\n\nFormat the response in a clear, structured manner.",
"options": {
"systemMessage": "You are an expert invoice analyst. Extract accurate information from invoices and identify any potential issues or discrepancies."
},
"promptType": "define",
"hasOutputParser": true
},
"typeVersion": 1.7
},
{
"id": "baead0ff-8676-4e77-9084-bd28484fc797",
"name": "OpenAIチャットモデル",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
320,
128
],
"parameters": {
"options": {
"temperature": 0.2
}
},
"credentials": {
"openAiApi": {
"id": "OGYj7DgYv5GFLFZk",
"name": "OpenAi account 2"
}
},
"typeVersion": 1
},
{
"id": "c149851f-3c38-4827-b1e9-14dbdbdd9172",
"name": "応答フォーマット",
"type": "n8n-nodes-base.code",
"position": [
576,
-64
],
"parameters": {
"jsCode": "const aiResponse = $input.first().json.output;\nconst originalMessage = $('Telegram Trigger').first().json;\n\nreturn {\n json: {\n chatId: originalMessage.message.chat.id,\n analysis: aiResponse,\n fileName: originalMessage.message.document?.file_name || 'Unknown',\n timestamp: new Date().toISOString()\n }\n};"
},
"typeVersion": 2
},
{
"id": "b6c9a341-c390-4d8e-8ab7-ef7896bf87b4",
"name": "分析結果をTelegramに送信",
"type": "n8n-nodes-base.telegram",
"position": [
720,
-64
],
"webhookId": "c8fc2be4-fef6-4434-86a8-4630d8c9c3b4",
"parameters": {
"text": "=📄 *Invoice Analysis Complete*\n\n*File:* {{ $json.fileName }}\n*Analyzed at:* {{ $json.timestamp }}\n\n*Results:*\n{{ $json.analysis }}\n\n✅ Analysis completed successfully!",
"chatId": "={{ $json.chatId }}",
"additionalFields": {
"parse_mode": "Markdown"
}
},
"typeVersion": 1.2
},
{
"id": "267e3223-6e60-432e-bb6d-980c2821b0e5",
"name": "エラーメッセージ送信",
"type": "n8n-nodes-base.telegram",
"position": [
-128,
112
],
"webhookId": "b419141c-c0cc-42ba-a2af-6ff60bfa6ba6",
"parameters": {
"text": "❌ Please send a document file (PDF or image) to check the invoice.",
"chatId": "={{ $json.message.chat.id }}",
"additionalFields": {}
},
"typeVersion": 1.2
},
{
"id": "2f8e4a85-0db5-421a-93c1-b5a5cc8c701c",
"name": "付箋",
"type": "n8n-nodes-base.stickyNote",
"position": [
-1024,
-256
],
"parameters": {
"width": 544,
"height": 624,
"content": "## Introduction\nUpload invoices via Telegram, receive structured data instantly. Perfect for accountants and finance teams.\n## How It Works\nTelegram bot receives invoices, downloads files, extracts data using OpenAI, then returns analysis.\n## Workflow Template\nTelegram Trigger → Document Check → Get File → HTTP Download → AI Extract → Format Response → Send to Telegram\n## Workflow Steps\n1. **Telegram Trigger:** Listens for uploads.\n2. **Document Check:** Validates files; routes errors.\n3. **Get File:** Retrieves metadata.\n4. **HTTP Download:** Fetches content.\n5. **AI Extract:** OpenAI parses invoice fields.\n6. **Format Response:** Structures data.\n7. **Send Analysis:** Delivers to chat.\n## Setup Instructions\n1. **Telegram Bot:** Create via BotFather, add credentials.\n2. **OpenAI Agent:** Add API key and extraction prompt.\n3. **HTTP Node:** Set authentication.\n4. **Parser:** Define invoice schema.\n5. **Error Handling:** Configure fallbacks.\n"
},
"typeVersion": 1
},
{
"id": "80d92c1c-d7b6-47ae-8f9d-8520e61708a8",
"name": "付箋1",
"type": "n8n-nodes-base.stickyNote",
"position": [
512,
112
],
"parameters": {
"color": 4,
"width": 320,
"height": 288,
"content": "## Prerequisites\n- n8n instance\n- Telegram Bot Token\n- OpenAI API key\n## Customization\n- Database storage\n- Accounting software integration\n## Benefits\n- Eliminates manual entry\n- Reduces errors"
},
"typeVersion": 1
}
],
"active": false,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "8c2bf80d-d1f6-4b32-bd5a-cf0b88f24786",
"connections": {
"c149851f-3c38-4827-b1e9-14dbdbdd9172": {
"main": [
[
{
"node": "b6c9a341-c390-4d8e-8ab7-ef7896bf87b4",
"type": "main",
"index": 0
}
]
]
},
"b6433fae-ab23-4504-bf1c-07d98177799e": {
"main": [
[
{
"node": "e631a3ed-6930-4da7-a5dc-f33b4c852426",
"type": "main",
"index": 0
}
]
]
},
"e631a3ed-6930-4da7-a5dc-f33b4c852426": {
"main": [
[
{
"node": "a22e54b3-e4e0-4b67-8e8f-ef9a5f163fdb",
"type": "main",
"index": 0
}
],
[
{
"node": "267e3223-6e60-432e-bb6d-980c2821b0e5",
"type": "main",
"index": 0
}
]
]
},
"baead0ff-8676-4e77-9084-bd28484fc797": {
"ai_languageModel": [
[
{
"node": "c9bf8764-2bc9-4861-b477-bbb60d516f34",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"aebfd1a1-bb29-4dbe-af72-4a6e986d4f79": {
"main": [
[
{
"node": "c9bf8764-2bc9-4861-b477-bbb60d516f34",
"type": "main",
"index": 0
}
]
]
},
"a22e54b3-e4e0-4b67-8e8f-ef9a5f163fdb": {
"main": [
[
{
"node": "e93556dc-7af4-4e7d-9cb0-82aa0da39ed8",
"type": "main",
"index": 0
}
]
]
},
"c9bf8764-2bc9-4861-b477-bbb60d516f34": {
"main": [
[
{
"node": "c149851f-3c38-4827-b1e9-14dbdbdd9172",
"type": "main",
"index": 0
}
]
]
},
"e93556dc-7af4-4e7d-9cb0-82aa0da39ed8": {
"main": [
[
{
"node": "aebfd1a1-bb29-4dbe-af72-4a6e986d4f79",
"type": "main",
"index": 0
}
]
]
}
}
}よくある質問
このワークフローの使い方は?
上記のJSON設定コードをコピーし、n8nインスタンスで新しいワークフローを作成して「JSONからインポート」を選択、設定を貼り付けて認証情報を必要に応じて変更してください。
このワークフローはどんな場面に適していますか?
中級 - 請求書処理, AI要約
有料ですか?
このワークフローは完全無料です。ただし、ワークフローで使用するサードパーティサービス(OpenAI APIなど)は別途料金が発生する場合があります。
関連ワークフロー
第一轮 Telegram と LinkedIn 快速通道 AI 招聘アシスタント
AI候选人筛选流程:LinkedInへTelegram,統合Gemini与Apify
If
Set
Code
+
If
Set
Code
55 ノードDean Pike
人事
LinkedInジョブ検索
LinkedIn求人検索:履歴書自動照合(GPT/Gemini)+カバーレタージェネレーター+Telegram通知
If
Set
Code
+
If
Set
Code
33 ノードHojjat Jashnniloofar
個人の生産性
AI駆動のGPT-4-Turboによる課題採点と複数形式出力
GPT-4-Turboで作業の採点を自動化かつ、複数形式のレポートを生成
Set
Code
Webhook
+
Set
Code
Webhook
15 ノードCheng Siong Chin
文書抽出
AI駆動の同僚レビュー作業システム with 自動採点基準生成
GPT-4-nano、Slack、メール通知を使用したペアレビュー割り当ての自動化
Set
Code
Slack
+
Set
Code
Slack
22 ノードCheng Siong Chin
文書抽出
再生リスト詳細設定ボットコピー
Suno、GPT-4、Runway、Creatomate を使って AI 生成の YouTube ミュージックプレイリストを作成
If
Set
Code
+
If
Set
Code
203 ノードJoseph
コンテンツ作成
Telegram AIサポートチャットボット(マルチモーダル入力)
GPT-4とSupabase RAGを使って多言語Telegramサポートボットを作成
If
Set
Code
+
If
Set
Code
51 ノードEzema Kingsley Chibuzo
サポートチャットボット
ワークフロー情報
難易度
中級
ノード数12
カテゴリー2
ノードタイプ9
作成者
Cheng Siong Chin
@cschinProf. Cheng Siong CHIN serves as Chair Professor in Intelligent Systems Modelling and Simulation in Newcastle University, Singapore. His academic credentials include an M.Sc. in Advanced Control and Systems Engineering from The University of Manchester and a Ph.D. in Robotics from Nanyang Technological University.
外部リンク
n8n.ioで表示 →
このワークフローを共有