ecommerce

package
v0.1.12 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 29, 2021 License: MIT Imports: 5 Imported by: 0

Documentation

Index

Constants

View Source
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") //其他组织,不属于企业、政府/事业单位的组织机构(如社会团体、民办非企业、基金会),要求机构已办理组织机构代码证。
)
View Source
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")           //中国台湾居民–来往大陆通行证
)
View Source
const (
	BankAccountTypePub = BankAccountType("74") //74-对公账户
	BankAccountTypePri = BankAccountType("75") //75-对私账户
)
View Source
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位以内
)
View Source
const (
	ContactTypeLegalPerson    = ContactType("65") //65-经营者/法人
	ContactTypePersonInCharge = ContactType("66") //66- 负责人。 (负责人:经商户授权办理微信支付业务的人员,授权范围包括但不限于签约,入驻过程需完成账户验证)
)
View Source
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")
)
View Source
const (
	SignStateUnsigned    = SignState("UNSIGNED")
	SignStateSigned      = SignState("SIGNED")
	SignStateNotSignable = SignState("NOT_SIGNABLE")
)
View Source
const (
	AccountTypeBasic     = AccountType("BASIC")
	AccountTypeOperation = AccountType("OPERATION")
	AccountTypeFees      = AccountType("FEES")
)
View Source
const (
	WithdrawStatusCreateSuccess = WithdrawStatus("CREATE_SUCCESS") //受理成功
	WithdrawStatusSuccess       = WithdrawStatus("SUCCESS")        //提现成功
	WithdrawStatusFail          = WithdrawStatus("FAIL")           //提现失败
	WithdrawStatusRefund        = WithdrawStatus("REFUND")         //提现退票
	WithdrawStatusClose         = WithdrawStatus("CLOSE")          //关单
	WithdrawStatusInit          = WithdrawStatus("INIT")           //业务单已创建
)
View Source
const (
	EventTypeRefundSuccess      = EventType("REFUND.SUCCESS")      //退款成功通知
	EventTypeRefundAbnormal     = EventType("REFUND.ABNORMAL")     //退款异常通知
	EventTypeRefundClosed       = EventType("REFUND.CLOSED")       //退款关闭通知
	EventTypeTransactionSuccess = EventType("TRANSACTION.SUCCESS") //支付成功通知
)
View Source
const (
	TradeTypeJsapi    = TradeType("JSAPI")    //公众号支付
	TradeTypeNative   = TradeType("NATIVE")   //扫码支付
	TradeTypeApp      = TradeType("APP")      //APP支付
	TradeTypeMicroPay = TradeType("MICROPAY") //付款码支付
	TradeTypeMWeb     = TradeType("MWEB")     //H5支付
	TradeTypeFacePay  = TradeType("FACEPAY")  //刷脸支付
)
View Source
const (
	TradeStateSuccess    = TradeState("SUCCESS")    //支付成功
	TradeStateRefund     = TradeState("REFUND")     //转入退款
	TradeStateNotPay     = TradeState("NOTPAY")     //未支付
	TradeStateClosed     = TradeState("CLOSED")     //已关闭
	TradeStateRevoked    = TradeState("REVOKED")    //已撤销(付款码支付)
	TradeStateUserPaying = TradeState("USERPAYING") //用户支付中(付款码支付)
	TradeStatePayError   = TradeState("PAYERROR")   //支付失败(其他原因,如银行返回失败)
)
View Source
const (
	NotifySuccessReturnCode = NotifyCode("SUCCESS")
	NotifySuccessReturnMsg  = "OK"

	NotifyFailReturnCode = NotifyCode("FAIL")
)
View Source
const (
	ReceiverTypeMerchantID        = ReceiverType("MERCHANT_ID")         //商户
	ReceiverTypePersonamOpenID    = ReceiverType("PERSONAL_OPENID")     //个人
	ReceiverTypePersonamSubOpenID = ReceiverType("PERSONAL_SUB_OPENID") //个人sub_openid(由品牌主的APPID转换得到)
)
View Source
const (
	ProfitSharingStatusProcessing = ProfitSharingStatus("PROCESSING") //处理中
	ProfitSharingStatusFinished   = ProfitSharingStatus("FINISHED")   //处理完成
)
View Source
const (
	FailReasonAccountAbnormal             = FailReason("ACCOUNT_ABNORMAL")                //分账接收账户异常
	FailReasonNoRelation                  = FailReason("NO_RELATION")                     // 分账关系已解除
	FailReasonReceiverHighRisk            = FailReason("RECEIVER_HIGH_RISK")              // 高风险接收方
	FailReasonReceiverRealNameNotVerified = FailReason("RECEIVER_REAL_NAME_NOT_VERIFIED") //接收方未实名
)
View Source
const (
	ProfitSharingResultPending = ProfitSharingResult("PENDING") //待分账
	ProfitSharingResultSuccess = ProfitSharingResult("SUCCESS") //分账成功
	ProfitSharingResultClosed  = ProfitSharingResult("CLOSED")  //分账失败已关闭
)
View Source
const (
	RefundAccountPartnerAdvance = RefundAccount("REFUND_SOURCE_PARTNER_ADVANCE") //电商平台垫付,需要向微信支付申请开通
	RefundAccountSubMerchant    = RefundAccount("REFUND_SOURCE_SUB_MERCHANT")    // 二级商户,默认值
)
View Source
const (
	RefundStatusSuccess  = RefundStatus("SUCCESS")  //退款成功
	RefundStatusClose    = RefundStatus("CLOSE")    //退款关闭
	RefundStatusAbnormal = RefundStatus("ABNORMAL") //退款异常,退款到银行发现用户的卡作废或者冻结了,导致原路退款银行卡失败,可前往【服务商平台—>交易中心】,手动处理此笔退款
)
View Source
const (
	ChannelBalance       = Channel("BALANCE")        //退回到余额
	ChannelOtherBalance  = Channel("OTHER_BALANCE")  //原账户异常退到其他余额账户
	ChannelOtherBankcard = Channel("OTHER_BANKCARD") //原银行卡异常退到其他银行卡
)

