-
Notifications
You must be signed in to change notification settings - Fork 484
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* [WeChatPay.V3] 实现 分账 - 请求分账 * [WeChatPay.V3] 实现 分账(服务商) - 分账动账通知 * [WeChatPay.V3] 实现 分账 - 查询分账结果 * 修正链接 * [WeChatPay.V3] 实现 分账 - 请求分账回退 * [WeChatPay.V3] 实现 分账 - 查询分账回退结果 * [WeChatPay.V3] 实现 分账 - 解冻剩余资金 * [WeChatPay.V3] 实现 分账 - 查询剩余待分金额 * [WeChatPay.V3] 实现 分账 - 查询最大分账比例 * . * [WeChatPay.V3] 实现 分账 - 添加分账接收方 * [WeChatPay.V3] 实现 分账 - 删除分账接收方 * 更新 README.md
- Loading branch information
Showing
29 changed files
with
1,654 additions
and
7 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
103 changes: 103 additions & 0 deletions
103
src/Essensoft.Paylink.WeChatPay/V3/Domain/ReceiverResponse.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,103 @@ | ||
using System.Text.Json.Serialization; | ||
|
||
namespace Essensoft.Paylink.WeChatPay.V3.Domain | ||
{ | ||
/// <summary> | ||
/// 分账接收方 | ||
/// </summary> | ||
public class ReceiverResponse : WeChatPayObject | ||
{ | ||
/// <summary> | ||
/// 分账金额 | ||
/// </summary> | ||
/// <remarks> | ||
/// 分账金额,单位为分,只能为整数,不能超过原订单支付金额及最大分账比例金额 | ||
/// <para>示例值: 100</para> | ||
/// </remarks> | ||
[JsonPropertyName("amount")] | ||
public int Amount { get; set; } | ||
|
||
/// <summary> | ||
/// 分账描述 | ||
/// </summary> | ||
/// <remarks> | ||
/// 分账的原因描述,分账账单中需要体现 | ||
/// <para>示例值: 分给商户1900000110</para> | ||
/// </remarks> | ||
[JsonPropertyName("description")] | ||
public string Description { get; set; } | ||
|
||
/// <summary> | ||
/// 分账接收方类型 | ||
/// </summary> | ||
/// <remarks> | ||
/// 1、MERCHANT_ID:商户号 | ||
/// 2、PERSONAL_OPENID:个人openid(由父商户APPID转换得到) | ||
/// 3、PERSONAL_SUB_OPENID: 个人sub_openid(由子商户APPID转换得到) | ||
/// <para>示例值: MERCHANT_ID</para> | ||
/// </remarks> | ||
[JsonPropertyName("type")] | ||
public string Type { get; set; } | ||
|
||
/// <summary> | ||
/// 分账接收方帐号 | ||
/// </summary> | ||
/// <remarks> | ||
/// 1、分账接收方类型为MERCHANT_ID时,分账接收方账号为商户号 | ||
/// 2、分账接收方类型为PERSONAL_OPENID时,分账接收方账号为个人openid | ||
/// 3、分账接收方类型为 | ||
/// PERSONAL_SUB_OPENID时,分账接收方账号为个人sub_openid | ||
/// <para>示例值: 1900000109</para> | ||
/// </remarks> | ||
[JsonPropertyName("account")] | ||
public string Account { get; set; } | ||
|
||
/// <summary> | ||
/// 分账结果 | ||
/// </summary> | ||
/// <remarks> | ||
/// 枚举值: | ||
/// 1、PENDING:待分账 | ||
/// 2、SUCCESS:分账成功 | ||
/// 3、CLOSED:已关闭 | ||
/// <para>示例值: SUCCESS</para> | ||
/// </remarks> | ||
[JsonPropertyName("result")] | ||
public string Result { get; set; } | ||
|
||
/// <summary> | ||
/// 分账失败原因 | ||
/// </summary> | ||
/// <remarks> | ||
/// 分账失败原因。包含以下枚举值: | ||
/// 1、ACCOUNT_ABNORMAL : 分账接收账户异常 | ||
/// 2、NO_RELATION : 分账关系已解除 | ||
/// 3、RECEIVER_HIGH_RISK : 高风险接收方 | ||
/// 4、RECEIVER_REAL_NAME_NOT_VERIFIED : 接收方未实名 | ||
/// 5、NO_AUTH : 分账权限已解除 | ||
/// <para>示例值:ACCOUNT_ABNORMAL</para> | ||
/// </remarks> | ||
[JsonPropertyName("fail_reason")] | ||
public string FailReason { get; set; } | ||
|
||
/// <summary> | ||
/// 分账创建时间 | ||
/// </summary> | ||
/// <remarks> | ||
/// 分账创建时间,遵循rfc3339标准格式,格式为YYYY-MM-DDTHH:mm:ss.sss+TIMEZONE,YYYY-MM-DD表示年月日,T出现在字符串中,表示time元素的开头,HH:mm:ss.sss表示时分秒毫秒,TIMEZONE表示时区(+08:00表示东八区时间,领先UTC 8小时,即北京时间)。例如:2015-05-20T13:29:35.120+08:00表示,北京时间2015年5月20日 13点29分35秒。 | ||
/// <para>示例值:2015-05-20T13:29:35.120+08:00</para> | ||
/// </remarks> | ||
[JsonPropertyName("create_time")] | ||
public string CreateTime { get; set; } | ||
|
||
/// <summary> | ||
/// 分账完成时间 | ||
/// </summary> | ||
/// <remarks> | ||
/// 分账完成时间,遵循rfc3339标准格式,格式为YYYY-MM-DDTHH:mm:ss.sss+TIMEZONE,YYYY-MM-DD表示年月日,T出现在字符串中,表示time元素的开头,HH:mm:ss.sss表示时分秒毫秒,TIMEZONE表示时区(+08:00表示东八区时间,领先UTC 8小时,即北京时间)。例如:2015-05-20T13:29:35.120+08:00表示,北京时间2015年5月20日 13点29分35秒。 | ||
/// <para>示例值:2015-05-20T13:29:35.120+08:00</para> | ||
/// </remarks> | ||
[JsonPropertyName("finish_time")] | ||
public string FinishTime { get; set; } | ||
} | ||
} |
85 changes: 85 additions & 0 deletions
85
src/Essensoft.Paylink.WeChatPay/V3/Domain/WeChatPayProfitSharingOrdersBodyModel.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,85 @@ | ||
using System.Collections.Generic; | ||
using System.Text.Json.Serialization; | ||
|
||
namespace Essensoft.Paylink.WeChatPay.V3.Domain | ||
{ | ||
/// <summary> | ||
/// 资金应用 - 分账 - 请求分账 - 请求JSON参数 | ||
/// </summary> | ||
/// <remarks> | ||
/// <para><a href="https://pay.weixin.qq.com/wiki/doc/apiv3/apis/chapter8_1_1.shtml">分账 - 请求分账API</a> - 最新更新时间:2021.05.11</para> | ||
/// <para><a href="https://pay.weixin.qq.com/wiki/doc/apiv3_partner/apis/chapter8_1_1.shtml">分账(服务商) - 请求分账API</a> - 最新更新时间:2021.05.11</para> | ||
/// </remarks> | ||
public class WeChatPayProfitSharingOrdersBodyModel : WeChatPayObject | ||
{ | ||
/// <summary> | ||
/// 子商户号 | ||
/// </summary> | ||
/// <remarks> | ||
/// 微信支付分配的子商户号,即分账的出资商户号。 | ||
/// <para>示例值:1900000109</para> | ||
/// </remarks> | ||
[JsonPropertyName("sub_mchid")] | ||
public string SubMchId { get; set; } | ||
|
||
/// <summary> | ||
/// 应用ID | ||
/// </summary> | ||
/// <remarks> | ||
/// 微信分配的商户appid、微信分配的服务商appid | ||
/// <para>示例值:wx8888888888888888</para> | ||
/// </remarks> | ||
[JsonPropertyName("appid")] | ||
public string AppId { get; set; } | ||
|
||
/// <summary> | ||
/// 子商户应用ID | ||
/// </summary> | ||
/// <remarks> | ||
/// 微信分配的子商户公众账号ID,分账接收方类型包含PERSONAL_SUB_OPENID时必填。 | ||
/// <para>示例值:wx8888888888888888</para> | ||
/// </remarks> | ||
[JsonPropertyName("sub_appid")] | ||
public string SubAppId { get; set; } | ||
|
||
/// <summary> | ||
/// 微信订单号 | ||
/// </summary> | ||
/// <remarks> | ||
/// 微信支付订单号 | ||
/// <para>示例值:4208450740201411110007820472</para> | ||
/// </remarks> | ||
[JsonPropertyName("transaction_id")] | ||
public string TransactionId { get; set; } | ||
|
||
/// <summary> | ||
/// 商户分账单号 | ||
/// </summary> | ||
/// <remarks> | ||
/// 服务商系统内部的分账单号,在服务商系统内部唯一,同一分账单号多次请求等同一次。只能是数字、大小写字母_-|*@ | ||
/// <para>示例值:P20150806125346</para> | ||
/// </remarks> | ||
[JsonPropertyName("out_order_no")] | ||
public string OutOrderNo { get; set; } | ||
|
||
/// <summary> | ||
/// 分账接收方列表 | ||
/// </summary> | ||
/// <remarks> | ||
/// 分账接收方列表,可以设置出资商户作为分账接受方,最多可有50个分账接收方 | ||
/// </remarks> | ||
[JsonPropertyName("receivers")] | ||
public List<Receiver> Receivers { get; set; } | ||
|
||
/// <summary> | ||
/// 是否解冻剩余未分资金 | ||
/// </summary> | ||
/// <remarks> | ||
/// 1、如果为true,该笔订单剩余未分账的金额会解冻回分账方商户; | ||
/// 2、如果为false,该笔订单剩余未分账的金额不会解冻回分账方商户,可以对该笔订单再次进行分账。 | ||
/// <para>示例值:true</para> | ||
/// </remarks> | ||
[JsonPropertyName("unfreeze_unsplit")] | ||
public bool UnfreezeUnsplit { get; set; } | ||
} | ||
} |
34 changes: 34 additions & 0 deletions
34
...Essensoft.Paylink.WeChatPay/V3/Domain/WeChatPayProfitSharingOrdersOutOrderNoQueryModel.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,34 @@ | ||
using System.Text.Json.Serialization; | ||
|
||
namespace Essensoft.Paylink.WeChatPay.V3.Domain | ||
{ | ||
/// <summary> | ||
/// 资金应用 - 分账 - 查询分账结果 - 请求URL参数 | ||
/// </summary> | ||
/// <remarks> | ||
/// <para><a href="https://pay.weixin.qq.com/wiki/doc/apiv3/apis/chapter8_1_2.shtml">分账 - 查询分账结果API</a> - 最新更新时间:2021.05.11</para> | ||
/// <para><a href="https://pay.weixin.qq.com/wiki/doc/apiv3_partner/apis/chapter8_1_2.shtml">分账(服务商) - 查询分账结果API</a> - 最新更新时间:2021.05.11</para> | ||
/// </remarks> | ||
public class WeChatPayProfitSharingOrdersOutOrderNoQueryModel : WeChatPayObject | ||
{ | ||
/// <summary> | ||
/// 子商户号 | ||
/// </summary> | ||
/// <remarks> | ||
/// 子商户的商户号,有微信支付生成并下发。 | ||
/// <para>示例值:1900000109</para> | ||
/// </remarks> | ||
[JsonPropertyName("sub_mchid")] | ||
public string SubMchId { get; set; } | ||
|
||
/// <summary> | ||
/// 微信订单号 | ||
/// </summary> | ||
/// <remarks> | ||
/// 微信支付订单号 | ||
/// <para>示例值:4208450740201411110007820472</para> | ||
/// </remarks> | ||
[JsonPropertyName("transaction_id")] | ||
public string TransactionId { get; set; } | ||
} | ||
} |
54 changes: 54 additions & 0 deletions
54
src/Essensoft.Paylink.WeChatPay/V3/Domain/WeChatPayProfitSharingOrdersUnfreezeBodyModel.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,54 @@ | ||
using System.Text.Json.Serialization; | ||
|
||
namespace Essensoft.Paylink.WeChatPay.V3.Domain | ||
{ | ||
/// <summary> | ||
/// 资金应用 - 分账 - 解冻剩余资金 - 请求JSON参数 | ||
/// </summary> | ||
/// <remarks> | ||
/// <para><a href="https://pay.weixin.qq.com/wiki/doc/apiv3/apis/chapter8_1_5.shtml">分账 - 解冻剩余资金API</a> - 最新更新时间:2021.05.11</para> | ||
/// <para><a href="https://pay.weixin.qq.com/wiki/doc/apiv3_partner/apis/chapter8_1_5.shtml">分账(服务商) - 解冻剩余资金API</a> - 最新更新时间:2021.05.11</para> | ||
/// </remarks> | ||
public class WeChatPayProfitSharingOrdersUnfreezeResponse : WeChatPayObject | ||
{ | ||
/// <summary> | ||
/// 子商户号 | ||
/// </summary> | ||
/// <remarks> | ||
/// 微信支付分配的子商户号,即分账的出资商户号。 | ||
/// <para>示例值:1900000109</para> | ||
/// </remarks> | ||
[JsonPropertyName("sub_mchid")] | ||
public string SubMchId { get; set; } | ||
|
||
/// <summary> | ||
/// 微信订单号 | ||
/// </summary> | ||
/// <remarks> | ||
/// 微信支付订单号 | ||
/// <para>示例值:4208450740201411110007820472</para> | ||
/// </remarks> | ||
[JsonPropertyName("transaction_id")] | ||
public string TransactionId { get; set; } | ||
|
||
/// <summary> | ||
/// 商户分账单号 | ||
/// </summary> | ||
/// <remarks> | ||
/// 商户系统内部的分账单号,在商户系统内部唯一,同一分账单号多次请求等同一次。 取值范围:[0-9a-zA-Z_*@-] | ||
/// <para>示例值:P20150806125346</para> | ||
/// </remarks> | ||
[JsonPropertyName("out_order_no")] | ||
public string OutOrderNo { get; set; } | ||
|
||
/// <summary> | ||
/// 分账描述 | ||
/// </summary> | ||
/// <remarks> | ||
/// 分账的原因描述,分账账单中需要体现 | ||
/// <para>示例值:解冻全部剩余资金</para> | ||
/// </remarks> | ||
[JsonPropertyName("description")] | ||
public string Description { get; set; } | ||
} | ||
} |
Oops, something went wrong.