發起支付接口

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

您有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. }