# Sesami Flows 和 Omnisend

将 Sesami 与 Omnisend 集成，为您的预订业务提供强大的电子邮件和短信营销支持。

## 什么是 Omnisend？

Omnisend 是一个营销自动化平台，专注于为电商企业提供电子邮件和短信营销。它提供一套工具和功能，旨在帮助电商企业与客户互动、提升销售额，并提高整体营销效率。

## 为什么要将 Sesami 与 Omnisend 集成？

您可以通过将 Sesami 事件数据导入 Omnisend，并通过 Omnisend 触发所有通讯（电子邮件或短信），来简化所有面向客户的互动。对于许多已经使用 Omnisend 发送订单确认、短信营销消息及其他通讯的企业来说，通过 Omnisend 发送预订确认和预约提醒也能打造统一的客户体验。

### 常见使用场景

**电子邮件和短信工作流：**

* 预约确认流程
* 预约改期流程
* 预约取消流程
* 预约提醒流程（提前 24 小时，或自定义时间）
* 预约完成流程

## 工作原理

Sesami 使用 **Sesami Flows** 将预订事件实时发送到 Omnisend。当预约被创建、重新安排、取消或完成时，Sesami 会通过 webhook 将该事件数据推送到您在 Omnisend 中创建的自定义事件。随后，您可以在 Omnisend 中创建工作流，根据这些自定义事件触发电子邮件或短信消息。

### 数据流转过程

1. 客户在 Sesami 中预订预约
2. Sesami Flow 通过 webhook 触发并将事件数据发送到 Omnisend
3. Omnisend 将该事件作为自定义事件接收（例如，“Appointment Created”）
4. Omnisend 工作流根据该事件触发
5. 客户收到包含预约详情的电子邮件或短信

## 设置说明

### 第 1 部分：设置 Omnisend

#### 步骤 1：安装并连接 Omnisend

1. 安装 **Omnisend 应用** 来自 Shopify 应用商店
2. 按照应用的设置步骤连接您的商店
3. 完成 Omnisend 的入门流程

#### 步骤 2：创建 API 密钥（KPI 密钥）

1. 在 Omnisend 中，点击您的 **个人资料标签**
2. 前往 **商店设置**
3. 点击 **API 密钥** 标签
4. 点击 **创建私有 API 密钥**
5. 将其命名为“Sesami Integration”（或类似名称）
6. 配置权限——请选择以下内容：
   * **Campaigns** - 允许下载报告、收件人列表
   * **Contacts** - 允许创建、编辑、下载、删除订阅者
   * **订单** - 允许创建、编辑、下载、删除订单
   * **产品** - 允许创建、编辑、下载、删除产品
   * **Carts** - 允许创建、编辑、下载、删除购物车
   * **活动** - 允许获取和触发自定义事件（**必需**)
7. 复制生成的 API 密钥并妥善保存

{% hint style="warning" %}
**重要**：您需要为每种唯一事件类型单独使用一个 API 密钥（预约创建、重新安排、取消等）。
{% endhint %}

了解更多详情，请查看 [Omnisend API 文档](https://api-docs.omnisend.com/).

#### 步骤 3：在 Omnisend 中创建自定义事件

针对您想跟踪的每种预约事件类型，创建一个自定义事件：

1. 在 Omnisend 中，进入 **商店设置 > 自定义事件**
2. 点击 **创建自定义事件**
3. 配置该事件：
   * **事件名称**：选择一个具有描述性的名称（例如，“Appointment Created”、“Appointment Rescheduled”）
   * **系统名称**：这将根据事件名称自动生成
   * **事件自定义字段**：定义您希望在电子邮件/短信中使用的预订属性：
     * `CustomerName` - 客户姓名
     * `ServiceName` - 预订服务名称
     * `DateTimeInCustomerTimezone` - 预约日期/时间
     * `CustomerManagementLink` - 客户管理预订的链接
     * `AppointmentID` - 唯一预约标识符
     * `TeamMember` - 分配的员工姓名
     * 如需要可添加其他字段
4. 添加客户 **电子邮件** 和 **电话** 字段（发送消息所必需）
5. 保存自定义事件
6. **复制事件 ID** - 您在 Sesami Flow 的 webhook URL 中会用到它

{% hint style="info" %}
对您要跟踪的每种事件类型重复此流程（创建、重新安排、取消、完成、提醒）。
{% endhint %}

详细说明请参见 [Omnisend 的自定义事件文档](https://support.omnisend.com/en/articles/6791819-custom-events).

### 第 2 部分：配置 Sesami Flows

#### 步骤 1：在 Sesami 中创建 Flow

1. 打开 **Sesami** 在你的 Shopify 后台中
2. 前往 **设置 > Flows**
3. 点击 **创建 Flow**

#### 步骤 2：配置 Flow 触发器

1. 选择您的触发事件：
   * 预约创建
   * 预约重新安排
   * 预约取消
   * 预约完成
   * 基于时间的提醒（例如，预约前 24 小时）
2. 如需要，配置任何其他条件

#### 步骤 3：添加 Webhook 操作

1. 将 **操作** 类型设置为 **Webhook**
2. 配置 webhook：
   * **目标 URL**: `https://api.omnisend.com/v3/events/[EVENT_ID]`
     * 将 `[EVENT_ID]` 替换为您从 Omnisend 复制的事件 ID
   * **当**：设置为“立即”（或为提醒配置时间）

#### 步骤 4：配置 webhook 请求头

在 webhook Headers 部分添加：

```json
{
  "Content-Type": "application/json",
  "X-API-KEY": "YOUR_OMNISEND_API_KEY"
}
```

将 `YOUR_OMNISEND_API_KEY` 替换为您在 Omnisend 中创建的实际 API 密钥。

#### 步骤 5：配置 webhook 请求体

在 webhook Body 部分，将 Sesami 预订数据映射到您的 Omnisend 自定义字段：

```json
{
  "fields": {
    "CustomerName": "{{CustomerName}}",
    "ServiceName": "{{ServiceName}}",
    "DateTimeInCustomerTimezone": "{{DateTimeInCustomerTimezone}}",
    "CustomerManagementLink": "{{CustomerManagementLink}}",
    "AppointmentID": "{{AppointmentID}}",
    "TeamMember": "{{TeamMember}}"
  },
  "email": "{{CustomerEmail}}",
  "phone": "{{CustomerPhone}}"
}
```

{% hint style="info" %}
中的字段名称 `"fields"` 必须与您在 Omnisend 自定义事件中定义的自定义字段完全一致。
{% endhint %}

#### 步骤 6：保存并启用 Flow

1. 为您的 Flow 起一个描述性名称（例如，“Omnisend - Appointment Created”）
2. **保存** Flow
3. 启用 Flow

对每种要发送到 Omnisend 的事件类型重复步骤 1-6。

### 第 3 部分：在 Omnisend 中创建工作流

#### 步骤 1：创建自定义工作流

1. 登录 **Omnisend**
2. 前往 **自动化 > 工作流**
3. 点击 **新工作流**
4. 选择 **创建自定义工作流**

#### 步骤 2：配置触发器

1. 在触发器中，选择您的自定义事件（例如，“Appointment Created”）
2. 每当 Sesami 向该事件发送数据时，工作流都会触发

#### 步骤 3：添加电子邮件或短信操作

1. 点击 **添加操作** 到工作流中
2. 选择 **电子邮件** 或 **短信**
3. 设计您的消息模板

#### 步骤 4：在模板中使用自定义字段

编辑电子邮件或短信内容时，您可以使用自定义字段语法访问预订属性：

* `[[custom_event.CustomerName]]` - 客户姓名
* `[[custom_event.ServiceName]]` - 服务名称
* `[[custom_event.DateTimeInCustomerTimezone]]` - 预约日期/时间
* `[[custom_event.CustomerManagementLink]]` - 预订管理链接
* `[[custom_event.TeamMember]]` - 分配的团队成员

#### 步骤 5：配置其他工作流设置

1. 将 **频率** 规则（例如，“不要对已进入此自动化流程的联系人重新触发工作流”）
2. 添加 **退出条件** 如需要
3. 配置任何时间延迟或条件分支

#### 步骤 6：激活工作流

当您设计并测试好工作流后，点击 **启用** 使其上线。

## 测试您的集成

在正式上线之前，请测试集成：

1. 在 Sesami 中创建一个测试预约
2. 确认该事件出现在 Omnisend 的 **商店设置 > 自定义事件** 中（查看事件活动）
3. 验证所有预约属性是否正确填充
4. 测试您的 Omnisend 工作流，确保电子邮件/短信正确发送
5. 检查内容，确保所有自定义字段都正确显示

{% hint style="success" %}
**专业提示**：创建一个测试客户的电子邮件地址和电话号码，然后进行测试预订，以便在为正式客户启用工作流之前验证完整的客户体验。
{% endhint %}

## 常见问题

<details>

<summary>我是否需要为每种事件类型单独使用一个 API 密钥？</summary>

是的，Omnisend 要求您为创建的每个自定义事件使用唯一的 API 密钥。这意味着如果您要跟踪预约创建、重新安排和取消事件，您将需要三个单独的 API 密钥。

</details>

<details>

<summary>我可以同时使用 Omnisend 发送短信和电子邮件吗？</summary>

可以！Omnisend 同时支持电子邮件和短信。请确保您：

* 在您的 webhook 请求体中包含 `电话` 字段
* 已在您的 Omnisend 账户中启用短信
* 已在获得适当同意的情况下收集客户电话号码
* 在您的 Omnisend 工作流中配置短信操作

了解更多详情，请参见 [Omnisend 的短信文档](https://support.omnisend.com/en/articles/1061873-sms-in-campaigns).

</details>

<details>

<summary>如果我需要多个提醒工作流怎么办？</summary>

您可以在 Sesami 中创建多个提醒 Flow，每个 Flow 的时间设置都不同：

* 预约前 7 天
* 预约前 24 小时
* 预约前 2 小时

每个 Flow 都可以发送到同一个 Omnisend 自定义事件，或者您也可以为不同的提醒时间创建单独的自定义事件。

</details>

<details>

<summary>事件没有显示在 Omnisend 中。我该检查什么？</summary>

* 验证您的 Omnisend API 密钥是否正确，并且已启用“Events”权限
* 确保 webhook URL 中的 Event ID 与您的自定义事件匹配
* 检查 Flow 是否已在 Sesami 中启用
* 确认在设置 Flow 后您已进行了测试预订
* 查看 Sesami Flow 日志，确认 webhook 是否已成功发送
* 检查 Omnisend 中的自定义事件活动（商店设置 > 自定义事件）
* 确保 webhook 请求体中包含所有必需字段（电子邮件或电话）

</details>

<details>

<summary>我可以为不同语言使用翻译吗？</summary>

可以！Omnisend 支持营销活动和自动化电子邮件的翻译。您可以根据客户语言偏好创建本地化版本的工作流。请参见 [Omnisend 的翻译文档](https://support.omnisend.com/en/articles/1061898-translations-for-campaigns-and-automated-emails).

</details>

## 相关

* [Sesami Flows](/zh-cn/zi-dong-hua/sesami-flows.md) - Sesami 自动化系统概览
* [电子邮件和 Webhook 操作](/zh-cn/zi-dong-hua/email-and-webhook-as-action-types.md) - 理解操作类型
* [Sesami Flows 和 Klaviyo](/zh-cn/zi-dong-hua/sesami-flows-and-klaviyo.md) - 替代 ESP 集成
* [通知邮件](/zh-cn/tong-zhi/notification-emails.md) - 默认 Sesami 通知系统


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://help.sesami.co/zh-cn/zi-dong-hua/sesami-flows-and-omnisend.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
