名刺スキャナー
中級
これは自動化ワークフローで、14個のノードを含みます。主にDataTable, FormTrigger, HttpRequest, Agent, ExtractFromFileなどのノードを使用。 名刺から連絡先情報をMistral OCRとGPT-4o-miniで抽出する
前提条件
- •ターゲットAPIの認証情報が必要な場合あり
- •OpenAI API Key
使用ノード (14)
カテゴリー
-
ワークフロープレビュー
ノード接続関係を可視化、ズームとパンをサポート
ワークフローをエクスポート
以下のJSON設定をn8nにインポートして、このワークフローを使用できます
{
"id": "96Ab7Pgv1EJuTmxK",
"meta": {
"instanceId": "c8b95e29c17127b212f04efc4af0e88eb8ed7f9fbac9f0513cac20f47e8e86db",
"templateCredsSetupCompleted": true
},
"name": "Business card scanner",
"tags": [
{
"id": "fhnwm2x2nil3wCDz",
"name": "n8n database",
"createdAt": "2025-10-03T02:19:57.035Z",
"updatedAt": "2025-10-03T02:19:57.035Z"
},
{
"id": "z50kYN6ZCBwCtje9",
"name": "Mistral OCR",
"createdAt": "2025-10-03T02:25:59.717Z",
"updatedAt": "2025-10-03T02:25:59.717Z"
},
{
"id": "IawKguNngWRq4lUe",
"name": "OpenAI",
"createdAt": "2025-10-06T02:33:58.972Z",
"updatedAt": "2025-10-06T02:33:58.972Z"
}
],
"nodes": [
{
"id": "c333cb6d-8366-419c-bfee-c939485d9122",
"name": "Mistral OCR API",
"type": "n8n-nodes-base.httpRequest",
"position": [
576,
592
],
"parameters": {
"url": "https://api.mistral.ai/v1/ocr",
"method": "POST",
"options": {
"response": {
"response": {
"responseFormat": "file",
"outputPropertyName": "ocr_output.json"
}
}
},
"jsonBody": "={\n \"model\": \"mistral-ocr-latest\",\n \"document\": {\n \"type\": \"document_url\",\n \"document_url\": \"data:application/pdf;base64,{{ $json.data }}\"\n },\n \"include_image_base64\": true\n}",
"sendBody": true,
"specifyBody": "json",
"authentication": "genericCredentialType",
"genericAuthType": "httpBearerAuth"
},
"credentials": {
"httpBearerAuth": {
"id": "FXRzJOFSFbJ69oyG",
"name": "Mistral OCR - Bearer Auth account"
}
},
"typeVersion": 4.2
},
{
"id": "7249608d-fe26-44c7-b33a-6ca1f6342bcf",
"name": "AIエージェント",
"type": "@n8n/n8n-nodes-langchain.agent",
"position": [
1088,
592
],
"parameters": {
"text": "=Business Card: {{ $json.data.pages[0].markdown }}",
"options": {
"systemMessage": "You are a business card reader that reads the data from the card."
},
"promptType": "define",
"hasOutputParser": true
},
"typeVersion": 2.2
},
{
"id": "ae9c9a46-f3e4-410b-8ea6-a64121a15f03",
"name": "OpenAI チャットモデル",
"type": "@n8n/n8n-nodes-langchain.lmChatOpenAi",
"position": [
1008,
816
],
"parameters": {
"model": {
"__rl": true,
"mode": "list",
"value": "gpt-4o-mini",
"cachedResultName": "gpt-4o-mini"
},
"options": {}
},
"credentials": {
"openAiApi": {
"id": "pZ0XcQlml2P1EaUh",
"name": "OpenAi account"
}
},
"typeVersion": 1.2
},
{
"id": "577cb6d1-2950-4c6a-b967-4e048b766663",
"name": "構造化出力パーサー",
"type": "@n8n/n8n-nodes-langchain.outputParserStructured",
"position": [
1328,
816
],
"parameters": {
"jsonSchemaExample": "{\n\t\"firstname\": \"\",\n\t\"name\": \"\",\n \"company\": \"\",\n \"web\": \"\",\n \"email\": \"\",\n \"street\": \"\",\n \"postcode\": \"\",\n \"place\": \"\",\n \"phone\": \"\",\n \"mobile\": \"\",\n \"jobdescription\": \"\"\n}"
},
"typeVersion": 1.3
},
{
"id": "43396e25-a83a-4c6c-87ba-dfedbf932858",
"name": "シンプルメモリ",
"type": "@n8n/n8n-nodes-langchain.memoryBufferWindow",
"position": [
1136,
816
],
"parameters": {
"sessionKey": "={{ $('Data to base64').item.json.submittedAt }}",
"sessionIdType": "customKey"
},
"typeVersion": 1.3
},
{
"id": "c5364bc2-8e0a-4f34-a964-77630cf82d0a",
"name": "行のアップサート",
"type": "n8n-nodes-base.dataTable",
"position": [
1488,
592
],
"parameters": {
"columns": {
"value": {
"name": "={{ $json.output.name }}",
"email": "={{ $json.output.email }}",
"phone": "={{ $json.output.phone }}",
"place": "={{ $json.output.place }}",
"mobile": "={{ $json.output.mobile }}",
"street": "={{ $json.output.street }}",
"company": "={{ $json.output.company }}",
"postcode": "={{ $json.output.postcode }}",
"firstname": "={{ $json.output.firstname }}",
"jobdescription": "={{ $json.output.jobdescrition }}"
},
"schema": [
{
"id": "firstname",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "firstname",
"defaultMatch": false
},
{
"id": "name",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "name",
"defaultMatch": false
},
{
"id": "company",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "company",
"defaultMatch": false
},
{
"id": "jobdescription",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "jobdescription",
"defaultMatch": false
},
{
"id": "email",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "email",
"defaultMatch": false
},
{
"id": "phone",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "phone",
"defaultMatch": false
},
{
"id": "mobile",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "mobile",
"defaultMatch": false
},
{
"id": "street",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "street",
"defaultMatch": false
},
{
"id": "postcode",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "postcode",
"defaultMatch": false
},
{
"id": "place",
"type": "string",
"display": true,
"removed": false,
"readOnly": false,
"required": false,
"displayName": "place",
"defaultMatch": false
}
],
"mappingMode": "defineBelow",
"matchingColumns": [],
"attemptToConvertTypes": false,
"convertFieldsToString": false
},
"filters": {
"conditions": [
{
"keyName": "email",
"keyValue": "={{ $json.output.email }}"
}
]
},
"operation": "upsert",
"dataTableId": {
"__rl": true,
"mode": "list",
"value": "WTKp1ogUGN0k0pD6",
"cachedResultUrl": "/projects/xuL3yDGtM7UrPnER/datatables/WTKp1ogUGN0k0pD6",
"cachedResultName": "business cards"
}
},
"typeVersion": 1
},
{
"id": "0b69909c-545f-4c4a-a8f9-84053017e3ee",
"name": "フォーム送信時",
"type": "n8n-nodes-base.formTrigger",
"position": [
128,
592
],
"webhookId": "aaffb314-e319-48c3-8aa0-153af5dc288c",
"parameters": {
"options": {},
"formTitle": "Business card scanner",
"formFields": {
"values": [
{
"fieldType": "file",
"fieldLabel": "business card",
"multipleFiles": false,
"requiredField": true
}
]
},
"formDescription": "Upload a business card (PDF or image)"
},
"typeVersion": 2.3
},
{
"id": "dc7fd4f7-00c7-4443-9f8d-76215a52e1e9",
"name": "データをBase64に変換",
"type": "n8n-nodes-base.extractFromFile",
"position": [
352,
592
],
"parameters": {
"options": {
"keepSource": "both"
},
"operation": "binaryToPropery",
"binaryPropertyName": "Business_card"
},
"typeVersion": 1,
"alwaysOutputData": false
},
{
"id": "80815e01-803d-4315-a608-8edf4eb33dc1",
"name": "JSON パーサー",
"type": "n8n-nodes-base.extractFromFile",
"position": [
816,
592
],
"parameters": {
"options": {},
"operation": "fromJson",
"binaryPropertyName": "ocr_output.json"
},
"typeVersion": 1
},
{
"id": "de28fe50-b376-4b1a-96dc-0bbe856134ce",
"name": "付箋",
"type": "n8n-nodes-base.stickyNote",
"position": [
32,
384
],
"parameters": {
"color": 7,
"height": 400,
"content": "# upload via a web form\npdf, jpg, ...."
},
"typeVersion": 1
},
{
"id": "50f8ae36-5dda-4f6a-86f4-2ea5df1c9fa5",
"name": "付箋1",
"type": "n8n-nodes-base.stickyNote",
"position": [
288,
384
],
"parameters": {
"color": 7,
"width": 656,
"height": 400,
"content": "# OCR via Mistral OCR API\n## [Docs](https://mistral.ai/news/mistral-ocr)"
},
"typeVersion": 1
},
{
"id": "6e66a1c4-cfd0-4dcb-852f-7da5018e43dd",
"name": "付箋2",
"type": "n8n-nodes-base.stickyNote",
"position": [
960,
384
],
"parameters": {
"color": 7,
"width": 496,
"height": 576,
"content": "# Extract the defined content\n## [Setup an openAI API key](hhttps://platform.openai.com/api-keys)"
},
"typeVersion": 1
},
{
"id": "b3f5282d-bab5-4262-a611-5d16a23603db",
"name": "付箋3",
"type": "n8n-nodes-base.stickyNote",
"position": [
1472,
384
],
"parameters": {
"color": 7,
"height": 400,
"content": "# upsert the database\nusing the email address as key criteria\n"
},
"typeVersion": 1
},
{
"id": "8e524da5-74de-4baa-9c77-9e1f16aca300",
"name": "付箋4",
"type": "n8n-nodes-base.stickyNote",
"position": [
-608,
384
],
"parameters": {
"color": 5,
"width": 608,
"height": 400,
"content": "## 🧠 Business Card Scanner\n\nThis workflow automatically extracts contact details from uploaded business card images or PDFs using Mistral OCR and OpenAI GPT-4o-mini, then saves the structured data into an n8n Data Table.\n\nSetup:\n\t1.\tAdd your Mistral API key (HTTP Bearer Auth).\n\t2.\tAdd your OpenAI API key (OpenAI Credentials).\n\t3.\tCreate a Data Table named business_cards with fields for name, company, email, phone, etc.\n\t4.\tEnable the Form Trigger to upload business cards and test the workflow.\n\n✅ Result: business cards are instantly digitized into searchable contact data."
},
"typeVersion": 1
}
],
"active": false,
"pinData": {},
"settings": {
"executionOrder": "v1"
},
"versionId": "8500aaf2-93b2-422e-b574-834b3127b137",
"connections": {
"7249608d-fe26-44c7-b33a-6ca1f6342bcf": {
"main": [
[
{
"node": "c5364bc2-8e0a-4f34-a964-77630cf82d0a",
"type": "main",
"index": 0
}
]
]
},
"80815e01-803d-4315-a608-8edf4eb33dc1": {
"main": [
[
{
"node": "7249608d-fe26-44c7-b33a-6ca1f6342bcf",
"type": "main",
"index": 0
}
]
]
},
"43396e25-a83a-4c6c-87ba-dfedbf932858": {
"ai_memory": [
[
{
"node": "7249608d-fe26-44c7-b33a-6ca1f6342bcf",
"type": "ai_memory",
"index": 0
}
]
]
},
"dc7fd4f7-00c7-4443-9f8d-76215a52e1e9": {
"main": [
[
{
"node": "c333cb6d-8366-419c-bfee-c939485d9122",
"type": "main",
"index": 0
}
]
]
},
"c333cb6d-8366-419c-bfee-c939485d9122": {
"main": [
[
{
"node": "80815e01-803d-4315-a608-8edf4eb33dc1",
"type": "main",
"index": 0
}
]
]
},
"ae9c9a46-f3e4-410b-8ea6-a64121a15f03": {
"ai_languageModel": [
[
{
"node": "7249608d-fe26-44c7-b33a-6ca1f6342bcf",
"type": "ai_languageModel",
"index": 0
}
]
]
},
"0b69909c-545f-4c4a-a8f9-84053017e3ee": {
"main": [
[
{
"node": "dc7fd4f7-00c7-4443-9f8d-76215a52e1e9",
"type": "main",
"index": 0
}
]
]
},
"577cb6d1-2950-4c6a-b967-4e048b766663": {
"ai_outputParser": [
[
{
"node": "7249608d-fe26-44c7-b33a-6ca1f6342bcf",
"type": "ai_outputParser",
"index": 0
}
]
]
}
}
}よくある質問
このワークフローの使い方は?
上記のJSON設定コードをコピーし、n8nインスタンスで新しいワークフローを作成して「JSONからインポート」を選択、設定を貼り付けて認証情報を必要に応じて変更してください。
このワークフローはどんな場面に適していますか?
中級
有料ですか?
このワークフローは完全無料です。ただし、ワークフローで使用するサードパーティサービス(OpenAI APIなど)は別途料金が発生する場合があります。
関連ワークフロー
n8nノードの探索(可視化リファレンスライブラリ内)
n8nノードを可視化リファレンスライブラリで探索
If
Ftp
Set
+
If
Ftp
Set
113 ノードI versus AI
その他
AIベースのWhatsAppサポートボット(Googleスプレッドシートでのチケット作成)
AIベースのWhatsAppサポートボット(Google シートチケット作成)
Set
Xml
Code
+
Set
Xml
Code
35 ノードZain Khan
サポートチャットボット
GPT-4o 技術とニュース感情分析に基づく自動株式分析レポート
GPT-4o技術と感情分析を使用した自動株式分析レポート
Set
Code
Html
+
Set
Code
Html
45 ノードElay Guez
財務
再生リスト詳細設定ボットコピー
Suno、GPT-4、Runway、Creatomate を使って AI 生成の YouTube ミュージックプレイリストを作成
If
Set
Code
+
If
Set
Code
203 ノードJoseph
コンテンツ作成
GPT-4o-mini、Figmaテンプレート、Templatedを使用してブランドLinkedInカルーセルを作成
GPT-4o-mini、Figmaテンプレート、Templatedを使用したブランドLinkedInカルーセル
Set
Wait
Switch
+
Set
Wait
Switch
31 ノードRonalds Palacis
Aarna verse - AI インフルエンサー
GPT-4、Google Sheets、メディア API を使ってインフルエンサーポストを生成
Merge
Filter
Split Out
+
Merge
Filter
Split Out
25 ノードPalak Rathor
コンテンツ作成