6.1 小程序/公众号预下单
<p>[TOC]</p>
<h5>简要描述</h5>
<ul>
<li>小程序/公众号预下单接口,接口支持微信小程序、公众号预下单,也支持支付宝服务窗/小程序预下单;在成功响应以后会获得一个支付授权JS串,用于唤起的页面进行支付请求;</li>
</ul>
<h5>请求URL</h5>
<ul>
<li><code>http://pay.test.891tech.com/website/agent/isv/wechatPublicPay.action</code></li>
</ul>
<h5>请求方式</h5>
<ul>
<li>POST 【application/json】</li>
</ul>
<h5>参数</h5>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">必选</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">bizType</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">string</td>
<td>请求接口,固定值:wechatPublicPay</td>
</tr>
<tr>
<td style="text-align: left;">agentNo</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">string</td>
<td>代理商编号</td>
</tr>
<tr>
<td style="text-align: left;">merchantNo</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">string</td>
<td>子商户商户号,进件后获取</td>
</tr>
<tr>
<td style="text-align: left;">orderNo</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">string</td>
<td>请求订单号,请保持唯一</td>
</tr>
<tr>
<td style="text-align: left;">orderIP</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">string</td>
<td>请求IP</td>
</tr>
<tr>
<td style="text-align: left;">appPayType</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">string</td>
<td>客户端类型,请查看字段说明</td>
</tr>
<tr>
<td style="text-align: left;">payType</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">string</td>
<td>支付类型,请查看字段说明 ,这里只准许(PUBLIC、APPLET)</td>
</tr>
<tr>
<td style="text-align: left;">itemname</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">string</td>
<td>商品名称,展示在订单详情中</td>
</tr>
<tr>
<td style="text-align: left;">amount</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">Num</td>
<td>订单金额,单位元,如:0.01表示0.01元</td>
</tr>
<tr>
<td style="text-align: left;">appid</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">string</td>
<td>小程序appid/公众账号appid</td>
</tr>
<tr>
<td style="text-align: left;">openid</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">string</td>
<td>用户的openid</td>
</tr>
<tr>
<td style="text-align: left;">callbackUrl</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">string</td>
<td>后台回调地址,如有需要请填写</td>
</tr>
<tr>
<td style="text-align: left;">showUrl</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">string</td>
<td>前台回调地址,支付完毕以后展示的页面(功能预留)</td>
</tr>
<tr>
<td style="text-align: left;">timeExpire</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">string</td>
<td>订单超时时间,单位为秒,一分钟请输入60</td>
</tr>
<tr>
<td style="text-align: left;">userCreditCard</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">string</td>
<td>是否允许使用信用卡,1表示限制只能储蓄卡,0表示不限制</td>
</tr>
<tr>
<td style="text-align: left;">deviceInfo</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">string</td>
<td>设备号信息</td>
</tr>
</tbody>
</table>
<h5>返回示例</h5>
<pre><code> {
&quot;bizType&quot;: &quot;wechatPublicPay&quot;,
&quot;orderNo&quot;: &quot;20220819112130246&quot;,
&quot;agentNo&quot;: &quot;AG00000000000012&quot;,
&quot;data&quot;: &quot;LY7D37jvzG5Gkuct8gahTsbjJggKqozC7XEeikRoqSzndchh8rMUohDklIZzkbY07pUGgO8iLH2Ch5B96QcxIg2KzHKr308qgSR2QaLktZr0IsRqs3vNaQ2KzHKr308qxKkCB3w2CyOMLjyr58IGljk+60HMHPuXf3jZid3rMF48MJNUrfj3Ku2OWo41WXh24fRChLwLImDj8L3u3MfRQYBR28BKIobj9gJQ02hZ9Q6RYJDTvxxvIsMQy/KJd7VunIm1YVCedS7j94B/87qUgSW0ro/gfbpSGKjfhWIRSzd9hCBaxXzItw+4XZlMu6DfQPIkhe4xVp74aGRILPyBaG0b7zWKUqPM5hxjfpPqhA4vaCRSE0ia5EA94r3P8zu4w4u2Bi1E5cPEUy6RARU5GvjRfZ83aP5lEi5aHnTayuye1UwUjDwp/iarek53EXIlpC5QdUJ/Fyc2C6bNYpv8xVBtHnOHfrk4&quot;,
&quot;signature&quot;: &quot;lUwWujc5QR75AQB8B0QILKHKdcJUmIf5Z00PuMnNm3roK/BN0HWVo6y1kZaAeOaiJTIre1RyAkJDpkpW6xztsW55+str+8+QwzXt944DCQpzWtD1yX/ToaZN2OZRqjyvFi25WufV3jVP0f18SAo/MrEMsu9EXty8+hKPyKnfQavEbJJA3zApW81fli0/kApqcNIPDeWSASK1QSX251akFwmpd/XqtTAd5an+LQ0Kva6PwhNwyhIpeHvwhHYLwTEZozInDHkmmG2NhUZS9+pzWRUYVo00kTMCncmj/xi2GVsgiYytdm7gRTqjwuYMulZYKhwsMnSSz5WyA4nOA0rD0w==&quot;,
&quot;retCode&quot;: &quot;C0000&quot;,
&quot;retMsg&quot;: &quot;成功&quot;
}</code></pre>
<h5>解密返回参数示例</h5>
<pre><code> {
&quot;amount&quot;: 0.03,
&quot;paymentAmount&quot;:,
&quot;appPayType&quot;: &quot;WXPAY&quot;,
&quot;channelRetCode&quot;: &quot;0028&quot;,
&quot;channelRetMsg&quot;: &quot;交易失败&quot;,
&quot;completeDate&quot;: &quot;20220817135854&quot;,
&quot;merchantNo&quot;: &quot;M00000000000183&quot;,
&quot;orderNo&quot;: &quot;20220817102402675&quot;,
&quot;payType&quot;: &quot;SWIPE&quot;,
&quot;serialNumber&quot;: &quot;1660715931039&quot;,
&quot;appid&quot;:&quot;wx22798b2328c91fb6&quot;,
&quot;status&quot;: &quot;FAIL&quot;
}</code></pre>
<h5>返回解密参数说明</h5>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">必选</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">merchantNo</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">string</td>
<td>子商户编号</td>
</tr>
<tr>
<td style="text-align: left;">orderNo</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">string</td>
<td>订单号</td>
</tr>
<tr>
<td style="text-align: left;">appid</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">string</td>
<td>小程序appid/公众账号appid</td>
</tr>
<tr>
<td style="text-align: left;">tokenId</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">string</td>
<td>动态口令</td>
</tr>
<tr>
<td style="text-align: left;">payInfo</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">string</td>
<td>支付授权信息域,用于唤起页面支付使用</td>
</tr>
<tr>
<td style="text-align: left;">amount</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">Num</td>
<td>交易金额,单位为元</td>
</tr>
<tr>
<td style="text-align: left;">paymentAmount</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">Num</td>
<td>用户实际支付金额,单位为元,不一定有值</td>
</tr>
<tr>
<td style="text-align: left;">appPayType</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">string</td>
<td>客户端类型,请查看字段说明</td>
</tr>
<tr>
<td style="text-align: left;">payType</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">string</td>
<td>交易类型,请查询字段说明</td>
</tr>
<tr>
<td style="text-align: left;">serialNumber</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">string</td>
<td>我方系统唯一流水号</td>
</tr>
<tr>
<td style="text-align: left;">channelRetCode</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">string</td>
<td>渠道返回码,仅供参考</td>
</tr>
<tr>
<td style="text-align: left;">channelRetMsg</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">string</td>
<td>渠道返回信息</td>
</tr>
<tr>
<td style="text-align: left;">completeDate</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">string</td>
<td>完成时间(yyyyMMddHHmmss),不一定有值</td>
</tr>
<tr>
<td style="text-align: left;">status</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">string</td>
<td>扫码订单最终交易状态,请查看字段数说明</td>
</tr>
<tr>
<td style="text-align: left;">splitBillJson</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">string</td>
<td>分账参数</td>
</tr>
</tbody>
</table>
<h5>备注</h5>
<ul>
<li>扫码订单状态:status字段说明:
DOING:处理中
SUCCESS:成功
FAIL:失败
CLOSE:关闭
CANCEL:已撤销</li>
</ul>