批量操作¶
批量操作让您可以在一个任务中创建和分发大量礼品卡,无需逐张发行。
您可以从应用菜单中的 Bulk actions 打开,也可以点击首页上的 Open bulk tools。

四种批量任务¶
Bulk actions 页面有四个标签页:
| 标签页 | 作用 | 适用场景 |
|---|---|---|
| Import from file | 根据 CSV 文件的行创建礼品卡,可使用您自己的代码或系统生成的代码 | 从其他系统迁移卡片,预先加载的实体卡 |
| Generate | 创建一批面值相同、无收件人的代码 | 实体卡计划,由您自行分发的代码 |
| Bulk update | 更改 CSV 文件中列出的现有卡片:余额、有效期、备注、客户、图片,或将其停用 | 添加赠送余额,更正余额 |
| Mass send | 为每个电子邮件地址创建一张卡并发送给该人 | 企业礼品、忠诚度奖励、促销活动 |
批量生成¶
使用此功能可创建一批由您自行分发的礼品卡代码(例如打印出来、放入包装,或交给合作伙伴)。

设置¶
| 字段 | 说明 |
|---|---|
| Generate without import | 仅用于打印的代码,参见下文 |
| Value | 每张卡上加载的余额 |
| Currency | 卡片发行所用的货币。仅当您的 Shopify Markets 启用了多种货币时才会显示,参见其他货币的卡片 |
| Number of gift cards | 要创建的卡片数量,每个任务最多 100,000 张 |
| Prefix | 可选,最多 4 个字符,添加到每个代码的开头 |
| Code length | 8 至 16 个字符。超过 10,000 张卡的批次至少使用 14 个字符,以避免代码重复 |
| Note | 保存在每张卡上的内部备注,客户不可见。它也是 Generate jobs 列表中该任务的名称 |
| Gift cards images | 生成的卡片所使用的图片 |
| Expiration date | No expiration date,或 Set expiration date 并选择日期 |
点击 Start generation 开始任务。
不导入直接生成¶
若代码用于印刷卡片,请勾选 Generate without import。这些代码仅用于打印:不会创建 Shopify 礼品卡,因此暂时无法消费。此模式下 Value、Note 和有效期均处于禁用状态,任务创建后即刻完成。
实体卡到货后,可在 Physical gift cards 标签页中使用 Upload codes 将代码导入 Gift Card Hero,或在每张卡售出时进行登记。参见实体礼品卡。
生成之后¶
从 Generate jobs 列表中打开任务,点击 Download results (csv) 即可获取所有代码。您也可以在列表中选择一个任务,然后点击 Download CSV;或点击 Download PDF,获取可直接打印的文件,每页一张卡片(包括代码及其二维码)。
除非您使用了 Generate without import,否则这些代码会以有效的礼品卡形式在 Shopify 中生效。
批量发送¶
使用 Mass send 标签页可将礼品卡发送给一份名单中的人员。每个电子邮件地址都会获得独立的一张卡,并通过邮件发送到该地址。

