# 二维码生成和识别:扫码支付与营销推广场景集成
> 接口/接入点:二维码生成和识别(apiCode=887,生成 887-1 / 识别 887-2~4)· 是否免费:是 · 返回格式:JSON · 适用人群:电商、零售、市场运营 · 阅读时间:约 5 分钟
## 核心要点
- 支付码/营销海报 = 把支付链接或活动落地页编进 `content` 生成二维码。
- 识别接入点可用于"扫码核销/回查",形成"生成→展示→识别"闭环。
- 生成图 12h 清理,长期投放物料需落盘(见[保存策略](https://www.showapi.com/guides/qrcode-save-strategy-887))。
## Why:支付与营销为什么离不开二维码
线下收款、活动拉新、公众号涨粉,本质都是"一段链接变成可扫的码"。本接口免费、即时出码,适合快速搭建或验证这类场景。
## What:两套闭环
| 场景 | 流程 | 用到 |
|------|------|------|
| 扫码支付 | 支付链接 → 生成码 → 用户扫码付款 | 887-1 生成 |
| 营销海报 | 活动落地页 → 生成码 → 印刷/分享 | 887-1 生成 |
| 扫码核销 | 用户出示码 → 识别 → 校验 | 887-2/3/4 识别 |
## How:生成支付/活动二维码
```python
import requests
def make_qr(payload_url, size="8"):
resp = requests.post(
"https://route.showapi.com/887-1",
params={"appKey": "YOUR_APPKEY"},
data={"content": payload_url, "size": size, "imgExtName": "png"},
timeout=10,
)
body = resp.json()["showapi_res_body"]
if body.get("ret_code") != "0":
raise RuntimeError(body.get("msg"))
return body["imgUrl"]
pay_url = "https://pay.example.com/order?no=ORDER123"
print("支付二维码:", make_qr(pay_url))
```
```bash
curl -X POST "https://route.showapi.com/887-1?appKey=YOUR_APPKEY" \
-H "content-type: application/x-www-form-urlencoded" \
-d "content=https%3A%2F%2Fpay.example.com%2Forder%3Fno%3DORDER123&size=8&imgExtName=png"
```
### 识别核销(用户出示码 → 识别回查)
```python
import requests
# 用户码图片已上传,用 887-2 识别
resp = requests.post("https://route.showapi.com/887-2",
params={"appKey": "YOUR_APPKEY"},
files={"img": open("user_qr.png", "rb")}, timeout=10)
body = resp.json()["showapi_res_body"]
if body.get("ret_code") == "0":
print("核销内容:", body["retText"]) # 即当时生成的 content
```
## 进阶 / 边界
- **落地页稳定**:二维码只是编码,扫出来跳哪取决于 `content` 里的链接,落地页需长期可用。
- **物料保存**:印刷/长期投放前务必把 `imgUrl` 下载到自有 CDN,避免 12h 后失效。
- **短链可选**:content 过长可先用短链服务压缩,再生成更小的码(见[size 指南](https://www.showapi.com/guides/qrcode-size-guide-887))。
## FAQ
**Q1:能直接生成微信/支付宝收款码吗?**
A:把对应收款链接作为 `content` 即可生成;具体收款链接规则由你的支付平台决定。
**Q2:海报印刷前要注意什么?**
A:生成后下载图片到自有存储,12h 内 ShowAPI 会清理原图。
**Q3:识别能区分不同活动吗?**
A:识别只返回 `content` 原文,活动区分在你的业务系统(按 content 解析)。
**Q4:免费档位够活动用吗?**
A:视调用量;大活动前评估并兑换档位(见[档位说明](https://www.showapi.com/free-api))。
## 相关能力 / 下一步阅读
- [二维码生成和识别:三种识别方式怎么选(上传 / 图片地址 / Base64)](https://www.showapi.com/guides/qrcode-recognition-compare-887)
- [二维码生成和识别:产品溯源与线上点餐场景集成](https://www.showapi.com/guides/qrcode-trace-scene-887)
- [二维码生成和识别:5 分钟接入,从注册到生成第一个二维码](https://www.showapi.com/guides/qrcode-quickstart-887)
- **本系列共 12 篇**:查看[二维码生成和识别指南总目录](https://www.showapi.com/guides/qrcode-guides-887)