mirror of
https://gitee.com/binary/weixin-java-tools.git
synced 2026-03-10 00:13:40 +08:00
🎨 【微信支付】完善微信商家转账功能API !151
This commit is contained in:
@@ -128,6 +128,57 @@ public interface TransferService {
|
||||
*/
|
||||
TransferBillsResult transferBills(TransferBillsRequest request) throws WxPayException;
|
||||
|
||||
/**
|
||||
* <pre>
|
||||
*
|
||||
* 2025.1.15 开始新接口 撤销转账API
|
||||
*
|
||||
* 请求方式:POST(HTTPS)
|
||||
* 请求地址:<a href="https://api.mch.weixin.qq.com/v3/fund-app/mch-transfer/transfer-bills/out-bill-no/{out_bill_no}/cancel">请求地址</a>
|
||||
*
|
||||
* 文档地址:<a href="https://pay.weixin.qq.com/doc/v3/merchant/4012716458">商户撤销转账API</a>
|
||||
* </pre>
|
||||
*
|
||||
* @param outBillNo 【商户单号】 商户系统内部的商家单号,要求此参数只能由数字、大小写字母组成,在商户系统内部唯一
|
||||
* @return TransformBillsGetResult 转账单
|
||||
* @throws WxPayException .
|
||||
*/
|
||||
TransferBillsCancelResult transformBillsCancel(String outBillNo) throws WxPayException;
|
||||
|
||||
/**
|
||||
* <pre>
|
||||
*
|
||||
* 2025.1.15 开始新接口 发起商家转账API
|
||||
*
|
||||
* 请求方式:GET(HTTPS)
|
||||
* 请求地址:<a href="https://api.mch.weixin.qq.com/v3/fund-app/mch-transfer/transfer-bills/out-bill-no/{out_bill_no}">请求地址</a>
|
||||
*
|
||||
* 文档地址:<a href="https://pay.weixin.qq.com/doc/v3/merchant/4012716437">商户单号查询转账单API</a>
|
||||
* </pre>
|
||||
*
|
||||
* @param outBillNo 【商户单号】 商户系统内部的商家单号,要求此参数只能由数字、大小写字母组成,在商户系统内部唯一
|
||||
* @return TransformBillsGetResult 转账单
|
||||
* @throws WxPayException .
|
||||
*/
|
||||
TransferBillsGetResult getBillsByOutBillNo(String outBillNo) throws WxPayException;
|
||||
|
||||
/**
|
||||
* <pre>
|
||||
*
|
||||
* 2025.1.15 开始新接口 微信单号查询转账单API
|
||||
*
|
||||
* 请求方式:GET(HTTPS)
|
||||
* 请求地址:<a href="https://api.mch.weixin.qq.com/v3/fund-app/mch-transfer/transfer-bills/transfer-bill-no/{transfer_bill_no}">请求地址</a>
|
||||
*
|
||||
* 文档地址:<a href="https://pay.weixin.qq.com/doc/v3/merchant/4012716437">商户单号查询转账单API</a>
|
||||
* </pre>
|
||||
*
|
||||
* @param transferBillNo 【微信转账单号】 微信转账单号,微信商家转账系统返回的唯一标识
|
||||
* @return TransformBillsGetResult 转账单
|
||||
* @throws WxPayException .
|
||||
*/
|
||||
TransferBillsGetResult getBillsByTransferBillNo(String transferBillNo) throws WxPayException;
|
||||
|
||||
/**
|
||||
* 2025.1.15 开始新接口 解析商家转账结果
|
||||
* 详见<a href="https://pay.weixin.qq.com/doc/v3/merchant/4012712115"></a>
|
||||
|
||||
@@ -48,8 +48,7 @@ public class TransferServiceImpl implements TransferService {
|
||||
if (request.getNeedQueryDetail()) {
|
||||
url = String.format("%s/v3/transfer/batches/batch-id/%s?need_query_detail=true&offset=%s&limit=%s&detail_status=%s",
|
||||
this.payService.getPayBaseUrl(), request.getBatchId(), request.getOffset(), request.getLimit(), request.getDetailStatus());
|
||||
}
|
||||
else {
|
||||
} else {
|
||||
url = String.format("%s/v3/transfer/batches/batch-id/%s?need_query_detail=false",
|
||||
this.payService.getPayBaseUrl(), request.getBatchId());
|
||||
}
|
||||
@@ -70,8 +69,7 @@ public class TransferServiceImpl implements TransferService {
|
||||
if (request.getNeedQueryDetail()) {
|
||||
url = String.format("%s/v3/transfer/batches/out-batch-no/%s?need_query_detail=true&offset=%s&limit=%s&detail_status=%s",
|
||||
this.payService.getPayBaseUrl(), request.getOutBatchNo(), request.getOffset(), request.getLimit(), request.getDetailStatus());
|
||||
}
|
||||
else {
|
||||
} else {
|
||||
url = String.format("%s/v3/transfer/batches/out-batch-no/%s?need_query_detail=false",
|
||||
this.payService.getPayBaseUrl(), request.getOutBatchNo());
|
||||
}
|
||||
@@ -97,6 +95,31 @@ public class TransferServiceImpl implements TransferService {
|
||||
return GSON.fromJson(result, TransferBillsResult.class);
|
||||
}
|
||||
|
||||
@Override
|
||||
public TransferBillsCancelResult transformBillsCancel(String outBillNo) throws WxPayException {
|
||||
String url = String.format("%s/v3/fund-app/mch-transfer/transfer-bills/out-bill-no/%s/cancel",
|
||||
this.payService.getPayBaseUrl(), outBillNo);
|
||||
String result = this.payService.postV3(url, "");
|
||||
|
||||
return GSON.fromJson(result, TransferBillsCancelResult.class);
|
||||
}
|
||||
|
||||
@Override
|
||||
public TransferBillsGetResult getBillsByOutBillNo(String outBillNo) throws WxPayException {
|
||||
String url = String.format("%s/v3/fund-app/mch-transfer/transfer-bills/out-bill-no/%s",
|
||||
this.payService.getPayBaseUrl(), outBillNo);
|
||||
String result = this.payService.getV3(url);
|
||||
return GSON.fromJson(result, TransferBillsGetResult.class);
|
||||
}
|
||||
|
||||
@Override
|
||||
public TransferBillsGetResult getBillsByTransferBillNo(String transferBillNo) throws WxPayException {
|
||||
String url = String.format("%s/v3/fund-app/mch-transfer/transfer-bills/transfer-bill-no/%s",
|
||||
this.payService.getPayBaseUrl(), transferBillNo);
|
||||
String result = this.payService.getV3(url);
|
||||
return GSON.fromJson(result, TransferBillsGetResult.class);
|
||||
}
|
||||
|
||||
@Override
|
||||
public TransferBillsNotifyResult parseTransferBillsNotifyResult(String notifyData, SignatureHeader header) throws WxPayException {
|
||||
return this.payService.baseParseOrderNotifyV3Result(notifyData, header, TransferBillsNotifyResult.class, TransferBillsNotifyResult.DecryptNotifyResult.class);
|
||||
|
||||
Reference in New Issue
Block a user