Documentation ¶
Index ¶
- Constants
- func Apply(req *ApplyReq) (*applyRes, error)
- func DecodeNotifyCiphertext(notifyCiphertext, apiKey string) (*orderDetail, error)
- func FinishProfitSharing(req *FinishProfitSharingReq) (*finishProfitSharingRes, error)
- func GetApplyStatusByApplymentID(applymentID uint64) (*getApplyStatusRes, error)
- func GetApplyStatusByOutRequestNo(outRequestNo string) (*getApplyStatusRes, error)
- func GetCertificates()
- func MiniProgramPay(req *MiniProgramPayReq) (*miniProgramPayRes, error)
- func ProfitSharing(req *ProfitSharingReq) (*profitSharingRes, error)
- func QueryBalance(subMchID string, accountType AccountType) (*queryBalanceRes, error)
- func QueryEndDayBalance(subMchID string, date string) (*queryEndDayBalanceRes, error)
- func QueryMerchantBalance(accountType AccountType) (*queryMerchantBalanceRes, error)
- func QueryMerchantEndDayBalance(accountType AccountType, date string) (*queryMerchantBalanceRes, error)
- func QueryOrderByOutTradeNo(spMchID, subMchID, outTradeNo string) (*orderDetail, error)
- func QueryOrderByTransactionID(spMchID, subMchID, transactionID string) (*orderDetail, error)
- func QueryProfitSharing(subMchID, transactionID, outOrderNo string) (*queryProfitSharingRes, error)
- func QueryProfitSharingOrderAmounts(transactionID string) (*queryProfitSharingOrderAmountsRes, error)
- func QueryRefundByOutRefundNo(subMchID, outRefundNo string) (*refundDetail, error)
- func QueryRefundByRefundID(subMchID, refundID string) (*refundDetail, error)
- func QueryWithdrawByOutRequestNo(outRequestNo string, subMchID string) (*queryWithdrawRes, error)
- func QueryWithdrawByWithdrawID(withdrawID string, subMchID string) (*queryWithdrawRes, error)
- func Refund(req *RefundReq) (*refundRes, error)
- func Withdraw(req *WithdrawReq) (*withdrawRes, error)
- type AccountBank
- type AccountType
- type ApplyReq
- type ApplymentState
- type BankAccountType
- type Channel
- type ContactType
- type EventType
- type FailReason
- type FinishProfitSharingReq
- type IdDocType
- type MiniProgramPayReq
- type NotifyCode
- type NotifyReq
- type NotifyRes
- type OrganizationType
- type ProfitSharingReq
- type ProfitSharingResult
- type ProfitSharingStatus
- type ReceiverType
- type RefundAccount
- type RefundCiphertext
- type RefundReq
- type RefundStatus
- type SignState
- type TradeState
- type TradeType
- type WithdrawReq
- type WithdrawStatus
Constants ¶
const ( OrganizationTypeMicroStore = OrganizationType("2401") //小微商户,指无营业执照的个人商家。 OrganizationTypePersonSeller = OrganizationType("2500") //个人卖家,指无营业执照,已持续从事电子商务经营活动满6个月,且期间经营收入累计超过20万元的个人商家。(若选择该主体,请在“补充说明”填写相关描述) OrganizationTypeIICH = OrganizationType("4") // 个体工商户(Individual industrial and commercial households),营业执照上的主体类型一般为个体户、个体工商户、个体经营。 OrganizationTypeCompany = OrganizationType("2") //企业,营业执照上的主体类型一般为有限公司、有限责任公司。 OrganizationTypeGovernment = OrganizationType("3") //党政、机关及事业单位,包括国内各级、各类政府机构、事业单位等(如:公安、党团、司法、交通、旅游、工商税务、市政、医疗、教育、学校等机构)。 OrganizationTypeOther = OrganizationType("1708") //其他组织,不属于企业、政府/事业单位的组织机构(如社会团体、民办非企业、基金会),要求机构已办理组织机构代码证。 )
const ( IdDocTypeMainlandIDCard = IdDocType("IDENTIFICATION_TYPE_MAINLAND_IDCARD") //中国大陆居民-身份证 IdDocTypeOverseaPassport = IdDocType("IDENTIFICATION_TYPE_OVERSEA_PASSPORT") //其他国家或地区居民-护照 IdDocTypeHongKong = IdDocType("IDENTIFICATION_TYPE_HONGKONG") //中国香港居民–来往内地通行证 IdDocTypeMacao = IdDocType("IDENTIFICATION_TYPE_MACAO") //中国澳门居民–来往内地通行证 IdDocTypeTaiwan = IdDocType("IDENTIFICATION_TYPE_TAIWAN") //中国台湾居民–来往大陆通行证 )
const ( BankAccountTypePub = BankAccountType("74") //74-对公账户 BankAccountTypePri = BankAccountType("75") //75-对私账户 )
const ( AccountBankGongShang = AccountBank("工商银行") //工商银行 数字、符号 16|17|18|19 16|19|26|29 AccountBankJiaoTong = AccountBank("交通银行") //交通银行 数字 16|17|18|19|21 8|18|20|21|24|27 AccountBankZhaoShang = AccountBank("招商银行") //招商银行 数字 10|12|15|16 13|15|16|17|18|19|20|21 AccountBankMinSheng = AccountBank("民生银行") //民生银行 数字 12|16 9|15|16|20 AccountBankZhongXin = AccountBank("中信银行") //中信银行 数字 16|19 19 AccountBankPuFa = AccountBank("浦发银行") //浦发银行 数字 12|16 13|14|15|16|17|18|19|20|23 AccountBankXingYe = AccountBank("兴业银行") //兴业银行 数字 16|18 17|18|22|24 AccountBankGuangDa = AccountBank("光大银行") //光大银行 数字 16|17 17|21|22|23|24|25|26|27|28|29|30 AccountBankGuangFa = AccountBank("广发银行") //广发银行 数字 16|18|19 15|17|18|19|20|23|24|25 AccountBankPingAn = AccountBank("平安银行") //平安银行 数字 11|13|14|16|19 13|14|18 AccountBankBeiJing = AccountBank("北京银行") //北京银行 数字 16|13 21|23|28 AccountBankHuaXia = AccountBank("华夏银行") //华夏银行 数字 16 16|17|22 AccountBankNongYe = AccountBank("农业银行") //农业银行 数字 16|18|19 17|19|27 AccountBankJianShe = AccountBank("建设银行") //建设银行 数字 16|17|18|19|20 16|19|20|24|25|26|27 AccountBankYouZheng = AccountBank("邮政储蓄银行") //邮政储蓄银行 数字 14|18|19 16|18|23 AccountBankZhongGuo = AccountBank("中国银行") //中国银行 数字、符号 12|16|18|19 12|18|19 AccountBankNingBo = AccountBank("宁波银行") //宁波银行 数字 16|17|19 16|17|19|23 AccountBankOther = AccountBank("其他银行") //其他银行 数字 30位以内 30位以内 )
const ( ContactTypeLegalPerson = ContactType("65") //65-经营者/法人 ContactTypePersonInCharge = ContactType("66") //66- 负责人。 (负责人:经商户授权办理微信支付业务的人员,授权范围包括但不限于签约,入驻过程需完成账户验证) )
const ( ApplymentStateChecking = ApplymentState("CHECKING") ApplymentStateAccountNeedVerify = ApplymentState("ACCOUNT_NEED_VERIFY") ApplymentStateAuditing = ApplymentState("AUDITING") ApplymentStateRejected = ApplymentState("REJECTED") ApplymentStateNeedSign = ApplymentState("NEED_SIGN") ApplymentStateFinish = ApplymentState("FINISH") ApplymentStateFrozen = ApplymentState("FROZEN") )
const ( SignStateUnsigned = SignState("UNSIGNED") SignStateSigned = SignState("SIGNED") SignStateNotSignable = SignState("NOT_SIGNABLE") )
const ( AccountTypeBasic = AccountType("BASIC") AccountTypeOperation = AccountType("OPERATION") AccountTypeFees = AccountType("FEES") )
const ( WithdrawStatusCreateSuccess = WithdrawStatus("CREATE_SUCCESS") //受理成功 WithdrawStatusSuccess = WithdrawStatus("SUCCESS") //提现成功 WithdrawStatusFail = WithdrawStatus("FAIL") //提现失败 WithdrawStatusRefund = WithdrawStatus("REFUND") //提现退票 WithdrawStatusClose = WithdrawStatus("CLOSE") //关单 WithdrawStatusInit = WithdrawStatus("INIT") //业务单已创建 )
const ( EventTypeRefundSuccess = EventType("REFUND.SUCCESS") //退款成功通知 EventTypeRefundAbnormal = EventType("REFUND.ABNORMAL") //退款异常通知 EventTypeRefundClosed = EventType("REFUND.CLOSED") //退款关闭通知 EventTypeTransactionSuccess = EventType("TRANSACTION.SUCCESS") //支付成功通知 )
const ( TradeTypeJsapi = TradeType("JSAPI") //公众号支付 TradeTypeNative = TradeType("NATIVE") //扫码支付 TradeTypeApp = TradeType("APP") //APP支付 TradeTypeMicroPay = TradeType("MICROPAY") //付款码支付 TradeTypeMWeb = TradeType("MWEB") //H5支付 TradeTypeFacePay = TradeType("FACEPAY") //刷脸支付 )
const ( TradeStateSuccess = TradeState("SUCCESS") //支付成功 TradeStateRefund = TradeState("REFUND") //转入退款 TradeStateNotPay = TradeState("NOTPAY") //未支付 TradeStateClosed = TradeState("CLOSED") //已关闭 TradeStateRevoked = TradeState("REVOKED") //已撤销(付款码支付) TradeStateUserPaying = TradeState("USERPAYING") //用户支付中(付款码支付) TradeStatePayError = TradeState("PAYERROR") //支付失败(其他原因,如银行返回失败) )
const ( NotifySuccessReturnCode = NotifyCode("SUCCESS") NotifySuccessReturnMsg = "OK" NotifyFailReturnCode = NotifyCode("FAIL") )
const ( ReceiverTypeMerchantID = ReceiverType("MERCHANT_ID") //商户 ReceiverTypePersonamOpenID = ReceiverType("PERSONAL_OPENID") //个人 ReceiverTypePersonamSubOpenID = ReceiverType("PERSONAL_SUB_OPENID") //个人sub_openid(由品牌主的APPID转换得到) )
const ( ProfitSharingStatusProcessing = ProfitSharingStatus("PROCESSING") //处理中 ProfitSharingStatusFinished = ProfitSharingStatus("FINISHED") //处理完成 )
const ( FailReasonAccountAbnormal = FailReason("ACCOUNT_ABNORMAL") //分账接收账户异常 FailReasonNoRelation = FailReason("NO_RELATION") // 分账关系已解除 FailReasonReceiverHighRisk = FailReason("RECEIVER_HIGH_RISK") // 高风险接收方 FailReasonReceiverRealNameNotVerified = FailReason("RECEIVER_REAL_NAME_NOT_VERIFIED") //接收方未实名 )
const ( ProfitSharingResultPending = ProfitSharingResult("PENDING") //待分账 ProfitSharingResultSuccess = ProfitSharingResult("SUCCESS") //分账成功 ProfitSharingResultClosed = ProfitSharingResult("CLOSED") //分账失败已关闭 )
const ( RefundAccountPartnerAdvance = RefundAccount("REFUND_SOURCE_PARTNER_ADVANCE") //电商平台垫付,需要向微信支付申请开通 RefundAccountSubMerchant = RefundAccount("REFUND_SOURCE_SUB_MERCHANT") // 二级商户,默认值 )
const ( RefundStatusSuccess = RefundStatus("SUCCESS") //退款成功 RefundStatusClose = RefundStatus("CLOSE") //退款关闭 RefundStatusAbnormal = RefundStatus("ABNORMAL") //退款异常,退款到银行发现用户的卡作废或者冻结了,导致原路退款银行卡失败,可前往【服务商平台—>交易中心】,手动处理此笔退款 )
const ( ChannelBalance = Channel("BALANCE") //退回到余额 ChannelOtherBalance = Channel("OTHER_BALANCE") //原账户异常退到其他余额账户 ChannelOtherBankcard = Channel("OTHER_BANKCARD") //原银行卡异常退到其他银行卡 )
Variables ¶
This section is empty.
Functions ¶
func DecodeNotifyCiphertext ¶
func FinishProfitSharing ¶
func FinishProfitSharing(req *FinishProfitSharingReq) (*finishProfitSharingRes, error)
func MiniProgramPay ¶
func MiniProgramPay(req *MiniProgramPayReq) (*miniProgramPayRes, error)
func ProfitSharing ¶
func ProfitSharing(req *ProfitSharingReq) (*profitSharingRes, error)
func QueryBalance ¶
func QueryBalance(subMchID string, accountType AccountType) (*queryBalanceRes, error)
func QueryEndDayBalance ¶
date 指定查询商户日终余额的日期,可查询90天内的日终余额。示例值:2019-08-17
func QueryMerchantBalance ¶
func QueryMerchantBalance(accountType AccountType) (*queryMerchantBalanceRes, error)
func QueryMerchantEndDayBalance ¶
func QueryMerchantEndDayBalance(accountType AccountType, date string) (*queryMerchantBalanceRes, error)
==================== 查询电商平台账户日终余额 ==================== date 指定查询商户日终余额的日期,可查询90天内的日终余额。示例值:2019-08-17
func QueryOrderByOutTradeNo ¶
==================== 查询订单(商户订单号查询) ====================
func QueryOrderByTransactionID ¶
==================== 查询订单(微信支付订单号查询) ====================
func QueryProfitSharing ¶
func QueryRefundByOutRefundNo ¶
==================== 查询退款(商户退款单号查询) ====================
func QueryRefundByRefundID ¶
==================== 查询退款(微信支付退款单号查询) ====================
func QueryWithdrawByOutRequestNo ¶
==================== 二级商户查询提现状态(商户提现单号查询) ====================
func Withdraw ¶
func Withdraw(req *WithdrawReq) (*withdrawRes, error)
Types ¶
type AccountBank ¶
type AccountBank string
type AccountType ¶
type AccountType string
type ApplyReq ¶
type ApplyReq struct { OutRequestNo string `json:"out_request_no"` /* 必填,业务申请编号,长度 1~124 1、服务商自定义的商户唯一编号。 2、每个编号对应一个申请单,每个申请单审核通过后会生成一个微信支付商户号。 3、若申请单被驳回,可填写相同的“业务申请编号”,即可覆盖修改原申请单信息 。 示例值:APPLYMENT_00000000001 */ OrganizationType OrganizationType `json:"organization_type"` /* 必填,主体类型,长度 1~4 非小微的主体类型需与营业执照/登记证书上一致,可参考选择主体指引,枚举值如下。 2401:小微商户,指无营业执照的个人商家。 2500:个人卖家,指无营业执照,已持续从事电子商务经营活动满6个月,且期间经营收入累计超过20万元的个人商家。(若选择该主体,请在“补充说明”填写相关描述) 4:个体工商户,营业执照上的主体类型一般为个体户、个体工商户、个体经营。 2:企业,营业执照上的主体类型一般为有限公司、有限责任公司。 3:党政、机关及事业单位,包括国内各级、各类政府机构、事业单位等(如:公安、党团、司法、交通、旅游、工商税务、市政、医疗、教育、学校等机构)。 1708:其他组织,不属于企业、政府/事业单位的组织机构(如社会团体、民办非企业、基金会),要求机构已办理组织机构代码证。 示例值:2401 */ BusinessLicenseInfo businessLicenseInfo `json:"business_license_info"` /* 条件选填,营业执照/登记证书信息 1、主体为“小微/个人卖家”时,不填。 2、主体为“个体工商户/企业”时,请上传营业执照。 3、主体为“党政、机关及事业单位/其他组织”时,请上传登记证书。 */ OrganizationCertInfo organizationCertInfo `json:"organization_cert_info"` /* 条件选填,组织机构代码证信息 主体为企业/党政、机关及事业单位/其他组织,且证件号码不是18位时必填。 注: 若营业执照未三证合一 ,该参数必传; 若营业执照三证合一 ,该参数可不传。 */ IdDocType IdDocType `json:"id_doc_type"` /* 否,经营者/法人证件类型,长度1~64 1、主体为“小微/个人卖家”,可选择:身份证。 2、主体为“个体户/企业/党政、机关及事业单位/其他组织”,可选择:以下任一证件类型。 3、若没有填写,系统默认选择:身份证。 枚举值: IDENTIFICATION_TYPE_MAINLAND_IDCARD:中国大陆居民-身份证 IDENTIFICATION_TYPE_OVERSEA_PASSPORT:其他国家或地区居民-护照 IDENTIFICATION_TYPE_HONGKONG:中国香港居民–来往内地通行证 IDENTIFICATION_TYPE_MACAO:中国澳门居民–来往内地通行证 IDENTIFICATION_TYPE_TAIWAN:中国台湾居民–来往大陆通行证 示例值:IDENTIFICATION_TYPE_MACAO */ IdCardInfo idCardInfo `json:"id_card_info"` /* 条件选填,经营者/法人身份证信息 请填写经营者/法人的身份证信息 证件类型为“身份证”时填写。 */ IdDocInfo idDocInfo `json:"id_doc_info"` /* 条件选填,经营者/法人其他类型证件信息 证件类型为“来往内地通行证、来往大陆通行证、护照”时填写。 */ NeedAccountInfo bool `json:"need_account_info"` /* 是 是否填写结算银行账户 1、可根据实际情况,填写“true”或“false”。 1)若为“true”,则需填写结算银行账户。 2)若为“false”,则无需填写结算银行账户。 2、若入驻时未填写结算银行账户,则需入驻后调用修改结算账户API补充信息,才能发起提现。 3、当超级管理员类型为负责人时,该字段只能传true,即结算银行账户必填 示例值:true */ AccountInfo accountInfo `json:"account_info"` /* 条件选填 结算银行账户 若"是否填写结算账户信息"填写为“true”, 则必填,填写为“false”不填 。 */ ContactInfo contactInfo `json:"contact_info"` /* 是 超级管理员信息 请填写店铺的超级管理员信息。 超级管理员需在开户后进行签约,并可接收日常重要管理信息和进行资金操作,请确定其为商户法定代表人或负责人。 */ SalesSceneInfo salesSceneInfo `json:"sales_scene_info"` // 是 店铺信息 请填写店铺信息 MerchantShortname string `json:"merchant_shortname"` /* 是 商户简称 [1,64] UTF-8格式,中文占3个字节,即最多21个汉字长度。将在支付完成页向买家展示,需与商家的实际售卖商品相符 。 示例值:腾讯 */ Qualifications string `json:"qualifications"` /* 否 特殊资质 [1,1024] 1、根据商户经营业务要求提供相关资质,详情查看《行业对应特殊资质》。 2、请提供为“申请商家主体”所属的特殊资质,可授权使用总公司/分公司的特殊资 质; 3、最多可上传5张照片,请填写通过图片上传接口预先上传图片生成好的MediaID 。 示例值:[\"jTpGmxUX3FBWVQ5NJInE4d2I6_H7I4\"] */ BusinessAdditionPics string `json:"business_addition_pics"` /* 否 补充材料 [1,1024] 根据实际审核情况,额外要求提供。最多可上传5张照片,请填写通过图片上传接口预先上传图片生成好的MediaID 。 示例值:[\"jTpGmg05InE4d2I6_H7I4\"] */ BusinessAdditionDesc string `json:"business_addition_desc"` }
type BankAccountType ¶
type BankAccountType string
type ContactType ¶
type ContactType string
type FailReason ¶
type FailReason string
type FinishProfitSharingReq ¶
type FinishProfitSharingReq struct { SubMchID string `json:"sub_mchid"` //二级商户号 [1,32] 是 分账出资的电商平台二级商户,填写微信支付分配的商户号。示例值:1900000109 TransactionID string `json:"transaction_id"` //微信订单号 [1,32] 是 微信支付订单号。 示例值: 4208450740201411110007820472 OutOrderNo string `json:"out_order_no"` //商户分账单号 [1,64] 是 商户系统内部的分账单号,在商户系统内部唯一(单次分账、多次分账、完结分 Description string `json:"description"` //分账描述 [1,80] 是 分账的原因描述,分账账单中需要体现。示例值:分账完结 }
==================== 完结分账 ====================
type MiniProgramPayReq ¶
type MiniProgramPayReq struct { SpAppID string `json:"sp_appid"` // 是,服务商应用ID,[1,32],服务商申请的公众号或移动应用appid。示例值:wx8888888888888888 SpMchID string `json:"sp_mchid"` // 是,服务商户号,[1,32],由微信支付生成并下发。示例值:1230000109 SubAppID string `json:"sub_appid"` /* 否,二级商户应用ID,[1,32], 二级商户申请的公众号或移动应用appid。若sub_openid有传的情况下,sub_appid必填,且sub_appid需与sub_openid对应。 示例值:wxd678efh567hg6999 */ SubMchID string `json:"sub_mchid"` // 是,二级商户号,[1,32],二级商户的商户号,由微信支付生成并下发。示例值:1900000109 Description string `json:"description"` // 是,商品详细描述,[1,127],商品描述。示例值:Image形象店-深圳腾大-QQ公仔 OutTradeNo string `json:"out_trade_no"` /* 是,商户系统内部订单号,[6,32] 只能是数字、大小写字母_-*且在同一个商户号下唯一,详见【商户订单号】。 特殊规则:最小字符长度为6。 示例值:1217752501201407033233368018 */ TimeExpire string `json:"time_expire"` /* 否,交易结束时间,[1,64] 订单失效时间,遵循rfc3339标准格式, 格式为YYYY-MM-DDTHH:mm:ss+TIMEZONE,YYYY-MM-DD表示年月日, T出现在字符串中,表示time元素的开头, HH:mm:ss表示时分秒, TIMEZONE表示时区(+08:00表示东八区时间,领先UTC 8小时,即北京时间)。 例如:2015-05-20T13:29:35+08:00表示,北京时间2015年5月20日 13点29分35秒。 示例值:2018-06-08T10:34:56+08:00 */ Attach string `json:"attach"` // 否,附加数据,[1,128],在查询API和支付通知中原样返回,可作为自定义参数使用。示例值:自定义数据 NotifyUrl string `json:"notify_url"` /* 是,通知地址,[1,256] 通知URL必须为直接可访问的URL,不允许携带查询串。 格式:URL 示例值:https://www.weixin.qq.com/wxpay/pay.php */ GoodsTag string `json:"goods_tag"` // 否,订单优惠标记,[1,32],订单优惠标记。示例值:WXG SettleInfo settleInfo `json:"settle_info"` // 否,结算信息 Amount amount `json:"amount"` // 是,订单金额信息 Payer payer `json:"payer"` // 是,支付者信息 Detail detail `json:"detail"` // 否,优惠功能 SceneInfo sceneInfo `json:"scene_info"` // 否,支付场景描述 }
==================== 小程序下单 ====================
type NotifyCode ¶
type NotifyCode string
type NotifyReq ¶
type NotifyReq struct { ID string `json:"id"` // 通知ID [1,36] 是 通知的唯一ID。示例值:EV-2018022511223320873 CreateTime string `json:"create_time"` /* 通知创建时间 [1,16] 是 通知创建的时间,遵循rfc3339标准格式, 格式为YYYY-MM-DDTHH:mm:ss+TIMEZONE,YYYY-MM-DD表示年月日, T出现在字符串中,表示time元素的开头, HH:mm:ss.表示时分秒, TIMEZONE表示时区(+08:00表示东八区时间,领先UTC 8小时,即北京时间)。 例如:2015-05-20T13:29:35+08:00表示北京时间2015年05月20日13点29分35秒。 示例值:2015-05-20T13:29:35+08:00 */ EventType EventType `json:"event_type"` /* 通知类型 [1,32] 是 通知的类型, REFUND.SUCCESS:退款成功通知 REFUND.ABNORMAL:退款异常通知 REFUND.CLOSED:退款关闭通知 TRANSACTION.SUCCESS:支付成功通知 示例值:TRANSACTION.SUCCESS */ ResourceType string `json:"resource_type"` // 通知数据类型 [1,32] 是 通知的资源数据类型,支付成功通知为encrypt-resource。 示例值:encrypt-resource Resource resource `json:"resource"` // 通知数据 是 通知资源数据,json格式,见示例 Summary string `json:"summary"` // 回调摘要 [1,64] 是 回调摘要。示例值:支付成功 }
type NotifyRes ¶
type NotifyRes struct { Code NotifyCode `json:"code"` Message string `json:"message"` }
type ProfitSharingReq ¶
type ProfitSharingReq struct { AppID string `json:"appid"` //公众账号ID [1,32] 是 body 电商平台的appid(公众号APPID或者小程序APPID)。示例值:wx8888888888888888 SubMchID string `json:"sub_mchid"` //二级商户号 [1,32] 是 body 分账出资的电商平台二级商户,填写微信支付分配的商户号。 示例值:1900000109 TransactionID string `json:"transaction_id"` //微信订单号 [1,32] 是 body 微信支付订单号。示例值: 4208450740201411110007820472 OutOrderNo string `json:"out_order_no"` //商户分账单号 [1,64] 是 body 商户系统内部的分账单号,在商户系统内部唯一(单次分账、多次分账、完结分账应使用不同的商户分账单号),同一分账单号多次请求等同一次。示例值:P20150806125346 Receivers []receiver `json:"receivers"` //分账接收方列表 是 body 分账接收方列表,支持设置出资商户作为分账接收方,单次分账最多可有5个分账接收方 Finish bool `json:"finish"` }
==================== 分账 ====================
type ProfitSharingResult ¶
type ProfitSharingResult string
type ProfitSharingStatus ¶
type ProfitSharingStatus string
type ReceiverType ¶
type ReceiverType string
type RefundCiphertext ¶
type RefundCiphertext struct { SpMchID string `json:"sp_mchid"` //服务商户号 [1,32] 是 服务商户号,由微信支付生成并下发。 示例值:1230000109 SubMchID string `json:"sub_mchid"` //二级商户号 [1,32] 是 二级商户的商户号,由微信支付生成并下发。 示例值:1900000109 OutTradeNo string `json:"out_trade_no"` /*商户订单号 [1,32] 是 商户系统内部订单号,只能是数字、大小写字母_-*且在同一个商户号下唯一。 特殊规则:最小字符长度为6 示例值:1217752501201407033233368018 */ TransactionID string `json:"transaction_id"` //微信支付订单号 [1,32] 否 微信支付系统生成的订单号。 示例值:1217752501201407033233368018 RefundID string `json:"refund_id"` //微信退款单号 [1,32] 是 微信支付退款订单号。示例值:1217752501201407033233368018 OutRefundNo string `json:"out_refund_no"` //商户退款单号 [1,64] 是 商户系统内部的退款单号,商户系统内部唯一,同一退款单号多次请求只退一笔。示例值:1217752501201407033233368018 RefundStatus RefundStatus `json:"refund_status"` /*退款状态 [1,16] 是 退款状态,枚举值: SUCCESS:退款成功 CLOSE:退款关闭 ABNORMAL:退款异常,退款到银行发现用户的卡作废或者冻结了,导致原路退款银行卡失败,可前往【服务商平台—>交易中心】,手动处理此笔退款 示例值:SUCCESS */ SuccessTime string `json:"success_time"` /*退款成功时间 [1,64] 否 1、退款成功时间,遵循rfc3339标准格式, 格式为YYYY-MM-DDTHH:mm:ss+TIMEZONE, YYYY-MM-DD表示年月日, T出现在字符串中, 表示time元素的开头, HH:mm:ss表示时分秒, TIMEZONE表示时区(+08:00表示东八区时间,领先UTC 8小时,即北京时间)。 例如:2015-05-20T13:29:35+08:00表示,北京时间2015年5月20日13点29分35秒。 2、当退款状态为退款成功时返回此参数。 示例值:2018-06-08T10:34:56+08:00 */ UserReceivedAccount string `json:"user_received_account"` /*退款入账账户 [1,64] 是 取当前退款单的退款入账方。 退回银行卡:{银行名称}{卡类型}{卡尾号} 退回支付用户零钱: 支付用户零钱 退还商户: 商户基本账户、商户结算银行账户 退回支付用户零钱通:支付用户零钱通 示例值:招商银行信用卡0403 */ Amount refundAmount `json:"amount"` //订单金额 是 订单金额信息 RefundAccount RefundAccount `json:"refund_account"` /*退款出资商户 [1, 32] 否 body电商平台垫资退款专用参数。 需先确认已开通此功能后,才能使用。若需要开通,请联系微信支付客服。 枚举值: REFUND_SOURCE_PARTNER_ADVANCE : 电商平台垫付,需要向微信支付申请开通 REFUND_SOURCE_SUB_MERCHANT : 二级商户,默认值 注意: 1、电商平台垫资退款专用参数,需先确认已开通此功能后,才能使用。 若需要开通,请联系微信支付客服。 2、若传入REFUND_SOURCE_PARTNER_ADVANCE,代表使用垫付退款功能。实际出款账户为开通该功能时商户指定的出款账户,实际以退款申请受理结果或查单结果为准。 示例值:REFUND_SOURCE_SUB_MERCHANT */ FundsAccount string `json:"funds_account"` }
type RefundReq ¶
type RefundReq struct { SpAppID string `json:"sp_appid"` //服务商应用ID[1,32] 是 服务商申请的公众号或移动应用appid。示例值:wx8888888888888888 SubAppID string `json:"sub_appid"` //二级商户应用ID [1,32] 否 二级商户申请的公众号或移动应用appid。示例值:wxd678efh567hg6999 SubMchID string `json:"sub_mchid"` //二级商户号 [1,32] 是 二级商户的商户号,由微信支付生成并下发。 示例值:1900000109 OutTradeNo string `json:"out_trade_no"` /*商户订单号 [1,32] 是 商户系统内部订单号,只能是数字、大小写字母_-*且在同一个商户号下唯一。 特殊规则:最小字符长度为6 示例值:1217752501201407033233368018 */ TransactionID string `json:"transaction_id"` //微信支付订单号 [1,32] 否 微信支付系统生成的订单号。 示例值:1217752501201407033233368018 OutRefundNo string //商户退款单号 [1,64] 是 body 商户系统内部的退款单号,商户系统内部唯一,只能是数字、大小写字母_-|*@,同一退款单号多次请求只退一笔。示例值:1217752501201407033233368018 Reason string `json:"reason"` /*退款原因 [1,80] 否 body 若商户传入,会在下发给用户的退款消息中体现退款原因。 注意:若订单退款金额≤1元,且属于部分退款,则不会在退款消息中体现退款原因 示例值:商品已售完 */ Amount refundAmount `json:"amount"` //订单金额 是 订单金额信息 NotifyUrl string `json:"notify_url"` //退款结果回调url [1,256] 否 body 异步接收微信支付退款结果通知的回调地址,通知url必须为外网可访问的url,不能携带参数。 如果参数中传了notify_url,则商户平台上配置的回调地址将不会生效,优先回调当前传的地址。示例值:https://weixin.qq.com RefundAccount RefundAccount `json:"refund_account"` /*退款出资商户 [1, 32] 否 body电商平台垫资退款专用参数。 需先确认已开通此功能后,才能使用。若需要开通,请联系微信支付客服。 枚举值: REFUND_SOURCE_PARTNER_ADVANCE : 电商平台垫付,需要向微信支付申请开通 REFUND_SOURCE_SUB_MERCHANT : 二级商户,默认值 注意: 1、电商平台垫资退款专用参数,需先确认已开通此功能后,才能使用。 若需要开通,请联系微信支付客服。 2、若传入REFUND_SOURCE_PARTNER_ADVANCE,代表使用垫付退款功能。实际出款账户为开通该功能时商户指定的出款账户,实际以退款申请受理结果或查单结果为准。 示例值:REFUND_SOURCE_SUB_MERCHANT */ FundsAccount string `json:"funds_account"` }
type TradeState ¶
type TradeState string
type WithdrawReq ¶
type WithdrawReq struct { SubMchID string `json:"sub_mchid"` //二级商户号 [1,32] 是 电商平台二级商户号,由微信支付生成并下发。示例值: 1900000109 OutRequestNo string `json:"out_request_no"` //商户提现单号 [1, 32] 是 body商户提现单号,由商户自定义生成,必须是字母数字。示例值:20190611222222222200000000012122 Amount int `json:"amount"` //提现金额 是 body单位:分,金额不能超过8亿元。示例值:1 Remark string `json:"remark"` //提现备注 [1, 56] 否 body商户对提现单的备注,商户自定义字段。示例值:交易提现 BankMemo string `json:"bank_memo"` //银行附言 [1, 32] 否 body展示在收款银行系统中的附言,数字、字母最长32个汉字(能否成功展示依赖银行系统支持)。示例值:微信支付提现 AccountType AccountType `json:"account_type"` }
==================== 二级商户余额提现 ====================
type WithdrawStatus ¶
type WithdrawStatus string
==================== 二级商户查询提现状态(微信支付提现单号查询) ====================