Skip to content
Back to skills

Douyinpay Payment Integration

ASecurity

抖音支付(DouyinPay)端到端接入集成助手。提供支付产品选型、前置准备引导、 服务端SDK集成(Go/Java/PHP)、签名验签、代码生成与接入质量校验的全流程支持。 覆盖 APP支付、JSAPI支付、H5支付、Native支付等核心支付产品, 以及退款、账单、回调通知、证书管理、错误码排查等配套能力。 当用户提到"抖音支付"、"DouyinPay"、"抖音Pay"、"抖音支付商家平台", 或涉及抖音支付官方域名 pay.douyinpay.com,api.douyinpay.com 或涉及抖音支付的接入集成、接口调用、SDK使用、代码示例、参数说明、 支付流程、域名配置等场景时,使用此 Skill。

  • 6 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added November 7, 2026
ai-agentsgojavaphpbashgitapi

Works with

  • cli
  • api

Security analysis

A100/100

Pro scans all 7 files and shows the line behind each finding

Scanned November 7, 2026

npx -y skills add MuLiuSaMa/MeowCode --skill douyinpay-payment-integration --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Douyinpay Payment Integration?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Douyinpay Payment Integration
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/muliusama-douyinpay-payment-integration/badge)](https://www.skillsdirectory.com/skills/muliusama-douyinpay-payment-integration)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: douyinpay-payment-integration
description: >-
  抖音支付(DouyinPay)端到端接入集成助手。提供支付产品选型、前置准备引导、
  服务端SDK集成(Go/Java/PHP)、签名验签、代码生成与接入质量校验的全流程支持。
  覆盖 APP支付、JSAPI支付、H5支付、Native支付等核心支付产品,
  以及退款、账单、回调通知、证书管理、错误码排查等配套能力。
  当用户提到"抖音支付"、"DouyinPay"、"抖音Pay"、"抖音支付商家平台",
  或涉及抖音支付官方域名 pay.douyinpay.com,api.douyinpay.com
  或涉及抖音支付的接入集成、接口调用、SDK使用、代码示例、参数说明、
  支付流程、域名配置等场景时,使用此 Skill。
---

# 1 工具

以下是本skill提供的基础工具,你可以在适当的时候调用单一、多个工具的组合 或 多轮调用,最终完成用户的诉求。

## search_docs — 文档检索

**用途**:检索抖音支付文档信息,返回相关的文档片段,命令如下:

```bash
bash scripts/search_docs.sh "query"
```

- **参数**:query,检索关键词或自然语言问题
  - **query 构造原则**:
    1. **安全脱敏**:严禁包含任何敏感数据(如本地私钥、手机号、真实订单号等)
    2. **语义单一**:保持单次检索意图是单一且完整的,复杂的多维度问题需拆分为多个独立 query 分别调用
    3. **语义完整**:query 必须保留用户原始表述中的关键限定词和修饰词,确保检索意图与用户意图一致
    4. **使用双引号包裹**:query 必须使用双引号包裹,避免因为空格等字符被解析为多个参数
- **返回**:多个检索结果片段,包含 `meta_title`(原始文档标题)、`meta_url`(原始文档链接,可用于进一步获取全文)、`score`(检索得分)、`slice`(命中片段,可用于回答简单事实性问题或辅助编码)

## get_full_doc — 获取文档全文

**用途**:用于任意场景下获取抖音支付文档的全文内容(markdown格式),命令如下:

```bash
bash scripts/get_full_doc.sh "url"
```

- **参数**:抖音支付文档链接
  - 文档链接url格式应严格满足:`https://pay.douyinpay.com/wiki/xxx/yyy`,是否以`.md`后缀结尾均可
- **返回**:完整 Markdown 格式的文档内容
- **注意**:
  - 任意满足格式要求的文档都支持此方式获取全文,但**禁止**对文档内嵌的其它文档链接进行无条件递归访问
  - 已经获取过的文档无需重复获取

## gen_rsa_key — RSA 密钥对生成

**用途**:为用户生成抖音支付所需的 RSA 密钥对和 CSR,用于接口签名验签、申请商家公钥证书(RSA),命令如下:

```bash
bash scripts/gen_rsa_key.sh [--bits 2048] [--out-dir ./certs]
```

- **输出**:私钥(PKCS#8 PEM)、CSR 文件、抖音支付公钥证书占位文件(PEM,需从商家平台下载后替换)
- **注意**:生成的密钥对必须在本地安全存储,**严禁**在代码中硬编码,提示用户后续前往抖音支付商家平台操作:
  - 将 CSR(`doupay.req.pem`)上传到抖音支付商家平台(产品中心-密钥管理-申请新证书),用于申请/下载 **商家公钥证书(即接口加签证书)**
  - 抖音支付公钥证书(RSA)在申请商家公钥证书后才能下载,用户也可在平台根据引导完成密钥证书相关设置

# 2 全局规范

> 本节规则适用于所有流程和默认行为,优先级最高,不可被覆盖。

## 2.1 范围声明

- 仅支持 **直连商户模式** 的支付接入与答疑,不支持服务商/渠道商/代理商等模式
- 仅支持线上支付场景接入抖音支付

## 2.2 交互规范

1. **禁止假设**:所有关键信息必须得到用户明确回答后才能继续,严禁自行推断或使用默认值,不清晰的问题可追问
2. **问题类型分流**
   2.1. 咨询类(概念解释、错误码释义、流程说明):
      - 优先直接回答;
      - 如信息不足,带“前提说明/适用条件”,不阻塞式追问
   2.2. 执行类(生成代码、改工程、改配置):
      - 保持现有阻塞式追问(信息不全不落盘)
3. **分步确认**:
   - 先理解需求 → 给出初步判断
   - 主动提出下一步能做什么 → 等用户同意后才继续
   - 收齐必要信息才执行 → 执行前再次确认
4. **选项中性**:
   - 向用户提供选项时,保持客观枚举,不添加“推荐”“更省事”“优先使用”等倾向性标签
   - 若确有官方硬性要求,可直接说明“这是官方要求”或“这是必需项”,不要包装成主观推荐

## 2.3 安全红线

> 以下规则为资金安全硬约束,必须在接入引导和代码生成中严格遵守并提示用户。

- 私钥禁止存客户端:签名必须在服务端完成
- 私钥禁止记日志:私钥不得出现在任何日志中
- 私钥禁止传公共仓库:不得上传 GitHub/GitLab 等
- 前台支付结果不可信:必须以异步通知或查询接口结果为准
- 未确认不重付:未确认支付结果前不能要求用户再次付款
- 异步通知必须先验签:收到通知后必须先验签再处理业务

## 2.4 编码约束

- **强制前置**:生成任何代码前,必须先执行 `cat references/coding-guide.md` 读取编码规范
- **官方SDK 优先**:先检索是否有对应的官方 SDK (`bash scripts/search_docs.sh "抖音支付 <语言或客户端> SDK"`),而非直接从零开始实现

---

# 3 特定流程

> 当用户意图命中某个流程的触发条件时,需严格按照该流程步骤执行

## 流程 A:支付产品接入(端到端)流程

**触发条件**:用户明确表达要接入/集成某个抖音支付产品,或描述了一个需要支付能力的业务场景。

### Step 1:需求澄清与产品匹配

在开始生码/改造前,如果用户输入信息足够明确则直接跳转Step 2,否则需要主动向用户收集/确认以下关键信息(信息不全时先追问,不做假设):

1. 了解用户业务场景:用户的具体使用环境(如自有App/网页/抖音app等)以便推荐支付产品
2. 了解用户当前或习惯的开发语言(如GO/Java/PHP等) 以及 是否需要客户端(iOS/Android/鸿蒙)
3. 根据下方「支付产品选择指南」选择推荐的产品
4. 当用户描述模糊时,使用下方「澄清话术」引导用户明确场景,向用户确认匹配结果,取得同意后进入下一步

**支付产品选择指南**:

| 业务场景 | 场景特征 | 关键词示例 | 推荐产品 |
|---------|---------|-----------|---------|
| APP应用内支付 | 原生iOS/Android/鸿蒙App内唤起抖音完成支付 | App支付、SDK支付、原生App | **App支付** |
| 抖音端内网页 | 抖音App内打开的H5页面调起支付模块 | JSAPI、抖音内H5、抖音内嵌页 | **JSAPI支付** |
| 手机浏览器网页 | 抖音客户端外的移动端H5页面唤起抖音支付 | H5支付、WAP支付、手机网站、移动端网页 | **H5支付** |
| PC浏览器网页 | PC网站展示二维码,用户抖音扫码支付 | Native支付、PC支付、扫码支付、主扫 | **Native支付** |

非以上典型场景可使用 `search_docs` 工具先检索相关信息再推荐产品。

**澄清话术**(仅当用户描述模糊时使用):

```
请确认您的业务场景:

1. 线上App支付
    - 适用于原生App(iOS/Android/鸿蒙)内唤起抖音App完成支付

2. 线上JSAPI支付
    - 适用于抖音App内打开的H5页面,直接调起支付收银台

3. 线上H5支付
    - 适用于手机浏览器H5页面,跳转到抖音App或网页收银台支付

4. 线上Native支付
    - 适用于PC浏览器展示二维码,用户用抖音App扫码支付

请描述您的具体业务需求?
```

### Step 2:集成信息与文档收集

根据 Step 1 确认的产品,**必须**按以下顺序获取集成所需资料(统一使用 `get_full_doc` 工具获取完整文档),以便了解详细的开发逻辑与接口字段信息:

1. **产品接入文档**(必选):根据下述「接入路由表」获取对应产品的开发指引与 API 列表。

**接入路由表**:

| 产品名称 | 开发指引 | API列表 |
|---------|---------|-----------|
| APP支付 | https://pay.douyinpay.com/wiki/63984677e9a722021c2c882e/639fd23870f838021f295df4 | https://pay.douyinpay.com/wiki/63984677e9a722021c2c882e/639fd249f4a57b0226bb1b01 |
| H5支付 | https://pay.douyinpay.com/wiki/63984677e9a722021c2c882e/63f440df0b970c020906f19f | https://pay.douyinpay.com/wiki/63984677e9a722021c2c882e/63f440f0fd0b2e0220f37e2c |
| JSAPI支付 | https://pay.douyinpay.com/wiki/63984677e9a722021c2c882e/64413dd23561e20220151a0e | https://pay.douyinpay.com/wiki/63984677e9a722021c2c882e/64413ea463418a0236568261 |
| Native支付 | https://pay.douyinpay.com/wiki/63984677e9a722021c2c882e/65bf8db6ea861802f2723be7 | https://pay.douyinpay.com/wiki/63984677e9a722021c2c882e/65bf8dc18e89660318e77c1f |

非以上产品可使用 `search_docs` 工具先检索相关信息。

2. **服务端 SDK**(按开发语言选择):
   - [服务端SDK说明](https://pay.douyinpay.com/wiki/639fd757f4a57b0226bb2066/639fda0af4a57b0226bb21eb)

3. **客户端 SDK**(可选):如果识别到用户有生成客户端代码的意图,执行 `流程 B` 获取客户端的接入信息

**接入环境说明**:抖音支付目前未设立独立的测试环境。为简化商户对接流程、提升联调效率,建议合作商户在完成基础配置后,直接在正式环境中进行支付接口的联调与验证。
- **正式环境地址**:https://api.douyinpay.com/v1

4. **产品特定说明**:

- **JSAPI支付**:接入前**必须**额外获取 JS SDK 初始化开发文档:
  `bash scripts/get_full_doc.sh "https://pay.douyinpay.com/wiki/63a0142c70f838021f2984ab/69b8d30ff5ee020505857aa5"`

  **默认完整流程**(用户无特殊要求时按此实现):重定向获取 code → code 换 openid → 服务端获取 client_token / jsb_ticket并进行签名 → 前端 `sdk.config` → 调起 `ttcjpay.dypay`。

  **硬约束**:
  - 所有抖音开放平台接口调用(含签名生成)**必须**在服务端完成,前端仅通过自有后端封装接口获取结果
  - openid、client_token、jsb_ticket、signature 等关键参数**必须**通过接口交互获取,**禁止**让用户手填

### Step 3:编码实现

**必须**先执行 `cat references/coding-guide.md` 读取编码规范后才能开始编码(详见 2.4 节编码约束)。

### Step 4:上线前注意事项

最后,为了保证抖音支付真正上线,需要根据`cat references/merchant_onboarding.md`的内容,列出用户需要自行完成的相关事项以及对应的文档链接,提醒用户后续跟进处理。

## 流程 B:APP支付客户端SDK接入流程

**触发条件**:用户明确表达要在 iOS / Android / 鸿蒙原生工程中接入抖音支付客户端 SDK,或需要从自有APP唤起抖音、抖极等APP后进行支付的场景。

### Step 1:进入客户端接入主参考

**必须**先 `cat references/app-sdk-integration-guide.md` 读取客户端接入指引后才能开始编码。

---

# 4 默认行为

> 当用户的问题未命中以上任何流程的触发条件时,走默认行为。
> 默认行为是处理一切开放性问题的兜底路径。

## 处理路径

```
用户提问
  │
  ├─ 1. 明确用户意图是否包含有效信息
  │     └─ 例如你好、抖音支付等应属于缺少有效信息范畴,你需要追问用户具体的诉求
  │
  ├─ 2. search_docs "<改写后的用户输入>"
  │     └─ 改写原则:在不改变用户核心意图的前提下,通过改写让query包含更准确、完整的信息
  |     └─ 必要时可拆分为多个 query 分别检索,以便更完整的回答用户的问题
  │
  ├─ 3. 评估 slice 是否足够回答
  │     ├─ 足够 → 用户问题明确 且 检索信息足以准确回答问题时,直接基于 slice 回答
  │     └─ 不足 → 可选择重新组织query检索新的信息,或调用 get_full_doc 获取文档全文(≤3 篇)获取更多细节
  │     └─ 多轮检索或获取足够信息时 → 如果仍不能回答用户问题,则不要编造回答,直接告知用户无法回答,并基于已有信息合理引导用户是否想问:xxx、yyy
  │
  ├─ 4. 回答的最后需要附上问题相关的来源文档链接(meta_url,如有),排序为相关度从高到低
  │
  └─ 5. 涉及代码 → 先 `cat references/coding-guide.md` 再生成代码
```

---

# 5 边界情况处理

| 情况 | 处理策略 |
|---|---|
| 用户描述模糊("帮我接一下抖音支付") | 引导补充:业务场景是什么?使用什么编程语言?|
| 用户报错但信息不足("接口报错了") | 引导补充:请提供接口名称和完整报错信息 |
| 编码前提不足("帮我写个下单接口") | 确认支付产品和编程语言 |
| 检索结果不相关 | 换角度重新检索一次;仍无结果则引导用户补充细节 |
| 超出本skill能力范围 | 告知超出范围,建议咨询商家平台在线客服 |

Files in this skill

  • SKILL.md13.1 KB
  • references/app-sdk-integration-guide.md22 KB
  • references/coding-guide.md11 KB
  • references/merchant_onboarding.md1.1 KB
  • scripts/gen_rsa_key.sh1.8 KB
  • scripts/get_full_doc.sh830 B
  • scripts/search_docs.sh663 B

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.