public class WechatPayCallback extends Object
注意:开发者应该保证回调调用的幂等性
支付通知http应答码为200或204才会当作正常接收,当回调处理异常时,应答的HTTP状态码应为500,或者4xx。
| Modifier and Type | Class and Description |
|---|---|
(package private) static class |
WechatPayCallback.EventType
事件类型用于处理回调.
|
| Modifier and Type | Field and Description |
|---|---|
private static com.fasterxml.jackson.databind.ObjectMapper |
MAPPER
The constant MAPPER.
|
private SignatureProvider |
signatureProvider
The Signature provider.
|
private String |
tenantId
The Tenant id.
|
| Constructor and Description |
|---|
WechatPayCallback(SignatureProvider signatureProvider,
String tenantId)
Instantiates a new Wechat pay callback.
|
private static final com.fasterxml.jackson.databind.ObjectMapper MAPPER
private final SignatureProvider signatureProvider
private final String tenantId
public WechatPayCallback(SignatureProvider signatureProvider, String tenantId)
signatureProvider - the signature providertenantId - the tenant idpublic Map<String,?> couponCallback(ResponseSignVerifyParams params, Consumer<CouponConsumeData> consumeDataConsumer)
params - the paramsconsumeDataConsumer - the consume data consumerpublic Map<String,?> transactionCallback(ResponseSignVerifyParams params, Consumer<TransactionConsumeData> consumeDataConsumer)
无需开发者判断,只有扣款成功微信才会回调此接口
params - the paramsconsumeDataConsumer - the consume data consumerpublic Map<String,?> combineTransactionCallback(ResponseSignVerifyParams params, Consumer<CombineTransactionConsumeData> consumeDataConsumer)
无需开发者判断,只有扣款成功微信才会回调此接口
params - the paramsconsumeDataConsumer - the consume data consumerpublic Map<String,?> payscoreUserOrderCallback(ResponseSignVerifyParams params, PayScoreConsumer payScoreConsumer)
该链接是通过商户 创建支付分订单 提交notify_url参数,必须为https协议。如果链接无法访问,商户将无法接收到微信通知。 通知url必须为直接可访问的url,不能携带参数。示例: “https://pay.weixin.qq.com/wxpay/pay.action”
params - the paramspayScoreConsumer - the pay score consumerpublic Map<String,?> permissionCallback(ResponseSignVerifyParams params, Consumer<PayScoreUserPermissionConsumeData> consumeDataConsumer)
微信支付分通过授权/解除授权服务通知接口将用户过授权/解除授权服务消息通知给商户
普通授权模式是通过[商户入驻配置申请表]提交service_notify_url设置,预授权模式是通过[商户预授权]提交的notify_url设置,必须为https协议。如果链接无法访问,商户将无法接收到微信通知。 通知url必须为直接可访问的url,不能携带参数。示例: “https://pay.weixin.qq.com/wxpay/pay.action”
params - the paramsconsumeDataConsumer - the consume data consumerpublic Map<String,?> discountCardCallback(ResponseSignVerifyParams params, DiscountCardConsumer discountCardConsumer)
用户领取优惠卡后或者用户守约状态发生变更后或扣费状态变化后,微信会把对应信息发送给商户。
该链接是通过商户预受理领卡请求中提交notify_url参数,必须为https协议。如果链接无法访问,商户将无法接收到微信通知。 通知url必须为直接可访问的url,不能携带参数。示例: “https://pay.weixin.qq.com/wxpay/pay.action”
params - the paramsdiscountCardConsumer - the discount card consumerpublic Map<String,?> busiFavorReceiveCallback(ResponseSignVerifyParams params, Consumer<BusiFavorReceiveConsumeData> consumeDataConsumer)
领券完成后,微信会把相关支付结果和用户信息发送给商户,商户需要接收处理,并按照文档规范返回应答。出于安全的考虑,我们对支付结果数据进行了加密,商户需要先对通知数据进行解密,才能得到支付结果数据。
该链接是通过商户设置商家券事件通知地址API中提交notify_url参数,必须为https协议。如果链接无法访问,商户将无法接收到微信通知。 通知url必须为直接可访问的url,不能携带参数。示例: “https://pay.weixin.qq.com/wxpay/pay.action”
params - the paramsconsumeDataConsumer - the consume data consumerpublic Map<String,?> refundCallback(ResponseSignVerifyParams params, Consumer<RefundConsumeData> consumeDataConsumer)
退款状态改变后,微信会把相关退款结果发送给商户。
params - the paramsconsumeDataConsumer - the consume data consumerprivate String callback(ResponseSignVerifyParams params, WechatPayCallback.EventType eventType)
params - the paramseventType - the event typeprivate CallbackParams resolve(ResponseSignVerifyParams params) throws com.fasterxml.jackson.core.JsonProcessingException
params - the paramscom.fasterxml.jackson.core.JsonProcessingException - the json processing exceptionprivate String decrypt(CallbackParams callbackParams)
callbackParams - the callback paramsCopyright © 2021. All rights reserved.