Documentation
¶
Index ¶
- Constants
- func GetLocalIPv4() string
- type Client
- func (c *Client) GenerateSign(bm gopay.BodyMap) string
- func (c *Client) MapiApi(ctx context.Context, bm gopay.BodyMap) (response *PostMapiRsp, err error)
- func (c *Client) OrderApi(ctx context.Context, bm gopay.BodyMap) (response *OrderQueryRsp, err error)
- func (c *Client) RequestParam(bm gopay.BodyMap) (string, error)
- func (c *Client) SetBodySize(sizeMB int)
- func (c *Client) SetHttpClient(client *xhttp.Client)
- func (c *Client) SetLogger(logger xlog.XLogger)
- func (c *Client) SubmitApi(ctx context.Context, bm gopay.BodyMap) (response string, err error)
- type OrderNotifyRsp
- type OrderQueryRsp
- type PostMapiRsp
Constants ¶
const ( MD5 = "MD5" UTF8 = "UTF-8" )
接口地址 https://4ab82428.lempay.com/ 商户ID:2428 密钥:xKXz8P461pf14xfkPQVMKPNk6bKp2pVP 商户后台:https://api.lempay.com/user/ 接口文档:https://api.lempay.com/doc.html
协议规则 URL地址:文档仅供参考,实际以商户后台接口地址为准
请求数据格式:application/x-www-form-urlencode
返回数据格式:JSON
签名算法:MD5
字符编码:UTF-8
Variables ¶
This section is empty.
Functions ¶
func GetLocalIPv4 ¶
func GetLocalIPv4() string
Types ¶
type Client ¶
type Client struct {
BaseUrl string //接口地址
Pid int //商户ID
SecretKey string //商户密钥
ReturnUrl string //异步通知地址
NotifyUrl string //跳转通知地址
IsProd bool //是否是正式环境
DebugSwitch gopay.DebugSwitch //调试开关,是否打印日志
SignType string //签名类型
ClientIp string //客户端IP
// contains filtered or unexported fields
}
func NewClient ¶
初始化支付宝客户端 注意:如果使用支付宝公钥证书验签,请使用 client.SetCertSnByContent() 或 client.SetCertSnByPath() 设置 应用公钥证书、支付宝公钥证书、支付宝根证书 appid:应用ID privateKey:应用私钥,支持PKCS1和PKCS8 isProd:是否是正式环境,沙箱环境请选择新版沙箱应用。
func (*Client) GenerateSign ¶
1. 签名算法实现 首先,你需要实现一个签名算法来生成 MD5 签名。
func (*Client) OrderApi ¶
func (c *Client) OrderApi(ctx context.Context, bm gopay.BodyMap) (response *OrderQueryRsp, err error)
[API]查询单个订单 URL地址:https://a913a.lempay.com/api.php?act=order&pid={商户ID}&out_trade_no={商户订单号}&sign={32位签名字符串}
func (*Client) RequestParam ¶
RequestParam 获取完整请求参数包含签名
func (*Client) SetBodySize ¶
SetBodySize 设置http response body size(MB)
func (*Client) SetHttpClient ¶
SetHttpClient 设置自定义的xhttp.Client
type OrderNotifyRsp ¶
type OrderNotifyRsp struct {
Pid string `json:"pid,omitempty"` // 商户ID
TradeNo string `json:"trade_no,omitempty"` // 易支付订单号
OutTradeNo string `json:"out_trade_no,omitempty"` // 商户订单号
Type string `json:"type,omitempty"` // 支付方式
Name string `json:"name,omitempty"` // 商品名称
Money string `json:"money,omitempty"` // 商品金额
TradeStatus string `json:"trade_status,omitempty"` //只有TRADE_SUCCESS是成功
Param string `json:"param,omitempty"` //业务扩展参数
Sign string `json:"sign,omitempty"` //签名字符串
SignType string `json:"sign_type,omitempty"` //签名类型
}
pid:1058 trade_no:2024081609265449383 out_trade_no:1824256487309316096 type:alipay name:product money:1 trade_status:TRADE_SUCCESS sign:c10ac8886190e17e12802090e1067f8b sign_type:MD5
type OrderQueryRsp ¶
type OrderQueryRsp struct {
Code string `json:"code,omitempty"` // 返回状态码
Msg string `json:"msg,omitempty"` // 返回信息
TradeNo string `json:"trade_no,omitempty"` // 易支付订单号
OutTradeNo string `json:"out_trade_no,omitempty"` // 商户订单号
ApiTradeNo string `json:"api_trade_no,omitempty"` // 第三方订单号
Type string `json:"type,omitempty"` // 支付方式
Pid string `json:"pid,omitempty"` // 商户ID
AddTime string `json:"addtime,omitempty"` // 创建订单时间
EndTime string `json:"endtime,omitempty"` // 完成交易时间
Name string `json:"name,omitempty"` // 商品名称
Money string `json:"money,omitempty"` // 商品金额
Status string `json:"status,omitempty"` // 支付状态
Param string `json:"param,omitempty"` // 业务扩展参数
Buyer string `json:"buyer,omitempty"` // 支付者账号
}
{
"code": 1,
"msg": "succ",
"trade_no": "2024081414592697636",
"out_trade_no": "4539396062296355",
"api_trade_no": null,
"type": "alipay",
"pid": "1058",
"addtime": "2024-08-14 14:59:26",
"endtime": null,
"name": "测试订单",
"money": "1.00",
"param": "",
"buyer": null,
"status": "0",
"payurl": null
}
{"code":1,"msg":"succ","trade_no":"2024081616291875812","out_trade_no":"1824362788093825024","api_trade_no":null,"type":false,"pid":"1058","addtime":"2024-08-16 16:29:18","endtime":null,"name":"\u5145\u503c","money":"1.00","param":null,"buyer":null,"status":"0","payurl":null}
OrderQueryRsp 结构体用于解析查询单个订单的响应
type PostMapiRsp ¶
type PostMapiRsp struct {
Code string `json:"code,omitempty"` // 响应码
Msg string `json:"msg,omitempty"` // 错误信息
TradeNo string `json:"trade_no,omitempty"` // 订单号
PayURL string `json:"payurl,omitempty"` //支付 URL
Qrcode string `json:"qrcode,omitempty"` //如果返回该字段,则根据该url生成二维码
Urlscheme string `json:"urlscheme,omitempty"` //如果返回该字段,则使用js跳转该url,可发起微信小程序支付
}
{"code":1,"trade_no":"2024081509452867419","payurl":"https:\/\/pay.jisufa.com\/pay\/submit\/2024081509452867419\/"}