Variables

This section is empty.

Functions

func Apply

func Apply(req *ApplyReq) (*applyRes, error)

func DecodeNotifyCiphertext

func DecodeNotifyCiphertext(notifyCiphertext, apiKey string) (*orderDetail, error)

func FinishProfitSharing

func FinishProfitSharing(req *FinishProfitSharingReq) (*finishProfitSharingRes, error)

func GetApplyStatusByApplymentID

func GetApplyStatusByApplymentID(applymentID uint64) (*getApplyStatusRes, error)

func GetApplyStatusByOutRequestNo

func GetApplyStatusByOutRequestNo(outRequestNo string) (*getApplyStatusRes, error)

func GetCertificates

func GetCertificates()

==================== TODO 获取证书 ====================

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

func QueryEndDayBalance(subMchID string, date string) (*queryEndDayBalanceRes, error)

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 QueryOrderByOutTradeNo(spMchID, subMchID, outTradeNo string) (*orderDetail, error)

==================== 查询订单(商户订单号查询) ====================

func QueryOrderByTransactionID

func QueryOrderByTransactionID(spMchID, subMchID, transactionID string) (*orderDetail, error)

==================== 查询订单(微信支付订单号查询) ====================

func QueryProfitSharing

func QueryProfitSharing(subMchID, transactionID, outOrderNo string) (*queryProfitSharingRes, error)

func QueryProfitSharingOrderAmounts

func QueryProfitSharingOrderAmounts(transactionID string) (*queryProfitSharingOrderAmountsRes, error)

func QueryRefundByOutRefundNo

func QueryRefundByOutRefundNo(subMchID, outRefundNo string) (*refundDetail, error)

==================== 查询退款(商户退款单号查询) ====================

func QueryRefundByRefundID

func QueryRefundByRefundID(subMchID, refundID string) (*refundDetail, error)

==================== 查询退款(微信支付退款单号查询) ====================

func QueryWithdrawByOutRequestNo

func QueryWithdrawByOutRequestNo(outRequestNo string, subMchID string) (*queryWithdrawRes, error)

==================== 二级商户查询提现状态(商户提现单号查询) ====================

func QueryWithdrawByWithdrawID

func QueryWithdrawByWithdrawID(withdrawID string, subMchID string) (*queryWithdrawRes, error)

func Refund

func Refund(req *RefundReq) (*refundRes, error)

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 ApplymentState

type ApplymentState string

==================== 查询进件状态 ====================

type BankAccountType

type BankAccountType string

type Channel

type Channel string

type ContactType

type ContactType string

type EventType

type EventType 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 IdDocType

type IdDocType string

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 OrganizationType

type OrganizationType string

==================== 进件 ====================

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 RefundAccount

type RefundAccount 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 RefundStatus

type RefundStatus string

==================== 退款密文 ====================

type SignState

type SignState string

type TradeState

type TradeState string

type TradeType

type TradeType 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

==================== 二级商户查询提现状态(微信支付提现单号查询) ====================

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL