diff --git a/docs/WechatTenpayV3/Basic_ModelDefinition.md b/docs/WechatTenpayV3/Basic_ModelDefinition.md
index b63d6381..fd76fc43 100644
--- a/docs/WechatTenpayV3/Basic_ModelDefinition.md
+++ b/docs/WechatTenpayV3/Basic_ModelDefinition.md
@@ -456,6 +456,13 @@
- 将电子发票插入微信用户卡包:`CreateNewTaxControlFapiaoApplicationCard`
+
+ - 商家充值
+
+ - 申请银行转账充值:`ApplyBankTransferRecharge`
+
+ - 查询银行转账充值结果:`GetBankTransferRechargeByOutRechargeNumber`
+
- 扩展工具
- 分账
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Extensions/WechatTenpayClientExecuteRechargeExtensions.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Extensions/WechatTenpayClientExecuteRechargeExtensions.cs
new file mode 100644
index 00000000..8af6b102
--- /dev/null
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Extensions/WechatTenpayClientExecuteRechargeExtensions.cs
@@ -0,0 +1,56 @@
+using System;
+using System.Net.Http;
+using System.Threading;
+using System.Threading.Tasks;
+using Flurl;
+using Flurl.Http;
+
+namespace SKIT.FlurlHttpClient.Wechat.TenpayV3
+{
+ public static class WechatTenpayClientExecuteRechargeExtensions
+ {
+ ///
+ /// 异步调用 [POST] /recharge/bank-transfer-recharges/apply 接口。
+ ///
+ /// REF:
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ public static async Task ExecuteApplyBankTransferRechargeAsync(this WechatTenpayClient client, Models.ApplyBankTransferRechargeRequest request, CancellationToken cancellationToken = default)
+ {
+ if (client is null) throw new ArgumentNullException(nameof(client));
+ if (request is null) throw new ArgumentNullException(nameof(request));
+
+ IFlurlRequest flurlReq = client
+ .CreateFlurlRequest(request, HttpMethod.Post, "recharge", "bank-transfer-recharges", "apply");
+
+ return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
+ }
+
+ ///
+ /// 异步调用 [GET] /recharge/bank-transfer-recharges/out-recharge-no/{out_recharge_no} 接口。
+ ///
+ /// REF:
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ ///
+ public static async Task ExecuteGetBankTransferRechargeByOutRechargeNumberAsync(this WechatTenpayClient client, Models.GetBankTransferRechargeByOutRechargeNumberRequest request, CancellationToken cancellationToken = default)
+ {
+ if (client is null) throw new ArgumentNullException(nameof(client));
+ if (request is null) throw new ArgumentNullException(nameof(request));
+
+ IFlurlRequest flurlReq = client
+ .CreateFlurlRequest(request, HttpMethod.Get, "recharge", "bank-transfer-recharges", "out-recharge-no", request.OutRechargeNumber);
+
+ return await client.SendFlurlRequestAsJsonAsync(flurlReq, data: request, cancellationToken: cancellationToken).ConfigureAwait(false);
+ }
+ }
+}
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/Recharge/ApplyBankTransferRechargeRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/Recharge/ApplyBankTransferRechargeRequest.cs
new file mode 100644
index 00000000..52f9b764
--- /dev/null
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/Recharge/ApplyBankTransferRechargeRequest.cs
@@ -0,0 +1,56 @@
+namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
+{
+ ///
+ /// 表示 [POST] /recharge/bank-transfer-recharges/apply 接口的请求。
+ ///
+ public class ApplyBankTransferRechargeRequest : WechatTenpayRequest
+ {
+ public static class Types
+ {
+ public class RechargeAmount
+ {
+ ///
+ /// 获取或设置金额(单位:分)。
+ ///
+ [Newtonsoft.Json.JsonProperty("amount")]
+ [System.Text.Json.Serialization.JsonPropertyName("amount")]
+ public int? Amount { get; set; }
+
+ ///
+ /// 获取或设置币种。
+ ///
+ [Newtonsoft.Json.JsonProperty("currency")]
+ [System.Text.Json.Serialization.JsonPropertyName("currency")]
+ public string? Currency { get; set; }
+ }
+ }
+
+ ///
+ /// 获取或设置商户充值单号。
+ ///
+ [Newtonsoft.Json.JsonProperty("out_recharge_no")]
+ [System.Text.Json.Serialization.JsonPropertyName("out_recharge_no")]
+ public string OutRechargeNumber { get; set; } = string.Empty;
+
+ ///
+ /// 获取或设置充值场景。
+ ///
+ [Newtonsoft.Json.JsonProperty("recharge_scene")]
+ [System.Text.Json.Serialization.JsonPropertyName("recharge_scene")]
+ public string RechargeScene { get; set; } = string.Empty;
+
+ ///
+ /// 获取或设置充值入账账户。
+ ///
+ [Newtonsoft.Json.JsonProperty("account_type")]
+ [System.Text.Json.Serialization.JsonPropertyName("account_type")]
+ public string AccountType { get; set; } = string.Empty;
+
+ ///
+ /// 获取或设置充值金额信息。
+ ///
+ [Newtonsoft.Json.JsonProperty("recharge_amount")]
+ [System.Text.Json.Serialization.JsonPropertyName("recharge_amount")]
+ public Types.RechargeAmount RechargeAmount { get; set; } = new Types.RechargeAmount();
+ }
+}
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/Recharge/ApplyBankTransferRechargeResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/Recharge/ApplyBankTransferRechargeResponse.cs
new file mode 100644
index 00000000..8d227311
--- /dev/null
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/Recharge/ApplyBankTransferRechargeResponse.cs
@@ -0,0 +1,70 @@
+namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
+{
+ ///
+ /// 表示 [POST] /recharge/bank-transfer-recharges/apply 接口的响应。
+ ///
+ public class ApplyBankTransferRechargeResponse : WechatTenpayResponse
+ {
+ public static class Types
+ {
+ public class TransferInAccount
+ {
+ ///
+ /// 获取或设置开户银行名称。
+ ///
+ [Newtonsoft.Json.JsonProperty("bank_name")]
+ [System.Text.Json.Serialization.JsonPropertyName("bank_name")]
+ public string? BankName { get; set; }
+
+ ///
+ /// 获取或设置开户银行省市编码。
+ ///
+ [Newtonsoft.Json.JsonProperty("bank_address_code")]
+ [System.Text.Json.Serialization.JsonPropertyName("bank_address_code")]
+ public string? BankAddressCode { get; set; }
+
+ ///
+ /// 获取或设置开户银行行号。
+ ///
+ [Newtonsoft.Json.JsonProperty("bank_code")]
+ [System.Text.Json.Serialization.JsonPropertyName("bank_code")]
+ public string? BankCode { get; set; }
+
+ ///
+ /// 获取或设置银行账户名称。
+ ///
+ [Newtonsoft.Json.JsonProperty("bank_account_name")]
+ [System.Text.Json.Serialization.JsonPropertyName("bank_account_name")]
+ public string? BankAccountName { get; set; }
+
+ ///
+ /// 获取或设置银行账号。
+ ///
+ [Newtonsoft.Json.JsonProperty("bank_account_no")]
+ [System.Text.Json.Serialization.JsonPropertyName("bank_account_no")]
+ public string? BankAccountNumber { get; set; }
+ }
+ }
+
+ ///
+ /// 获取或设置商户充值单号。
+ ///
+ [Newtonsoft.Json.JsonProperty("out_recharge_no")]
+ [System.Text.Json.Serialization.JsonPropertyName("out_recharge_no")]
+ public string OutRechargeNumber { get; set; } = default!;
+
+ ///
+ /// 获取或设置微信充值单号。
+ ///
+ [Newtonsoft.Json.JsonProperty("recharge_id")]
+ [System.Text.Json.Serialization.JsonPropertyName("recharge_id")]
+ public string RechargeId { get; set; } = default!;
+
+ ///
+ /// 获取或设置充值目标账户。
+ ///
+ [Newtonsoft.Json.JsonProperty("transfer_in_account")]
+ [System.Text.Json.Serialization.JsonPropertyName("transfer_in_account")]
+ public Types.TransferInAccount TransferInAccount { get; set; } = default!;
+ }
+}
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/Recharge/GetBankTransferRechargeByOutRechargeNumberRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/Recharge/GetBankTransferRechargeByOutRechargeNumberRequest.cs
new file mode 100644
index 00000000..8ce00a63
--- /dev/null
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/Recharge/GetBankTransferRechargeByOutRechargeNumberRequest.cs
@@ -0,0 +1,15 @@
+namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
+{
+ ///
+ /// 表示 [GET] /recharge/bank-transfer-recharges/out-recharge-no/{out_recharge_no} 接口的请求。
+ ///
+ public class GetBankTransferRechargeByOutRechargeNumberRequest : WechatTenpayRequest
+ {
+ ///
+ /// 获取或设置商户充值单号。
+ ///
+ [Newtonsoft.Json.JsonIgnore]
+ [System.Text.Json.Serialization.JsonIgnore]
+ public string OutRechargeNumber { get; set; } = string.Empty;
+ }
+}
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/Recharge/GetBankTransferRechargeByOutRechargeNumberResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/Recharge/GetBankTransferRechargeByOutRechargeNumberResponse.cs
new file mode 100644
index 00000000..3919787b
--- /dev/null
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/Recharge/GetBankTransferRechargeByOutRechargeNumberResponse.cs
@@ -0,0 +1,167 @@
+using System;
+
+namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
+{
+ ///
+ /// 表示 [GET] /recharge/bank-transfer-recharges/out-recharge-no/{out_recharge_no} 接口的响应。
+ ///
+ public class GetBankTransferRechargeByOutRechargeNumberResponse : WechatTenpayResponse
+ {
+ public static class Types
+ {
+ public class RechargeAmount
+ {
+ ///
+ /// 获取或设置金额(单位:分)。
+ ///
+ [Newtonsoft.Json.JsonProperty("amount")]
+ [System.Text.Json.Serialization.JsonPropertyName("amount")]
+ public int? Amount { get; set; }
+
+ ///
+ /// 获取或设置币种。
+ ///
+ [Newtonsoft.Json.JsonProperty("currency")]
+ [System.Text.Json.Serialization.JsonPropertyName("currency")]
+ public string? Currency { get; set; }
+ }
+
+ public class BankTransferInfo
+ {
+ ///
+ /// 获取或设置转入的银行流水单号。
+ ///
+ [Newtonsoft.Json.JsonProperty("bill_no")]
+ [System.Text.Json.Serialization.JsonPropertyName("bill_no")]
+ public string? BillNumber { get; set; }
+
+ ///
+ /// 获取或设置转账充值附言。
+ ///
+ [Newtonsoft.Json.JsonProperty("memo")]
+ [System.Text.Json.Serialization.JsonPropertyName("memo")]
+ public string? Memo { get; set; }
+
+ ///
+ /// 获取或设置银行转账退回时间。
+ ///
+ [Newtonsoft.Json.JsonProperty("return_time")]
+ [Newtonsoft.Json.JsonConverter(typeof(Newtonsoft.Json.Converters.Common.Rfc3339DateTimeOffsetConverter))]
+ [System.Text.Json.Serialization.JsonPropertyName("return_time")]
+ [System.Text.Json.Serialization.JsonConverter(typeof(System.Text.Json.Serialization.Common.Rfc3339DateTimeOffsetConverter))]
+ public DateTimeOffset? ReturnTime { get; set; }
+
+ ///
+ /// 获取或设置银行转账退回原因。
+ ///
+ [Newtonsoft.Json.JsonProperty("return_reason")]
+ [System.Text.Json.Serialization.JsonPropertyName("return_reason")]
+ public string? ReturnReason { get; set; }
+
+ ///
+ /// 获取或设置开户银行名称。
+ ///
+ [Newtonsoft.Json.JsonProperty("bank_name")]
+ [System.Text.Json.Serialization.JsonPropertyName("bank_name")]
+ public string? BankName { get; set; }
+
+ ///
+ /// 获取或设置银行卡号后四位。
+ ///
+ [Newtonsoft.Json.JsonProperty("bank_card_tail")]
+ [System.Text.Json.Serialization.JsonPropertyName("bank_card_tail")]
+ public string? BankCardNumberTail { get; set; }
+ }
+ }
+
+ ///
+ /// 获取或设置微信商户号。
+ ///
+ [Newtonsoft.Json.JsonProperty("mchid")]
+ [System.Text.Json.Serialization.JsonPropertyName("mchid")]
+ public string MerchantId { get; set; } = default!;
+
+ ///
+ /// 获取或设置商户充值单号。
+ ///
+ [Newtonsoft.Json.JsonProperty("out_recharge_no")]
+ [System.Text.Json.Serialization.JsonPropertyName("out_recharge_no")]
+ public string OutRechargeNumber { get; set; } = default!;
+
+ ///
+ /// 获取或设置微信充值单号。
+ ///
+ [Newtonsoft.Json.JsonProperty("recharge_id")]
+ [System.Text.Json.Serialization.JsonPropertyName("recharge_id")]
+ public string RechargeId { get; set; } = default!;
+
+ ///
+ /// 获取或设置充值场景。
+ ///
+ [Newtonsoft.Json.JsonProperty("recharge_scene")]
+ [System.Text.Json.Serialization.JsonPropertyName("recharge_scene")]
+ public string RechargeScene { get; set; } = default!;
+
+ ///
+ /// 获取或设置充值状态。
+ ///
+ [Newtonsoft.Json.JsonProperty("recharge_state")]
+ [System.Text.Json.Serialization.JsonPropertyName("recharge_state")]
+ public string RechargeState { get; set; } = default!;
+
+ ///
+ /// 获取或设置充值状态描述。
+ ///
+ [Newtonsoft.Json.JsonProperty("recharge_state_desc")]
+ [System.Text.Json.Serialization.JsonPropertyName("recharge_state_desc")]
+ public string? RechargeSceneDescription { get; set; }
+
+ ///
+ /// 获取或设置充值入账账户。
+ ///
+ [Newtonsoft.Json.JsonProperty("account_type")]
+ [System.Text.Json.Serialization.JsonPropertyName("account_type")]
+ public string AccountType { get; set; } = default!;
+
+ ///
+ /// 获取或设置充值金额信息。
+ ///
+ [Newtonsoft.Json.JsonProperty("recharge_amount")]
+ [System.Text.Json.Serialization.JsonPropertyName("recharge_amount")]
+ public Types.RechargeAmount RechargeAmount { get; set; } = default!;
+
+ ///
+ /// 获取或设置转账充值的付款信息。
+ ///
+ [Newtonsoft.Json.JsonProperty("bank_transfer_info")]
+ [System.Text.Json.Serialization.JsonPropertyName("bank_transfer_info")]
+ public Types.BankTransferInfo? BankTransferInfo { get; set; }
+
+ ///
+ /// 获取或设置充值受理时间。
+ ///
+ [Newtonsoft.Json.JsonProperty("accept_time")]
+ [Newtonsoft.Json.JsonConverter(typeof(Newtonsoft.Json.Converters.Common.Rfc3339DateTimeOffsetConverter))]
+ [System.Text.Json.Serialization.JsonPropertyName("accept_time")]
+ [System.Text.Json.Serialization.JsonConverter(typeof(System.Text.Json.Serialization.Common.Rfc3339DateTimeOffsetConverter))]
+ public DateTimeOffset? AcceptTime { get; set; }
+
+ ///
+ /// 获取或设置充值成功时间。
+ ///
+ [Newtonsoft.Json.JsonProperty("success_time")]
+ [Newtonsoft.Json.JsonConverter(typeof(Newtonsoft.Json.Converters.Common.Rfc3339DateTimeOffsetConverter))]
+ [System.Text.Json.Serialization.JsonPropertyName("success_time")]
+ [System.Text.Json.Serialization.JsonConverter(typeof(System.Text.Json.Serialization.Common.Rfc3339DateTimeOffsetConverter))]
+ public DateTimeOffset? SuccessTime { get; set; }
+
+ ///
+ /// 获取或设置充值关闭时间。
+ ///
+ [Newtonsoft.Json.JsonProperty("close_time")]
+ [Newtonsoft.Json.JsonConverter(typeof(Newtonsoft.Json.Converters.Common.Rfc3339DateTimeOffsetConverter))]
+ [System.Text.Json.Serialization.JsonPropertyName("close_time")]
+ [System.Text.Json.Serialization.JsonConverter(typeof(System.Text.Json.Serialization.Common.Rfc3339DateTimeOffsetConverter))]
+ public DateTimeOffset? CloseTime { get; set; }
+ }
+}
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/_Partner/PlatformSolution/Ecommerce/Recharge/ApplyPlatformSolutionEcommerceBankTransferRechargeRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/_Partner/PlatformSolution/Ecommerce/Recharge/ApplyPlatformSolutionEcommerceBankTransferRechargeRequest.cs
index 3e0ef2ca..76980f58 100644
--- a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/_Partner/PlatformSolution/Ecommerce/Recharge/ApplyPlatformSolutionEcommerceBankTransferRechargeRequest.cs
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/_Partner/PlatformSolution/Ecommerce/Recharge/ApplyPlatformSolutionEcommerceBankTransferRechargeRequest.cs
@@ -7,7 +7,7 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
{
public static class Types
{
- public class RechargeAmount : ApplyPlatformSolutionEcommerceRechargeRequest.Types.RechargeAmount
+ public class RechargeAmount : ApplyBankTransferRechargeRequest.Types.RechargeAmount
{
}
}
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/_Partner/PlatformSolution/Ecommerce/Recharge/ApplyPlatformSolutionEcommerceBankTransferRechargeResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/_Partner/PlatformSolution/Ecommerce/Recharge/ApplyPlatformSolutionEcommerceBankTransferRechargeResponse.cs
index ed19ff26..5afe4c7f 100644
--- a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/_Partner/PlatformSolution/Ecommerce/Recharge/ApplyPlatformSolutionEcommerceBankTransferRechargeResponse.cs
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/_Partner/PlatformSolution/Ecommerce/Recharge/ApplyPlatformSolutionEcommerceBankTransferRechargeResponse.cs
@@ -7,42 +7,8 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
{
public static class Types
{
- public class TransferInAccount
+ public class TransferInAccount : ApplyBankTransferRechargeResponse.Types.TransferInAccount
{
- ///
- /// 获取或设置开户银行名称。
- ///
- [Newtonsoft.Json.JsonProperty("bank_name")]
- [System.Text.Json.Serialization.JsonPropertyName("bank_name")]
- public string? BankName { get; set; }
-
- ///
- /// 获取或设置开户银行省市编码。
- ///
- [Newtonsoft.Json.JsonProperty("bank_address_code")]
- [System.Text.Json.Serialization.JsonPropertyName("bank_address_code")]
- public string? BankAddressCode { get; set; }
-
- ///
- /// 获取或设置开户银行行号。
- ///
- [Newtonsoft.Json.JsonProperty("bank_code")]
- [System.Text.Json.Serialization.JsonPropertyName("bank_code")]
- public string? BankCode { get; set; }
-
- ///
- /// 获取或设置银行账户名称。
- ///
- [Newtonsoft.Json.JsonProperty("bank_account_name")]
- [System.Text.Json.Serialization.JsonPropertyName("bank_account_name")]
- public string? BankAccountName { get; set; }
-
- ///
- /// 获取或设置银行账号。
- ///
- [Newtonsoft.Json.JsonProperty("bank_account_no")]
- [System.Text.Json.Serialization.JsonPropertyName("bank_account_no")]
- public string? BankAccountNumber { get; set; }
}
}
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/_Partner/PlatformSolution/Ecommerce/Recharge/ApplyPlatformSolutionEcommerceRechargeRequest.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/_Partner/PlatformSolution/Ecommerce/Recharge/ApplyPlatformSolutionEcommerceRechargeRequest.cs
index d21b3cd8..23287a8e 100644
--- a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/_Partner/PlatformSolution/Ecommerce/Recharge/ApplyPlatformSolutionEcommerceRechargeRequest.cs
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/_Partner/PlatformSolution/Ecommerce/Recharge/ApplyPlatformSolutionEcommerceRechargeRequest.cs
@@ -7,21 +7,8 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
{
public static class Types
{
- public class RechargeAmount
+ public class RechargeAmount : ApplyBankTransferRechargeRequest.Types.RechargeAmount
{
- ///
- /// 获取或设置金额(单位:分)。
- ///
- [Newtonsoft.Json.JsonProperty("amount")]
- [System.Text.Json.Serialization.JsonPropertyName("amount")]
- public int? Amount { get; set; }
-
- ///
- /// 获取或设置币种。
- ///
- [Newtonsoft.Json.JsonProperty("currency")]
- [System.Text.Json.Serialization.JsonPropertyName("currency")]
- public string? Currency { get; set; }
}
}
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/_Partner/PlatformSolution/Ecommerce/Recharge/GetPlatformSolutionEcommerceBankTransferRechargeByOutRechargeNumberResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/_Partner/PlatformSolution/Ecommerce/Recharge/GetPlatformSolutionEcommerceBankTransferRechargeByOutRechargeNumberResponse.cs
index a683fb38..49c00edb 100644
--- a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/_Partner/PlatformSolution/Ecommerce/Recharge/GetPlatformSolutionEcommerceBankTransferRechargeByOutRechargeNumberResponse.cs
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/_Partner/PlatformSolution/Ecommerce/Recharge/GetPlatformSolutionEcommerceBankTransferRechargeByOutRechargeNumberResponse.cs
@@ -9,11 +9,11 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
{
public static class Types
{
- public class RechargeAmount : GetPlatformSolutionEcommerceRechargeByOutRechargeNumberResponse.Types.RechargeAmount
+ public class RechargeAmount : GetBankTransferRechargeByOutRechargeNumberResponse.Types.RechargeAmount
{
}
- public class BankTransferInfo : GetPlatformSolutionEcommerceRechargeByOutRechargeNumberResponse.Types.BankTransferInfo
+ public class BankTransferInfo : GetBankTransferRechargeByOutRechargeNumberResponse.Types.BankTransferInfo
{
}
}
diff --git a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/_Partner/PlatformSolution/Ecommerce/Recharge/GetPlatformSolutionEcommerceRechargeByOutRechargeNumberResponse.cs b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/_Partner/PlatformSolution/Ecommerce/Recharge/GetPlatformSolutionEcommerceRechargeByOutRechargeNumberResponse.cs
index dde2b203..2fdf140c 100644
--- a/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/_Partner/PlatformSolution/Ecommerce/Recharge/GetPlatformSolutionEcommerceRechargeByOutRechargeNumberResponse.cs
+++ b/src/SKIT.FlurlHttpClient.Wechat.TenpayV3/Models/_Partner/PlatformSolution/Ecommerce/Recharge/GetPlatformSolutionEcommerceRechargeByOutRechargeNumberResponse.cs
@@ -9,68 +9,12 @@ namespace SKIT.FlurlHttpClient.Wechat.TenpayV3.Models
{
public static class Types
{
- public class RechargeAmount
+ public class RechargeAmount : GetBankTransferRechargeByOutRechargeNumberResponse.Types.RechargeAmount
{
- ///
- /// 获取或设置金额(单位:分)。
- ///
- [Newtonsoft.Json.JsonProperty("amount")]
- [System.Text.Json.Serialization.JsonPropertyName("amount")]
- public int? Amount { get; set; }
-
- ///
- /// 获取或设置币种。
- ///
- [Newtonsoft.Json.JsonProperty("currency")]
- [System.Text.Json.Serialization.JsonPropertyName("currency")]
- public string? Currency { get; set; }
}
- public class BankTransferInfo
+ public class BankTransferInfo : GetBankTransferRechargeByOutRechargeNumberResponse.Types.BankTransferInfo
{
- ///
- /// 获取或设置转入的银行流水单号。
- ///
- [Newtonsoft.Json.JsonProperty("bill_no")]
- [System.Text.Json.Serialization.JsonPropertyName("bill_no")]
- public string? BillNumber { get; set; }
-
- ///
- /// 获取或设置转账充值附言。
- ///
- [Newtonsoft.Json.JsonProperty("memo")]
- [System.Text.Json.Serialization.JsonPropertyName("memo")]
- public string? Memo { get; set; }
-
- ///
- /// 获取或设置银行转账退回时间。
- ///
- [Newtonsoft.Json.JsonProperty("return_time")]
- [Newtonsoft.Json.JsonConverter(typeof(Newtonsoft.Json.Converters.Common.Rfc3339DateTimeOffsetConverter))]
- [System.Text.Json.Serialization.JsonPropertyName("return_time")]
- [System.Text.Json.Serialization.JsonConverter(typeof(System.Text.Json.Serialization.Common.Rfc3339DateTimeOffsetConverter))]
- public DateTimeOffset? ReturnTime { get; set; }
-
- ///
- /// 获取或设置银行转账退回原因。
- ///
- [Newtonsoft.Json.JsonProperty("return_reason")]
- [System.Text.Json.Serialization.JsonPropertyName("return_reason")]
- public string? ReturnReason { get; set; }
-
- ///
- /// 获取或设置开户银行名称。
- ///
- [Newtonsoft.Json.JsonProperty("bank_name")]
- [System.Text.Json.Serialization.JsonPropertyName("bank_name")]
- public string? BankName { get; set; }
-
- ///
- /// 获取或设置银行卡号后四位。
- ///
- [Newtonsoft.Json.JsonProperty("bank_card_tail")]
- [System.Text.Json.Serialization.JsonPropertyName("bank_card_tail")]
- public string? BankCardNumberTail { get; set; }
}
public class QrRechargeInfo
diff --git a/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/Recharge/ApplyBankTransferRechargeRequest.json b/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/Recharge/ApplyBankTransferRechargeRequest.json
new file mode 100644
index 00000000..c71cbfeb
--- /dev/null
+++ b/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/Recharge/ApplyBankTransferRechargeRequest.json
@@ -0,0 +1,9 @@
+{
+ "account_type": "BASIC",
+ "out_recharge_no": "cz202407181234",
+ "recharge_amount": {
+ "amount": 500000,
+ "currency": "CNY"
+ },
+ "recharge_scene": "NORMAL_BANK_TRANSFER"
+}
diff --git a/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/Recharge/ApplyBankTransferRechargeResponse.json b/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/Recharge/ApplyBankTransferRechargeResponse.json
new file mode 100644
index 00000000..97bce6b8
--- /dev/null
+++ b/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/Recharge/ApplyBankTransferRechargeResponse.json
@@ -0,0 +1,11 @@
+{
+ "out_recharge_no": "cz202407181234",
+ "recharge_id": "172207846292553701",
+ "transfer_in_account": {
+ "bank_account_name": "某某某有限公司",
+ "bank_account_no": "686000172489957748585801",
+ "bank_address_code": "440300",
+ "bank_code": "991584000049",
+ "bank_name": "财付通-备付金账户"
+ }
+}
diff --git a/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/Recharge/GetBankTransferRechargeByOutRechargeNumberResponse.json b/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/Recharge/GetBankTransferRechargeByOutRechargeNumberResponse.json
new file mode 100644
index 00000000..5151468e
--- /dev/null
+++ b/test/SKIT.FlurlHttpClient.Wechat.TenpayV3.UnitTests/ModelSamples/_/Recharge/GetBankTransferRechargeByOutRechargeNumberResponse.json
@@ -0,0 +1,21 @@
+{
+ "accept_time": "2024-09-18T16:52:44+08:00",
+ "account_type": "BASIC",
+ "bank_transfer_info": {
+ "bank_card_tail": "7310",
+ "bank_name": "招商银行",
+ "bill_no": "bank_bill_no_8923918116",
+ "memo": "测试附言"
+ },
+ "mchid": "2600017184",
+ "out_recharge_no": "test260001718403",
+ "recharge_amount": {
+ "amount": 800000000,
+ "currency": "CNY"
+ },
+ "recharge_id": "172664956467128801",
+ "recharge_scene": "NORMAL_BANK_TRANSFER",
+ "recharge_state": "SUCCESS",
+ "recharge_state_desc": "充值成功",
+ "success_time": "2024-09-18T16:53:06+08:00"
+}