POST
/pay/prepayH5小程序开放/回调支付-预下单
订单·支付·售后 / Pay
基本信息
- 接口状态开放/回调用(服务端) 免鉴权
- 接口URLPOST
https://dscp-dev.hn12301.net/h5-api/pay/prepay - 请求方式
POST - Content-Type
application/json - 暴露渠道H5、小程序、开放/回调 前缀
/h5-api - 名称来源源码注释
- 调用方本次扫描未发现调用
- 需求上下文
- 维护人 / 最后改动AsiQue 2024-02-27
- 读写数据表—
- 控制器
com.jxxx.dscp.api.controller.pay.PayController#prepay - 源码位置
jxxx-dscp/dscp-service-business/src/main/java/com/jxxx/dscp/api/controller/pay/PayController.java:115 - 判定依据
请求参数
Header 请求参数
| 参数名 | 参数值 | 是否必填 | 参数类型 | 描述说明 |
|---|---|---|---|---|
| 无(渠道统一鉴权头见《认证方式》) | ||||
Query 请求参数
| 参数名 | 参数值 | 是否必填 | 参数类型 | 描述说明 |
|---|---|---|---|---|
| 无 | ||||
路径参数及说明
| 参数名 | 参数值 | 是否必填 | 参数类型 | 描述说明 |
|---|---|---|---|---|
| 无 | ||||
Body 请求参数
| 参数名 | 参数值 | 是否必填 | 参数类型 | 描述说明 |
|---|---|---|---|---|
| openId | … | 是 | String | openId |
| orderNo | … | 是 | String | 商户订单号 |
| amount | … | 否 | Long | 订单金额,单位为分 |
| description | … | 否 | String | 商品描述 |
| expireTime | … | 否 | Date | 订单失效时间 |
认证方式
响应参数
| 参数名 | 参数值 | 是否必填 | 参数类型 | 描述说明 |
|---|---|---|---|---|
| appId | … | 否 | String | appId |
| timeStamp | … | 否 | String | 时间戳 |
| nonce | … | 否 | String | 随机字符串 |
| pack | … | 否 | String | 预支付交易会话标识 |
| signType | … | 否 | String | 签名类型 |
| paySign | … | 否 | String | 签名 |
响应示例
成功响应示例
{
"errcode": 0,
"errmsg": "",
"data": {
"appId": "\"string\"",
"timeStamp": "\"string\"",
"nonce": "\"string\"",
"pack": "\"string\"",
"signType": "\"string\"",
"paySign": "\"string\""
}
}失败响应示例
{
"data": null,
"可能返回": [
{
"errcode": "99999",
"errmsg": "服务内部错误"
}
]
}附录 · 实现细节
调用链 / 数据表 / 调用点证据 / 源码注释 / 逻辑摘要
- PayController#prepay
- LockService#tryLock
- OrderService#mustGet(OrderServiceImpl)
- OrderMapper#mustGet
- WechatJsapiPayService#prepay(WechatJsapiPayServiceImpl)
- LockService#unlock
其它依赖:PayBackProperties.getCardPayCallbackUrl、PayProperties.getAppid、PayProperties.getMchid、JsapiServiceExtension.prepayWithRequestPayment
操作日志:pay / 支付预下单
可能抛出的业务码:99999 服务内部错误 错误码字典 →