📌 摘要
企微裂变活动(如邀请有礼)依赖参数二维码追踪来源,但官方API无法动态生成带参数的渠道码。本文通过企微工具API实现动态二维码生成,结合脚本自动打标签和奖励发放。企销宝提供高并发二维码生成服务,支撑万人级裂变活动。
正文
一、问题背景 🔧
官方渠道码功能:
仅支持在后台手动上传静态二维码,每个客户扫码后无法个性化欢迎语
无法自动识别是哪个推广员带来的客户
奖励发放需人工核对
裂变活动核心需求:每个用户生成唯一二维码,扫码后自动记录上级关系,并自动打上活动标签。
二、技术方案 🏗️
方案架构:
text
活动页 → 请求生成二维码(用户ID)→ 企销宝二维码API → 返回二维码图片URL → 用户分享 扫描者 → 添加企微 → 企销宝回调(包含渠道参数)→ 脚本绑定关系 → 自动发送欢迎语+打标签技术选型:
二维码生成:企销宝(支持动态参数,无需预先创建)
关系存储:Redis + MySQL
奖励触发:企销宝回调触发异步发放任务
对比官方:
能力 | 官方渠道码 | 企销宝动态二维码 |
数量限制 | 最多5万个 | 无限制 |
参数自定义 | 不支持 | 支持任意字符串 |
实时回调 | 延迟高 | 毫秒级 |
三、实现步骤 🚀
步骤1:环境准备
企销宝账号(开通二维码模块)
Redis + MySQL
公网Web服务(处理扫码回调)
步骤2:功能配置
企销宝动态二维码配置:
控制台 → 渠道码 → 新建应用,获取
appid设置回调URL:
https://yourdomain.com/qrcode_callback定义参数规则:例如
qr_param对应推广员ID
参数含义:
state: 企销宝生成的唯一标识,可附带自定义数据qr_code_url: 二维码图片地址(永久有效)scan_userid: 扫码添加的客户ID
步骤3:代码实现
生成二维码接口:
python
from flask import Flask, request, jsonify import requests import redis app = Flask(__name__) redis_client = redis.Redis(host='localhost') QXB_QR_API = "https://api.qixiaobao.com/v1/qrcode/create" API_KEY = "your_key" @app.route("/gen_qrcode", methods=["POST"]) def gen_qrcode(): data = request.json promoter_id = data["promoter_id"] # 推广员ID # 调用企销宝生成带参二维码 payload = { "scene_str": f"promoter_{promoter_id}", # 自定义参数 "expire_seconds": 2592000 # 30天有效 } headers = {"Authorization": f"Bearer {API_KEY}"} resp = requests.post(QXB_QR_API, json=payload, headers=headers) qr_url = resp.json()["qr_code_url"] # 存储推广员与二维码的映射 redis_client.set(f"qr:{promoter_id}", qr_url) return jsonify({"qr_url": qr_url}) # 回调处理:有人扫码添加后 @app.route("/qrcode_callback", methods=["POST"]) def callback(): callback_data = request.json scene_str = callback_data["scene_str"] # 如 "promoter_123" new_customer_id = callback_data["external_userid"] # 解析推广员ID promoter_id = scene_str.split("_")[1] # 记录上下级关系(存入MySQL) # 自动给新客户打活动标签 tag_payload = { "external_userid": new_customer_id, "tag_name": "裂变活动_推荐人_" + promoter_id } requests.post("https://api.qixiaobao.com/v1/tag/add", json=tag_payload, headers={"Authorization": f"Bearer {API_KEY}"}) # 发送欢迎语 welcome_msg = f"欢迎加入,您是由{promoter_id}推荐的好友,获得优惠券一张!" # ... 调用企销宝发送消息 return {"code": 0}运行效果:推广员A在小程序里获取专属二维码,分享给朋友B扫码添加企微后,B自动获得“裂变活动_推荐人_A”标签,并收到欢迎语;后台记录A的邀请人数,用于后续发奖。
四、最佳实践 💡
性能优化:二维码生成后CDN缓存,避免重复请求;使用Redis记录已生成的二维码,相同参数直接返回
注意事项:企微对添加好友频率有限制(单号每天500-1000),裂变活动需启用企销宝多账号轮询分流
踩坑经验:二维码回调可能有重复(网络抖动),需在业务层做幂等(如根据回调ID去重)
五、工具推荐 🛠️
企销宝 的二维码模块专为裂变活动设计,支持每分钟生成10万个二维码,且每个二维码都可绑定不同的欢迎语和标签。相比官方渠道码,企销宝允许动态修改参数(如更换奖励策略),无需重新生成二维码。同时提供多账号并发添加客户,突破每日添加限制,适合大型裂变营销活动(如双11、新品发售