lempay

package
v0.0.0-...-95cb943 Latest Latest
Warning

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

Go to latest
Published: Sep 14, 2024 License: Apache-2.0 Imports: 12 Imported by: 0

Documentation

Index

Constants

View Source
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

func NewClient(pid int, secretKey string, isProd bool) (client *Client, err error)

初始化支付宝客户端 注意:如果使用支付宝公钥证书验签,请使用 client.SetCertSnByContent() 或 client.SetCertSnByPath() 设置 应用公钥证书、支付宝公钥证书、支付宝根证书 appid:应用ID privateKey:应用私钥,支持PKCS1和PKCS8 isProd:是否是正式环境,沙箱环境请选择新版沙箱应用。

func (*Client) GenerateSign

func (c *Client) GenerateSign(bm gopay.BodyMap) string

1. 签名算法实现 首先,你需要实现一个签名算法来生成 MD5 签名。

func (*Client) MapiApi

func (c *Client) MapiApi(ctx context.Context, bm gopay.BodyMap) (response *PostMapiRsp, err error)

API接口支付 后端

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

func (c *Client) RequestParam(bm gopay.BodyMap) (string, error)

RequestParam 获取完整请求参数包含签名

func (*Client) SetBodySize

func (c *Client) SetBodySize(sizeMB int)

SetBodySize 设置http response body size(MB)

func (*Client) SetHttpClient

func (c *Client) SetHttpClient(client *xhttp.Client)

SetHttpClient 设置自定义的xhttp.Client

func (*Client) SetLogger

func (c *Client) SetLogger(logger xlog.XLogger)

func (*Client) SubmitApi

func (c *Client) SubmitApi(ctx context.Context, bm gopay.BodyMap) (response string, err error)

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\/"}

Jump to

Keyboard shortcuts

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