-
沙箱环境
文档:https://docs.open.alipay.com/200/105311/
沙箱地址:https://openhome.alipay.com/platform/appDaily.htm -
密钥(文档已经很详细了,附链接)
https://opendocs.alipay.com/open/291/105971#Krqvg
-
代码使用的第三方库
github.com/smartwalle/alipay/v3
-
代码简单实现
网页支付
```gopackage paysimport ("errors""fmt""github.com/smartwalle/alipay/v3")var (// appIdappId = ""// 应用公钥aliPublicKey = ""// 应用私钥privateKey = ""client, _ = alipay.New(appId, privateKey, true))func init() {client.LoadAppPublicCertFromFile("appCertPublicKey.crt") // 加载应用公钥证书client.LoadAliPayRootCertFromFile("alipayRootCert.crt") // 加载支付宝根证书client.LoadAliPayPublicCertFromFile("alipayCertPublicKey.crt") // 加载支付宝公钥证书}//手机客户端支付func WapAlipay() {var p = alipay.TradeWapPay{}p.NotifyURL = ""p.ReturnURL = "http://xxx"p.Subject = ""p.OutTradeNo = ""p.TotalAmount = ""p.ProductCode = ""url, err := client.TradeWapPay(p)if err != nil {fmt.Println("pay client.TradeAppPay error:", err)return}//logging.Info(url)binary, _ := url.MarshalBinary()fmt.Println(string(binary))}//转账func Alipayout(outBizNo, payeeAccount, amount, payeeRealName string) error {var p = alipay.FundTransToAccountTransfer{}p.OutBizNo = outBizNo // 必选 商户转账唯一订单号p.PayeeType = "ALIPAY_LOGONID" // 必选 收款方账户类型,"ALIPAY_LOGONID":支付宝帐号p.PayeeAccount = payeeAccount // 必选 收款方账户。与payee_type配合使用p.Amount = amount // 必选 转账金额,元p.PayeeRealName = payeeRealName //收款方真实姓名rsp, err := client.FundTransToAccountTransfer(p)if err != nil {fmt.Println("FundTransToAccountTransfer error:", err)return err}if rsp.Content.Code != alipay.CodeSuccess {fmt.Println(rsp.Content.Msg, rsp.Content.SubMsg)return errors.New("pay error:" + rsp.Content.Msg)}fmt.Println(rsp.Content.Msg)return nil}```