MCPcopy
hub / github.com/go-pay/gopay

github.com/go-pay/gopay @v1.5.122 sqlite

repository ↗ · DeepWiki ↗ · release v1.5.122 ↗
3,398 symbols 11,228 edges 377 files 1,669 documented · 49%
README

Logo was Loading Faild!

GoPay

微信、支付宝、抖音、QQ、通联支付、拉卡拉、PayPal、扫呗、Apple支付的 Golang 版本SDK

Github Github

Golang GoDoc Go GitHub Release License Go Report Card


一、安装

go get github.com/go-pay/gopay

查看 GoPay 版本

版本更新记录

import (
    "github.com/go-pay/gopay"
    "github.com/go-pay/xlog"
)

func main() {
    xlog.Info("GoPay Version: ", gopay.Version)
}

二、文档目录

点击查看不同支付方式的使用文档。方便的话,请留下您认可的小星星,十分感谢!


三、其他说明

  • 【v1.5.119 起 TLS 证书校验默认开启】 此前 pkg/xhttp.NewClient() 默认 tls.Config{InsecureSkipVerify: true},存在中间人攻击风险(CWE-295),自 v1.5.119 起改为使用 Go 标准库默认安全配置。
  • 不影响生产环境:所有支付平台官方域名证书均受信任。
  • 沙箱 / 自签证书场景需手动恢复:New Client 后调用 SetHttpClient 注入跳过校验的 xhttp.Client: ```go import ( "crypto/tls" "github.com/go-pay/gopay/pkg/xhttp" )

    hc := xhttp.NewClient().SetHttpTLSConfig(&tls.Config{InsecureSkipVerify: true}) client.SetHttpClient(hc) // wechat / alipay / douyin / paypal / qq / allinpay / lakala / saobei 均支持 ```

  • 如需自定义Log输出,New Client 后,调用 client.SetLogger() 方法设置自定义Logger,自定义Logger实现 xlog.XLogger interface即可。

  • 各支付方式接入,请仔细查看 xxx_test.go 使用方式

    • gopay/wechat/v3/client_test.go
    • gopay/alipay/v3/client_test.go
    • gopay/alipay/client_test.go
    • gopay/examples/douyin/douyin.go(示例代码)
    • gopay/qq/client_test.go
    • gopay/allinpay/client_test.go
    • gopay/lakala/client_test.go
    • gopay/paypal/client_test.go
    • gopay/apple/verify_test.go
    • 或 examples
  • 接入gopay示例项目(可参考接入使用方式):gopay-platform
  • 有问题请加微信群 或 关注抖音账号,加入首页粉丝群拉微信群。在此,非常感谢提出宝贵意见和反馈问题的同志们!
  • 开发过程中,请尽量使用正式环境,1分钱测试法!
  • 有偿承接技术咨询、开发,如需要加微信联系。

赞赏多少是您的心意,感谢支持!

微信赞赏码:      支付宝赞助码:


问题沟通(非必要不用加微信)

微信: 85411418(加个人微信备注清楚来意,谢谢)。


鸣谢

GoLand A Go IDE with extended support for JavaScript, TypeScript, and Databases。

特别感谢 JetBrains 为开源项目提供免费的 GoLand 等 IDE 的授权

Copyright © 2025 JetBrains s.r.o. JetBrains and the JetBrains logo are trademarks of JetBrains s.r.o.

Extension points exported contracts — how you extend this code

SigningMethod (Interface)
Implement SigningMethod to add new methods for signing or verifying tokens. [3 implementers]
pkg/jwt/signing_method.go
RequestIdHandler (Interface)
(no doc) [2 implementers]
pkg/xhttp/request.go
Option (FuncType)
(no doc)
paypal/client.go
Claims (Interface)
For a type to be a Claims object, it must just have a Valid method that determines if the token is invalid for any suppo [1 …
pkg/jwt/claims.go
Keyfunc (FuncType)
Parse methods use this callback function to supply the key for verification. The function receives the parsed, but unve
pkg/jwt/token.go

Core symbols most depended-on inside this repo

Set
called by 1553
body_map.go
Unmarshal
called by 1020
body_map.go
CheckEmptyError
called by 453
body_map.go
GetString
called by 386
body_map.go
authorization
called by 242
wechat/v3/sign.go
verifySyncSign
called by 239
wechat/v3/sign.go
doAliPay
called by 236
alipay/client_request.go
getSignData
called by 230
alipay/sign.go

Shape

Struct 1,719
Method 1,156
Function 509
TypeAlias 9
Interface 3
FuncType 2

Languages

Go100%

Modules by API surface

paypal/model.go173 symbols
alipay/model_market.go167 symbols
wechat/v3/model_favor.go79 symbols
alipay/model_merchant.go74 symbols
alipay/model_zhima.go67 symbols
wechat/model.go50 symbols
wechat/v3/notify.go48 symbols
alipay/model_member.go47 symbols
alipay/model.go44 symbols
wechat/v3/model.go43 symbols
alipay/model_payment.go42 symbols
wechat/v3/model_score.go33 symbols

Used by 1 indexed graphs manifest dependencies, hub-wide

Dependencies from manifests, versioned

github.com/go-pay/cryptov0.0.1 · 1×
github.com/go-pay/errgroupv0.0.3 · 1×
github.com/go-pay/smapv0.0.2 · 1×
github.com/go-pay/utilv0.0.4 · 1×
github.com/go-pay/xlogv0.0.3 · 1×
github.com/go-pay/xtimev0.0.2 · 1×
golang.org/x/cryptov0.53.0 · 1×

For agents

$ claude mcp add gopay \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact