通联支付收付产品 Skill:收付通协议支付全流程对接

前言

接入通联收付通时,协议支付往往要串起签约短信、签约确认、扣款、查单和退款,交易码和业务代码又多,官方文档分散在多个章节。自己翻文档写 SftClient 调用,容易在状态判断、businessCode 混用、超时后是否查单等细节上踩坑。下面介绍 SkillHub 上的社区 Skill「通联支付收付产品skill」,它把收付通 Java SDK 的公共约定、单接口说明和整条业务链路整理成 Agent 可路由的技能包,便于在 Cursor、Claude Code 等环境里用自然语言生成对接代码。

这是什么

「通联支付收付产品skill」(坐标 @user_0512de0a/allinpay-sft-skill,当前版本 1.0.3,来源 community,发布者 user_0512de0a)是面向 Agent 的收付通技能包,总入口对应通联收付通 Java SDK allinpay-sft-sdk-java 1.0.3。Skill 页简介写明:覆盖签约短信 310001、签约确认 310002、协议支付 310011、交易查询 200004、退款 REFUND 的全流程;包内还通过 flow/、api/ 扩展批量协议支付、实时代付、账户与对账等场景。

在 SkillHub 上,该 Skill 分类为 dev-programming,标签含 requires_api_key=false(安装 Skill 本身不要求单独配置 SkillHub API Key;通联商户与 SDK 环境配置仍按收付通接入规范自行准备)。页面统计(以抓取资料为准):评分 100000,下载 783,安装 4。

核心功能

Skill 根目录 SKILL.md 充当路由入口,生成代码前要求先遵守 common/SKILL.md,再进入具体业务说明。

协议支付主链路

收款侧「协议支付」完整链路在 flow/agreement-pay.md 中定义为:

310001(签约短信)→ 310002(签约确认)→ 310011(协议支付)→ 200004(交易查询)→ REFUND(退款)→ 200004(退款查单)

各步与 SDK 方法、成功判断、落库字段在流程文档中有表格式说明,例如签约确认用 isSigned(),资金类步骤用 isTrx* 系列判断,处理中或超时需走 200004 查单而非直接判失败。

更广的产品与接口覆盖

除简介中的协议支付五步外,同一技能包还提供:

类型 示例
全流程 flow/*.md 批量协议支付、单笔实时代付、批量代付、还款通、联贷通、账户类、文件工具类等
单接口 api/*.md 按交易码拆分的 24 个接口说明(含查单 trx-query、退款 refund 等)
公共 common/ SftConfig / SftClient、状态机、返回码、超时与 DEBUG、Java 骨架类

触发描述(来自 SKILL.md)包括:收付通、通联支付、SftClient、协议支付、代收代付、还款通、账户提现充值、对账回单、退款、查单、返回码等关键词,Agent 会据此选择 common/、flow/ 或 api/ 下的子说明。

与 SDK 对齐的硬性约束

技能包统一要求:

  • Maven 依赖 com.allinpay.cus.sdk:allinpay-sft-sdk-java:1.0.3,包名 com.allinpay.cus.sdk.sft
  • 金额单位为分;businessCode 在支付与退款等场景不可混用(协议支付测试示例为 19900,退款为 09200,上线以业务方为准)
  • 资金/验证类业务成功判断禁止仅依赖 isSuccess()
  • 出现 HttpTimeoutException 或处理中状态时查单,禁止直接当失败

安装与启用

通过 SkillHub CLI(推荐)

先确认本机已安装 skillhub(安装方式见 SkillHub 安装说明)。安装技能时必须用 --dir 指向当前 Agent 的 skills 目录,否则默认装到 ./skills/ 可能不会被识别。

command -v skillhub && skillhub --version

skillhub install allinpay-sft-skill --namespace user_0512de0a --dir ~/.cursor/skills/

常见 Agent 的 skills 路径(摘自 SkillHub 安装文档):

  • Cursor:~/.cursor/skills/
  • Claude Code:~/.claude/skills/
  • Codex:~/.codex/skills/ 或项目下的 .agents/skills/

也可在对话中让 Agent 按官方提示安装:

请根据 https://skillhub.cn/install/skillhub.md,安装 `@user_0512de0a/allinpay-sft-skill`。

手动复制目录结构

技能包 README 说明:标准 Agent Skills 形态为「一个目录 + 入口 SKILL.md」,需包含 SKILL.md、README.md 以及 common/、api/、flow/。示例(bash):

DEST="$HOME/.cursor/skills/allinpay-sft-skills"
mkdir -p "$DEST"
cp SKILL.md README.md "$DEST/"
cp -r common api flow "$DEST/"

安装完成后,在对话中提到「协议支付」「收付通」「310001」等描述中的词,确认 Agent 已加载该 Skill。

工程侧 SDK 依赖

生成代码所依赖的 Maven 坐标(与技能包版本一致):

<dependency>
    <groupId>com.allinpay.cus.sdk</groupId>
    <artifactId>allinpay-sft-sdk-java</artifactId>
    <version>1.0.3</version>
</dependency>

典型用法

用法以自然语言描述场景为主,由 Agent 按 SKILL.md 路由到对应 flow 或 api 文档后生成 Java 串联代码。README 中的示例如下。

整链路:

我需要对接通联收付通协议支付

按步骤拆开:

我需要对接通联收付通协议支付签约短信接口
我需要对接通联收付通协议支付签约确认接口
我需要对接通联收付通协议支付扣款接口
我需要查询通联收付通的交易结果
我需要对通联收付通的订单发起退款

其它域可类似描述,例如「单笔实时代付 100014」「账户提现 300003」「对账文件下载」。

协议支付流程文档中还给出了步骤与数据依赖要点:310001 返回的 REQ_SN 作为 310002 的 srcReqSn;签约成功后的 agrmNo 需持久化并用于 310011;支付 REQ_SN 用于查单与退款的 orgBatchId 等。测试环境签约短信验证码在流程说明中记为 111111(以通联官方环境为准)。

适用场景与注意

适合谁

  • 正在接入通联收付通、使用 allinpay-sft-sdk-java 1.0.3 的 Java 后端或全栈开发者
  • 需要协议支付从签约到退款的标准串联,或只需某一个交易码的字段与调用示例
  • 希望在 IDE 里用 Agent 生成代码,并统一遵守收付通状态机、返回码与查单规则

限制与注意

  • 技能包聚焦 SDK 对接与代码生成规范,不能替代通联商户入网、密钥与生产环境配置;官方文档入口见包内 README(如 收付通开放平台、技术文档)
  • 社区来源 Skill,接入前建议在测试环境核对交易码、businessCode 与返回码表(包内 common/RETURN_CODES.md)
  • Skill 生成约束要求:交付给商户的代码注释中不应出现技能包内部编号或 SKILL.md 等字样;修改接入方工程时已有配置项宜只追加、不删改,键冲突需先说明

结尾

「通联支付收付产品skill」把收付通协议支付核心交易码与更完整的 flow/api 文档装进可路由的 Agent 技能包,并绑定 SDK 1.0.3 的初始化、判成功与超时查单规则,适合作为收付通 Java 联调时的对话侧参考。

  • SkillHub 页面:https://www.skillhub.cn/skills/user_0512de0a/allinpay-sft-skill
  • API 坐标页:https://api.skillhub.cn/user_0512de0a/allinpay-sft-skill
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