Importación de paquetes:
< dependency >
< groupId >me.hao0</ groupId >
< artifactId >wepay-core</ artifactId >
< version >1.3.2</ version >
</ dependency >
Paquetes dependientes, preste atención a si es necesario excluirlos al presentar el proyecto:
< dependency >
< groupId >me.hao0</ groupId >
< artifactId >common</ artifactId >
< version >1.1.2</ version >
</ dependency >
Uso básico:
Wepay wepay = WepayBuilder
. newBuilder ( appId , appKey , mchId )
. config1 (...) // 其他可选配置
...
. build ();
wepay . module (). api ();
Componentes implementados:
pay()
;refund()
;order()
;notify()
;bill()
.Documentación API aquí.
Acerca de las pruebas :
Los casos de prueba incluyen algunas pruebas básicas que requieren cierta configuración:
// 在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 ();
El proyecto wepay-demo es un proyecto web ejecutable, lo cual es conveniente para realizar pruebas. Puede probarlo de acuerdo con los siguientes pasos. Copie app-example.properties
en wepay-demo en app.properties
y configúrelo en consecuencia:
# 微信app id
appId =
# 微信支付key
appKey =
# 商户号
mchId =
# 支付通知url
payNotifyUrl = $ { your_domain } / notifies / paid
Nota : ** payNotifyUrl
** debe configurarse como una dirección a la que el servidor WeChat pueda llamar desde la red externa. Para pruebas locales, se recomienda utilizar la herramienta ngrok para el mapeo de redes locales y externas.
Vaya al directorio raíz de wepay-demo y ejecute el siguiente comando:
mvn clean jetty:run -Dmaven.test.skip -Djetty.port={自定义端口号}
Se puede acceder al pago con código QR dinámico ( después de que la solicitud sea normal, aparecerá la imagen del código QR generada por Liantu. Después de que el pago se realice correctamente escaneando con WeChat, se recibirá la Notifies
correspondiente en segundo plano ):
http://localhost:{port}/pays/qrpay ? orderNumber={自定义订单号}
Se puede acceder al reembolso ( después de un envío exitoso, se notificará un mensaje en WeChat ):
http://localhost:{port}/refunds/apply ? orderNumber={商户订单号} ` ` `
Documentos relacionados:
Versión histórica:
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
en clientIp
.Componentes relacionados:
Alipay:
WeChat: