主题
接口总览
Mpay 开放接口供商户服务端调用。本文档按当前仓库的 Payment 实现整理,示例使用虚构应用和 example.com 域名,不代表线上凭据或地址。
选择接入路径
| 你的需求 | 接入方式 | 首先阅读 |
|---|---|---|
| 返回订单链接,用户选择支付方式 | QR_CASHIER 聚合收银台 | 收银台完整流程 |
| 业务页面直接展示二维码 | ALI_QR / WX_NATIVE 等实际开通方式 | 支付方式与调起 |
| 钱包内部或 App 内调起支付 | 相应 JSAPI / APP 产品,具备对应身份和配置 | 统一下单 |
| 确认支付、关闭未支付订单 | 查询 / 关闭原单 | 支付查询、关闭订单 |
| 原路退回已支付款项 | 申请退款后查询结果 | 申请退款 |
商户服务端接口
均使用 应用签名认证,推荐 POST application/json。实际 Payment 网关域名加表中路径即为接口地址。
| 接口 | 方法与路径 | 用途 |
|---|---|---|
| 统一下单 | POST /api/pay/unifiedOrder | 创建直接支付或收银台订单 |
| 支付查询 | POST /api/pay/query | 获取支付订单本地权威状态 |
| 关闭订单 | POST /api/pay/close | 关闭可关闭的未支付订单 |
| 申请退款 | POST /api/refund/refundOrder | 创建原路退款申请 |
| 退款查询 | POST /api/refund/query | 获取退款状态 |
| 创建转账 | POST /api/transferOrder | 当前未注册可用转账渠道 |
| 转账查询 | POST /api/transfer/query | 随转账能力开放后使用 |
退款查询虽注册为 ANY,当前不解析 GET 查询参数。使用上述 POST 方式可避免歧义。
收银台前端接口
收银台接口 使用订单 token,不能复用商户签名响应解析。options 获取候选项,confirm 确认支付,payOrderInfo 恢复展示及查询订单;OAuth 和旧版 pay 接口另有约束。商户通常只需分发统一下单返回的链接。
通知与功能边界
- 商户异步通知:支付成功通知为 POST 表单,验签全部非空字段,处理成功后返回纯文本 SUCCESS。
- 渠道回调:渠道发往平台的回调,与商户通知不是同一个入口。
- 退款商户通知目前未实现,必须查询退款结果。
- 结算与分账 由后台配置驱动,没有商户开放分账接口。
- 渠道代码已实现、平台字典存在与应用已开通是不同条件,以实际能力及配置为准。