选择提供名单的方式:
- Configure manually:手动输入电子邮件地址,并为所有卡片设置统一的面值。
- Import file:上传 CSV 文件,每行对应一张卡。
手动配置¶
| 字段 | 说明 |
|---|---|
| Value | 每张卡的余额;当您的市场启用了多种货币时,会显示货币选择器 |
| Prefix | 可选,最多 4 个字符,添加到每个代码的开头 |
| Code length | 8 至 16 个字符 |
| Message | 给收件人的留言,最多 255 个字符 |
| From | 发送卡片的个人或组织名称,最多 40 个字符 |
| Note | 内部备注,同时也是 Mass send jobs 列表中该任务的名称 |
| Emails | 收件人电子邮件地址,以逗号分隔 |
| Gift cards images | 卡片所使用的图片 |
| Expiration date | No expiration date,或 Set expiration date 并选择日期 |
准备收件人名单¶
使用 Import file 时,请下载模板并为每张卡填写一行:
| 列 | 是否必填 | 说明 |
|---|---|---|
initial_value |
是 | 卡片发行时的金额 |
currency_code |
可选 | 三位货币代码,例如 EUR。留空则使用您店铺的货币。参见其他货币的卡片 |
email |
是 | 卡片发送到的电子邮件地址 |
phone |
可选 | 该人的电话号码,保存在其 Shopify 客户资料中,使其也能收到短信。参见电话号码 |
message |
可选 | 针对每位收件人的个人留言 |
from |
可选 | 随卡片显示的发送人名称 |
note |
可选 | 保存在卡片上的内部备注 |
expires_on |
可选 | YYYY-MM-DD 格式的有效期 |
image |
可选 | 该卡片图片的 https:// 链接,参见每张卡的自定义图片 |
CSV 示例:
initial_value,currency_code,email,phone,message,from,expires_on
50,,jane@example.com,+254712345678,Thank you for your loyalty!,Acme Store,2027-03-15
100,EUR,bob@example.com,,Happy birthday Bob!,Acme Store,
在 Gift cards images 下选择的设计,将用于所有未填写自身 image 的行。点击 Start mass send 开始任务。
定时群发¶
群发可以等待您选择的日期和时间再执行,例如让所有卡片在某个节假日的早晨送达。无论使用 Configure manually 还是 Import file,操作方式都相同。
- 照常填写表单或上传文件。
- 在 Delivery 下,选择 Schedule for later。
- 选择 Send date 和 Send time。时间以您设备所在的时区为准,该时区显示在字段下方。位于其他时区的同事会看到同一时刻,并换算为其当地时间。
- 点击 Schedule mass send。
时间必须在未来,且不超过 365 天后。
任务会立即出现在 Mass send jobs 列表中,其备注下方显示 Scheduled for 及日期和时间,其行数计入 Scheduled 列。此时尚未创建任何礼品卡:它们会在您所选的时间才被创建并发送邮件,不会提前。之后,该任务的运行方式与其他群发任务相同。它会在该时间后约一分钟内开始执行。
若要取消定时群发,请在任务列表中点击 Scheduled for 旁边的 Cancel 并确认。不会创建任何卡片,也不会向任何人发送邮件。在预定时间之前均可取消;任务开始发送后,即无法再取消。如需更改时间或收件人,请取消该任务后重新安排。
定时任务在重复检查中视为正在运行:您不能为同一群发安排两次相同的时间。在不同时间进行的相同群发,或立即发送的群发,均属于单独的任务。
批量更新¶
在 Bulk update 标签页中更改一组现有卡片。适用场景:
- 为一批卡片添加 $10 赠送余额
- 系统故障后更正错误的余额
- 调整有效期、停用卡片,或为其更换新图片
上传包含以下列的 CSV 文件。每行需要 id 或 code 之一:
| 列 | 是否必填 | 说明 |
|---|---|---|
id |
id 或 code |
Shopify 礼品卡 ID |
code |
id 或 code |
完整的礼品卡代码。空格和连字符将被忽略 |
balance |
可选 | 新余额。若使用 + 或 - 前缀,则改为增加或减少余额(例如 +10.00 表示增加 10,-5.00 表示减少 5) |
expires_on |
可选 | YYYY-MM-DD 格式的新有效期 |
note |
可选 | 内部备注。该行的值会替换卡片的备注;若 note 为空或缺失,则会清除备注 |
disabled |
可选 | 填入 1 可停用该卡,此操作无法撤销。留空则保持卡片有效 |
recipient_email |
可选 | 设置卡片的收件人(查找或创建为 Shopify 客户) |
customer_email |
可选 | 设置卡片的客户(查找或创建为 Shopify 客户) |
notify_customer |
可选 | 填入 1、true 或 yes 时,将卡片通过邮件发送给 customer_email 中的客户 |
notify_recipient |
可选 | 填入 1、true 或 yes 时,将卡片通过邮件发送给 recipient_email 中的收件人 |
image |
可选 | 新图片的 https:// 链接。为已存在的卡片更换外观 |
currency_code |
可选 | 仅作核对,不作更改:若卡片的货币不符,则该行失败。卡片的货币永远无法更改 |
code,balance
ABCD-1234-EFGH-5678,75.00
IJKL-9012-MNOP-3456,+10.00
QRST-7890-UVWX-1234,-5.00
注意: 纯数字会将余额设为该数值。带
+或-前缀则会调整当前余额。若卡内余额为 $40,要增加 $10,可将balance设为50.00,或使用+10.00。如果您在电子表格应用中编辑该文件,请在保存时确认+符号仍然保留;否则+10.00会变成10.00,并将余额设为 10。
批量导入¶
在 Import from file 标签页中,导入其他系统中已有的礼品卡。
上传包含以下列的 CSV 文件:
| 列 | 是否必填 | 说明 |
|---|---|---|
initial_value |
是 | 卡片发行时的金额 |
currency_code |
可选 | 三位货币代码,例如 EUR。留空则使用您店铺的货币。参见其他货币的卡片 |
code |
可选 | 礼品卡代码,8 至 20 个字母和数字。空格和连字符将被忽略。若此列为空,则生成 16 位代码 |
expires_on |
可选 | YYYY-MM-DD 格式的有效期 |
note |
可选 | 保存在卡片上的内部备注 |
email |
可选 | 卡片所属的客户(查找或创建为 Shopify 客户)。除非设置了 notify_customer,否则不会发送邮件 |
customer_email |
可选 | 与 email 相同;若两者均已填写,则以此列为准 |
recipient_email |
可选 | 收件人的电子邮件地址(查找或创建为 Shopify 客户) |
phone |
可选 | 保存在收件人的 Shopify 客户资料中的电话号码;若没有 recipient_email,则保存在客户的资料中。参见电话号码 |
notify_customer |
可选 | 填入 1、true 或 yes 时,将卡片通过邮件发送给客户 |
notify_recipient |
可选 | 填入 1、true 或 yes 时,将卡片通过邮件发送给收件人 |
image |
可选 | 该卡片图片的 https:// 链接,参见每张卡的自定义图片 |
步骤¶
- 打开 Import from file 标签页
- 下载模板并填写您的卡片信息
- 上传 CSV 文件,并可选择添加 Import note
- 点击 Start import
其他货币的卡片¶
如果您的店铺通过 Shopify Markets 以多种货币销售,批量任务可以发行任何一种货币的卡片,而不仅限于店铺的默认货币。
- Generate 和 Mass send(Configure manually):在面值字段旁选择货币。只有当您的市场启用了多种货币时,才会显示此选择器。
- Import from file 和 Mass send(Import file):填写
currency_code列,例如EUR。该列为空则表示使用店铺货币。 - Bulk update:卡片的货币无法更改。填写
currency_code仅用于核对卡片是否使用该货币;若该行指定了不同的货币,则会失败,而不会以错误的货币调整余额。
若某行指定的货币未在您的市场中启用,则在上传时会失败,并附上说明及可用货币列表。该行不会创建卡片,其他行则照常处理。
卡片所持有的货币¶
卡片以您所选的货币发行,余额也以该货币保存。购物者能否在其他货币下消费该卡,由 eGift/Physical cards → E-Gift cards 页面中 Enable Shopify Markets support 下的 Cross-currency redemption 决定:
| 设置 | 行为 |
|---|---|
| Shopify 默认值 | 由 Shopify 根据您的店铺和市场设置决定 |
| 仅限卡片自身的货币 | 在任何其他货币下结账时,该卡都会被拒绝 |
| 按您市场的汇率换算 | 使用为该市场配置的汇率 |
| 按即期汇率换算 | 结账时使用标准即期汇率 |
分析¶
仪表板汇总以您店铺的货币显示。其他货币的卡片会在数据卡片上方单独列出,并分别显示各货币的数量和总额。不同货币的金额无法合并为一个总数。参见仪表板与分析。
批量发行的面值,计入卡片创建所在时段的 Added to gift cards 数据卡片。
每张卡的自定义图片¶
导入、Bulk update 和 Mass send 文件可以通过 image 列为每张卡设置独立的图片。
- 在 Shopify 后台中打开 Content → Files,上传您的图片。
- 将鼠标悬停在该文件上,点击 link icon 复制其网址。
- 将网址粘贴到该行的
image列中。
复制得到的链接形如:
https://cdn.shopify.com/s/files/1/0594/1241/4670/files/gift-card-birthday.png?v=1671206648
- 该值必须是以
https://开头的完整网址。http://、协议相对地址(//cdn.shopify.com/...)以及单纯的文件名都会被拒绝,并且该行会在任务的 Results 页面中显示错误而失败。 - 请保留
?v=...后缀;它是 Shopify 提供的链接的一部分。 - 每行的
image会覆盖页面上所选的设计,因此同一文件可以混合使用多种设计。 - 请使用 950 × 550 像素的 PNG/JPG/WebP 图片(与卡片设计的尺寸相同),并保持文件较小,以使邮件保持轻量。
- 生成任务没有 CSV 文件。请改为在 Generate 标签页的 Gift cards images 下选择设计。
如需分步说明,请参见使用批量操作管理礼品卡。
电话号码¶
Mass send 和导入文件可以包含 phone 列。该号码会保存在卡片所属人员的 Shopify 客户资料中:若存在 recipient_email,则为其中的收件人;否则为 email 或 customer_email 中的客户。资料中有号码后,该人即可收到您店铺发来的短信,例如卡片被使用时的兑换通知。
- 请在号码前加上国家代码,例如
+254712345678。没有国家代码的号码将按照您店铺所在国家的号码来解析:对于位于肯尼亚的店铺,0712 345 678、712345678和254712345678都会变为+254712345678。 - 新客户会以该号码创建。已有电话号码的客户会保留原号码,文件中的号码不会被添加。
- 在 Shopify 中,同一店铺里一个电话号码只能属于一位客户。若该号码已属于另一位客户,卡片仍会发送,但不会添加此号码。
- 无效的号码同样不会阻止卡片发送。
若号码未被添加,该行仍会显示 Success,并在结果页面及结果 CSV 的 warning 列中于其下方注明原因。
跟踪结果¶
每个标签页都会在表单下方列出其任务(Import jobs、Generate jobs、Update jobs、Mass send jobs),并显示 Done、In progress 和 Failed 的行数。Mass send jobs 还会在 Scheduled 下统计仍在等待预定时间的行数,参见定时群发。点击任务的备注即可打开其 Results 页面。
结果页面会显示每一行及其状态:
- Success:该行已处理。其下方的备注会说明遗漏了什么内容,例如未被添加的电话号码
- In progress:等待中或正在处理
- Retrying:该行遇到错误,将自动重试
- Failed:该行在重试次数用尽后失败,或在上传时即为无效(例如代码格式错误、图片网址有误)。错误信息会与该行一同显示
- Scheduled:定时群发中的行,等待预定时间
- Canceled:已取消的定时群发中的行
勾选 Autorefresh import jobs,可在任务运行期间使页面持续更新。
结果 CSV¶
在结果页面上点击 Download results (csv)。该 CSV 文件每行对应任务中的一行,包含其字段(代码、面值、货币、电子邮件、备注等),以及以下列:
status:done / in progress / failed,或定时群发的 scheduled / cancelederrors:该行失败时的错误信息warning:成功的行中被遗漏的内容,例如未被添加的电话号码qr_identifier:该代码的 Shopify 礼品卡二维码所编码的文本(shopify-giftcard-v1-后接大写的代码),用于在实体卡上打印二维码
限制与性能¶
| 限制 | 数值 |
|---|---|
| 每个 Generate 任务的最大卡片数 | 100,000 |
| CSV 文件最大大小 | 5 MB |
任务在后台运行,因此无需保持浏览器打开。无法启动与仍在运行的任务完全相同的任务(相同的文件,或相同的 Generate 或 Mass send 设置);请等待第一个任务完成。定时群发在发送或取消之前,均视为正在运行。