Wb/?c=pay

跳转到: 导航, 搜索
(表单参数)
 
(未显示2个用户的6个中间版本)
第1行: 第1行:
 
==付款接口==
 
==付款接口==
  
*成功获取token后,提交订单信息给开放平台。开放平台验证表单信息,验证通过则页面跳转至“付款页”,用户可进行付款操作;如果验证不通过,则返回报错信息。
+
*成功获取token后,提交订单信息(生成表单)给开放平台。开放平台验证表单信息,验证通过则页面跳转至“付款页”,用户可进行付款操作;如果验证不通过,则返回报错信息。
  
  
*说明:调用“付款接口”前,必须需先获取支付token(即:调用[[微支付get_token_接口|get_token接口]])。
+
*说明:调用“付款接口”前,必须需先获取支付token(即:调用[[pay/get_token|get_token接口]])。
 
+
  
 
==URL==
 
==URL==
  
*线上接口URL:http://pay.weibo.com/wb/?c=pay
+
*为了给开发者提供“便捷的支付接入流程”,我们提供两套环境供开发者使用。
   
+
 
  
 +
*'''线上环境:'''
 +
*1) 应用已通过支付审核(有“支付ID”),则调用“线上环境”调试支付接口。
 +
*2) 线上接口URL:http://pay.weibo.com/wb/?c=pay
 +
 
 +
 
 +
*'''测试环境:'''
 +
*1) 应用未通过支付审核但已通过文案,可申请“模拟支付ID”;若已获得“模拟支付ID”,则可调用“测试环境”调试支付接口。
 +
*2) 测试接口URL:http://open.weibo.com/paytest/payTestPay.php
  
 
==HTTP请求方式==
 
==HTTP请求方式==
第39行: 第46行:
  
 
<tr>
 
<tr>
<th width="15%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">'''order_url'''</th>
+
<th width="15%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">'''return_url'''</th>
<th width="10%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">true</th>
+
<th width="10%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">true</th>
<th width="10%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">string</th>
+
<th width="10%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">string</th>
<th width="65%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">支付成功后,“返回应用”链接地址。须有开发者传递至平台。</th>
+
<th width="65%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">支付成功后,“返回应用”链接地址。须有开发者传递至平台。</th>
 
</tr>
 
</tr>
  
 
<tr>
 
<tr>
<th width="15%" style="text-align:left;padding-left:5px;border:1px solid#cccccc"> '''order_id'''</th>
+
<th width="15%" style="text-align:left;padding-left:5px;border:1px solid #cccccc"> '''order_id'''</th>
<th width="10%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">true</th>
+
<th width="10%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">true</th>
<th width="10%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">int</th>
+
<th width="10%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">int</th>
<th width="65%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">订单号,即获取token时传递的订单号,此订单号由开发者生成,可用于对账、客服支持等。</th>
+
<th width="65%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">订单号,即获取token时传递的订单号,此订单号由开发者生成,可用于对账、客服支持等。</th>
 
</tr>
 
</tr>
  
  
 
<tr>
 
<tr>
<th width="15%" style="text-align:left;padding-left:5px;border:1px solid#cccccc"> '''order_uid'''</th>
+
<th width="15%" style="text-align:left;padding-left:5px;border:1px solid #cccccc"> '''order_uid'''</th>
<th width="10%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">true</th>
+
<th width="10%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">true</th>
<th width="10%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">long</th>
+
<th width="10%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">long</th>
<th width="65%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">支付用户的SinaUID</th>
+
<th width="65%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">支付用户的SinaUID</th>
 
</tr>
 
</tr>
  
  
 
<tr>
 
<tr>
<th width="15%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">'''desc'''</th>
+
<th width="15%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">'''desc'''</th>
<th width="10%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">true</th>
+
<th width="10%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">true</th>
<th width="10%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">string</th>
+
<th width="10%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">string</th>
<th width="65%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">商品名称,必须是utf-8编码,并且要做urlEncode前端用于显示给用户看。</th>
+
<th width="65%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">商品名称,必须是utf-8编码,并且要做urlEncode前端用于显示给用户看。</th>
 
</tr>
 
</tr>
  
  
 
<tr>
 
<tr>
<th width="15%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">'''appkey'''</th>
+
<th width="15%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">'''appkey'''</th>
<th width="10%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">true</th>
+
<th width="10%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">true</th>
<th width="10%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">long</th>
+
<th width="10%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">long</th>
<th width="65%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">申请应用时分配的AppKey,调用接口时候代表应用的唯一身份。</th>
+
<th width="65%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">申请应用时分配的AppKey,调用接口时候代表应用的唯一身份。</th>
 
</tr>
 
</tr>
  
 
<tr>
 
<tr>
<th width="15%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">'''amount'''</th>
+
<th width="15%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">'''amount'''</th>
<th width="10%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">true</th>
+
<th width="10%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">true</th>
<th width="10%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">int</th>
+
<th width="10%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">int</th>
<th width="65%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">支付金额,单位分, 大于0小于500000</th>
+
<th width="65%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">支付金额,单位分, 大于0小于500000</th>
 
</tr>
 
</tr>
  
  
 
<tr>
 
<tr>
<th width="15%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">'''version'''</th>
+
<th width="15%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">'''version'''</th>
<th width="10%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">true</th>
+
<th width="10%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">true</th>
<th width="10%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">string</th>
+
<th width="10%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">string</th>
<th width="65%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">接口版本号(1.0)</th>
+
<th width="65%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">接口版本号(1.0)</th>
 
</tr>
 
</tr>
  
 
<tr>
 
<tr>
<th width="15%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">'''token'''</th>
+
<th width="15%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">'''token'''</th>
<th width="10%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">true</th>
+
<th width="10%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">true</th>
<th width="10%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">string</th>
+
<th width="10%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">string</th>
<th width="65%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">通过调用get_token接口获取</th>
+
<th width="65%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">通过调用get_token接口获取</th>
 
</tr>
 
</tr>
 
   </table>
 
   </table>
第102行: 第109行:
 
 
  
 
==注意事项==
 
*请求参数只需要return_url order_id order_uid desc appkey amount version token八个参数
 
  
  
第118行: 第122行:
  
 
<tr>
 
<tr>
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">1001</th>
+
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">1001</th>
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">returnUrl参数不合法</th>
+
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">returnUrl参数不合法</th>
 
</tr>
 
</tr>
  
 
<tr>
 
<tr>
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">1002</th>
+
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">1002</th>
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">商户订单号不合法</th>
+
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">商户订单号不合法</th>
 
</tr>
 
</tr>
  
 
<tr>
 
<tr>
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">1001</th>
+
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">1001</th>
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">returnUrl参数不合法</th>
+
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">returnUrl参数不合法</th>
 
</tr>
 
</tr>
  
 
<tr>
 
<tr>
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">1003</th>
+
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">1003</th>
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">用户id不合法</th>
+
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">用户id不合法</th>
 
</tr>
 
</tr>
  
 
<tr>
 
<tr>
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">1004</th>
+
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">1004</th>
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">商品名不合法</th>
+
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">商品名不合法</th>
 
</tr>
 
</tr>
  
 
<tr>
 
<tr>
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">1005</th>
+
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">1005</th>
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">appkey不合法</th>
+
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">appkey不合法</th>
 
</tr>
 
</tr>
  
 
<tr>
 
<tr>
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">1006</th>
+
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">1006</th>
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">金额不合法</th>
+
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">金额不合法</th>
 
</tr>
 
</tr>
  
 
<tr>
 
<tr>
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">1008</th>
+
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">1008</th>
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">token不合法</th>
+
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">token不合法</th>
 
</tr>
 
</tr>
  
 
<tr>
 
<tr>
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">1010</th>
+
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">1010</th>
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">验证token失败</th>
+
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">验证token失败</th>
 
</tr>
 
</tr>
  
 
<tr>
 
<tr>
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">1011</th>
+
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">1011</th>
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">后台通知地址不合法</th>
+
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">后台通知地址不合法</th>
 
</tr>
 
</tr>
  
  
 
<tr>
 
<tr>
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">1012</th>
+
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">1012</th>
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">订单初始化失败</th>
+
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">订单初始化失败</th>
 
</tr>
 
</tr>
  
 
<tr>
 
<tr>
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">1013</th>
+
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">1013</th>
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">支付失败,错误不在错误列表中</th>
+
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">支付失败,错误不在错误列表中</th>
 
</tr>
 
</tr>
  
 
<tr>
 
