自动化运营可以有效提升效率和用户体验。优惠券是促进销售的重要工具,通过WooCommerce的REST API接口,自动生成和管理优惠券,可以大大节省运营时间,快速响应用户需求。下面介绍具体实现方法。
一、为什么要使用 API 自动生成优惠券?
传统方式依赖后台手动创建优惠券,不仅效率低下,而且不能实现个性化与自动化投放。通过 API,可以:
实现注册即送券、复购返券等自动化营销策略
打通外部系统(如CRM、ERP、营销自动化平台)
根据用户行为动态生成优惠券(如弃单挽回、购物节专属券)
批量创建并分发个性化优惠码
二、WooCommerce REST API 简介
WooCommerce 的 REST API 允许开发者对产品、订单、客户、优惠券等核心资源进行操作。我们重点关注的 Endpoint 为:
POST /wp-json/wc/v3/coupons
借助这个接口,可以用编程方式设置优惠券信息并实现自动创建,不用手动操作后台。
三、准备工作:API 权限与环境配置
开启 WooCommerce REST API后台 → WooCommerce → 设置 → 高级 → REST API → 添加密钥
设置权限为“读取/写入”,复制生成的 Consumer Key 和 Secret
配置 API 客户端
推荐使用 WooCommerce 官方的 PHP SDK,也可以使用 Postman 或原生 cURL 请求进行测试。
四、PHP 示例:自动生成优惠券
下面是一个用 PHP 自动创建 10% 折扣优惠券的实战例子:
打开 WordPress 后台 → 外观 → 主题文件编辑器
编辑你当前子主题的 functions.php 文件
在文件底部添加以下内容:add_action(‘init’, ‘create_coupon_once_for_test’);
function create_coupon_once_for_test() {
if (!is_admin() && !isset($_GET[‘create_coupon’])) {
return;
}
$api_url = ‘https://yourstore.com/wp-json/wc/v3/coupons’; // 替换为你的网站地址
$consumer_key = ‘ck_XXXXXXXXXXXXXXXXXXXXXXXX’; // 替换为你的API Key
$consumer_secret = ‘cs_XXXXXXXXXXXXXXXXXXXXXXXX’; // 替换为你的API Secret
$coupon_code = ‘AUTOCOUPON-‘ . time(); // 确保唯一
$coupon_data = [
‘code’ => $coupon_code,
‘discount_type’ => ‘percent’,
‘amount’ => ’10’,
‘individual_use’ => true,
‘usage_limit’ => 1,
‘expiry_date’ => date(‘Y-m-d’, strtotime(‘+7 days’)),
‘description’ => ‘自动创建的优惠券’
];
$response = wp_remote_post($api_url, [
‘headers’ => [
‘Authorization’ => ‘Basic ‘ . base64_encode($consumer_key . ‘:’ . $consumer_secret),
‘Content-Type’ => ‘application/json’,
],
‘body’ => json_encode($coupon_data),
‘timeout’ => 15,
]);
if (is_wp_error($response)) {
error_log(‘优惠券创建失败:’ . $response->get_error_message());
} else {
error_log(‘优惠券创建成功:’ . $coupon_code);
}
}
五、典型场景应用
场景触发方式优惠策略示例新用户注册注册成功事件发送欢迎券,限时有效弃单回流放入购物车没有结账超过24h自动发券引导结账节日促销定时任务批量生成批量发放节日专属优惠券VIP 用户激励CRM 识别用户等级发放高折扣限量券
六、常见字段说明
字段名含义示例值code优惠码,需唯一SUMMER2025discount_type折扣类型:percent / fixed_cart / fixed_productpercentamount折扣值10(即10%)usage_limit限制使用次数1expiry_date过期时间(Y-m-d 格式)2025-07-10
七、实用技巧与注意事项
避免重复 code:使用用户 ID、时间戳等方式动态生成唯一值。
限制使用场景:结合产品 ID、用户角色限制优惠券适用范围。
结合 Webhook 使用:自动创建后立即通过 Webhook 触发邮件、短信通知。
与其他营销系统打通:可以接入 Mailchimp、Sendinblue 等发送平台。
总结
WooCommerce 的 REST API 可以轻松实现优惠券自动发放和管理,让营销活动更高效。开发者只需要调用接口,就可以根据用户行为或会员等级自动发送优惠券,实现个性化促销,节省人工操作成本。