Documentation ¶
Index ¶
- Constants
- func GetAppPaySign(appId string, nonceStr string, partnerId string, prepayId string, ...) (paySign string)
- func GetAppletPaySign(appId string, nonceStr string, prepayId string, signType string, ...) (paySign string)
- func GetJsApiPaySign(appId string, nonceStr string, packages string, signType string, ...) (paySign string)
- type AuthCodeToOpenIdBody
- type AuthCodeToOpenIdResponse
- type ChangeBody
- type ChangeResponse
- type Client
- func (c *Client) AuthCodeToOpenId(body AuthCodeToOpenIdBody) (wxRsp AuthCodeToOpenIdResponse, err error)
- func (c *Client) Change(body ChangeBody) (wxRsp ChangeResponse, err error)
- func (c *Client) CloseOrder(body CloseOrderBody) (wxRsp CloseOrderResponse, err error)
- func (c *Client) DownloadBill(body DownloadBillBody) (wxRsp string, failRsp *DownloadBillResponse, err error)
- func (c *Client) IsFacilitator() bool
- func (c *Client) Micropay(body MicropayBody) (wxRsp MicropayResponse, err error)
- func (c *Client) NotifyPay(handler NotifyPayHandler, requestBody []byte) (rspBody string, err error)
- func (c *Client) NotifyRefund(handler NotifyRefundHandler, requestBody []byte) (rspBody string, err error)
- func (c *Client) QueryChange(body QueryChangeBody) (wxRsp QueryChangeResponse, err error)
- func (c *Client) QueryOrder(body QueryOrderBody) (wxRsp QueryOrderResponse, err error)
- func (c *Client) QueryRefund(body QueryRefundBody) (wxRsp QueryRefundResponse, err error)
- func (c *Client) Refund(body RefundBody) (wxRsp RefundResponse, err error)
- func (c *Client) ReportJsApi(body ReportJsApiBody) (wxRsp ReportJsApiResponse, err error)
- func (c *Client) ReportMicropay(body ReportMicropayBody) (wxRsp ReportMicropayResponse, err error)
- func (c *Client) Reverse(body ReverseBody) (wxRsp ReverseResponse, err error)
- func (c *Client) URL(relativePath string) string
- func (c *Client) UnifiedOrder(body UnifiedOrderBody) (wxRsp UnifiedOrderResponse, err error)
- type CloseOrderBody
- type CloseOrderResponse
- type Config
- type CouponResponseModel
- type DownloadBillBody
- type DownloadBillInfo
- type DownloadBillOrderItem
- type DownloadBillResponse
- type DownloadBillTotalItem
- type MchServiceResponseModel
- type MicropayBody
- type MicropayResponse
- type NotifyPayBody
- type NotifyPayHandler
- type NotifyRefundBody
- type NotifyRefundHandler
- type NotifyResponseModel
- type QueryChangeBody
- type QueryChangeResponse
- type QueryOrderBody
- type QueryOrderResponse
- type QueryRefundBody
- type QueryRefundResponse
- type QueryRefundResponseCurrentRefund
- type QueryRefundResponseTotalRefund
- type RefundBody
- type RefundResponse
- type ReportJsApiBody
- type ReportJsApiResponse
- type ReportMicropayBody
- type ReportMicropayBodyTrade
- type ReportMicropayResponse
- type ResponseModel
- type ReverseBody
- type ReverseResponse
- type SceneInfoModel
- type ServiceResponseModel
- type UnifiedOrderBody
- type UnifiedOrderResponse
Constants ¶
View Source
const ( // 服务基地址 BaseUrl = "https://api.mch.weixin.qq.com/" // (生产环境) 微信支付的基地址 BaseUrlSandbox = "https://api.mch.weixin.qq.com/sandboxnew/" // (沙盒环境) 微信支付的基地址 // 服务模式 ServiceTypeNormalDomestic = 1 // 境内普通商户 ServiceTypeNormalAbroad = 2 // 境外普通商户 ServiceTypeFacilitatorDomestic = 3 // 境内服务商 ServiceTypeFacilitatorAbroad = 4 // 境外服务商 ServiceTypeBankServiceProvidor = 5 // 银行服务商 // 支付类型 TradeTypeApplet = "JSAPI" // 小程序支付 TradeTypeJsApi = "JSAPI" // JSAPI支付 TradeTypeApp = "APP" // APP支付 TradeTypeH5 = "MWEB" // H5支付 TradeTypeNative = "NATIVE" // Native支付 TradeTypeMicropay = "MICROPAY" // 付款码支付 // 交易状态 TradeStateSuccess = "SUCCESS" // 支付成功 TradeStateRefund = "REFUND" // 转入退款 TradeStateNotPay = "NOTPAY" // 未支付 TradeStateClosed = "CLOSED" // 已关闭 TradeStateRevoked = "REVOKED" // 已撤销(刷卡支付) TradeStateUserPaying = "USERPAYING" // 用户支付中 TradeStatePayError = "PAYERROR" // 支付失败(其他原因,如银行返回失败) // 交易保障(MICROPAY)上报数据包的交易状态 ReportMicropayTradeStateOk = "OK" // 成功 ReportMicropayTradeStateFail = "FAIL" // 失败 ReportMicropayTradeStateCancel = "CANCLE" // 取消 // 货币类型 FeeTypeCNY = "CNY" // 人民币 // 指定支付方式 LimitPayNoCredit = "no_credit" // 指定不能使用信用卡支付 // 压缩账单 TarTypeGzip = "GZIP" // 电子发票 ReceiptEnable = "Y" // 支付成功消息和支付详情页将出现开票入口 // 代金券类型 CouponTypeCash = "CASH" // 充值代金券 CouponTypeNoCash = "NO_CASH" // 非充值优惠券 // 账单类型 BillTypeAll = "ALL" // 返回当日所有订单信息,默认值 BillTypeSuccess = "SUCCESS" // 返回当日成功支付的订单 BillTypeRefund = "REFUND" // 返回当日退款订单 BillTypeRechargeRefund = "RECHARGE_REFUND" // 返回当日充值退款订单 // 退款渠道 RefundChannelOriginal = "ORIGINAL" // 原路退款 RefundChannelBalance = "BALANCE" // 退回到余额 RefundChannelOtherBalance = "OTHER_BALANCE" // 原账户异常退到其他余额账户 RefundChannelOtherBankCard = "OTHER_BANKCARD" // 原银行卡异常退到其他银行卡 // 退款状态 RefundStatusSuccess = "SUCCESS" // 退款成功 RefundStatusClose = "REFUNDCLOSE" // 退款关闭 RefundStatusProcessing = "PROCESSING" // 退款处理中 RefundStatusChange = "CHANGE" // 退款异常,退款到银行发现用户的卡作废或者冻结了,导致原路退款银行卡失败,可前往商户平台(pay.weixin.qq.com)-交易中心,手动处理此笔退款 // 退款资金来源 RefundAccountRechargeFunds = "REFUND_SOURCE_RECHARGE_FUNDS" // 可用余额退款/基本账户 RefundAccountUnsettledFunds = "REFUND_SOURCE_UNSETTLED_FUNDS" // 未结算资金退款 // 退款发起来源 RefundRequestSourceApi = "API" // API接口 RefundRequestSourceVendorPlatform = "VENDOR_PLATFORM" // 商户平台 // 找零校验用户姓名选项 CheckNameTypeNoCheck = "NO_CHECK" //不校验真实姓名 CheckNameTypeForceCheck = "FORCE_CHECK" //强校验真实姓名 // 返回结果 ResponseSuccess = "SUCCESS" // 成功,通信标识或业务结果 ResponseFail = "FAIL" // 失败,通信标识或业务结果 // 返回消息 ResponseMessageOk = "OK" // 返回成功信息 // 错误代码,包括描述、支付状态、原因、解决方案 ErrCodeAppIdMchIdNotMatch = "APPID_MCHID_NOT_MATCH" // appid和mch_id不匹配 支付确认失败 appid和mch_id不匹配 请确认appid和mch_id是否匹配 ErrCodeAppIdNotExist = "APPID_NOT_EXIST" // APPID不存在 支付确认失败 参数中缺少APPID 请检查APPID是否正确 ErrCodeAuthCodeError = "AUTH_CODE_ERROR" // 授权码参数错误 支付确认失败 请求参数未按指引进行填写 每个二维码仅限使用一次,请刷新再试 ErrCodeAuthCodeExpire = "AUTHCODEEXPIRE" // 二维码已过期,请用户在微信上刷新后再试 支付确认失败 用户的条码已经过期 请收银员提示用户,请用户在微信上刷新条码,然后请收银员重新扫码。 直接将错误展示给收银员 ErrCodeAuthCodeInvalid = "AUTH_CODE_INVALID" // 授权码检验错误 支付确认失败 收银员扫描的不是微信支付的条码 请扫描微信支付被扫条码/二维码 ErrCodeBankError = "BANKERROR" // 银行系统异常 支付结果未知 银行端超时 请立即调用被扫订单结果查询API,查询当前订单的不同状态,决定下一步的操作。 ErrCodeBuyerMismatch = "BUYER_MISMATCH" // 支付帐号错误 支付确认失败 暂不支持同一笔订单更换支付方 请确认支付方是否相同 ErrCodeInvalidRequest = "INVALID_REQUEST" // 无效请求 支付确认失败 商户系统异常导致,商户权限异常、重复请求支付、证书错误、频率限制等 请确认商户系统是否正常,是否具有相应支付权限,确认证书是否正确,控制频率 ErrCodeInvalidTransactionId = "INVALID_TRANSACTIONID" // 无效transaction_id 请求参数未按指引进行填写 请求参数错误,检查原交易号是否存在或发起支付交易接口返回失败 ErrCodeLackParams = "LACK_PARAMS" // 缺少参数 支付确认失败 缺少必要的请求参数 请检查参数是否齐全 ErrCodeMchIdNotExist = "MCHID_NOT_EXIST" // MCHID不存在 支付确认失败 参数中缺少MCHID 请检查MCHID是否正确 ErrCodeNoAuth = "NOAUTH" // 商户无权限 支付确认失败 商户没有开通被扫支付权限 请开通商户号权限。请联系产品或商务申请 ErrCodeNotEnough = "NOTENOUGH" // 余额不足 支付确认失败 用户的零钱余额不足 请收银员提示用户更换当前支付的卡,然后请收银员重新扫码。建议:商户系统返回给收银台的提示为“用户余额不足.提示用户换卡支付” ErrCodeNotSuportCard = "NOTSUPORTCARD" // 不支持卡类型 支付确认失败 用户使用卡种不支持当前支付形式 请用户重新选择卡种 建议:商户系统返回给收银台的提示为“该卡不支持当前支付,提示用户换卡支付或绑新卡支付” ErrCodeNotUtf8 = "NOT_UTF8" // 编码格式错误 支付确认失败 未使用指定编码格式 请使用UTF-8编码格式 ErrCodeOrderClosed = "ORDERCLOSED" // 订单已关闭 支付确认失败 该订单已关 商户订单号异常,请重新下单支付 ErrCodeOrderPaid = "ORDERPAID" // 订单已支付 支付确认失败 订单号重复 请确认该订单号是否重复支付,如果是新单,请使用新订单号提交 ErrCodeOrderReversed = "ORDERREVERSED" // 订单已撤销 支付确认失败 当前订单已经被撤销 当前订单状态为“订单已撤销”,请提示用户重新支付 ErrCodeOutTradeNoUsed = "OUT_TRADE_NO_USED" // 商户订单号重复 支付确认失败 同一笔交易不能多次提交 请核实商户订单号是否重复提交 ErrCodeParamError = "PARAM_ERROR" // 参数错误 支付确认失败 请求参数未按指引进行填写 请根据接口返回的详细信息检查您的程序 ErrCodePostDataEmpty = "POST_DATA_EMPTY" // post数据为空 post数据不能为空 请检查post数据是否为空 ErrCodeRefundNotExist = "REFUNDNOTEXIST" // 退款订单查询失败 订单号错误或订单状态不正确 请检查订单号是否有误以及订单状态是否正确,如:未支付、已支付未退款 ErrCodeRequirePostMethod = "REQUIRE_POST_METHOD" // 请使用post方法 支付确认失败 未使用post传递参数 请检查请求参数是否通过post方法提交 ErrCodeSignError = "SIGNERROR" // 签名错误 支付确认失败 参数签名结果不正确 请检查签名参数和方法是否都符合签名算法要求 ErrCodeSystemError = "SYSTEMERROR" // 接口返回错误 支付结果未知 系统超时 请立即调用被扫订单结果查询API,查询当前订单状态,并根据订单的状态决定下一步的操作。 ErrCodeTradeError = "TRADE_ERROR" // 交易错误 支付确认失败 业务错误导致交易失败、用户账号异常、风控、规则限制等 请确认帐号是否存在异常 ErrCodeUserPaying = "USERPAYING" // 用户支付中,需要输入密码 支付结果未知 该笔交易因为业务规则要求,需要用户输入支付密码。 等待5秒,然后调用被扫订单结果查询API,查询当前订单的不同状态,决定下一步的操作。 ErrCodeXmlFormatError = "XML_FORMAT_ERROR" // XML格式错误 支付确认失败 XML格式错误 请检查XML参数格式是否正确 // 是否关注公众账号 IsSubscribeYes = "Y" // 关注 IsSubscribeNo = "N" // 未关注 // 银行类型 BankTypeIcbcDebit = "ICBC_DEBIT" // 工商银行(借记卡) BankTypeIcbcCredit = "ICBC_CREDIT" // 工商银行(信用卡) BankTypeAbcDebit = "ABC_DEBIT" // 农业银行(借记卡) BankTypeAbcCredit = "ABC_CREDIT" // 农业银行(信用卡) BankTypePsbcDebit = "PSBC_DEBIT" // 邮政储蓄银行(借记卡) BankTypePsbcCredit = "PSBC_CREDIT" // 邮政储蓄银行(信用卡) BankTypeCcbDebit = "CCB_DEBIT" // 建设银行(借记卡) BankTypeCcbCredit = "CCB_CREDIT" // 建设银行(信用卡) BankTypeCmbDebit = "CMB_DEBIT" // 招商银行(借记卡) BankTypeCmbCredit = "CMB_CREDIT" // 招商银行(信用卡) BankTypeBocDebit = "BOC_DEBIT" // 中国银行(借记卡) BankTypeBocCredit = "BOC_CREDIT" // 中国银行(信用卡) BankTypeCommDebit = "COMM_DEBIT" // 交通银行(借记卡) BankTypeCommCredit = "COMM_CREDIT" // 交通银行(信用卡) BankTypeSpdbDebit = "SPDB_DEBIT" // 浦发银行(借记卡) BankTypeSpdbCredit = "SPDB_CREDIT" // 浦发银行(信用卡) BankTypeGdbDebit = "GDB_DEBIT" // 广发银行(借记卡) BankTypeGdbCredit = "GDB_CREDIT" // 广发银行(信用卡) BankTypeCmbcDebit = "CMBC_DEBIT" // 民生银行(借记卡) BankTypeCmbcCredit = "CMBC_CREDIT" // 民生银行(信用卡) BankTypePabDebit = "PAB_DEBIT" // 平安银行(借记卡) BankTypePabCredit = "PAB_CREDIT" // 平安银行(信用卡) BankTypeCebDebit = "CEB_DEBIT" // 光大银行(借记卡) BankTypeCebCredit = "CEB_CREDIT" // 光大银行(信用卡) BankTypeCibDebit = "CIB_DEBIT" // 兴业银行(借记卡) BankTypeCibCredit = "CIB_CREDIT" // 兴业银行(信用卡) BankTypeCiticDebit = "CITIC_DEBIT" // 中信银行(借记卡) BankTypeCiticCredit = "CITIC_CREDIT" // 中信银行(信用卡) BankTypeBoshDebit = "BOSH_DEBIT" // 上海银行(借记卡) BankTypeBoshCredit = "BOSH_CREDIT" // 上海银行(信用卡) BankTypeCrbDebit = "CRB_DEBIT" // 华润银行(借记卡) BankTypeHzbDebit = "HZB_DEBIT" // 杭州银行(借记卡) BankTypeHzbCredit = "HZB_CREDIT" // 杭州银行(信用卡) BankTypeBsbDebit = "BSB_DEBIT" // 包商银行(借记卡) BankTypeBsbCredit = "BSB_CREDIT" // 包商银行(信用卡) BankTypeCqbDebit = "CQB_DEBIT" // 重庆银行(借记卡) BankTypeSdebDebit = "SDEB_DEBIT" // 顺德农商行(借记卡) BankTypeSzrcbDebit = "SZRCB_DEBIT" // 深圳农商银行(借记卡) BankTypeSzrcbCredit = "SZRCB_CREDIT" // 深圳农商银行(信用卡) BankTypeHrbbDebit = "HRBB_DEBIT" // 哈尔滨银行(借记卡) BankTypeBocdDebit = "BOCD_DEBIT" // 成都银行(借记卡) BankTypeGdnybDebit = "GDNYB_DEBIT" // 南粤银行(借记卡) BankTypeGdnybCredit = "GDNYB_CREDIT" // 南粤银行(信用卡) BankTypeGzcbDebit = "GZCB_DEBIT" // 广州银行(借记卡) BankTypeGzcbCredit = "GZCB_CREDIT" // 广州银行(信用卡) BankTypeJsbDebit = "JSB_DEBIT" // 江苏银行(借记卡) BankTypeJsbCredit = "JSB_CREDIT" // 江苏银行(信用卡) BankTypeNbcbDebit = "NBCB_DEBIT" // 宁波银行(借记卡) BankTypeNbcbCredit = "NBCB_CREDIT" // 宁波银行(信用卡) BankTypeNjcbDebit = "NJCB_DEBIT" // 南京银行(借记卡) BankTypeQhnxDebit = "QHNX_DEBIT" // 青海农信(借记卡) BankTypeOrdosbCredit = "ORDOSB_CREDIT" // 鄂尔多斯银行(信用卡) BankTypeOrdosbDebit = "ORDOSB_DEBIT" // 鄂尔多斯银行(借记卡) BankTypeBjrcbCredit = "BJRCB_CREDIT" // 北京农商(信用卡) BankTypeBhbDebit = "BHB_DEBIT" // 河北银行(借记卡) BankTypeBgzbDebit = "BGZB_DEBIT" // 贵州银行(借记卡) BankTypeBeebDebit = "BEEB_DEBIT" // 鄞州银行(借记卡) BankTypePzhccbDebit = "PZHCCB_DEBIT" // 攀枝花银行(借记卡) BankTypeQdccbCredit = "QDCCB_CREDIT" // 青岛银行(信用卡) BankTypeQdccbDebit = "QDCCB_DEBIT" // 青岛银行(借记卡) BankTypeShinhanDebit = "SHINHAN_DEBIT" // 新韩银行(借记卡) BankTypeQlbDebit = "QLB_DEBIT" // 齐鲁银行(借记卡) BankTypeQsbDebit = "QSB_DEBIT" // 齐商银行(借记卡) BankTypeZzbDebit = "ZZB_DEBIT" // 郑州银行(借记卡) BankTypeCcabDebit = "CCAB_DEBIT" // 长安银行(借记卡) BankTypeRzbDebit = "RZB_DEBIT" // 日照银行(借记卡) BankTypeScnxDebit = "SCNX_DEBIT" // 四川农信(借记卡) BankTypeBeebCredit = "BEEB_CREDIT" // 鄞州银行(信用卡) BankTypeSdrcuDebit = "SDRCU_DEBIT" // 山东农信(借记卡) BankTypeBczDebit = "BCZ_DEBIT" // 沧州银行(借记卡) BankTypeSjbDebit = "SJB_DEBIT" // 盛京银行(借记卡) BankTypeLnnxDebit = "LNNX_DEBIT" // 辽宁农信(借记卡) BankTypeJufengbDebit = "JUFENGB_DEBIT" // 临朐聚丰村镇银行(借记卡) BankTypeZzbCredit = "ZZB_CREDIT" // 郑州银行(信用卡) BankTypeJxnxbDebit = "JXNXB_DEBIT" // 江西农信(借记卡) BankTypeJzbDebit = "JZB_DEBIT" // 晋中银行(借记卡) BankTypeJzcbCredit = "JZCB_CREDIT" // 锦州银行(信用卡) BankTypeJzcbDebit = "JZCB_DEBIT" // 锦州银行(借记卡) BankTypeKlbDebit = "KLB_DEBIT" // 昆仑银行(借记卡) BankTypeKrcbDebit = "KRCB_DEBIT" // 昆山农商(借记卡) BankTypeKuerlecbDebit = "KUERLECB_DEBIT" // 库尔勒市商业银行(借记卡) BankTypeLjbDebit = "LJB_DEBIT" // 龙江银行(借记卡) BankTypeNyccbDebit = "NYCCB_DEBIT" // 南阳村镇银行(借记卡) BankTypeLsccbDebit = "LSCCB_DEBIT" // 乐山市商业银行(借记卡) BankTypeLuzbDebit = "LUZB_DEBIT" // 柳州银行(借记卡) BankTypeLwbDebit = "LWB_DEBIT" // 莱商银行(借记卡) BankTypeLyyhbDebit = "LYYHB_DEBIT" // 辽阳银行(借记卡) BankTypeLzbDebit = "LZB_DEBIT" // 兰州银行(借记卡) BankTypeMintaibCredit = "MINTAIB_CREDIT" // 民泰银行(信用卡) BankTypeMintaibDebit = "MINTAIB_DEBIT" // 民泰银行(借记卡) BankTypeNcbDebit = "NCB_DEBIT" // 宁波通商银行(借记卡) BankTypeNmgnxDebit = "NMGNX_DEBIT" // 内蒙古农信(借记卡) BankTypeXabDebit = "XAB_DEBIT" // 西安银行(借记卡) BankTypeWfbCredit = "WFB_CREDIT" // 潍坊银行(信用卡) BankTypeWfbDebit = "WFB_DEBIT" // 潍坊银行(借记卡) // BankType = "WHB_CREDIT" // 威海商业银行(信用卡) // BankType = "WHB_DEBIT" // 威海市商业银行(借记卡) // BankType = "WHRC_CREDIT" // 武汉农商(信用卡) // BankType = "WHRC_DEBIT" // 武汉农商行(借记卡) // BankType = "WJRCB_DEBIT" // 吴江农商行(借记卡) // BankType = "WLMQB_DEBIT" // 乌鲁木齐银行(借记卡) // BankType = "WRCB_DEBIT" // 无锡农商(借记卡) // BankType = "WZB_DEBIT" // 温州银行(借记卡) // BankType = "XAB_CREDIT" // 西安银行(信用卡) // BankType = "WEB_DEBIT" // 微众银行(借记卡) // BankType = "XIB_DEBIT" // 厦门国际银行(借记卡) // BankType = "XJRCCB_DEBIT" // 新疆农信银行(借记卡) // BankType = "XMCCB_DEBIT" // 厦门银行(借记卡) // BankType = "YNRCCB_DEBIT" // 云南农信(借记卡) // BankType = "YRRCB_CREDIT" // 黄河农商银行(信用卡) // BankType = "YRRCB_DEBIT" // 黄河农商银行(借记卡) // BankType = "YTB_DEBIT" // 烟台银行(借记卡) // BankType = "ZJB_DEBIT" // 紫金农商银行(借记卡) // BankType = "ZJLXRB_DEBIT" // 兰溪越商银行(借记卡) // BankType = "ZJRCUB_CREDIT" // 浙江农信(信用卡) // BankType = "AHRCUB_DEBIT" // 安徽省农村信用社联合社(借记卡) // BankType = "BCZ_CREDIT" // 沧州银行(信用卡) // BankType = "SRB_DEBIT" // 上饶银行(借记卡) // BankType = "ZYB_DEBIT" // 中原银行(借记卡) // BankType = "ZRCB_DEBIT" // 张家港农商行(借记卡) // BankType = "SRCB_CREDIT" // 上海农商银行(信用卡) // BankType = "SRCB_DEBIT" // 上海农商银行(借记卡) // BankType = "ZJTLCB_DEBIT" // 浙江泰隆银行(借记卡) // BankType = "SUZB_DEBIT" // 苏州银行(借记卡) // BankType = "SXNX_DEBIT" // 山西农信(借记卡) // BankType = "SXXH_DEBIT" // 陕西信合(借记卡) // BankType = "ZJRCUB_DEBIT" // 浙江农信(借记卡) // BankType = "AE_CREDIT" // AE(信用卡) // BankType = "TACCB_CREDIT" // 泰安银行(信用卡) // BankType = "TACCB_DEBIT" // 泰安银行(借记卡) // BankType = "TCRCB_DEBIT" // 太仓农商行(借记卡) // BankType = "TJBHB_CREDIT" // 天津滨海农商行(信用卡) // BankType = "TJBHB_DEBIT" // 天津滨海农商行(借记卡) // BankType = "TJB_DEBIT" // 天津银行(借记卡) // BankType = "TRCB_DEBIT" // 天津农商(借记卡) // BankType = "TZB_DEBIT" // 台州银行(借记卡) // BankType = "URB_DEBIT" // 联合村镇银行(借记卡) // BankType = "DYB_CREDIT" // 东营银行(信用卡) // BankType = "CSRCB_DEBIT" // 常熟农商银行(借记卡) // BankType = "CZB_CREDIT" // 浙商银行(信用卡) // BankType = "CZB_DEBIT" // 浙商银行(借记卡) // BankType = "CZCB_CREDIT" // 稠州银行(信用卡) // BankType = "CZCB_DEBIT" // 稠州银行(借记卡) // BankType = "DANDONGB_CREDIT" // 丹东银行(信用卡) // BankType = "DANDONGB_DEBIT" // 丹东银行(借记卡) // BankType = "DLB_CREDIT" // 大连银行(信用卡) // BankType = "DLB_DEBIT" // 大连银行(借记卡) // BankType = "DRCB_CREDIT" // 东莞农商银行(信用卡) // BankType = "DRCB_DEBIT" // 东莞农商银行(借记卡) // BankType = "CSRCB_CREDIT" // 常熟农商银行(信用卡) // BankType = "DYB_DEBIT" // 东营银行(借记卡) // BankType = "DYCCB_DEBIT" // 德阳银行(借记卡) // BankType = "FBB_DEBIT" // 富邦华一银行(借记卡) // BankType = "FDB_DEBIT" // 富滇银行(借记卡) // BankType = "FJHXB_CREDIT" // 福建海峡银行(信用卡) // BankType = "FJHXB_DEBIT" // 福建海峡银行(借记卡) // BankType = "FJNX_DEBIT" // 福建农信银行(借记卡) // BankType = "FUXINB_DEBIT" // 阜新银行(借记卡) // BankType = "BOCDB_DEBIT" // 承德银行(借记卡) // BankType = "JSNX_DEBIT" // 江苏农商行(借记卡) // BankType = "BOLFB_DEBIT" // 廊坊银行(借记卡) // BankType = "CCAB_CREDIT" // 长安银行(信用卡) // BankType = "CBHB_DEBIT" // 渤海银行(借记卡) // BankType = "CDRCB_DEBIT" // 成都农商银行(借记卡) // BankType = "BYK_DEBIT" // 营口银行(借记卡) // BankType = "BOZ_DEBIT" // 张家口市商业银行(借记卡) // BankType = "CFT" // 零钱 // BankType = "BOTSB_DEBIT" // 唐山银行(借记卡) // BankType = "BOSZS_DEBIT" // 石嘴山银行(借记卡) // BankType = "BOSXB_DEBIT" // 绍兴银行(借记卡) // BankType = "BONX_DEBIT" // 宁夏银行(借记卡) // BankType = "BONX_CREDIT" // 宁夏银行(信用卡) // BankType = "GDHX_DEBIT" // 广东华兴银行(借记卡) // BankType = "BOLB_DEBIT" // 洛阳银行(借记卡) // BankType = "BOJX_DEBIT" // 嘉兴银行(借记卡) // BankType = "BOIMCB_DEBIT" // 内蒙古银行(借记卡) // BankType = "BOHN_DEBIT" // 海南银行(借记卡) // BankType = "BOD_DEBIT" // 东莞银行(借记卡) // BankType = "CQRCB_CREDIT" // 重庆农商银行(信用卡) // BankType = "CQRCB_DEBIT" // 重庆农商银行(借记卡) // BankType = "CQTGB_DEBIT" // 重庆三峡银行(借记卡) // BankType = "BOD_CREDIT" // 东莞银行(信用卡) // BankType = "CSCB_DEBIT" // 长沙银行(借记卡) // BankType = "BOB_CREDIT" // 北京银行(信用卡) // BankType = "GDRCU_DEBIT" // 广东农信银行(借记卡) // BankType = "BOB_DEBIT" // 北京银行(借记卡) // BankType = "HRXJB_DEBIT" // 华融湘江银行(借记卡) // BankType = "HSBC_DEBIT" // 恒生银行(借记卡) // BankType = "HSB_CREDIT" // 徽商银行(信用卡) // BankType = "HSB_DEBIT" // 徽商银行(借记卡) // BankType = "HUNNX_DEBIT" // 湖南农信(借记卡) // BankType = "HUSRB_DEBIT" // 湖商村镇银行(借记卡) // BankType = "HXB_CREDIT" // 华夏银行(信用卡) // BankType = "HXB_DEBIT" // 华夏银行(借记卡) // BankType = "HNNX_DEBIT" // 河南农信(借记卡) // BankType = "BNC_DEBIT" // 江西银行(借记卡) // BankType = "BNC_CREDIT" // 江西银行(信用卡) // BankType = "BJRCB_DEBIT" // 北京农商行(借记卡) // BankType = "JCB_DEBIT" // 晋城银行(借记卡) // BankType = "JJCCB_DEBIT" // 九江银行(借记卡) // BankType = "JLB_DEBIT" // 吉林银行(借记卡) // BankType = "JLNX_DEBIT" // 吉林农信(借记卡) // BankType = "JNRCB_DEBIT" // 江南农商(借记卡) // BankType = "JRCB_DEBIT" // 江阴农商行(借记卡) // BankType = "JSHB_DEBIT" // 晋商银行(借记卡) // BankType = "HAINNX_DEBIT" // 海南农信(借记卡) // BankType = "GLB_DEBIT" // 桂林银行(借记卡) // BankType = "GRCB_CREDIT" // 广州农商银行(信用卡) // BankType = "GRCB_DEBIT" // 广州农商银行(借记卡) // BankType = "GSB_DEBIT" // 甘肃银行(借记卡) // BankType = "GSNX_DEBIT" // 甘肃农信(借记卡) // BankType = "GXNX_DEBIT" // 广西农信(借记卡) BankTypeGycbCredit = "GYCB_CREDIT" // 贵阳银行(信用卡) BankTypeGycbDebit = "GYCB_DEBIT" // 贵阳银行(借记卡) BankTypeGznxDebit = "GZNX_DEBIT" // 贵州农信(借记卡) BankTypeHainnxCredit = "HAINNX_CREDIT" // 海南农信(信用卡) BankTypeHkbDebit = "HKB_DEBIT" // 汉口银行(借记卡) BankTypeHanabDebit = "HANAB_DEBIT" // 韩亚银行(借记卡) BankTypeHbcbCredit = "HBCB_CREDIT" // 湖北银行(信用卡) BankTypeHbcbDebit = "HBCB_DEBIT" // 湖北银行(借记卡) BankTypeHbnxCredit = "HBNX_CREDIT" // 湖北农信(信用卡) BankTypeHbnxDebit = "HBNX_DEBIT" // 湖北农信(借记卡) BankTypeHdcbDebit = "HDCB_DEBIT" // 邯郸银行(借记卡) BankTypeHebnxDebit = "HEBNX_DEBIT" // 河北农信(借记卡) BankTypeHfbDebit = "HFB_DEBIT" // 恒丰银行(借记卡) BankTypeHkbeaDebit = "HKBEA_DEBIT" // 东亚银行(借记卡) BankTypeJcbCredit = "JCB_CREDIT" // JCB(信用卡) BankTypeMasterCardCredit = "MASTERCARD_CREDIT" // MASTERCARD(信用卡) BankTypeVisaCredit = "VISA_CREDIT" // VISA(信用卡) BankTypeLqt = "LQT" // 零钱通 )
Variables ¶
This section is empty.
Functions ¶
func GetAppPaySign ¶
func GetAppPaySign( appId string, nonceStr string, partnerId string, prepayId string, signType string, timeStamp string, apiKey string, ) (paySign string)
调起支付接口
Types ¶
type AuthCodeToOpenIdBody ¶
type AuthCodeToOpenIdBody struct { SignType string `json:"sign_type,omitempty"` // 签名类型,目前支持HMAC-SHA256和MD5,默认为MD5 AuthCode string `json:"auth_code"` // 扫码支付授权码,设备读取用户微信中的条码或者二维码信息 }
付款码查询OpenId参数
type AuthCodeToOpenIdResponse ¶
type AuthCodeToOpenIdResponse struct { ResponseModel // 当return_code为SUCCESS时 ServiceResponseModel // 当return_code 和result_code都为SUCCESS时 OpenId string `xml:"openid"` // 用户在商户appid下的唯一标识 SubOpenId string `xml:"sub_openid"` // 用户在子商户appid下的唯一标识 }
付款码查询OpenId返回值
type ChangeBody ¶
type ChangeBody struct { DeviceInfo string `json:"device_info,omitempty"` // 终端设备号 PartnerTradeNo string `json:"partner_trade_no"` // 商户系统内部订单号,要求32个字符内,只能是数字、大小写字母_-|*且在同一个商户号下唯一。详见商户订单号 OpenId string `json:"openid"` // 商品或支付单简要描述,格式要求:门店品牌名-城市分店名-实际商品名称 CheckName string `json:"check_name"` // 校验用户姓名选项(见constant定义) ReUserName string `json:"re_user_name,omitempty"` // 收款用户姓名 Amount int `json:"amount"` // 企业找零金额,单位为分 Desc string `json:"desc"` // 企业付款备注 SpbillCreateIP string `json:"spbill_create_ip"` // IP可传用户端或者服务端的IP }
微信找零的参数
type ChangeResponse ¶
type ChangeResponse struct { ResponseModel MchServiceResponseModel DeviceInfo string `xml:"device_info"` // 终端设备号 PartnerTradeNo string `xml:"partner_trade_no"` // 商户系统内部订单号,要求32个字符内,只能是数字、大小写字母_-|*且在同一个商户号下唯一。详见商户订单号 PaymentNo string `xml:"payment_no"` // 企业付款成功,返回的微信付款单号 PaymentTime string `xml:"payment_time"` // 企业付款成功时间 }
微信找零的返回值
type Client ¶
type Client struct { // 可公开参数 Config Config // 配置信息 ServiceType int // 服务模式 IsProd bool // 是否是生产环境 // contains filtered or unexported fields }
微信支付客户端配置
func NewClient ¶
func NewClient(isProd bool, serviceType int, apiKey string, certFilepath string, config Config) (client *Client)
初始化微信支付客户端
func (*Client) AuthCodeToOpenId ¶
func (c *Client) AuthCodeToOpenId(body AuthCodeToOpenIdBody) (wxRsp AuthCodeToOpenIdResponse, err error)
付款码查询OpenId
func (*Client) Change ¶
func (c *Client) Change(body ChangeBody) (wxRsp ChangeResponse, err error)
企业付款到零钱(前提用户必须关注公众号)
func (*Client) CloseOrder ¶
func (c *Client) CloseOrder(body CloseOrderBody) (wxRsp CloseOrderResponse, err error)
关闭订单
func (*Client) DownloadBill ¶
func (c *Client) DownloadBill(body DownloadBillBody) (wxRsp string, failRsp *DownloadBillResponse, err error)
下载对账单
func (*Client) Micropay ¶
func (c *Client) Micropay(body MicropayBody) (wxRsp MicropayResponse, err error)
提交付款码支付
func (*Client) NotifyPay ¶
func (c *Client) NotifyPay(handler NotifyPayHandler, requestBody []byte) (rspBody string, err error)
支付结果通知
func (*Client) NotifyRefund ¶
func (c *Client) NotifyRefund(handler NotifyRefundHandler, requestBody []byte) (rspBody string, err error)
退款结果通知
func (*Client) QueryChange ¶
func (c *Client) QueryChange(body QueryChangeBody) (wxRsp QueryChangeResponse, err error)
企业付款到零钱的查询
func (*Client) QueryOrder ¶
func (c *Client) QueryOrder(body QueryOrderBody) (wxRsp QueryOrderResponse, err error)
查询订单
func (*Client) QueryRefund ¶
func (c *Client) QueryRefund(body QueryRefundBody) (wxRsp QueryRefundResponse, err error)
查询退款
func (*Client) Refund ¶
func (c *Client) Refund(body RefundBody) (wxRsp RefundResponse, err error)
申请退款
func (*Client) ReportJsApi ¶
func (c *Client) ReportJsApi(body ReportJsApiBody) (wxRsp ReportJsApiResponse, err error)
交易保障(JSAPI)
func (*Client) ReportMicropay ¶
func (c *Client) ReportMicropay(body ReportMicropayBody) (wxRsp ReportMicropayResponse, err error)
交易保障(MICROPAY)
func (*Client) Reverse ¶
func (c *Client) Reverse(body ReverseBody) (wxRsp ReverseResponse, err error)
撤销订单
func (*Client) UnifiedOrder ¶
func (c *Client) UnifiedOrder(body UnifiedOrderBody) (wxRsp UnifiedOrderResponse, err error)
统一下单
type CloseOrderBody ¶
type CloseOrderBody struct { SignType string `json:"sign_type,omitempty"` // 签名类型,目前支持HMAC-SHA256和MD5,默认为MD5 OutTradeNo string `json:"out_trade_no"` // 商户系统内部订单号,要求32个字符内,只能是数字、大小写字母_-|*且在同一个商户号下唯一。详见商户订单号 }
关闭订单的参数
type CloseOrderResponse ¶
type CloseOrderResponse struct { ResponseModel // 当return_code为SUCCESS时 ServiceResponseModel ResultMsg string `xml:"result_msg"` // 对业务结果的补充说明 }
关闭订单的返回值
type Config ¶
type Config struct { AppId string // 微信分配的公众账号ID SubAppId string // 微信分配的子商户公众账号ID MchId string // 微信支付分配的商户号 SubMchId string // 微信支付分配的子商户号,开发者模式下必填 }
微信支付的整体配置
type CouponResponseModel ¶
type CouponResponseModel struct { CouponId string // 代金券或立减优惠ID CouponType string // CASH-充值代金券 NO_CASH-非充值优惠券 开通免充值券功能,并且订单使用了优惠券后有返回 CouponFee int64 // 单个代金券或立减优惠支付金额 }
返回结果中的优惠券条目信息
func NewCouponResponseModel ¶
func NewCouponResponseModel( doc *etree.Element, idFormat string, typeFormat string, feeFormat string, numbers ...interface{}, ) (m CouponResponseModel)
在XML节点树中,查找labels对应的
type DownloadBillBody ¶
type DownloadBillBody struct { SignType string `json:"sign_type,omitempty"` // 签名类型,目前支持HMAC-SHA256和MD5,默认为MD5 BillDate string `json:"bill_date"` // 下载对账单的日期,格式:20140603 BillType string `json:"bill_type,omitempty"` // ALL,返回当日所有订单信息,默认值 SUCCESS,返回当日成功支付的订单 REFUND,返回当日退款订单 RECHARGE_REFUND,返回当日充值退款订单 TarType string `json:"tar_type,omitempty"` // 非必传参数,固定值:GZIP,返回格式为.gzip的压缩包账单。不传则默认为数据流形式。 }
下载对账单的参数
type DownloadBillInfo ¶
type DownloadBillInfo struct { Orders []DownloadBillOrderItem `json:"orders"` // 所有支付记录 Total DownloadBillTotalItem `json:"total"` // 汇总信息 }
对账单解析后的结构体
func ParseDownloadBillResponse ¶
func ParseDownloadBillResponse(rsp string) (info DownloadBillInfo, err error)
解析下载对账单的原始返回
type DownloadBillOrderItem ¶
type DownloadBillOrderItem struct { TransactionTime string `json:"transaction_time"` // 交易时间,2020-06-29 10:59:49 AppID string `json:"app_id"` // 公众账号ID MchID string `json:"mch_id"` // 商户号 SubMchID string `json:"sub_mch_id"` // 特约商户号 DeviceID string `json:"device_id"` // 设备号 TransactionId string `json:"transaction_id"` // 微信订单号 OutTradeNo string `json:"out_trade_no"` // 商户订单号 UserToken string `json:"user_token"` // 用户标识 TradeType string `json:"trade_type"` // 交易类型 TradeStatus string `json:"trade_status"` // 交易状态 BankType string `json:"bank_type"` // 付款银行 FeeType string `json:"fee_type"` // 货币种类 SettlementTotalFee int `json:"settlement_total_fee"` // 应结订单金额,0.00 CouponFee int `json:"coupon_fee"` // 代金券金额 RefundId string `json:"refund_id"` // 微信退款单号 OutRefundNo string `json:"out_refund_no"` // 商户退款单号 SettlementRefundFee int `json:"settlement_refund_fee"` // 退款金额 CouponRefundFee int `json:"coupon_refund_fee"` // 充值券退款金额 RefundType string `json:"refund_type"` // 退款类型 RefundStatus string `json:"refund_status"` // 退款状态 Body string `json:"body"` // 商品名称 Attach string `json:"attach"` // 商户数据包 ServiceFee int `json:"service_fee"` // 手续费 ServiceFeeRate string `json:"service_fee_rate"` // 费率 TotalFee int `json:"total_fee"` // 订单金额 RefundFee int `json:"refund_fee"` // 申请退款金额 ServiceFeeRateRemark string `json:"service_fee_rate_remark"` // 费率备注 }
对账单解析后的单条支付记录
type DownloadBillResponse ¶
type DownloadBillResponse struct { ResponseModel ErrCode string `xml:"err_code"` // TODO 失败错误码,详见错误码列表 }
下载对账单的返回值
type DownloadBillTotalItem ¶
type DownloadBillTotalItem struct { TotalCount int `json:"total_count"` // 总交易单数 SettlementTotalFee int `json:"settlement_total_fee"` // 应结订单总金额 SettlementRefundFee int `json:"settlement_refund_fee"` // 退款总金额 CouponRefundFee int `json:"coupon_refund_fee"` // 充值券退款总金额 ServiceFee int `json:"service_fee"` // 手续费总金额 TotalFee int `json:"total_fee"` // 订单总金额 RefundFee int `json:"refund_fee"` // 申请退款总金额 }
对账单解析后的汇总信息
type MchServiceResponseModel ¶
type MchServiceResponseModel struct { MchAppId string `xml:"mch_appid"` // 子商户公众账号ID MchId string `xml:"mchid"` // 子商户号 NonceStr string `xml:"nonce_str"` // 随机字符串,不长于32位 Sign string `xml:"sign"` // 签名,详见签名生成算法 ResultCode string `xml:"result_code"` // SUCCESS/FAIL ErrCode string `xml:"err_code"` // 详细参见第6节错误列表 ErrCodeDes string `xml:"err_code_des"` // 错误返回的信息描述 }
特殊商户接口业务返回结果的错误信息
type MicropayBody ¶
type MicropayBody struct { SignType string `json:"sign_type,omitempty"` // 签名类型,目前支持HMAC-SHA256和MD5,默认为MD5 DeviceInfo string `json:"device_info,omitempty"` // 终端设备号(商户自定义,如门店编号) Body string `json:"body"` // 商品或支付单简要描述,格式要求:门店品牌名-城市分店名-实际商品名称 Detail string `json:"detail,omitempty"` // 单品优惠功能字段,需要接入请见详细说明 Attach string `json:"attach,omitempty"` // 附加数据,在查询API和支付通知中原样返回,该字段主要用于商户携带订单的自定义数据 OutTradeNo string `json:"out_trade_no"` // 商户系统内部订单号,要求32个字符内,只能是数字、大小写字母_-|*且在同一个商户号下唯一。详见商户订单号 TotalFee int `json:"total_fee"` // 订单总金额,单位为分,只能为整数,详见支付金额 FeeType string `json:"fee_type,omitempty"` // 符合ISO 4217标准的三位字母代码,默认人民币:CNY,其他值列表详见货币类型 SpbillCreateIP string `json:"spbill_create_ip"` // 支持IPV4和IPV6两种格式的IP地址。调用微信支付API的机器IP GoodsTag string `json:"goods_tag,omitempty"` // 订单优惠标记,代金券或立减优惠功能的参数,说明详见代金券或立减优惠 LimitPay string `json:"limit_pay,omitempty"` // no_credit:指定不能使用信用卡支付 TimeStart string `json:"time_start,omitempty"` // 订单生成时间,格式为yyyyMMddHHmmss,如2009年12月25日9点10分10秒表示为20091225091010。其他详见时间规则 TimeExpire string `json:"time_expire,omitempty"` // 订单失效时间,格式为yyyyMMddHHmmss,如2009年12月27日9点10分10秒表示为20091227091010。注意:最短失效时间间隔需大于1分钟 AuthCode string `json:"auth_code"` // 扫码支付授权码,设备读取用户微信中的条码或者二维码信息 (注:用户付款码条形码规则:18位纯数字,以10、11、12、13、14、15开头) Receipt string `json:"receipt,omitempty"` // Y,传入Y时,支付成功消息和支付详情页将出现开票入口。需要在微信支付商户平台或微信公众平台开通电子发票功能,传此字段才可生效 SceneInfoStr string `json:"scene_info,omitempty"` // 该字段用于上报场景信息,目前支持上报实际门店信息。该字段为JSON对象数据,对象格式为{"store_info":{"id": "门店ID","name": "名称","area_code": "编码","address": "地址" }} ,字段详细说明请点击行前的+展开 // 用于生成SceneInfoStr SceneInfo *SceneInfoModel `json:"-"` }
提交付款码支付的参数
type MicropayResponse ¶
type MicropayResponse struct { ResponseModel // 当return_code为SUCCESS时 ServiceResponseModel DeviceInfo string `xml:"device_info"` // 调用接口提交的终端设备号 // 当return_code和result_code都为SUCCESS时 OpenId string `xml:"openid"` // 用户在商户appid下的唯一标识 IsSubscribe string `xml:"is_subscribe"` // 用户是否关注公众账号,仅在公众账号类型支付有效,取值范围:Y或N;Y-关注;N-未关注 SubOpenId string `xml:"sub_openid"` // (服务商模式) 子商户appid下用户唯一标识,如需返回则请求时需要传sub_appid SubIsSubscribe string `xml:"sub_is_subscribe"` // (服务商模式) 用户是否关注子公众账号,仅在公众账号类型支付有效,取值范围:Y或N;Y-关注;N-未关注 TradeType string `xml:"trade_type"` // 支付类型为MICROPAY(即扫码支付) BankType string `xml:"bank_type"` // 银行类型,采用字符串类型的银行标识,值列表详见银行类型 FeeType string `xml:"fee_type"` // 符合ISO 4217标准的三位字母代码,默认人民币:CNY,其他值列表详见货币类型 TotalFee int `xml:"total_fee"` // 订单总金额,单位为分,只能为整数,详见支付金额 CashFeeType string `xml:"cash_fee_type"` // 符合ISO 4217标准的三位字母代码,默认人民币:CNY,其他值列表详见货币类型 CashFee int `xml:"cash_fee"` // 订单现金支付金额,详见支付金额 SettlementTotalFee int `xml:"settlement_total_fee"` // 当订单使用了免充值型优惠券后返回该参数,应结订单金额=订单金额-免充值优惠券金额。 CouponFee int `xml:"coupon_fee"` // "代金券"金额<=订单金额,订单金额-"代金券"金额=现金支付金额,详见支付金额 TransactionId string `xml:"transaction_id"` // 微信支付订单号 OutTradeNo string `xml:"out_trade_no"` // 商户系统内部订单号,要求32个字符内,只能是数字、大小写字母_-|*且在同一个商户号下唯一。 Attach string `xml:"attach"` // 商家数据包,原样返回 TimeEnd string `xml:"time_end"` // 订单生成时间,格式为yyyyMMddHHmmss,如2009年12月25日9点10分10秒表示为20091225091010。详见时间规则 PromotionDetail string `xml:"promotion_detail"` // TODO 单品优惠详情 }
提交付款码支付的返回值
type NotifyPayBody ¶
type NotifyPayBody struct { ResponseModel // 当return_code为SUCCESS时 ServiceResponseModel DeviceInfo string `xml:"device_info"` // 微信支付分配的终端设备号 IsSubscribe string `xml:"is_subscribe"` // 用户是否关注公众账号(机构商户不返回) SubIsSubscribe string `xml:"sub_is_subscribe"` // (服务商模式) 用户是否关注子公众账号(机构商户不返回) OpenId string `xml:"openid"` // 用户在商户appid下的唯一标识 SubOpenId string `xml:"sub_openid"` // (服务商模式) 用户在子商户appid下的唯一标识 TradeType string `xml:"trade_type"` // 交易类型 BankType string `xml:"bank_type"` // 银行类型,采用字符串类型的银行标识,银行类型见附表 TotalFee int `xml:"total_fee"` // 订单总金额,单位为分 FeeType string `xml:"fee_type"` // 货币类型,符合ISO 4217标准的三位字母代码,默认人民币:CNY,其他值列表详见货币类型 CashFee int `xml:"cash_fee"` // 现金支付金额订单现金支付金额,详见支付金额 CashFeeType string `xml:"cash_fee_type"` // 货币类型,符合ISO 4217标准的三位字母代码,默认人民币:CNY,其他值列表详见货币类型 SettlementTotalFee int `xml:"settlement_total_fee"` // 应结订单金额=订单金额-非充值代金券金额,应结订单金额<=订单金额。 CouponFee int `xml:"coupon_fee"` // 代金券或立减优惠金额<=订单总金额,订单总金额-代金券或立减优惠金额=现金支付金额,详见支付金额 CouponCount int `xml:"coupon_count"` // 代金券或立减优惠使用数量 TransactionId string `xml:"transaction_id"` // 微信支付订单号 OutTradeNo string `xml:"out_trade_no"` // 商户系统内部订单号,要求32个字符内,只能是数字、大小写字母_-|*@ ,且在同一个商户号下唯一。 Attach string `xml:"attach"` // 商家数据包,原样返回 TimeEnd string `xml:"time_end"` // 支付完成时间,格式为yyyyMMddHHmmss,如2009年12月25日9点10分10秒表示为20091225091010。其他详见时间规则 // 使用coupon_count的序号生成的优惠券项 Coupons []CouponResponseModel `xml:"-"` }
支付结果通知的参数
type NotifyPayHandler ¶
type NotifyPayHandler func(NotifyPayBody) error
type NotifyRefundBody ¶
type NotifyRefundBody struct { ResponseModel // 当return_code为SUCCESS时 ServiceResponseModel ReqInfo string `xml:"req_info"` // 加密信息请用商户秘钥进行解密,详见解密方式 // 返回的加密字段 TransactionId string `xml:"transaction_id"` // 微信订单号 OutTradeNo string `xml:"out_trade_no"` // 商户系统内部的订单号 RefundId string `xml:"refund_id"` // 微信退款单号 OutRefundNo string `xml:"out_refund_no"` // 商户退款单号 TotalFee int `xml:"total_fee"` // 订单总金额,单位为分,只能为整数,详见支付金额 SettlementTotalFee int `xml:"settlement_total_fee"` // 当该订单有使用非充值券时,返回此字段。应结订单金额=订单金额-非充值代金券金额,应结订单金额<=订单金额。 RefundFee int `xml:"refund_fee"` // 退款总金额,单位为分 SettlementRefundFee int `xml:"settlement_refund_fee"` // 退款金额=申请退款金额-非充值代金券退款金额,退款金额<=申请退款金额 RefundStatus string `xml:"refund_status"` // 退款状态(RefundStatusXXX) SuccessTime string `xml:"success_time"` // 资金退款至用户帐号的时间,格式2017-12-15 09:46:01 RefundRecvAccount string `xml:"refund_recv_accout"` // TODO 取当前退款单的退款入账方 1)退回银行卡:{银行名称}{卡类型}{卡尾号} 2)退回支付用户零钱: 支付用户零钱 3)退还商户: 商户基本账户 商户结算银行账户 4)退回支付用户零钱通: 支付用户零钱通 RefundAccount string `xml:"refund_account"` // 退款资金来源(RefundAccountXXX) RefundRequestSource string `xml:"refund_request_source"` // 退款发起来源(RefundRequestSourceXXX) }
退款结果通知的参数
type NotifyRefundHandler ¶
type NotifyRefundHandler func(NotifyRefundBody) (NotifyResponseModel, error)
type NotifyResponseModel ¶
type NotifyResponseModel struct { ReturnCode string // SUCCESS/FAIL ReturnMsg string // 返回信息,如非空,为错误原因,或OK }
微信通知的结果返回值
func (*NotifyResponseModel) ToXmlString ¶
func (m *NotifyResponseModel) ToXmlString() string
type QueryChangeBody ¶
type QueryChangeBody struct {
PartnerTradeNo string `json:"partner_trade_no"` // 商户系统内部订单号
}
微信找零查询的参数
type QueryChangeResponse ¶
type QueryChangeResponse struct { ResponseModel MchServiceResponseModel PartnerTradeNo string `xml:"partner_trade_no"` // 商户系统内部订单号,要求32个字符内,只能是数字、大小写字母_-|*且在同一个商户号下唯一。详见商户订单号 DetailId string `xml:"detail_id"` // 调用企业付款API时,微信系统内部产生的单号 Status string `xml:"status"` // 转账状态 Reason string `xml:"reason"` // 失败原因 OpenId string `xml:"openid"` // 转账的openid TransferName string `xml:"transfer_name"` // 收款用户姓名 PaymentAmount int64 `xml:"payment_amount"` // 付款金额单位为“分” TransferTime string `xml:"transfer_time"` // 发起转账的时间 PaymentTime string `xml:"payment_time"` // 企业付款成功时间 Desc string `xml:"desc"` // 企业付款备注 }
微信找零查询的返回值
type QueryOrderBody ¶
type QueryOrderBody struct { SignType string `json:"sign_type,omitempty"` // 签名类型,目前支持HMAC-SHA256和MD5,默认为MD5 TransactionId string `json:"transaction_id,omitempty"` // (非必填,二选一) 微信的订单号,优先使用 OutTradeNo string `json:"out_trade_no,omitempty"` // (非必填,二选一) 商户系统内部订单号,要求32个字符内,只能是数字、大小写字母_-|*且在同一个商户号下唯一。详见商户订单号 }
查询订单的参数
type QueryOrderResponse ¶
type QueryOrderResponse struct { ResponseModel // 当return_code为SUCCESS时 ServiceResponseModel // 当return_code、result_code、trade_state都为SUCCESS时有返回,如trade_state不为SUCCESS,则只返回out_trade_no(必传)和attach(选传)。 DeviceInfo string `xml:"device_info"` // 微信支付分配的终端设备号 OpenId string `xml:"openid"` // 用户在商户appid下的唯一标识 IsSubscribe string `xml:"is_subscribe"` // 用户是否关注公众账号,Y-关注,N-未关注(机构商户不返回) SubOpenId string `xml:"sub_openid"` // (服务商模式) 子商户appid下用户唯一标识,如需返回则请求时需要传sub_appid SubIsSubscribe string `xml:"sub_is_subscribe"` // (服务商模式) 用户是否关注子公众账号,仅在公众账号类型支付有效,取值范围:Y或N;Y-关注;N-未关注 TradeType string `xml:"trade_type"` // 调用接口提交的交易类型,取值如下:JSAPI,NATIVE,APP,MICROPAY,详细说明见参数规定 TradeState string `xml:"trade_state"` // SUCCESS—支付成功 REFUND—转入退款 NOTPAY—未支付 CLOSED—已关闭 REVOKED—已撤销(刷卡支付) USERPAYING--用户支付中 PAYERROR--支付失败(其他原因,如银行返回失败) BankType string `xml:"bank_type"` // 银行类型,采用字符串类型的银行标识 Detail string `xml:"detail"` // 商品详细列表,使用Json格式,传输签名前请务必使用CDATA标签将JSON文本串保护起来。如果使用了单品优惠,会有单品优惠信息返回 TotalFee int `xml:"total_fee"` // 订单总金额,单位为分 FeeType string `xml:"fee_type"` // 货币类型,符合ISO 4217标准的三位字母代码,默认人民币:CNY,其他值列表详见货币类型 SettlementTotalFee int `xml:"settlement_total_fee"` // 当订单使用了免充值型优惠券后返回该参数,应结订单金额=订单金额-免充值优惠券金额。 CashFee int `xml:"cash_fee"` // 现金支付金额订单现金支付金额,详见支付金额 CashFeeType string `xml:"cash_fee_type"` // 货币类型,符合ISO 4217标准的三位字母代码,默认人民币:CNY,其他值列表详见货币类型 CouponFee int `xml:"coupon_fee"` // "代金券或立减优惠"金额<=订单总金额,订单总金额-"代金券或立减优惠"金额=现金支付金额,详见支付金额 CouponCount int `xml:"coupon_count"` // 代金券或立减优惠使用数量 TransactionId string `xml:"transaction_id"` // 微信支付订单号 OutTradeNo string `xml:"out_trade_no"` // 商户系统内部订单号,要求32个字符内,只能是数字、大小写字母_-|*@ ,且在同一个商户号下唯一。 Attach string `xml:"attach"` // 商家数据包,原样返回 TimeEnd string `xml:"time_end"` // 订单支付时间,格式为yyyyMMddHHmmss,如2009年12月25日9点10分10秒表示为20091225091010。其他详见时间规则 TradeStateDesc string `xml:"trade_state_desc"` // 对当前查询订单状态的描述和下一步操作的指引 // 使用coupon_count的序号生成的优惠券项 Coupons []CouponResponseModel `xml:"-"` }
查询订单的返回值
type QueryRefundBody ¶
type QueryRefundBody struct { SignType string `json:"sign_type,omitempty"` // 签名类型,目前支持HMAC-SHA256和MD5,默认为MD5 TransactionId string `json:"transaction_id,omitempty"` // (非必填,四选一) 微信订单号 查询的优先级是: refund_id > out_refund_no > transaction_id > out_trade_no OutTradeNo string `json:"out_trade_no,omitempty"` // (非必填,四选一) 商户系统内部订单号,要求32个字符内,只能是数字、大小写字母_-|*@ ,且在同一个商户号下唯一。 OutRefundNo string `json:"out_refund_no,omitempty"` // (非必填,四选一) 商户系统内部的退款单号,商户系统内部唯一,只能是数字、大小写字母_-|*@ ,同一退款单号多次请求只退一笔。 RefundId string `json:"refund_id,omitempty"` // (非必填,四选一) 微信退款单号 Offset string `json:"offset,omitempty"` // (非必填) 偏移量,当部分退款次数超过10次时可使用,表示返回的查询结果从这个偏移量开始取记录 }
查询退款的参数
type QueryRefundResponse ¶
type QueryRefundResponse struct { ResponseModel // 当return_code为SUCCESS时 ServiceResponseModel TransactionId string `xml:"transaction_id"` // 微信订单号 OutTradeNo string `xml:"out_trade_no"` // 商户系统内部订单号,要求32个字符内,只能是数字、大小写字母_-|*@ ,且在同一个商户号下唯一。 TotalFee int `xml:"total_fee"` // 订单总金额,单位为分,只能为整数,详见支付金额 SettlementTotalFee int `xml:"settlement_total_fee"` // 当订单使用了免充值型优惠券后返回该参数,应结订单金额=订单金额-免充值优惠券金额。 FeeType string `xml:"fee_type"` // 订单金额货币类型,符合ISO 4217标准的三位字母代码,默认人民币:CNY,其他值列表详见货币类型 CashFee int `xml:"cash_fee"` // 现金支付金额,单位为分,只能为整数,详见支付金额 RefundCount int `xml:"refund_count"` // 当前返回退款笔数 TotalRefundCount int `xml:"total_refund_count"` // 订单总共已发生的部分退款次数,当请求参数传入offset后有返回 // 使用refund_count的序号生成的当前退款项 CurrentRefunds []QueryRefundResponseCurrentRefund `xml:"-"` // 使用total_refund_count的序号生成的总退款项 TotalRefunds []QueryRefundResponseTotalRefund `xml:"-"` }
查询退款的返回值
type QueryRefundResponseTotalRefund ¶
type QueryRefundResponseTotalRefund struct { RefundFee int64 // 退款总金额,单位为分,可以做部分退款 SettlementRefundFee int64 // 退款金额=申请退款金额-非充值代金券退款金额,退款金额<=申请退款金额 CouponRefundFee int64 // 代金券退款金额<=退款金额,退款金额-代金券或立减优惠退款金额为现金,说明详见代金券或立减优惠 CouponRefundCount int64 // 退款代金券使用数量 ,$n为下标,从0开始编号 RefundStatus string // 退款状态:SUCCESS—退款成功 REFUNDCLOSE—退款关闭 PROCESSING—退款处理中 CHANGE—退款异常,退款到银行发现用户的卡作废或者冻结了,导致原路退款银行卡失败,可前往商户平台(pay.weixin.qq.com)-交易中心,手动处理此笔退款。$n为下标,从0开始编号。 RefundAccount string // REFUND_SOURCE_RECHARGE_FUNDS---可用余额退款/基本账户 REFUND_SOURCE_UNSETTLED_FUNDS---未结算资金退款 $n为下标,从0开始编号。 RefundRecvAccout string // 取当前退款单的退款入账方 1)退回银行卡:{银行名称}{卡类型}{卡尾号} 2)退回支付用户零钱: 支付用户零钱 3)退还商户: 商户基本账户 商户结算银行账户 4)退回支付用户零钱通: 支付用户零钱通 RefundSuccessTime string // 退款成功时间,当退款状态为退款成功时有返回。$n为下标,从0开始编号。 // 使用coupon_refund_count的序号生成的代金券项 Coupons []CouponResponseModel }
type RefundBody ¶
type RefundBody struct { TransactionId string `json:"transaction_id"` // 微信支付订单号 OutTradeNo string `json:"out_trade_no"` // 商户系统内部订单号,要求32个字符内,只能是数字、大小写字母_-|*@ ,且在同一个商户号下唯一。 OutRefundNo string `json:"out_refund_no"` // 商户系统内部的退款单号,商户系统内部唯一,只能是数字、大小写字母_-|*@ ,同一退款单号多次请求只退一笔。 TotalFee int `json:"total_fee"` // 订单总金额,单位为分,只能为整数,详见支付金额 RefundFee int `json:"refund_fee"` // 退款总金额,单位为分,只能为整数,可部分退款。详见支付金额 RefundFeeType string `json:"refund_fee_type,omitempty"` // 退款货币类型,需与支付一致,或者不填。符合ISO 4217标准的三位字母代码,默认人民币:CNY RefundDesc string `json:"refund_desc,omitempty"` // 现退款原因 RefundAccount string `json:"refund_account,omitempty"` // 退款资金来源(见constatnt定义) NotifyUrl string `json:"notify_url,omitempty"` // 异步接收微信支付退款结果通知的回调地址 }
申请退款的参数
type RefundResponse ¶
type RefundResponse struct { ResponseModel ServiceResponseModel TransactionId string `xml:"transaction_id"` OutTradeNo string `xml:"out_trade_no"` OutRefundNo string `xml:"out_refund_no"` RefundId string `xml:"refund_id"` RefundFee int `xml:"refund_fee"` SettlementRefundFee int `xml:"settlement_refund_fee"` TotalFee int `xml:"total_fee"` SettlementTotalFee int `xml:"settlement_total_fee"` FeeType string `xml:"fee_type"` CashFee int `xml:"cash_fee"` CashRefundFee int `xml:"cash_refund_fee"` CouponRefundFee int `xml:"coupon_refund_fee"` CouponRefundCount int `xml:"coupon_refund_count"` // 使用coupon_refund_count的序号生成的优惠券项 RefundCoupons []CouponResponseModel `xml:"-"` }
申请退款的返回值
type ReportJsApiBody ¶
type ReportJsApiBody struct { SignType string `json:"sign_type,omitempty"` // 签名类型,目前支持HMAC-SHA256和MD5,默认为MD5 DeviceInfo string `json:"device_info,omitempty"` // (非必填) 微信支付分配的终端设备号,商户自定义 InterfaceUrl string `json:"interface_url"` // 上报对应的接口的完整URL,类似:https://api.mch.weixin.qq.com/pay/unifiedorder 对于刷卡支付,为更好的和商户共同分析一次业务行为的整体耗时情况,对于两种接入模式,请都在门店侧对一次刷卡行为进行一次单独的整体上报,上报URL指定为:https://api.mch.weixin.qq.com/pay/micropay/total 关于两种接入模式具体可参考本文档章节:刷卡支付商户接入模式 其它接口调用仍然按照调用一次,上报一次来进行。 ExecuteTime int64 `json:"execute_time"` // 接口耗时情况,单位为毫秒 ReturnCode string `json:"return_code"` // SUCCESS/FAIL 此字段是通信标识,非交易标识,交易是否成功需要查看trade_state来判断 ReturnMsg string `json:"return_msg,omitempty"` // (非必填) 返回信息,如非空,为错误原因 签名失败 参数格式校验错误 ResultCode string `json:"result_code"` // SUCCESS/FAIL ErrCode string `json:"err_code,omitempty"` // (非必填) ORDERNOTEXIST—订单不存在 SYSTEMERROR—系统错误 ErrCodeDes string `json:"err_code_des,omitempty"` // (非必填) 结果信息描述 OutTradeNo string `json:"out_trade_no,omitempty"` // (非必填) 商户系统内部的订单号,商户可以在上报时提供相关商户订单号方便微信支付更好的提高服务质量。 UserIp string `json:"user_ip"` // 发起接口调用时的机器IP Time string `json:"time,omitempty"` // (非必填) 系统时间,格式为yyyyMMddHHmmss,如2009年12月27日9点10分10秒表示为20091227091010。其他详见时间规则 }
交易保障(JSAPI)的参数
type ReportJsApiResponse ¶
type ReportJsApiResponse struct { ResponseModel // 当return_code为SUCCESS时 ResultCode string `xml:"result_code"` // SUCCESS/FAIL }
交易保障(JSAPI)的返回值
type ReportMicropayBody ¶
type ReportMicropayBody struct { SignType string `json:"sign_type,omitempty"` // 签名类型,目前支持HMAC-SHA256和MD5,默认为MD5 DeviceInfo string `json:"device_info,omitempty"` // (非必填) 微信支付分配的终端设备号,商户自定义 InterfaceUrl string `json:"interface_url"` // (不需要手动填写) 上报对应的接口的完整URL,类似:https://api.mch.weixin.qq.com/pay/unifiedorder 对于刷卡支付,为更好的和商户共同分析一次业务行为的整体耗时情况,对于两种接入模式,请都在门店侧对一次刷卡行为进行一次单独的整体上报,上报URL指定为:https://api.mch.weixin.qq.com/pay/micropay/total 关于两种接入模式具体可参考本文档章节:刷卡支付商户接入模式 其它接口调用仍然按照调用一次,上报一次来进行。 UserIp string `json:"user_ip"` // 发起接口调用时的机器IP TradesStr string `json:"trades"` // POS机采集的交易信息列表,使用JSON格式的数组 // 生成TradesStr Trades []ReportMicropayBodyTrade `json:"-"` }
交易保障(MICROPAY)的参数
type ReportMicropayBodyTrade ¶
type ReportMicropayResponse ¶
type ReportMicropayResponse struct { ResponseModel // 当return_code为SUCCESS时 ResultCode string `xml:"result_code"` // SUCCESS/FAIL }
交易保障(MICROPAY)的返回值
type ResponseModel ¶
type ResponseModel struct { ReturnCode string `xml:"return_code"` // SUCCESS/FAIL 此字段是通信标识,非交易标识,交易是否成功需要查看result_code来判断 ReturnMsg string `xml:"return_msg"` // 返回信息,如非空,为错误原因:签名失败/参数格式校验错误 }
返回结果的通信标识
type ReverseBody ¶
type ReverseBody struct { TransactionId string `json:"transaction_id,omitempty"` // 微信支付订单号 OutTradeNo string `json:"out_trade_no"` // 商户系统内部订单号,要求32个字符内,只能是数字、大小写字母_-|*@ ,且在同一个商户号下唯一。 }
撤销订单的参数
type ReverseResponse ¶
type ReverseResponse struct { ResponseModel ServiceResponseModel Recall string `xml:"recall"` // 是否需要继续调用撤销,Y-需要,N-不需要 }
撤销订单的返回值
type SceneInfoModel ¶
type SceneInfoModel struct { ID string `json:"id"` // 门店唯一标识 Name string `json:"name"` // 门店名称 AreaCode string `json:"area_code"` // 门店所在地行政区划码,详细见《最新县及县以上行政区划代码》 Address string `json:"address"` // 门店详细地址 }
场景信息模型
type ServiceResponseModel ¶
type ServiceResponseModel struct { AppId string `xml:"appid"` // 微信分配的公众账号ID MchId string `xml:"mch_id"` // 微信支付分配的商户号 SubAppId string `xml:"sub_appid"` // (服务商模式) 微信分配的子商户公众账号ID SubMchId string `xml:"sub_mch_id"` // (服务商模式) 微信支付分配的子商户号 NonceStr string `xml:"nonce_str"` // 随机字符串,不长于32位 Sign string `xml:"sign"` // 签名,详见签名生成算法 ResultCode string `xml:"result_code"` // SUCCESS/FAIL ErrCode string `xml:"err_code"` // 详细参见第6节错误列表 ErrCodeDes string `xml:"err_code_des"` // 错误返回的信息描述 }
业务返回结果的错误信息
type UnifiedOrderBody ¶
type UnifiedOrderBody struct { SignType string `json:"sign_type,omitempty"` // 签名类型,目前支持HMAC-SHA256和MD5,默认为MD5 DeviceInfo string `json:"device_info,omitempty"` // (非必填) 终端设备号(门店号或收银设备ID),注意:PC网页或JSAPI支付请传"WEB" Body string `json:"body"` // 商品描述交易字段格式根据不同的应用场景建议按照以下格式上传: (1)PC网站——传入浏览器打开的网站主页title名-实际商品名称,例如:腾讯充值中心-QQ会员充值;(2) 公众号——传入公众号名称-实际商品名称,例如:腾讯形象店- image-QQ公仔;(3) H5——应用在浏览器网页上的场景,传入浏览器打开的移动网页的主页title名-实际商品名称,例如:腾讯充值中心-QQ会员充值;(4) 线下门店——门店品牌名-城市分店名-实际商品名称,例如: image形象店-深圳腾大- QQ公仔)(5) APP——需传入应用市场上的APP名字-实际商品名称,天天爱消除-游戏充值。 Detail string `json:"detail,omitempty"` // TODO (非必填) 商品详细描述,对于使用单品优惠的商户,该字段必须按照规范上传,详见"单品优惠参数说明" Attach string `json:"attach,omitempty"` // (非必填) 附加数据,在查询API和支付通知中原样返回,该字段主要用于商户携带订单的自定义数据 OutTradeNo string `json:"out_trade_no"` // 商户系统内部订单号,要求32个字符内,只能是数字、大小写字母_-|*且在同一个商户号下唯一。详见商户订单号 FeeType string `json:"fee_type,omitempty"` // (非必填) 符合ISO 4217标准的三位字母代码,默认人民币:CNY,其他值列表详见货币类型 TotalFee int `json:"total_fee"` // 订单总金额,单位为分,只能为整数,详见支付金额 SpbillCreateIP string `json:"spbill_create_ip"` // 支持IPV4和IPV6两种格式的IP地址。调用微信支付API的机器IP TimeStart string `json:"time_start,omitempty"` // (非必填) 订单生成时间,格式为yyyyMMddHHmmss,如2009年12月25日9点10分10秒表示为20091225091010。其他详见时间规则 TimeExpire string `json:"time_expire,omitempty"` // (非必填) 订单失效时间,格式为yyyyMMddHHmmss,如2009年12月27日9点10分10秒表示为20091227091010。订单失效时间是针对订单号而言的,由于在请求支付的时候有一个必传参数prepay_id只有两小时的有效期,所以在重入时间超过2小时的时候需要重新请求下单接口获取新的prepay_id。其他详见时间规则。建议:最短失效时间间隔大于1分钟 GoodsTag string `json:"goods_tag,omitempty"` // TODO (非必填) 订单优惠标记,代金券或立减优惠功能的参数,说明详见代金券或立减优惠 NotifyUrl string `json:"notify_url"` // 接收微信支付异步通知回调地址,通知url必须为直接可访问的url,不能携带参数。 TradeType string `json:"trade_type"` // JSAPI-JSAPI支付 NATIVE-Native支付 APP-APP支付 说明详见参数规定 ProductId string `json:"product_id,omitempty"` // (非必填) trade_type=NATIVE时,此参数必传。此id为二维码中包含的商品ID,商户自行定义。 LimitPay string `json:"limit_pay,omitempty"` // (非必填) no_credit:指定不能使用信用卡支付 OpenId string `json:"openid,omitempty"` // (非必填) trade_type=JSAPI,此参数必传,用户在主商户appid下的唯一标识。openid和sub_openid可以选传其中之一,如果选择传sub_openid,则必须传sub_appid。下单前需要调用【网页授权获取用户信息】接口获取到用户的Openid。 SubOpenId string `json:"sub_openid,omitempty"` // (非必填) trade_type=JSAPI,此参数必传,用户在子商户appid下的唯一标识。openid和sub_openid可以选传其中之一,如果选择传sub_openid,则必须传sub_appid。下单前需要调用【网页授权获取用户信息】接口获取到用户的Openid。 Receipt string `json:"receipt,omitempty"` // (非必填) Y,传入Y时,支付成功消息和支付详情页将出现开票入口。需要在微信支付商户平台或微信公众平台开通电子发票功能,传此字段才可生效 SceneInfo string `json:"scene_info,omitempty"` // (非必填) 该字段用于上报场景信息,目前支持上报实际门店信息。该字段为JSON对象数据,对象格式为{"store_info":{"id": "门店ID","name": "名称","area_code": "编码","address": "地址" }} ,字段详细说明请点击行前的+展开 // 用于生成SceneInfo SceneInfoModel *SceneInfoModel `json:"-"` }
统一下单的参数
type UnifiedOrderResponse ¶
type UnifiedOrderResponse struct { ResponseModel // 当return_code为SUCCESS时 ServiceResponseModel DeviceInfo string `xml:"device_info"` // 调用接口提交的终端设备号 // 当return_code 和result_code都为SUCCESS时 TradeType string `xml:"trade_type"` // JSAPI-公众号支付 NATIVE-Native支付 APP-APP支付 说明详见参数规定 PrepayId string `xml:"prepay_id"` // 微信生成的预支付回话标识,用于后续接口调用中使用,该值有效期为2小时 CodeUrl string `xml:"code_url"` // trade_type=NATIVE时有返回,此url用于生成支付二维码,然后提供给用户进行扫码支付。注意:code_url的值并非固定,使用时按照URL格式转成二维码即可 MWebUrl string `xml:"mweb_url"` // mweb_url为拉起微信支付收银台的中间页面,可通过访问该url来拉起微信客户端,完成支付,mweb_url的有效期为5分钟。 }
统一下单的返回值
Source Files ¶
- authcode_to_openid.go
- change.go
- client.go
- client_certificate.go
- client_local_sign.go
- client_request.go
- client_sandbox_sign.go
- client_verify_sign.go
- close_order.go
- constant.go
- download_bill.go
- download_bill_parse.go
- get_app_pay_sign.go
- get_applet_pay_sign.go
- get_jsapi_pay_sign.go
- micropay.go
- model.go
- notify_pay.go
- notify_refund.go
- query_change.go
- query_order.go
- query_refund.go
- refund.go
- report_jsapi.go
- report_micropay.go
- reverse.go
- unified_order.go
Click to show internal directories.
Click to hide internal directories.