<tr>
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">1014</th>
+
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">1014</th>
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">系统繁忙请稍候再试</th>
+
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">系统繁忙请稍候再试</th>
 
</tr>
 
</tr>
  
 
<tr>
 
<tr>
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">1015</th>
+
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">1015</th>
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">ip不合法,没有使用权限</th>
+
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">ip不合法,没有使用权限</th>
 
</tr>
 
</tr>
  
 
<tr>
 
<tr>
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">1017</th>
+
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">1017</th>
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">该订单号不存在</th>
+
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">该订单号不存在</th>
 
</tr>
 
</tr>
  
 
<tr>
 
<tr>
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">1018</th>
+
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">1018</th>
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">该订单处于初始化状态</th>
+
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">该订单处于初始化状态</th>
 
</tr>
 
</tr>
  
 
<tr>
 
<tr>
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">1019</th>
+
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">1019</th>
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">该订单已生成</th>
+
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">该订单已生成</th>
 
</tr>
 
</tr>
 
<tr>
 
<tr>
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">1020</th>
+
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">1020</th>
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">该订单正在进行中</th>
+
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">该订单正在进行中</th>
 
</tr>
 
</tr>
 
<tr>
 
<tr>
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">1021</th>
+
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">1021</th>
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">订单详情有错</th>
+
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">订单详情有错</th>
 
</tr>
 
</tr>
 
<tr>
 
<tr>
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">1022</th>
+
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">1022</th>
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">订单已过期,请重新发起</th>
+
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">订单已过期,请重新发起</th>
 
</tr>
 
</tr>
 
<tr>
 
<tr>
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">1023</th>
+
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">1023</th>
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid#cccccc">开放平台应用编号不合法</th>
+
<th width="40%" style="text-align:left;padding-left:5px;border:1px solid #cccccc">开放平台应用编号不合法</th>
 
</tr>
 
</tr>
 
</table>
 
</table>

2013年12月13日 (五) 14:35的最后版本

付款接口

  • 成功获取token后,提交订单信息(生成表单)给开放平台。开放平台验证表单信息,验证通过则页面跳转至“付款页”,用户可进行付款操作;如果验证不通过,则返回报错信息。


  • 说明:调用“付款接口”前,必须需先获取支付token(即:调用get_token接口)。

URL

  • 为了给开发者提供“便捷的支付接入流程”,我们提供两套环境供开发者使用。


  • 线上环境:
  • 1) 应用已通过支付审核(有“支付ID”),则调用“线上环境”调试支付接口。
  • 2) 线上接口URL:http://pay.weibo.com/wb/?c=pay


  • 测试环境:
  • 1) 应用未通过支付审核但已通过文案,可申请“模拟支付ID”;若已获得“模拟支付ID”,则可调用“测试环境”调试支付接口。
  • 2) 测试接口URL:http://open.weibo.com/paytest/payTestPay.php

HTTP请求方式

  • POST


是否需要登录

  • true


表单参数

参数名 必填 类型及范围 说明
return_url true string 支付成功后,“返回应用”链接地址。须有开发者传递至平台。
order_id true int 订单号,即获取token时传递的订单号,此订单号由开发者生成,可用于对账、客服支持等。
order_uid true long 支付用户的SinaUID
desc true string 商品名称,必须是utf-8编码,并且要做urlEncode前端用于显示给用户看。
appkey true long 申请应用时分配的AppKey,调用接口时候代表应用的唯一身份。
amount true int 支付金额,单位分, 大于0小于500000
version true string 接口版本号(1.0)
token true string 通过调用get_token接口获取

相关约束


返回值错误与错误代码

?result=fail&errcode=$errno

错误代码 说明
1001 returnUrl参数不合法
1002 商户订单号不合法
1001 returnUrl参数不合法
1003 用户id不合法
1004 商品名不合法
1005 appkey不合法
1006 金额不合法
1008 token不合法
1010 验证token失败
1011 后台通知地址不合法
1012 订单初始化失败
1013 支付失败,错误不在错误列表中
1014 系统繁忙请稍候再试
1015 ip不合法,没有使用权限
1017 该订单号不存在
1018 该订单处于初始化状态
1019 该订单已生成
1020 该订单正在进行中
1021 订单详情有错
1022 订单已过期,请重新发起
1023 开放平台应用编号不合法




其他

文档更新时间: 2013-12-13