using Newtonsoft.Json;
|
using System;
|
using System.Collections.Generic;
|
using System.Linq;
|
using System.Text;
|
using System.Threading.Tasks;
|
|
namespace ApiTools.Core
|
{
|
/// <summary>
|
/// 发起批量转账-请求-请求体传参
|
/// </summary>
|
public class WeChatPayPartnerTransferBatchesBodyParameters
|
{
|
public WeChatPayPartnerTransferBatchesBodyParameters()
|
{
|
TransferDetailList = [];
|
}
|
|
/// <summary>
|
/// 特约商户号
|
/// </summary>
|
[JsonProperty("sub_mchid")]
|
public string SubMchId { get; set; }
|
/// <summary>
|
/// 特约商户appid
|
/// 微信分配的特约商户公众账号ID,特约商户授权类型为INFORMATION_AUTHORIZATION_TYPE和INFORMATION_AND_FUND_AUTHORIZATION_TYPE时 需要填写
|
/// </summary>
|
[JsonProperty("sub_appid")]
|
public string SubAppId { get; set; }
|
/// <summary>
|
/// 特约商户授权类型
|
/// INFORMATION_AUTHORIZATION_TYPE: 表示使用特约商户用户信息,出款方服务商
|
/// FUND_AUTHORIZATION_TYPE: 表示使用特约商户的资金,出款方为特约商户,用户信息为服务商appid对应的openid
|
/// INFORMATION_AND_FUND_AUTHORIZATION_TYPE: 表示使用特约商户的用户信息且出款方为特约商户
|
/// </summary>
|
[JsonProperty("authorization_type")]
|
public string AuthorizationType { get; set; }
|
/// <summary>
|
/// 商家批次单号
|
/// 商户系统内部的商家批次单号,在商户系统内部唯一
|
/// </summary>
|
[JsonProperty("out_batch_no")]
|
public string OutBatchNo { get; set; }
|
/// <summary>
|
/// 批次名称
|
/// 该笔批量转账的名称
|
/// </summary>
|
[JsonProperty("batch_name")]
|
public string BatchName { get; set; }
|
/// <summary>
|
/// 批次备注
|
/// 转账说明,UTF8编码,最多允许32个字符
|
/// </summary>
|
[JsonProperty("batch_remark")]
|
public string BatchRemark { get; set; }
|
/// <summary>
|
/// 转账总金额
|
/// 转账金额单位为“分”。转账总金额必须与批次内所有明细转账金额之和保持一致,否则无法发起转账操作
|
/// </summary>
|
[JsonProperty("total_amount")]
|
public int TotalAmount { get; set; }
|
/// <summary>
|
/// 转账总笔数
|
/// 一个转账批次单最多发起一千笔转账。转账总笔数必须与批次内所有明细之和保持一致,否则无法发起转账操作
|
/// </summary>
|
[JsonProperty("total_num")]
|
public int TotalNum { get; set; }
|
/// <summary>
|
/// 转账明细列表
|
/// </summary>
|
[JsonProperty("transfer_detail_list")]
|
public List<WeChatPayPartnerTransferBatchesBodyParametersDetail> TransferDetailList { get; set; }
|
/// <summary>
|
/// 服务商的appid
|
/// 微信分配的服务商商户公众账号ID,特约商户授权类型为FUND_AUTHORIZATION_TYPE时 需要填写
|
/// </summary>
|
[JsonProperty("sp_appid")]
|
public string SpAppId { get; set; }
|
/// <summary>
|
/// 批量转账用途
|
/// GOODSPAYMENT: 给用户支付货物采购资金
|
/// COMMISSION: 给用户支付业务推广佣金
|
/// REFUND: 给用户支付交易退款
|
/// REIMBURSEMENT: 企业给员工支付差旅等报销资金
|
/// FREIGHT: 给司机支付运输费用
|
/// OTHERS: 其他
|
/// </summary>
|
[JsonProperty("transfer_purpose")]
|
public string TransferPurpose { get; set; }
|
/// <summary>
|
/// 转账场景
|
/// ORDINARY_TRANSFER: 普通转账(默认)
|
/// PAYROLL_CARD_TRANSFER: 给使用微信务工卡的用户进行转账
|
/// </summary>
|
[JsonProperty("transfer_scene")]
|
public string TransferScene { get; set; }
|
}
|
|
/// <summary>
|
/// 发起批量转账-请求-请求体传参-转账明细
|
/// </summary>
|
public class WeChatPayPartnerTransferBatchesBodyParametersDetail
|
{
|
/// <summary>
|
/// 商家明细单号
|
/// 商户系统内部区分转账批次单下不同转账明细单的唯一标识
|
/// </summary>
|
[JsonProperty("out_detail_no")]
|
public string OutDetailNo { get; set; }
|
/// <summary>
|
/// 转账金额
|
/// 转账金额单位为“分”
|
/// </summary>
|
[JsonProperty("transfer_amount")]
|
public int TransferAmount { get; set; }
|
/// <summary>
|
/// 转账备注
|
/// 单条转账备注(微信用户会收到该备注),UTF8编码,最多允许32个字符
|
/// </summary>
|
[JsonProperty("transfer_remark")]
|
public string TransferRemark { get; set; }
|
/// <summary>
|
/// 收款用户openid
|
/// 收款用户openid。如果转账特约商户授权类型是INFORMATION_AUTHORIZATION_TYPE,对应的是特约商户公众号下的openid。
|
/// </summary>
|
[JsonProperty("openid")]
|
public string OpenId { get; set; }
|
/// <summary>
|
/// 收款用户姓名
|
/// 收款用户姓名。采用标准RSA算法,公钥由微信侧提供
|
/// 明细转账金额 >= 2,000时,该笔明细必须填写收款用户姓名
|
/// 同一批次转账明细中的姓名字段传入规则需保持一致,也即全部填写、或全部不填写
|
/// 若商户传入收款用户姓名,微信支付会校验用户openID与姓名是否一致,并提供电子回单
|
/// </summary>
|
[JsonProperty("user_name")]
|
public string UserName { get; set; }
|
/// <summary>
|
/// 收款用户身份证
|
/// 收款方身份证号,可不用填(采用标准RSA算法,公钥由微信侧提供)
|
/// 当填入收款方身份证号时,姓名字段必须填入
|
/// </summary>
|
[JsonProperty("user_id_card")]
|
public string UserIdCard { get; set; }
|
}
|
|
/// <summary>
|
/// 发起批量转账-响应
|
/// </summary>
|
public class PartnerTransferBatchesResponse : WeChatPayResponse
|
{
|
/// <summary>
|
/// 商家批次单号
|
/// 商户系统内部的商家批次单号,在商户系统内部唯一
|
/// </summary>
|
[JsonProperty("out_batch_no")]
|
public string out_batch_no { get; set; }
|
/// <summary>
|
/// 微信支付批次单号
|
/// 微信支付批次单号,微信商家转账系统返回的唯一标识
|
/// </summary>
|
[JsonProperty("batch_id")]
|
public string batch_id { get; set; }
|
/// <summary>
|
/// 批次创建时间
|
/// 批次受理成功时返回,按照使用rfc3339所定义的格式,格式为YYYY-MM-DDThh:mm:ss+TIMEZONE
|
/// </summary>
|
[JsonProperty("create_time")]
|
public string create_time { get; set; }
|
}
|
}
|