com.zopen.alipay.pay.service.AliPayInterface Maven / Gradle / Ivy
Show all versions of zopen-ato-starter Show documentation
package com.zopen.alipay.pay.service;
import com.zcj.web.dto.ServiceResult;
import java.math.BigDecimal;
import java.util.Date;
/**
* 实现此接口来处理支付结果回调
*
* @author [email protected]
* @since 2019/8/25
*/
public interface AliPayInterface {
/**
* 支付结果通知处理(包括:支付成功、交易完成、交易关闭)
*
* 1、处理前建议判断 total_amount 是否确实为该订单的实际金额(即商户订单创建时的金额)
*
* 2、处理前建议校验通知中的 seller_id/seller_email 是否为 out_trade_no 这笔单据对应的操作方(一个商户可能有多个 seller_id/seller_email)
*
* 3、25 小时以内完成 8 次通知(通知的间隔频率一般是:4m,10m,10m,1h,2h,6h,15h),8 次通知的 notify_id 不变
*
* @param out_trade_no 商户订单号*
* @param trade_no 支付宝交易号*
* @param total_amount 订单总金额(元)*
* @param refund_fee 退款通知中,返回总退款金额(元)
* @param seller_id 卖家支付宝用户号*
* @param seller_email 卖家支付宝账号*
* @param trade_status 交易状态*
* @param gmt_payment 该笔交易的买家付款时间*
* @param gmt_refund 该笔交易的退款时间
* @return com.zcj.web.dto.ServiceResult 处理是否成功(如果不需要支付宝重复通知,就返回成功)
*/
ServiceResult payCallback(String out_trade_no, String trade_no, BigDecimal total_amount, BigDecimal refund_fee,
String seller_id, String seller_email, String trade_status, Date gmt_payment, Date gmt_refund);
}