发起支付接口

发起支付接口(必用接口)

您有2种方式使用此接口:1.跳转到我们官方的支付页,我们支付页支持PC和手机界面自适应,PC上是扫码支付,手机上是H5支付;2.自定义支付页,在您自己的支付页上,PC上展示付款二维码,在手机上自动跳转到二维码对应地址,即可调起B.APP完成H5支付

接口URL:

https://bapi.app/api/v2/pay

传参方式::POST

使用方法:您的服务器端(server端)将参数以json格式post到我们指定接口。成功后,接口会返回一个json字符串,您可以将用户浏览器跳转到返回的pay_url参数值的网址,让用户进入官方支付页支付(相对简单);或者在自己自定义支付页上(相对复杂),直接将返回的qr_code参数值生成二维码,展示在自己支付页上;如果是手机端,可以直接将用户跳转到qr_code参数值的网址,会调起B.APP客户端进行H5支付

用户付款成功后,我们会向您的notify_url发送这笔订单支付成功的回调通知

请求参数

以下所有参数,1个中文字、1个英文字母、1个标点符号、1个空格都只算1个字符

参数 必填 类型 描述
order_id 必填 string(32) 商户订单号,最长 32 位字符,请保证订单号的唯一性
amount_type 必填 string(16) 订单货币单位,目前只支持人民币,此处只会是:CNY
amount 必填 long 订单金额,单位(人民币:分), 例如:5.00元在这里请用500,注意必须:amount > 0
body 必填 string(128) 商品名称,UTF8格式,用来显示在支付页上的商品名称位置,还有您商户后台的订单列表里。
return_url 必填 string(256) 支付成功后跳转地址。注意:使用官方支付页时必填;自定义支付页则可不用填写。用户支付成功后,我们会将用户浏览器自动跳转到这个网址。注意此参数不要urlencode。例:https://www.aaa.com/pay_return
notify_url 必填 string(256) 支付成功后回调通知地址。用户一旦支付成功,我们服务器会异步发送一个回调通知到这个网址,具体参数请看这里,如果回调通知失败,之后会按时间重试5次,分别是:订单第一次回调失败后的5秒,10秒,30秒,1分钟,5分钟。重试5次后依然通知不成功,不会再自动重试,您之后可以用查询接口完成判断知否是否成功。注意此参数不要urlencode。例:http://www.aaa.com/pay_notify
time 必填 long 发起支付时的服务器时间,13位时间戳,使用此参数是出于安全考虑,用来防御请求重发攻击
app_key 必填 string(16) 平台生成的app key。在“商家后台 - 商家信息”中获取
sign 必填 string(32) 签名,点此查看签名生成方法
order_ip 可选 string(45) 订单发起端ip(用户的ip),如:114.114.114.114,同时支持IPV6,方便您自己做风控用
extra 可选 string(64) 额外参数,支付成功会原样返回,最长 64 位字符

请求例子

curl -X POST -H 'content-Type:application/json' -d '{"sign":"c99b0c73796ef1ead15a140e76542689","order_id":"1","amount":1,"time":1234567890123,"app_key":"4789e57f8629eb9e","body":"goods_name","notify_url":"https://bapi.app/api/experience/notify/test","return_url":"https://baidu.com"}' https://bapi.app/api/v2/pay
              

接口返回参数

参数格式:application/json

参数 类型 描述
code int 状态代码,200 代表获取成功,其他状态代码请对照msg 返回的信息内容
msg string 提示信息
data.qr_code string 自定义支付页展示的信息,PC上将此参数生成二维码展示,手机浏览器可直接打开此地址即可调起B.APP完成支付
data.pay_url string 官方支付页URL地址,直接把用户客户端跳转到此地址支付

接口返回例子

  1. {
  2. "code": 200,
  3. "msg": "ok",
  4. "data": {
  5. "qr_code": "HTTPS://QR.B.APP/pay?sid=100001&oi=201906191404051de88e",
  6. "pay_url": "http://bapi.app/h5.html?order_no=201906191404051de88e&sign=8642f2b9&v=20190613"
  7. }
  8. }