統一支付接口設計


1、接口說明

支付接口用於后台根據自己邏輯的單號生成簽名用於調起第三方。

2、接口地址

xxx/v1/pay

3、接口格式

上行:Key & Value

下行:JSON

4、協議

HTTP/POST

5、輸入參數

參數名

類型

是否必填

備注

token

String


appId

string

設備唯一標識

appVersion

string

APP版本

imei

string

手機串碼

phoneModel

string

手機型號

timestamp

string

時間戳

orderId

 string

對應業務的單號

orderType

int

業務類型(1、 普通行程訂單 2、企業行程訂單  3.xxx

   4.小程序行程訂單   40:錢包充值訂單)

payment

int

支付方式(0免單支付,1支付寶(項目app),2微信(項目app) 3(企業支付) 4.余額支付 5銀聯支付...   )201:公眾號/小程序 

openId

String 特殊是 當payment=
201
 公眾號/小程序支付時 必須傳入 OpenID    當payment=421 同理

appCode

String 特殊是 當payment=201 公眾號/小程序支付時     項目xx端小程序 :"12021"   當payment=421 同理

PS.已規划appCode    10010(零元) 11010(支付寶APP) 12020(微信APP)12021(xx小程序)12022(XX公眾號微信原生掃碼) 12023(XX公眾號微信H5) 13010(企業) 14010(余額支付)   14011(余額支付-余額自動支付)  

6、請求示例


orderId=133&orderType=1&payment=1


7、輸出參數

參數名

類型

是否必填

備注

code

Integer

狀態碼

msg

String

返回消息

data

Object

返回數據


Object內容(支付寶)

 說明:因為此接口返回的是第三方要求的需要可以被調起的簽名格式,故Object內容為一個經過加密的字符串。移動端拿到數據調用即可

Object內容(微信) 

參數名

類型

是否必填

備注

app_id

String

微信開放平台審核通過的應用APPID

partnerid 

String

微信支付分配的商戶號

prepayid

String

微信返回的支付交易會話ID

package 

String

暫填寫固定值Sign=WXPay

noncestr 

String

隨機字符串,不長於32位。

timestamp 

String

時間戳

sign 

String

簽名


 

支付寶

{

      "data": “

alipay_sdk=alipay-sdk-java-3.1.0
&app_id=xxx
&biz_content=%7B%22xxx_amount%22%3A%220.01%22%7D
&charset=UTF-8
&format=json
&method=alipay.trade.app.pay
&notify_url=xxxpayAliCallback
&return_url=xxxFreturn
&sign=cyu9MIAJGjGZ7yQKo7Lvu4C8cVCm%2BOeME%2B9A%2B%2BYkabZiBMguCPhtzQliruUaE5yyWhbNBtIqwT%2Bb4vIWzhb%2FlEiFcovcsKYbe46lDo9ihy%2Fb%2FTMBX%x'x'x%2BkhIcykHpfjfZLrWjdD7flsPRIotoBq%xxx%2F6vBQPC%2Fv8feQBlmFEfgoLLX8IBnFd5G%2F6n0GIwfVjOArSQ58izGuNjjXHHdtTbbiOD2oJMfAomUlCCwIOBYEvexgO4qOWKOFqcGOwnu594a4tG7vnCtOuTTwA%3D%3D
&sign_type=RSA2
&timestamp=2018-07-11+11%3A34%3A00
&version=1.0"

}

微信

{

 "code":0,

  "data": {

       "package":"Sign=WXPay",

       "appid":"xxx",

       "partnerid":"xxx",

       "prepayid":"wx20180711174645947779",

       "noncestr":"gSBpmOpKk8mhvdGTZaie",

       "timestamp":"1531302402"

       "sign":"EE8707786C6D008E48608291E971A920",

      }

}



小程序支付結果:

{

 "code":0,

  "data": {

        "appId":"xxxx",

        "timeStamp":"Sign=WXPay",

        "nonceStr":"wx1930ad04c1e714a8",

        "package":"prepay_id=xxxxxx",

        "signType":"MD5",

        "paySign":"EE8707786C6D008E48608291E971A920",

      }

}


企業支付

{

      "code":0,

      "msg": "支付成功!"

}



9、狀態碼

態碼
msg
200 支付成功
xxx1
訂單已支付
xxx2
訂單已關閉
xxx3
校驗訂單信息失敗(未到支付狀態/未查詢到訂單)
xxx4
支付渠道錯誤
xxx5
MQ廣播通知錯誤
xxx6
操作失敗




免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM