package propay const ( baseURL = "https://gtw.propay.one" payURL = "/api/pay/pay" queryPayURL = "/api/pay/query" withdrawURL = "/api/payout/pay" queryWithdrawURL = "/api/payout/query" mid = "M1733566601" key = "wLeTfuMzbit18bt9ahwgNNrXnRa1bQQL14FbfG43oPaugEORW6vIgMMXv0INTLlRfI7bkH1CnBeramA1ZD6lng5Arq2JUAH92Q9dzRBQptirmAPws6mCBtn9DxgRzsQF" appID = "67542089e4b09f5f18f4e276" ) type PayReq struct { // 代收金额,单位 分 Amount int64 `json:"amount"` // 应用编号 AppID string `json:"appId"` // 客户邮箱 CustomerEmail string `json:"customerEmail"` // 客户姓名 CustomerName string `json:"customerName"` // 客户手机号 CustomerPhone string `json:"customerPhone"` // 商户号 MchNo string `json:"mchNo"` // 商户订单号 MchOrderNo string `json:"mchOrderNo"` // 异步通知地址,只有该字段有值才会发起回调 NotifyURL string `json:"notifyUrl"` // 同步跳转的地址 ReturnURL string `json:"returnUrl"` // 签名,详见签名算法 Sign string `json:"sign"` } type PayResp struct { // 返回状态,详见错误码 0-成功 其他-失败 Code int64 `json:"code"` // 返回数据 Data PayRespData `json:"data"` // 返回信息,错误原因 Msg string `json:"msg"` // 签名信息,data 为空时不返回 Sign string `json:"sign"` } // 返回数据 type PayRespData struct { // 上游错误码 ErrCode string `json:"errCode"` // 上游错误描述 ErrMsg string `json:"errMsg"` // 商户订单号 MchOrderNo string `json:"mchOrderNo"` // 订单状态,0-订单生成 1-支付中 2-支付成功 3-支付失败 4-已撤销 5-已退款 6-订单关闭 OrderState int64 `json:"orderState"` // 发起支付用到的支付参数 PayData string `json:"payData"` // 支付参数类型,payUrl-跳转链接的方式 form-表单方式 codeUrl-二维码地址 codeImgUrl-二维码图片地址 none-空支付参数 PayDataType string `json:"payDataType"` // 代收订单号 PayOrderID string `json:"payOrderId"` } type PayCallbackReq struct { // 支付金额,单位分 Amount int64 `json:"amount"` // 应用编号 AppID string `json:"appId"` // 渠道订单号 ChannelOrderNo string `json:"channelOrderNo"` // 客户端ip ClientIP string `json:"clientIp"` // 创建时间,13 位时间戳 CreatedAt int64 `json:"createdAt"` // 货币代码,固定值 INR Currency string `json:"currency"` // 客户邮箱 CustomerEmail string `json:"customerEmail"` // 客户姓名 CustomerName string `json:"customerName"` // 客户手机号 CustomerPhone string `json:"customerPhone"` // 渠道错误码 ErrCode string `json:"errCode"` // 渠道错误描述 ErrMsg string `json:"errMsg"` // 支付编码 IfCode string `json:"ifCode"` // 商户号 MchNo string `json:"mchNo"` // 商户订单号 MchOrderNo string `json:"mchOrderNo"` // 代收订单号 PayOrderID string `json:"payOrderId"` // 通知请求时间,13 位时间戳 ReqTime int64 `json:"reqTime"` // 签名 Sign string `json:"sign"` // 订单状态 2-成功 3-失败 State int64 `json:"state"` // 支付方式 WayCode string `json:"wayCode"` } type QueryPayReq struct { // 应用编号 AppID string `json:"appId"` // 商户号 MchNo string `json:"mchNo"` // 商户订单号,与 payOrderId 二者传一即可 MchOrderNo string `json:"mchOrderNo"` // 代收订单号,与 mchOrderNo 二者传一即可 PayOrderID string `json:"payOrderId"` // 签名,详见签名算法 Sign string `json:"sign"` } type QueryPayResp struct { // 返回状态,详见错误码 0-成功 其他-失败 Code int64 `json:"code"` // 返回数据 Data QueryPayRespData `json:"data"` // 返回信息,错误原因 Msg string `json:"msg"` // 签名信息,data 为空时不返回 Sign string `json:"sign"` } // 返回数据 type QueryPayRespData struct { // 支付金额,单位分 Amount int64 `json:"amount"` // 应用编号 AppID string `json:"appId"` // 渠道订单号 ChannelOrderNo string `json:"channelOrderNo"` // 创建时间,13 位时间戳 CreatedAt int64 `json:"createdAt"` // 货币代码,固定值 INR Currency string `json:"currency"` // 客户邮箱 CustomerEmail string `json:"customerEmail"` // 客户姓名 CustomerName string `json:"customerName"` // 客户手机号 CustomerPhone string `json:"customerPhone"` // 渠道错误码 ErrCode string `json:"errCode"` // 渠道错误描述 ErrMsg string `json:"errMsg"` // 商户扩展参数 EXTParam string `json:"extParam"` // 商户号 MchNo string `json:"mchNo"` // 商户订单号 MchOrderNo string `json:"mchOrderNo"` // 代收订单号 PayOrderID string `json:"payOrderId"` // 订单状态,1-支付中 2-支付成功 3-支付失败 6-订单关闭 State int64 `json:"state"` // 成功时间,13 位时间戳 SuccessTime int64 `json:"successTime"` } type WithdrawReq struct { // 银行编码,收款账号或银行卡号 // 当entryType字段为UPI时,则该字段为收款人的Upi 账号。 // 当entryType字段为IMPS时,则该字段为收款人分行的IFSC代码。 AccountCode string `json:"accountCode"` // 收款人邮箱 AccountEmail string `json:"accountEmail"` // 收款人姓名 AccountName string `json:"accountName"` // 收款账号或银行卡号 AccountNo string `json:"accountNo"` // 收款人手机号 AccountPhone string `json:"accountPhone"` // 代付金额,单位 分 Amount int64 `json:"amount"` // 应用编号 AppID string `json:"appId"` // 收款账号开户行名称 BankName string `json:"bankName"` // 入账方式,IMPS或UPI (目前暂支持IMPS) EntryType string `json:"entryType"` // 商户号 MchNo string `json:"mchNo"` // 商户订单号 MchOrderNo string `json:"mchOrderNo"` // 异步通知地址,代付完成后会回调该 URL,只有该字段有值才会发起回调。 NotifyURL string `json:"notifyUrl"` // 签名,详见签名算法 Sign string `json:"sign"` // 备注信息,回调时原样返回 TransferDesc string `json:"transferDesc"` } type WithdrawResp struct { // 返回状态,详见错误码 0-成功 其他-失败 Code int64 `json:"code"` // 返回数据 Data WithdrawRespData `json:"data"` // 返回信息,错误原因 Msg string `json:"msg"` // 签名信息,data 为空时不返回 Sign string `json:"sign"` } // 返回数据 type WithdrawRespData struct { // 收款人姓名 AccountName string `json:"accountName"` // 收款账号 AccountNo string `json:"accountNo"` // 到账金额,扣除手续费后的实际到账金额,单位分 Amount int64 `json:"amount"` // 交易总金额,含手续费的总交易金额,单位分 AmountTo int64 `json:"amountTo"` // 渠道错误码,上游渠道返回的错误码 ErrCode string `json:"errCode"` // 渠道错误描述,上游渠道返回的错误描述 ErrMsg string `json:"errMsg"` // 手续费,单位分 MchFeeAmount int64 `json:"mchFeeAmount"` // 商户订单号 MchOrderNo string `json:"mchOrderNo"` // 转账状态,0-订单生成 1-转账中 2-转账成功 3-转账失败 4-转账关闭 State int64 `json:"state"` // 代付订单号 TransferID string `json:"transferId"` } type WithdrawCallbackReq struct { // 收款人邮箱 AccountEmail string `json:"accountEmail"` // 收款人姓名 AccountName string `json:"accountName"` // 收款账号 AccountNo string `json:"accountNo"` // 收款人手机号 AccountPhone string `json:"accountPhone"` // 到账金额,不含手续费,单位分 Amount int64 `json:"amount"` // 交易总金额,含手续费,单位分 AmountTo int64 `json:"amountTo"` // 应用编号 AppID string `json:"appId"` // 收款人开户行名称 BankName string `json:"bankName"` // UTR ChannelExtra string `json:"channelExtra"` // 渠道订单号 ChannelOrderNo string `json:"channelOrderNo"` // 创建时间,13 位时间戳 CreatedAt int64 `json:"createdAt"` // 货币代码,固定值 INR Currency string `json:"currency"` // 入账方式,固定值 IMPS EntryType string `json:"entryType"` // 渠道错误码 ErrCode string `json:"errCode"` // 渠道错误描述 ErrMsg string `json:"errMsg"` // 商户扩展参数 ExtraParam string `json:"extraParam"` // 支付接口 IfCode string `json:"ifCode"` // 手续费,单位分 MchFeeAmount int64 `json:"mchFeeAmount"` // 商户号 MchNo string `json:"mchNo"` // 商户转账订单号 MchOrderNo string `json:"mchOrderNo"` // 通知请求时间,13 位时间戳 ReqTime int64 `json:"reqTime"` // 签名 Sign string `json:"sign"` // 转账状态 2-成功 3-失败 State int64 `json:"state"` // 成功时间,13 位时间戳 SuccessTime int64 `json:"successTime"` // 代付订单号 TransferID string `json:"transferId"` // 支付编码 WayCode string `json:"wayCode"` } type QueryWithdrawReq struct { // 应用编号 AppID string `json:"appId"` // 商户号 MchNo string `json:"mchNo"` // 商户订单号,与 transferId 二者传一即可 MchOrderNo string `json:"mchOrderNo"` // 签名,详见签名算法 Sign string `json:"sign"` // 代付订单号,与 mchOrderNo 二者传一即可 TransferID string `json:"transferId"` } type QueryWithdrawResp struct { // 返回状态,详见错误码 0-成功 其他-失败 Code int64 `json:"code"` // 返回数据 Data QueryWithdrawRespData `json:"data"` // 返回信息,具体错误原因 Msg string `json:"msg"` // 签名信息,data 为空则不返回 Sign string `json:"sign"` } // 返回数据 type QueryWithdrawRespData struct { // 收款人邮箱 AccountEmail string `json:"accountEmail"` // 收款人姓名 AccountName string `json:"accountName"` // 收款账号 AccountNo string `json:"accountNo"` // 收款人手机号 AccountPhone string `json:"accountPhone"` // 到账金额,扣除手续费后的实际到账金额,单位分 Amount int64 `json:"amount"` // 交易总金额,含手续费,单位分 AmountTo int64 `json:"amountTo"` // 应用编号 AppID string `json:"appId"` // 收款人开户行名称 BankName string `json:"bankName"` // 渠道订单号 ChannelOrderNo string `json:"channelOrderNo"` // 创建时间,13 位时间戳 CreatedAt int64 `json:"createdAt"` // 货币代码,固定值 INR Currency string `json:"currency"` // 入账方式,固定值 IMPS EntryType string `json:"entryType"` // 渠道错误码 ErrCode string `json:"errCode"` // 渠道错误描述 ErrMsg string `json:"errMsg"` // 商户扩展参数 ExtraParam string `json:"extraParam"` // 手续费,单位分 MchFeeAmount int64 `json:"mchFeeAmount"` // 商户号 MchNo string `json:"mchNo"` // 商户订单号 MchOrderNo string `json:"mchOrderNo"` // 转账状态,0-订单生成 1-转账中 2-转账成功 3-转账失败 4-转账关闭 State int64 `json:"state"` // 成功时间,13 位时间戳 SuccessTime int64 `json:"successTime"` // 备注信息 TransferDesc string `json:"transferDesc"` // 代付订单号 TransferID string `json:"transferId"` }