wepay
1.0.0
包引入:
< dependency >
< groupId >me.hao0</ groupId >
< artifactId >wepay-core</ artifactId >
< version >1.3.2</ version >
</ dependency >
依賴包,注意引入項目時是否需要exclude :
< dependency >
< groupId >me.hao0</ groupId >
< artifactId >common</ artifactId >
< version >1.1.2</ version >
</ dependency >
基本用法:
Wepay wepay = WepayBuilder
. newBuilder ( appId , appKey , mchId )
. config1 (...) // 其他可选配置
...
. build ();
wepay . module (). api ();
已實現的元件:
pay()
;refund()
;order()
;notify()
;bill()
。API文件這裡。
關於測試:
測試案例中是一些基本測試,需作一些配置:
// 在test/reources目录中配置dev.properties
// 包括appId(APP ID), appKey(支付密钥), mchId(商户号)
Properties props = new Properties ();
InputStream in = Object . class . getResourceAsStream ( "/dev.properties" );
props . load ( in );
in . close ();
// 配置证书,退款需要证书,不配置可测试除退款的接口
Path path = Paths . get ( "/path/to/your_cert.p12" );
byte [] data = Files . readAllBytes ( path );
wepay = WepayBuilder . newBuilder (
props . getProperty ( "appId" ),
props . getProperty ( "appKey" ),
props . getProperty ( "mchId" ))
. certPasswd ( props . getProperty ( "mchId" ))
. certs ( data )
. build ();
wepay-demo專案是一個可運行web項目,方便測試,可依下列步驟進行測試,複製wepay-demo中的app-example.properties
為app.properties
,並作對應設定:
# 微信app id
appId =
# 微信支付key
appKey =
# 商户号
mchId =
# 支付通知url
payNotifyUrl = $ { your_domain } / notifies / paid
注意:** payNotifyUrl
**應該配置為微信伺服器可以外網呼叫的位址,本地測試建議使用ngrok工具來作本地外網映射。
到wepay-demo根目錄執行以下命令即可:
mvn clean jetty:run -Dmaven.test.skip -Djetty.port={自定义端口号}
動態二維碼支付可存取(請求正常後,會出現由聯圖產生的二維碼圖片,用微信掃描付款成功後,後台會得到對應通知Notifies
):
http://localhost:{port}/pays/qrpay ? orderNumber={自定义订单号}
退款可存取(提交成功後,微信會有訊息通知):
http://localhost:{port}/refunds/apply ? orderNumber={商户订单号} ` ` `
相關文件:
歷史版本:
1.0.0:
1.1.0:
1.1.1:
1.1.2:
1.2.2:
1.2.3:
1.2.4:
1.2.5:
1.3.0:
1.3.1:
goods_tag
欄位名。1.3.2:
clientIp
字段為clientIp
。相關組件:
支付寶:
微信: