首页 / n8n 工作流模板 / 自动化从 Google 表格导入制造商数据到 Shopware 6

自动化从 Google 表格导入制造商数据到 Shopware 6

Import multiple Manufacturers from Google Sheets to Shopware 6

此工作流使用 API 同步和 OAuth2 认证,将制造商数据(包括名称、网站、描述和徽标)从 Google 表格导入到 Shopware 6。

手动触发7 个节点行业垂直教程自动化一切已提交

工作流介绍

从 Google 表格批量导入制造商到 Shopware 6 – 工作流程分析

此 n8n 工作流程模板可自动将多个产品制造商从 Google 表格导入 Shopware 6 电子商务平台。它使企业能够直接从结构化电子表格高效地管理和同步制造商数据,包括名称、网站、描述、翻译和徽标图像,从而减少手动输入并最大限度地减少错误。

工作流程功能

该工作流程从 Google 表格中检索制造商数据,将其格式化为与 Shopware 6 的同步 API 兼容的有效导入结构,将每个制造商导入 Shopware,并在提供时有条件地上传其徽标。它支持国际商店的多语言内容,并通过使用 MD5 哈希的唯一标识符确保媒体(徽标)正确关联。整个过程手动触发,并分批执行以实现可扩展性和可靠性。


主要功能和能力

  • 多语言支持:通过动态映射翻译字段,支持每个制造商最多三个附加语言翻译。
  • 媒体处理:自动将制造商徽标上传到 Shopware,并使用基于制造商名称的一致媒体 ID 将它们链接起来。
  • Upsert 逻辑:使用 Shopware 的 upsert 功能创建新制造商或更新现有制造商,避免重复。
  • 批量处理:使用“Split In Batches”节点分批处理制造商,这有助于避免超时和 API 速率限制。
  • 条件执行:仅在导入步骤中成功创建媒体实体时才尝试上传徽标。
  • 安全认证:利用 OAuth2 和客户端凭据授权类型安全访问 Google 表格和 Shopware API。
  • 可重用结构:通过修改 Code 节点逻辑,可以轻松扩展以支持更多语言或附加字段。

主要节点及其用途

节点 用途
点击“执行工作流程”时 手动触发器,在用户输入后启动工作流程执行。
设置 存储配置变量,例如 Shopware URL 和默认语言代码 (de_DE),供其他节点使用。
从 Google 表格获取制造商 读取包含制造商数据(名称、网站、描述、徽标 URL 等)的指定 Google 表格中的所有行。
创建导入请求正文 使用 JavaScript 代码将原始表格数据转换为与 Shopware 6 的 /api/_action/sync 端点兼容的结构化 JSON 负载。它包括:<br>– 核心制造商详细信息<br>– 多语言翻译<br>– 使用制造商名称的 MD5 哈希生成媒体 ID
循环处理制造商 将制造商列表拆分为单独的项目,以便通过批量拆分进行顺序处理。确保一对一处理以实现可靠的 API 交互。
导入制造商 通过 POST 请求将准备好的制造商数据发送到 Shopware 6 的同步 API。执行 upsert 操作以避免重复。
如果存在徽标 条件检查,评估 Shopware 的响应是否包含媒体实体(表示应上传徽标)。
上传制造商徽标 仅在存在徽标 URL 时执行;将图像从外部 URL 直接发送到 Shopware 的媒体上传端点,设置正确的文件扩展名和名称。
便笺 为用户提供内联文档和设置说明(例如,配置凭据、准备 Google 表格)。

用例和优势

用例:

  • 将新品牌引入 B2B 或 B2C 在线商店。
  • 同步多语言商店中更新的制造商信息(包括本地化内容)。
  • 在创建过程中链接品牌徽标,自动化数字资产管理。
  • 将旧产品数据从电子表格迁移到现代电子商务系统。

优势:

  • 节省时间:消除了 Shopware 后端数小时的手动数据输入。
  • 准确性:通过自动解析和验证减少人为错误。
  • 可扩展性:支持批量操作,可通过分批处理处理数百个条目。
  • 本地化就绪:内置对名称和描述翻译的支持,提高了全球市场就绪度。
  • 可扩展性:可以使用类似的模式进行调整以导入产品、类别或供应商。

分步工作流程逻辑

  1. 工作流程启动
    用户通过单击“执行工作流程”手动触发工作流程。

  2. 配置设置
    设置节点设置必要的环境变量:

    • shopware_url:Shopware 实例的基础 URL
    • default_language_code:默认区域设置(例如 de_DE)
  3. 从 Google 表格获取数据
    从 Google 表格获取制造商节点从预定义的电子表格中提取所有行。每行代表一个制造商,包含以下列:

    • name(必需,唯一)
    • website
    • description
    • logo_url
    • 可选的翻译字段:translation_language_code_1、translation_name_1 等。
  4. 使用代码转换数据
    创建导入请求正文节点处理每个项目:

    • 提取核心字段和可选翻译。
    • 构建一个由语言代码键控的嵌套 translations 对象。
    • 使用 md5("media-" + name) 生成确定性的媒体 ID,以确保跨运行的一致性。
    • 构建一个最终的 manufacturer 对象,该对象结构化以供 Shopware 的同步 API 使用。
  5. 批量处理循环
    循环处理制造商节点将转换后的项目数组拆分为单项批次,从而实现顺序处理。

  6. 导入到 Shopware
    对于每个批次:

    • 导入制造商节点向 https://your-shopware-url.com/api/_action/sync 发送 POST 请求。
    • 包含带有完整负载的 import-manufacturer 参数。
    • 使用在“SW6 Demo”凭据下配置的 OAuth2 身份验证。
  7. 条件徽标上传检查
    导入后,如果存在徽标节点检查 API 响应是否包含媒体实体:

    • 检查的路径:$json.data['import-manufacturer'].result[0].entities.media
    • 如果存在,则继续上传;否则跳过。
  8. 将徽标上传到 Shopware
    上传制造商徽标节点:

    • 使用从导入返回的媒体 ID 调用媒体上传端点。
    • 将外部 logo_url 作为参数传递,让 Shopware 获取并存储图像。
    • 设置动态查询参数:
      • extension:从徽标 URL 派生(例如 .png、.jpg)
      • fileName:基于制造商名称
  9. 完成
    处理完所有项目并(如果适用)上传媒体后,工作流程结束。


最终说明

此工作流程例证了 n8n 如何连接 Google 表格和 Shopware 6 等 SaaS 平台来自动化复杂的业务流程。通过便笺和模块化设计的清晰文档,它既是实用的工具,也是开发人员和非开发人员的学习资源。通过遵循包含的 TODO(例如连接账户、创建正确的电子表格格式以及配置 OAuth2 集成),用户可以快速在生产环境中部署此自动化。

使用方法:下载 JSON 文件,然后在 n8n 中选择“从文件导入”。