用途:该技能用于筛选流失客户——即至少下过一单、但在可配置时间窗口内未再次购买的客户,并为其打标签以便再营销。它可替代邮件营销应用中的 winback 自动化分群,只负责 Shopify 原生数据层;发送再营销邮件仍需外部工具。
前提条件:已认证的 Shopify CLI 会话,使用 shopify auth login --store <domain>;API 权限范围为 read_customers、write_customers。
参数:store(必填,店铺域名)、format(human 或 json)、dry_run(预览不实际打标签)、inactive_days(默认 90,距最后订单的天数)、min_orders(默认 1,最低历史订单数)、tag(默认 win-back,应用的标签)、max_customers(默认 500,单次最多处理客户数)。
主要能力与流程:通过 customers 查询按 last_order_date 与 orders_count 过滤,分页拉取客户对象(含 id、email、姓名、订单数、最后下单时间与金额);再通过 tagsAdd 变更为每个客户添加标签,并收集 userErrors。GraphQL 操作基于 api_version 2025-01 校验。
输出:生成 CSV 文件 winback_<YYYY-MM-DD>.csv,列包括 customer_id、email、first_name、last_name、orders_count、last_order_date、tag_applied。json 格式时输出含 lapsed_found、customers_tagged、errors、output_file 的结果。运行过程中需输出会话追踪信息,dry_run 为 true 时变更步骤加 [DRY RUN] 前缀且不执行。
错误处理:THROTTLED 时等待 2 秒并最多重试 3 次;tagsAdd 出现 userErrors 时记录、跳过并继续。
最佳实践:使用带日期的标签(如 win-back-2026-04)追踪每月目标人群并避免重复打标;设置 min_orders: 2 聚焦有真实购买关系的客户;先以 dry_run: true 验证流失客户数量再实际打标。
限制:仅处理 Shopify 数据层,不负责发送邮件;每次处理量受 max_customers 限制;API 有速率限制。