README
AliPay SDK for Golang
帮助
在集成的过程中有遇到问题,欢迎加 QQ 群 564704807 讨论。
其它支付
微信支付 https://github.com/smartwalle/wxpay
PayPal https://github.com/smartwalle/paypal
关于各分支(版本)
- v1 - 最老的版本,实现了完整的支付功能,目前已停止更新维护;
- v2 - 在 v1 的基础上进行了一些优化和规范调整,目前已停止更新维护;
- v3 - 支持公钥证书签名和验签,详情可以参考 https://docs.open.alipay.com/291/105974/ 和 https://docs.open.alipay.com/291/105971/,为目前主要维护分支;
- master - 和主要维护分支同步;
v3 版本如何初始化
截止本次更新(2019-08-28),支付宝的沙箱环境并未支持公钥证书,考虑到大家开发测试方便,所以本分支保留了沙箱环境下对普通公钥的支持,如果是生产环境则只支持公钥证书,不支持普通公钥。
需要特别注意以下内容
沙箱环境
初始化函数传递的参数信息和老版本一样
var client, err = alipay.New(appID, aliPublicKey, privateKey, false)
生产环境
初始化函数传递的参数信息不再需要 aliPublicKey, 传了也无所谓,会自动过滤掉。
下面用到的 privateKey 需要特别注意一下,如果是通过“支付宝开发平台开发助手”创建的CSR文件,在 CSR 文件所在的目录下会生成相应的私钥文件,我们需要使用该私钥进行签名。
var client, err = alipay.New(appID, "", privateKey, true)
另外,需要调用以下几个方法加载证书信息,所有证书都是从支付宝创建的应用处下载,参考 https://docs.open.alipay.com/291/105971/ 和 https://docs.open.alipay.com/291/105972/
client.LoadAppPublicCertFromFile("appCertPublicKey_2017011104995404.crt")
client.LoadAliPayRootCertFromFile("alipayRootCert.crt")
client.LoadAliPayPublicCertFromFile("alipayCertPublicKey_RSA2.crt")
已实现接口
手机网站支付API
中线(-)后面的名称是该接口在 AliPay 结构体中对应的方法名。
-
手机网站支付接口
alipay.trade.wap.pay - TradeWapPay()
-
电脑网站支付
alipay.trade.page.pay - TradePagePay()
-
统一收单线下交易查询
alipay.trade.query - TradeQuery()
-
统一收单交易支付接口
alipay.trade.pay - TradePay()
-
统一收单交易创建接口
alipay.trade.create - TradeCreate()
-
统一收单线下交易预创建
alipay.trade.precreate - TradePreCreate()
-
统一收单交易撤销接口
alipay.trade.cancel - TradeCancel()
-
统一收单交易关闭接口
alipay.trade.close - TradeClose()
-
统一收单交易退款接口
alipay.trade.refund - TradeRefund()
-
App支付接口
alipay.trade.app.pay - TradeAppPay()
-
统一收单交易退款查询
alipay.trade.fastpay.refund.query - TradeFastpayRefundQuery()
-
支付宝订单信息同步接口
alipay.trade.orderinfo.sync - TradeOrderInfoSync()
-
单笔转账到支付宝账户接口
alipay.fund.trans.toaccount.transfer - FundTransToAccountTransfer()
-
查询转账订单接口
alipay.fund.trans.order.query - FundTransOrderQuery()
-
资金授权发码接口
alipay.fund.auth.order.voucher.create - FundAuthOrderVoucherCreate()
-
资金授权操作查询接口
alipay.fund.auth.operation.detail.query - FundAuthOperationDetailQuery()
-
资金授权撤销接口
alipay.fund.auth.operation.cancel - FundAuthOperationCancel()
-
资金授权解冻接口
alipay.fund.auth.order.unfreeze - FundAuthOrderUnfreeze()
-
资金授权冻结接口
alipay.fund.auth.order.freeze - FundAuthOrderFreeze()
-
线上资金授权冻结接口
alipay.fund.auth.order.app.freeze - FundAuthOrderAppFreeze()
-
查询对账单下载地址
alipay.data.dataservice.bill.downloadurl.query - BillDownloadURLQuery()
-
身份认证初始化服务
alipay.user.certify.open.initialize - UserCertifyOpenInitialize()
-
身份认证开始认证
alipay.user.certify.open.certify - UserCertifyOpenCertify()
-
身份认证记录查询
alipay.user.certify.open.query - UserCertifyOpenQuery()
-
用户信息授权(网站支付宝登录快速接入)
生成授权链接 - PublicAppAuthorize()
-
换取授权访问令牌
alipay.system.oauth.token - SystemOauthToken()
-
支付宝会员授权信息查询接口
alipay.user.info.share - UserInfoShare()
通知
-
通知内容转换及签名验证
将支付宝的通知内容转换为 Golang 的结构体,并且验证其合法性。
集成流程
从支付宝开放平台申请创建相关的应用,使用自己的支付宝账号登录即可。
沙箱环境
支付宝开放平台为每一个应用提供了沙箱环境,供开发人员开发测试使用。
沙箱环境是独立的,每一个应用都会有一个商家账号和买家账号。
应用信息配置
参考官网文档 进行应用的配置。
本 SDK 中的签名方法默认为 RSA2,采用支付宝提供的 RSA签名&验签工具 生成秘钥时,秘钥的格式必须为 PKCS1,秘钥长度推荐 2048。所以在支付宝管理后台请注意配置 RSA2(SHA256)密钥。
生成秘钥对之后,将公钥提供给支付宝(通过支付宝后台上传)对我们请求的数据进行签名验证,我们的代码中将使用私钥对请求数据签名。
请参考 如何生成 RSA 密钥。
创建 Wap 支付
var aliPublicKey = "" // 可选,支付宝提供给我们用于签名验证的公钥,通过支付宝管理后台获取
var privateKey = "xxx" // 必须,上一步中使用 RSA签名验签工具 生成的私钥
var client, err = alipay.New(appId, aliPublicKey, privateKey, false)
// 将 key 的验证调整到初始化阶段
if err != nil {
fmt.Println(err)
return
}
var p = alipay.TradeWapPay{}
p.NotifyURL = "http://xxx"
p.ReturnURL = "http://xxx"
p.Subject = "标题"
p.OutTradeNo = "传递一个唯一单号"
p.TotalAmount = "10.00"
p.ProductCode = "QUICK_WAP_WAY"
var url, err = client.TradeWapPay(p)
if err != nil {
fmt.Println(err)
}
var payURL = url.String()
fmt.Println(payURL)
// 这个 payURL 即是用于支付的 URL,可将输出的内容复制,到浏览器中访问该 URL 即可打开支付页面。
同步返回验签
支持自动对支付宝返回的数据进行签名验证,详细信息请参考自行实现验签.
如果需要开启自动验签,只需要在初始化 AliPay 对象的时候提供 aliPublicKey 参数,该参数的值为支付宝管理后台获取到的支付宝公钥,如下:
var client, err = alipay.New(appId, aliPublicKey, privateKey, false)
Return URL
发起支付的时候,当我们有提供 Return URL 参数,那么支付成功之后,支付宝将会重定向到该 URL,并附带上相关的参数。
var p = alipay.TradeWapPay{}
p.ReturnURL = "http://xxx/return"
这时候我们需要对支付宝提供的参数进行签名验证,当然,前提是我们在 alipay.New(...) 初始化方法中有正确提供 支付宝公钥:
var client, err = alipay.New(appId, aliPublicKey, privateKey, false)
http.HandleFunc("/return", func(rep http.ResponseWriter, req *http.Request) {
req.ParseForm()
ok, err := client.VerifySign(req.Form)
fmt.Println(ok, err)
}
异步验证支付结果
有支付或者其它动作发生后,支付宝服务器会调用我们提供的 Notify URL,并向其传递会相关的信息。参考手机网站支付结果异步通知。
我们需要在提供的 Notify URL 服务中获取相关的参数并进行验证:
var client, err = alipay.New(appId, aliPublicKey, privateKey, false)
http.HandleFunc("/alipay", func(rep http.ResponseWriter, req *http.Request) {
var noti, _ = client.GetTradeNotification(req)
if noti != nil {
fmt.Println("支付成功")
} else {
fmt.Println("支付失败")
}
alipay.AckNotification(rep) // 确认收到通知消息
})
此验证方法适用于支付宝所有情况下发送的 Notify,不管是手机 App 支付还是 Wap 支付。
关于应用私钥 (privateKey)
应用私钥是我们通过工具生成的私钥,调用支付宝接口的时候,我们需要使用该私钥对参数进行签名。
关于应用公钥 (publicKey)
应用公钥是我们通过工具生成的公钥,需要通过支付宝后台上传该公钥,支付宝收到我们请求的时候,会使用该公钥对参数进行签名验证,以确保数据的有效性。
关于支付宝公钥 (aliPublicKey)
支付宝公钥是从支付宝管理后台获取 (不是我们通过工具生成的公钥),该公钥是支付宝提供给我们用于验证支付宝接口返回数据的有效性 (我们需要使用该公钥对支付宝返回的数据进行签名验证)。
关于 alipay.New() 函数中的最后一个参数 isProduction
支付宝提供了用于开发时测试的 sandbox 环境,对接的时候需要注意相关的 app id 和密钥是 sandbox 环境还是 production 环境的。如果是 sandbox 环境,本参数应该传 false,否则为 true。
支持 RSA 签名及验证
默认采用的是 RSA2 签名,不再提供 RSA 的支持
License
This project is licensed under the MIT License.
Documentation
Index ¶
- Constants
- func AckNotification(w http.ResponseWriter)
- func NewRequest(method, url string, params url.Values) (*http.Request, error)
- type BillDownloadURLQuery
- type BillDownloadURLQueryRsp
- type CertifyBizCode
- type Client
- func (this *Client) AckNotification(w http.ResponseWriter)
- func (this *Client) AppToAppAuth(redirectURI string) (result *url.URL, err error)
- func (this *Client) BillDownloadURLQuery(param BillDownloadURLQuery) (result *BillDownloadURLQueryRsp, err error)
- func (this *Client) DoRequest(method string, param Param, result interface{}) (err error)
- func (this *Client) FundAuthOperationCancel(param FundAuthOperationCancel) (result *FundAuthOperationCancelRsp, err error)
- func (this *Client) FundAuthOperationDetailQuery(param FundAuthOperationDetailQuery) (result *FundAuthOperationDetailQueryRsp, err error)
- func (this *Client) FundAuthOrderAppFreeze(param FundAuthOrderAppFreeze) (result string, err error)
- func (this *Client) FundAuthOrderFreeze(param FundAuthOrderFreeze) (result *FundAuthOrderFreezeRsp, err error)
- func (this *Client) FundAuthOrderUnfreeze(param FundAuthOrderUnfreeze) (result *FundAuthOrderUnfreezeRsp, err error)
- func (this *Client) FundAuthOrderVoucherCreate(param FundAuthOrderVoucherCreate) (result *FundAuthOrderVoucherCreateRsp, err error)
- func (this *Client) FundTransOrderQuery(param FundTransOrderQuery) (result *FundTransOrderQueryRsp, err error)
- func (this *Client) FundTransToAccountTransfer(param FundTransToAccountTransfer) (result *FundTransToAccountTransferRsp, err error)
- func (this *Client) GetTradeNotification(req *http.Request) (noti *TradeNotification, err error)
- func (this *Client) IsProduction() bool
- func (this *Client) LoadAliPayPublicCert(s string) error
- func (this *Client) LoadAliPayPublicCertFromFile(filename string) error
- func (this *Client) LoadAliPayRootCert(s string) error
- func (this *Client) LoadAliPayRootCertFromFile(filename string) error
- func (this *Client) LoadAppPublicCert(s string) error
- func (this *Client) LoadAppPublicCertFromFile(filename string) error
- func (this *Client) NotifyVerify(partnerId, notifyId string) bool
- func (this *Client) OpenAuthTokenApp(param OpenAuthTokenApp) (result *OpenAuthTokenAppRsp, err error)
- func (this *Client) PublicAppAuthorize(scopes []string, redirectURI, state string) (result *url.URL, err error)
- func (this *Client) SystemOauthToken(param SystemOauthToken) (result *SystemOauthTokenRsp, err error)
- func (this *Client) TradeAppPay(param TradeAppPay) (result string, err error)
- func (this *Client) TradeCancel(param TradeCancel) (result *TradeCancelRsp, err error)
- func (this *Client) TradeClose(param TradeClose) (result *TradeCloseRsp, err error)
- func (this *Client) TradeCreate(param TradeCreate) (result *TradeCreateRsp, err error)
- func (this *Client) TradeFastPayRefundQuery(param TradeFastPayRefundQuery) (result *TradeFastPayRefundQueryRsp, err error)
- func (this *Client) TradeOrderInfoSync(param TradeOrderInfoSync) (result *TradeOrderInfoSyncRsp, err error)
- func (this *Client) TradeOrderSettle(param TradeOrderSettle) (result *TradeOrderSettleRsp, err error)
- func (this *Client) TradePagePay(param TradePagePay) (result *url.URL, err error)
- func (this *Client) TradePay(param TradePay) (result *TradePayRsp, err error)
- func (this *Client) TradePreCreate(param TradePreCreate) (result *TradePreCreateRsp, err error)
- func (this *Client) TradeQuery(param TradeQuery) (result *TradeQueryRsp, err error)
- func (this *Client) TradeRefund(param TradeRefund) (result *TradeRefundRsp, err error)
- func (this *Client) TradeWapPay(param TradeWapPay) (result *url.URL, err error)
- func (this *Client) URLValues(param Param) (value url.Values, err error)
- func (this *Client) UserCertifyOpenCertify(param UserCertifyOpenCertify) (result *url.URL, err error)
- func (this *Client) UserCertifyOpenInitialize(param UserCertifyOpenInitialize) (result *UserCertifyOpenInitializeRsp, err error)
- func (this *Client) UserCertifyOpenQuery(param UserCertifyOpenQuery) (result *UserCertifyOpenQueryRsp, err error)
- func (this *Client) UserInfoShare(param UserInfoShare) (result *UserInfoShareRsp, err error)
- func (this *Client) VerifySign(data url.Values) (ok bool, err error)
- type ErrorRsp
- type ExtendParamsItem
- type FundAuthOperationCancel
- type FundAuthOperationCancelRsp
- type FundAuthOperationDetailQuery
- type FundAuthOperationDetailQueryRsp
- type FundAuthOrderAppFreeze
- type FundAuthOrderAppFreezeRsp
- type FundAuthOrderFreeze
- type FundAuthOrderFreezeRsp
- type FundAuthOrderUnfreeze
- type FundAuthOrderUnfreezeRsp
- type FundAuthOrderVoucherCreate
- type FundAuthOrderVoucherCreateRsp
- type FundBill
- type FundTransOrderQuery
- type FundTransOrderQueryRsp
- type FundTransToAccountTransfer
- type FundTransToAccountTransferRsp
- type GoodsDetail
- type GoodsDetailItem
- type IdentityParam
- type MerchantConfig
- type OpenAuthTokenApp
- type OpenAuthTokenAppRsp
- type Param
- type RefundDetailItem
- type RoyaltyDetailInfoItem
- type RoyaltyInfo
- type RoyaltyParameter
- type SubMerchantItem
- type SystemOauthToken
- type SystemOauthTokenRsp
- type Trade
- type TradeAppPay
- type TradeCancel
- type TradeCancelRsp
- type TradeClose
- type TradeCloseRsp
- type TradeCreate
- type TradeCreateRsp
- type TradeFastPayRefundQuery
- type TradeFastPayRefundQueryRsp
- type TradeNotification
- type TradeOrderInfoSync
- type TradeOrderInfoSyncRsp
- type TradeOrderSettle
- type TradeOrderSettleRsp
- type TradePagePay
- type TradePay
- type TradePayRsp
- type TradePreCreate
- type TradePreCreateRsp
- type TradeQuery
- type TradeQueryRsp
- type TradeRefund
- type TradeRefundRsp
- type TradeWapPay
- type UserCertifyOpenCertify
- type UserCertifyOpenCertifyRsp
- type UserCertifyOpenInitialize
- type UserCertifyOpenInitializeRsp
- type UserCertifyOpenQuery
- type UserCertifyOpenQueryRsp
- type UserInfoShare
- type UserInfoShareRsp
- type VoucherDetail
Constants ¶
const ( K_TRADE_STATUS_WAIT_BUYER_PAY = "WAIT_BUYER_PAY" //(交易创建,等待买家付款) K_TRADE_STATUS_TRADE_CLOSED = "TRADE_CLOSED" //(未付款交易超时关闭,或支付完成后全额退款) K_TRADE_STATUS_TRADE_SUCCESS = "TRADE_SUCCESS" //(交易支付成功) K_TRADE_STATUS_TRADE_FINISHED = "TRADE_FINISHED" //(交易结束,不可退款) )
//////////////////////////////////////////////////////////////////////////////
const (
K_NOTIFY_TYPE_TRADE_STATUS_SYNC = "trade_status_sync"
)
const (
// https://doc.open.alipay.com/docs/doc.htm?treeId=291&articleId=105806&docType=1
K_SUCCESS_CODE = "10000"
)
Variables ¶
Functions ¶
func AckNotification ¶
func AckNotification(w http.ResponseWriter)
Types ¶
type BillDownloadURLQuery ¶
type BillDownloadURLQuery struct { AppAuthToken string `json:"-"` // 可选 BillType string `json:"bill_type"` BillDate string `json:"bill_date"` }
https://docs.open.alipay.com/api_15/alipay.data.dataservice.bill.downloadurl.query
func (BillDownloadURLQuery) APIName ¶
func (this BillDownloadURLQuery) APIName() string
func (BillDownloadURLQuery) Params ¶
func (this BillDownloadURLQuery) Params() map[string]string
type BillDownloadURLQueryRsp ¶
type BillDownloadURLQueryRsp struct { Content struct { Code string `json:"code"` Msg string `json:"msg"` SubCode string `json:"sub_code"` SubMsg string `json:"sub_msg"` BillDownloadUrl string `json:"bill_download_url"` } `json:"alipay_data_dataservice_bill_downloadurl_query_response"` Sign string `json:"sign"` }
type CertifyBizCode ¶
type CertifyBizCode string
//////////////////////////////////////////////////////////////////////////////
const ( K_CERTIFY_BIZ_CODE_FACE CertifyBizCode = "FACE" // 多因子人脸认证 K_CERTIFY_BIZ_CODE_CERT_PHOTO CertifyBizCode = "CERT_PHOTO" // 多因子证照认证 K_CERTIFY_BIZ_CODE_CERT_PHOTO_FACE CertifyBizCode = "CERT_PHOTO_FACE" // 多因子证照和人脸认证 K_CERTIFY_BIZ_CODE_SMART_FACE CertifyBizCode = "SMART_FACE" // 多因子快捷认证 )
type Client ¶
func New ¶
New 初始化支付宝客户端 appId - 支付宝应用 id aliPublicKey - 支付宝公钥,创建支付宝应用之后,从支付宝后台获取 privateKey - 应用私钥,开发者自己生成 isProduction - 是否为生产环境,传 false 的时候为沙箱环境,用于开发测试,正式上线的时候需要改为 true
func (*Client) AckNotification ¶
func (this *Client) AckNotification(w http.ResponseWriter)
func (*Client) AppToAppAuth ¶
AppToAppAuth 第三方应用授权 https://docs.open.alipay.com/20160728150111277227/intro
func (*Client) BillDownloadURLQuery ¶
func (this *Client) BillDownloadURLQuery(param BillDownloadURLQuery) (result *BillDownloadURLQueryRsp, err error)
BillDownloadURLQuery 查询对账单下载地址 https://docs.open.alipay.com/api_15/alipay.data.dataservice.bill.downloadurl.query
func (*Client) DoRequest ¶
func (*Client) FundAuthOperationCancel ¶
func (this *Client) FundAuthOperationCancel(param FundAuthOperationCancel) (result *FundAuthOperationCancelRsp, err error)
FundAuthOperationCancel 资金授权撤销接口 https://docs.open.alipay.com/api_28/alipay.fund.auth.operation.cancel/
func (*Client) FundAuthOperationDetailQuery ¶
func (this *Client) FundAuthOperationDetailQuery(param FundAuthOperationDetailQuery) (result *FundAuthOperationDetailQueryRsp, err error)
FundAuthOperationDetailQuery 资金授权操作查询接口 https://docs.open.alipay.com/api_28/alipay.fund.auth.operation.detail.query/
func (*Client) FundAuthOrderAppFreeze ¶
func (this *Client) FundAuthOrderAppFreeze(param FundAuthOrderAppFreeze) (result string, err error)
FundAuthOrderAppFreeze 线上资金授权冻结接口 https://docs.open.alipay.com/api_28/alipay.fund.auth.order.app.freeze
func (*Client) FundAuthOrderFreeze ¶
func (this *Client) FundAuthOrderFreeze(param FundAuthOrderFreeze) (result *FundAuthOrderFreezeRsp, err error)
FundAuthOrderFreeze 资金授权冻结接口 https://docs.open.alipay.com/api_28/alipay.fund.auth.order.freeze/
func (*Client) FundAuthOrderUnfreeze ¶
func (this *Client) FundAuthOrderUnfreeze(param FundAuthOrderUnfreeze) (result *FundAuthOrderUnfreezeRsp, err error)
FundAuthOrderUnfreeze 资金授权解冻接口 https://docs.open.alipay.com/api_28/alipay.fund.auth.order.unfreeze/
func (*Client) FundAuthOrderVoucherCreate ¶
func (this *Client) FundAuthOrderVoucherCreate(param FundAuthOrderVoucherCreate) (result *FundAuthOrderVoucherCreateRsp, err error)
FundAuthOrderVoucherCreate https://docs.open.alipay.com/api_28/alipay.fund.auth.order.voucher.create/ 资金授权发码接口
func (*Client) FundTransOrderQuery ¶
func (this *Client) FundTransOrderQuery(param FundTransOrderQuery) (result *FundTransOrderQueryRsp, err error)
FundTransOrderQuery https://docs.open.alipay.com/api_28/alipay.fund.trans.order.query/ 查询转账订单接口
func (*Client) FundTransToAccountTransfer ¶
func (this *Client) FundTransToAccountTransfer(param FundTransToAccountTransfer) (result *FundTransToAccountTransferRsp, err error)
FundTransToAccountTransfer https://docs.open.alipay.com/api_28/alipay.fund.trans.toaccount.transfer 单笔转账到支付宝账户接口
func (*Client) GetTradeNotification ¶
func (this *Client) GetTradeNotification(req *http.Request) (noti *TradeNotification, err error)
func (*Client) LoadAliPayPublicCertFromFile ¶
func (*Client) LoadAliPayRootCertFromFile ¶
func (*Client) LoadAppPublicCertFromFile ¶
func (*Client) OpenAuthTokenApp ¶
func (this *Client) OpenAuthTokenApp(param OpenAuthTokenApp) (result *OpenAuthTokenAppRsp, err error)
换取应用授权令牌 https://docs.open.alipay.com/api_9/alipay.open.auth.token.app
func (*Client) PublicAppAuthorize ¶
func (this *Client) PublicAppAuthorize(scopes []string, redirectURI, state string) (result *url.URL, err error)
PublicAppAuthorize 用户信息授权(网站支付宝登录快速接入) https://docs.open.alipay.com/289/105656#s3 (https://docs.open.alipay.com/263/105809)
func (*Client) SystemOauthToken ¶
func (this *Client) SystemOauthToken(param SystemOauthToken) (result *SystemOauthTokenRsp, err error)
SystemOauthToken 换取授权访问令牌 https://docs.open.alipay.com/api_9/alipay.system.oauth.token
func (*Client) TradeAppPay ¶
func (this *Client) TradeAppPay(param TradeAppPay) (result string, err error)
TradeAppPay App支付接口 https://docs.open.alipay.com/api_1/alipay.trade.app.pay
func (*Client) TradeCancel ¶
func (this *Client) TradeCancel(param TradeCancel) (result *TradeCancelRsp, err error)
TradeCancel 统一收单交易撤销接口 https://docs.open.alipay.com/api_1/alipay.trade.cancel/
func (*Client) TradeClose ¶
func (this *Client) TradeClose(param TradeClose) (result *TradeCloseRsp, err error)
TradeClose 统一收单交易关闭接口 https://docs.open.alipay.com/api_1/alipay.trade.close/
func (*Client) TradeCreate ¶
func (this *Client) TradeCreate(param TradeCreate) (result *TradeCreateRsp, err error)
TradeCreate 统一收单交易创建接口 https://docs.open.alipay.com/api_1/alipay.trade.create/
func (*Client) TradeFastPayRefundQuery ¶
func (this *Client) TradeFastPayRefundQuery(param TradeFastPayRefundQuery) (result *TradeFastPayRefundQueryRsp, err error)
TradeFastPayRefundQuery 统一收单交易退款查询 https://docs.open.alipay.com/api_1/alipay.trade.fastpay.refund.query
func (*Client) TradeOrderInfoSync ¶
func (this *Client) TradeOrderInfoSync(param TradeOrderInfoSync) (result *TradeOrderInfoSyncRsp, err error)
TradeOrderInfoSync 支付宝订单信息同步接口 https://docs.open.alipay.com/api_1/alipay.trade.orderinfo.sync/
func (*Client) TradeOrderSettle ¶
func (this *Client) TradeOrderSettle(param TradeOrderSettle) (result *TradeOrderSettleRsp, err error)
TradeOrderSettle 统一收单交易结算接口 https://docs.open.alipay.com/api_1/alipay.trade.order.settle
func (*Client) TradePagePay ¶
func (this *Client) TradePagePay(param TradePagePay) (result *url.URL, err error)
TradePagePay 统一收单下单并支付页面接口 https://docs.open.alipay.com/api_1/alipay.trade.page.pay
func (*Client) TradePay ¶
func (this *Client) TradePay(param TradePay) (result *TradePayRsp, err error)
TradePay 统一收单交易支付接口 https://docs.open.alipay.com/api_1/alipay.trade.pay/
func (*Client) TradePreCreate ¶
func (this *Client) TradePreCreate(param TradePreCreate) (result *TradePreCreateRsp, err error)
TradePreCreate 统一收单线下交易预创建 https://docs.open.alipay.com/api_1/alipay.trade.precreate/
func (*Client) TradeQuery ¶
func (this *Client) TradeQuery(param TradeQuery) (result *TradeQueryRsp, err error)
TradeQuery 统一收单线下交易查询 https://docs.open.alipay.com/api_1/alipay.trade.query/
func (*Client) TradeRefund ¶
func (this *Client) TradeRefund(param TradeRefund) (result *TradeRefundRsp, err error)
TradeRefund 统一收单交易退款接口 https://docs.open.alipay.com/api_1/alipay.trade.refund/
func (*Client) TradeWapPay ¶
func (this *Client) TradeWapPay(param TradeWapPay) (result *url.URL, err error)
TradeWapPay 手机网站支付接口 https://docs.open.alipay.com/api_1/alipay.trade.wap.pay/
func (*Client) UserCertifyOpenCertify ¶
func (this *Client) UserCertifyOpenCertify(param UserCertifyOpenCertify) (result *url.URL, err error)
UserCertifyOpenCertify 身份认证开始认证 https://docs.open.alipay.com/api_2/alipay.user.certify.open.certify
func (*Client) UserCertifyOpenInitialize ¶
func (this *Client) UserCertifyOpenInitialize(param UserCertifyOpenInitialize) (result *UserCertifyOpenInitializeRsp, err error)
UserCertifyOpenInitialize 身份认证初始化服务 https://docs.open.alipay.com/api_2/alipay.user.certify.open.initialize
func (*Client) UserCertifyOpenQuery ¶
func (this *Client) UserCertifyOpenQuery(param UserCertifyOpenQuery) (result *UserCertifyOpenQueryRsp, err error)
UserCertifyOpenQuery 身份认证记录查询 https://docs.open.alipay.com/api_2/alipay.user.certify.open.query/
func (*Client) UserInfoShare ¶
func (this *Client) UserInfoShare(param UserInfoShare) (result *UserInfoShareRsp, err error)
UserInfoShare 支付宝会员授权信息查询接口 https://docs.open.alipay.com/api_2/alipay.user.info.share
type ErrorRsp ¶
type ExtendParamsItem ¶
type FundAuthOperationCancel ¶
type FundAuthOperationCancel struct { NotifyURL string `json:"-"` AppAuthToken string `json:"-"` // 可选 AuthNo string `json:"auth_no,omitempty"` // 特殊可选, 支付宝授权资金订单号,与商户的授权资金订单号不能同时为空,二者都存在时,以支付宝资金授权订单号为准,该参数与支付宝授权资金操作流水号配对使用。 OutOrderNo string `json:"out_order_no,omitempty"` // 特殊可选, 商户的授权资金订单号,与支付宝的授权资金订单号不能同时为空,二者都存在时,以支付宝的授权资金订单号为准,该参数与商户的授权资金操作流水号配对使用。 OperationId string `json:"operation_id,omitempty"` // 特殊可选, 支付宝的授权资金操作流水号,与商户的授权资金操作流水号不能同时为空,二者都存在时,以支付宝的授权资金操作流水号为准,该参数与支付宝授权资金订单号配对使用。 OutRequestNo string `json:"out_request_no,omitempty"` // 特殊可选, 商户的授权资金操作流水号,与支付宝的授权资金操作流水号不能同时为空,二者都存在时,以支付宝的授权资金操作流水号为准,该参数与商户的授权资金订单号配对使用。 Remark string `json:"remark"` // 必选, 商户对本次撤销操作的附言描述,长度不超过100个字母或50个汉字 }
////////////////////////////////////////////////////////////////////////////// https://docs.open.alipay.com/api_28/alipay.fund.auth.operation.cancel/ 资金授权撤销接口
func (FundAuthOperationCancel) APIName ¶
func (this FundAuthOperationCancel) APIName() string
func (FundAuthOperationCancel) Params ¶
func (this FundAuthOperationCancel) Params() map[string]string
type FundAuthOperationCancelRsp ¶
type FundAuthOperationCancelRsp struct { Content struct { Code string `json:"code"` Msg string `json:"msg"` SubCode string `json:"sub_code"` SubMsg string `json:"sub_msg"` AuthNo string `json:"auth_no"` OutOrderNo string `json:"out_order_no"` OperationId string `json:"operation_id"` OutRequestNo string `json:"out_request_no"` Action string `json:"action"` } `json:"alipay_fund_auth_operation_cancel_response"` Sign string `json:"sign"` }
type FundAuthOperationDetailQuery ¶
type FundAuthOperationDetailQuery struct { AppAuthToken string `json:"-"` // 可选 AuthNo string `json:"auth_no"` // 特殊可选, 支付宝授权资金订单号,与商户的授权资金订单号不能同时为空,二者都存在时,以支付宝资金授权订单号为准,该参数与支付宝授权资金操作流水号配对使用。 OutOrderNo string `json:"out_order_no"` // 特殊可选, 商户的授权资金订单号,与支付宝的授权资金订单号不能同时为空,二者都存在时,以支付宝的授权资金订单号为准,该参数与商户的授权资金操作流水号配对使用。 OperationId string `json:"operation_id"` // 特殊可选, 支付宝的授权资金操作流水号,与商户的授权资金操作流水号不能同时为空,二者都存在时,以支付宝的授权资金操作流水号为准,该参数与支付宝授权资金订单号配对使用。 OutRequestNo string `json:"out_request_no"` // 特殊可选, 商户的授权资金操作流水号,与支付宝的授权资金操作流水号不能同时为空,二者都存在时,以支付宝的授权资金操作流水号为准,该参数与商户的授权资金订单号配对使用。 }
////////////////////////////////////////////////////////////////////////////// https://docs.open.alipay.com/api_28/alipay.fund.auth.operation.detail.query/ 资金授权操作查询接口
func (FundAuthOperationDetailQuery) APIName ¶
func (this FundAuthOperationDetailQuery) APIName() string
func (FundAuthOperationDetailQuery) Params ¶
func (this FundAuthOperationDetailQuery) Params() map[string]string
type FundAuthOperationDetailQueryRsp ¶
type FundAuthOperationDetailQueryRsp struct { Content struct { AuthNo string `json:"auth_no"` OutOrderNo string `json:"out_order_no"` TotalFreezeAmount string `json:"total_freeze_amount"` RestAmount string `json:"rest_amount"` TotalPayAmount string `json:"total_pay_amount"` OrderTitle string `json:"order_title"` PayerLogonId string `json:"payer_logon_id"` PayerUserId string `json:"payer_user_id"` ExtraParam string `json:"extra_param"` OperationId string `json:"operation_id"` OutRequestNo string `json:"out_request_no"` Amount string `json:"amount"` OperationType string `json:"operation_type"` Status string `json:"status"` Remark string `json:"remark"` GMTCreate string `json:"gmt_create"` GMTTrans string `json:"gmt_trans"` PreAuthType string `json:"pre_auth_type"` TransCurrency string `json:"trans_currency"` TotalFreezeCreditAmount string `json:"total_freeze_credit_amount"` TotalFreezeFundAmount string `json:"total_freeze_fund_amount"` TotalPayCreditAmount string `json:"total_pay_credit_amount"` TotalPayFundAmount string `json:"total_pay_fund_amount"` RestCreditAmount string `json:"rest_credit_amount"` RestFundAmount string `json:"rest_fund_amount"` CreditAmount string `json:"credit_amount"` FundAmount string `json:"fund_amount"` } `json:"alipay_fund_auth_operation_detail_query_response"` Sign string `json:"sign"` }
type FundAuthOrderAppFreeze ¶
type FundAuthOrderAppFreeze struct { NotifyURL string `json:"-"` AppAuthToken string `json:"-"` // 可选 OutOrderNo string `json:"out_order_no"` // 必选, 商户授权资金订单号 ,不能包含除中文、英文、数字以外的字符,创建后不能修改,需要保证在商户端不重复。 OutRequestNo string `json:"out_request_no"` // 必选, 商户本次资金操作的请求流水号,用于标示请求流水的唯一性,不能包含除中文、英文、数字以外的字符,需要保证在商户端不重复。 OrderTitle string `json:"order_title"` // 必选, 业务订单的简单描述,如商品名称等 长度不超过100个字母或50个汉字 Amount string `json:"amount"` // 必选, 需要冻结的金额,单位为:元(人民币),精确到小数点后两位 取值范围:[0.01,100000000.00] ProductCode string `json:"product_code"` // 必选, 销售产品码,新接入线上预授权的业务,本字段取值固定为PRE_AUTH_ONLINE 。 PayeeLogonId string `json:"payee_logon_id,omitempty"` // 收款方支付宝账号(Email或手机号),如果收款方支付宝登录号(payee_logon_id)和用户号(payee_user_id)同时传递,则以用户号(payee_user_id)为准,如果商户有勾选花呗渠道,收款方支付宝登录号(payee_logon_id)和用户号(payee_user_id)不能同时为空。 PayeeUserId string `json:"payee_user_id,omitempty"` // 收款方的支付宝唯一用户号,以2088开头的16位纯数字组成,如果非空则会在支付时校验交易的的收款方与此是否一致,如果商户有勾选花呗渠道,收款方支付宝登录号(payee_logon_id)和用户号(payee_user_id)不能同时为空。 PayTimeout string `json:"pay_timeout,omitempty"` // 该笔订单允许的最晚付款时间,逾期将关闭该笔订单 取值范围:1m~15d。m-分钟,h-小时,d-天。 该参数数值不接受小数点, 如 1.5h,可转换为90m 如果为空,默认15m ExtraParam string `json:"extra_param,omitempty"` // 业务扩展参数,用于商户的特定业务信息的传递,json格式。 1.授权业务对应的类目,key为category,value由支付宝分配,比如充电桩业务传 "CHARGE_PILE_CAR"; 2. 外部商户的门店编号,key为outStoreCode,可选; 3. 外部商户的门店简称,key为outStoreAlias,可选。 EnablePayChannels string `json:"enable_pay_channels,omitempty"` // 商户可用该参数指定用户可使用的支付渠道,本期支持商户可支持三种支付渠道,余额宝(MONEY_FUND)、花呗(PCREDIT_PAY)以及芝麻信用(CREDITZHIMA)。商户可设置一种支付渠道,也可设置多种支付渠道。 }
////////////////////////////////////////////////////////////////////////////// https://docs.open.alipay.com/api_28/alipay.fund.auth.order.app.freeze 线上资金授权冻结接口请求参数
func (FundAuthOrderAppFreeze) APIName ¶
func (this FundAuthOrderAppFreeze) APIName() string
func (FundAuthOrderAppFreeze) Params ¶
func (this FundAuthOrderAppFreeze) Params() map[string]string
type FundAuthOrderAppFreezeRsp ¶
type FundAuthOrderAppFreezeRsp struct { Content struct { Code string `json:"code"` Msg string `json:"msg"` SubCode string `json:"sub_code"` SubMsg string `json:"sub_msg"` AuthNo string `json:"auth_no"` OutOrderNo string `json:"out_order_no"` OperationId string `json:"operation_id"` OutRequestNo string `json:"out_request_no"` Amount string `json:"amount"` Status string `json:"status"` PayerUserId string `json:"payer_user_id"` GMTTrans string `json:"gmt_trans"` PreAuthType string `json:"pre_auth_type"` CreditAmount string `json:"credit_amount"` FundAmount string `json:"fund_amount"` } `json:"alipay_fund_auth_order_app_freeze_response"` Sign string `json:"sign"` }
type FundAuthOrderFreeze ¶
type FundAuthOrderFreeze struct { NotifyURL string `json:"-"` AppAuthToken string `json:"-"` // 可选 AuthCode string `json:"auth_code"` // 必选, 支付授权码,25~30开头的长度为16~24位的数字,实际字符串长度以开发者获取的付款码长度为准 AuthCodeType string `json:"auth_code_type"` // 必选, 授权码类型 目前仅支持"bar_code" OutOrderNo string `json:"out_order_no"` // 必选, 商户授权资金订单号 ,不能包含除中文、英文、数字以外的字符,创建后不能修改,需要保证在商户端不重复。 OutRequestNo string `json:"out_request_no"` // 必选, 商户本次资金操作的请求流水号,用于标示请求流水的唯一性,不能包含除中文、英文、数字以外的字符,需要保证在商户端不重复。 OrderTitle string `json:"order_title"` // 必选, 业务订单的简单描述,如商品名称等 长度不超过100个字母或50个汉字 Amount string `json:"amount"` // 必选, 需要冻结的金额,单位为:元(人民币),精确到小数点后两位 取值范围:[0.01,100000000.00] PayeeLogonId string `json:"payee_logon_id,omitempty"` // 可选, 收款方支付宝账号(Email或手机号),如果收款方支付宝登录号(payee_logon_id)和用户号(payee_user_id)同时传递,则以用户号(payee_user_id)为准,如果商户有勾选花呗渠道,收款方支付宝登录号(payee_logon_id)和用户号(payee_user_id)不能同时为空。 PayeeUserId string `json:"payee_user_id,omitempty"` // 可选, 收款方的支付宝唯一用户号,以2088开头的16位纯数字组成,如果非空则会在支付时校验交易的的收款方与此是否一致,如果商户有勾选花呗渠道,收款方支付宝登录号(payee_logon_id)和用户号(payee_user_id)不能同时为空。 PayTimeout string `json:"pay_timeout,omitempty"` // 可选, 该笔订单允许的最晚付款时间,逾期将关闭该笔订单 取值范围:1m~15d。m-分钟,h-小时,d-天。 该参数数值不接受小数点, 如 1.5h,可转换为90m 如果为空,默认15m ExtraParam string `json:"extra_param,omitempty"` // 可选, 业务扩展参数,用于商户的特定业务信息的传递,json格式。 1.授权业务对应的类目,key为category,value由支付宝分配,比如充电桩业务传 "CHARGE_PILE_CAR"; 2. 外部商户的门店编号,key为outStoreCode,可选; 3. 外部商户的门店简称,key为outStoreAlias,可选。 ProductCode string `json:"product_code,omitempty"` // 可选, 销售产品码,后续新接入预授权当面付的业务,本字段取值固定为PRE_AUTH。 }
////////////////////////////////////////////////////////////////////////////// https://docs.open.alipay.com/api_28/alipay.fund.auth.order.freeze/ 资金授权冻结接口
func (FundAuthOrderFreeze) APIName ¶
func (this FundAuthOrderFreeze) APIName() string
func (FundAuthOrderFreeze) Params ¶
func (this FundAuthOrderFreeze) Params() map[string]string
type FundAuthOrderFreezeRsp ¶
type FundAuthOrderFreezeRsp struct { Content struct { Code string `json:"code"` Msg string `json:"msg"` SubCode string `json:"sub_code"` SubMsg string `json:"sub_msg"` AuthNo string `json:"auth_no"` OutOrderNo string `json:"out_order_no"` OperationId string `json:"operation_id"` OutRequestNo string `json:"out_request_no"` Amount string `json:"amount"` Status string `json:"status"` PayerUserId string `json:"payer_user_id"` GMTTrans string `json:"gmt_trans"` } `json:"alipay_fund_auth_order_freeze_response"` Sign string `json:"sign"` }
type FundAuthOrderUnfreeze ¶
type FundAuthOrderUnfreeze struct { NotifyURL string `json:"-"` AuthNo string `json:"auth_no"` // 必选,支付宝资金授权订单号,支付宝冻结时返回的交易号,数字格式 2016101210002001810258115912 AppAuthToken string `json:"-"` // 可选 OutRequestNo string `json:"out_request_no"` // 必选, 商户本次资金操作的请求流水号,用于标示请求流水的唯一性,不能包含除中文、英文、数字以外的字符,需要保证在商户端不重复。 Amount string `json:"amount"` // 必选, 本次操作解冻的金额,单位为:元(人民币),精确到小数点后两位,取值范围:[0.01,100000000.00] Remark string `json:"remark"` // 必选, 商户对本次解冻操作的附言描述,长度不超过100个字母或50个汉字 ExtraParam string `json:"extra_param,omitempty"` // 可选, 解冻扩展信息,json格式;unfreezeBizInfo 目前为芝麻消费字段,支持Key值如下: "bizComplete":"true" -- 选填:标识本次解冻用户是否履约,如果true信用单会完结为COMPLETE }
////////////////////////////////////////////////////////////////////////////// https://docs.open.alipay.com/api_28/alipay.fund.auth.order.unfreeze/ 资金授权解冻接口
func (FundAuthOrderUnfreeze) APIName ¶
func (this FundAuthOrderUnfreeze) APIName() string
func (FundAuthOrderUnfreeze) Params ¶
func (this FundAuthOrderUnfreeze) Params() map[string]string
type FundAuthOrderUnfreezeRsp ¶
type FundAuthOrderUnfreezeRsp struct { Content struct { Code string `json:"code"` Msg string `json:"msg"` SubCode string `json:"sub_code"` SubMsg string `json:"sub_msg"` AuthNo string `json:"auth_no"` OutOrderNo string `json:"out_order_no"` OperationId string `json:"operation_id"` OutRequestNo string `json:"out_request_no"` Amount string `json:"amount"` Status string `json:"status"` GMTTrans string `json:"gmt_trans"` CreditAmount string `json:"credit_amount"` FundAmount string `json:"fund_amount"` } `json:"alipay_fund_auth_order_unfreeze_response"` Sign string `json:"sign"` }
type FundAuthOrderVoucherCreate ¶
type FundAuthOrderVoucherCreate struct { NotifyURL string `json:"-"` AppAuthToken string `json:"-"` // 可选 OutOrderNo string `json:"out_order_no"` // 必选, 商户授权资金订单号,创建后不能修改,需要保证在商户端不重复。 OutRequestNo string `json:"out_request_no"` // 必选, 商户本次资金操作的请求流水号,用于标示请求流水的唯一性,需要保证在商户端不重复。 ProductCode string `json:"product_code,omitempty"` // 必选, 销售产品码,后续新接入预授权当面付的业务,本字段取值固定为PRE_AUTH。 OrderTitle string `json:"order_title"` // 必选, 业务订单的简单描述,如商品名称等 长度不超过100个字母或50个汉字 Amount string `json:"amount"` // 必选, 需要冻结的金额,单位为:元(人民币),精确到小数点后两位 取值范围:[0.01,100000000.00] PayeeUserId string `json:"payee_user_id,omitempty"` // 可选, 收款方的支付宝唯一用户号,以2088开头的16位纯数字组成,如果非空则会在支付时校验交易的的收款方与此是否一致,如果商户有勾选花呗渠道,收款方支付宝登录号(payee_logon_id)和用户号(payee_user_id)不能同时为空。 PayeeLogonId string `json:"payee_logon_id,omitempty"` // 可选, 收款方支付宝账号(Email或手机号),如果收款方支付宝登录号(payee_logon_id)和用户号(payee_user_id)同时传递,则以用户号(payee_user_id)为准,如果商户有勾选花呗渠道,收款方支付宝登录号(payee_logon_id)和用户号(payee_user_id)不能同时为空。 PayTimeout string `json:"pay_timeout,omitempty"` // 可选, 该笔订单允许的最晚付款时间,逾期将关闭该笔订单 取值范围:1m~15d。m-分钟,h-小时,d-天。 该参数数值不接受小数点, 如 1.5h,可转换为90m 如果为空,默认15m ExtraParam string `json:"extra_param,omitempty"` // 可选, 业务扩展参数,用于商户的特定业务信息的传递,json格式。 1.授权业务对应的类目,key为category,value由支付宝分配,比如充电桩业务传 "CHARGE_PILE_CAR"; 2. 外部商户的门店编号,key为outStoreCode,可选; 3. 外部商户的门店简称,key为outStoreAlias,可选。 TransCurrency string `json:"trans_currency,omitempty"` // 可选, 标价币种, amount 对应的币种单位。支持澳元:AUD, 新西兰元:NZD, 台币:TWD, 美元:USD, 欧元:EUR, 英镑:GBP SettleCurrency string `json:"settle_currency,omitempty"` // 可选, 商户指定的结算币种。支持澳元:AUD, 新西兰元:NZD, 台币:TWD, 美元:USD, 欧元:EUR, 英镑:GBP EnablePayChannels string `json:"enable_pay_channels,omitempty"` // 可选, 商户可用该参数指定用户可使用的支付渠道,本期支持商户可支持三种支付渠道,余额宝(MONEY_FUND)、花呗(PCREDIT_PAY)以及芝麻信用(CREDITZHIMA)。商户可设置一种支付渠道,也可设置多种支付渠道。 }
////////////////////////////////////////////////////////////////////////////// https://docs.open.alipay.com/api_28/alipay.fund.auth.order.voucher.create/ 资金授权发码接口
func (FundAuthOrderVoucherCreate) APIName ¶
func (this FundAuthOrderVoucherCreate) APIName() string
func (FundAuthOrderVoucherCreate) Params ¶
func (this FundAuthOrderVoucherCreate) Params() map[string]string
type FundAuthOrderVoucherCreateRsp ¶
type FundAuthOrderVoucherCreateRsp struct { Content struct { Code string `json:"code"` Msg string `json:"msg"` SubCode string `json:"sub_code"` SubMsg string `json:"sub_msg"` OutOrderNo string `json:"out_order_no"` OutRequestNo string `json:"out_request_no"` CodeType string `json:"code_type"` CodeValue string `json:"code_value"` CodeURL string `json:"code_url"` } `json:"alipay_fund_auth_order_voucher_create_response"` Sign string `json:"sign"` }
type FundBill ¶
type FundTransOrderQuery ¶
type FundTransOrderQuery struct { AppAuthToken string `json:"-"` // 可选 OutBizNo string `json:"out_biz_no,omitempty"` // 与 OrderId 二选一 OrderId string `json:"order_id,omitempty"` // 与 OutBizNo 二选一 }
////////////////////////////////////////////////////////////////////////////// https://docs.open.alipay.com/api_28/alipay.fund.trans.order.query/ 查询转账订单接口请求参数
func (FundTransOrderQuery) APIName ¶
func (this FundTransOrderQuery) APIName() string
func (FundTransOrderQuery) Params ¶
func (this FundTransOrderQuery) Params() map[string]string
type FundTransOrderQueryRsp ¶
type FundTransOrderQueryRsp struct { Content struct { Code string `json:"code"` Msg string `json:"msg"` SubCode string `json:"sub_code"` SubMsg string `json:"sub_msg"` OutBizNo string `json:"out_biz_no"` // 发起转账来源方定义的转账单据号。 该参数的赋值均以查询结果中 的 out_biz_no 为准。 如果查询失败,不返回该参数 OrderId string `json:"order_id"` // 支付宝转账单据号,查询失败不返回。 Status string `json:"status"` // 转账单据状态 PayDate string `json:"pay_date"` // 支付时间 ArrivalTimeEnd string `json:"arrival_time_end"` // 预计到账时间,转账到银行卡专用 OrderFree string `json:"order_fee"` // 预计收费金额(元),转账到银行卡专用 FailReason string `json:"fail_reason"` // 查询到的订单状态为FAIL失败或REFUND退票时,返回具体的原因。 ErrorCode string `json:"error_code"` // 查询失败时,本参数为错误代 码。 查询成功不返回。 对于退票订单,不返回该参数。 } `json:"alipay_fund_trans_order_query_response"` Sign string `json:"sign"` }
查询转账订单接口响应参数
func (*FundTransOrderQueryRsp) IsSuccess ¶
func (this *FundTransOrderQueryRsp) IsSuccess() bool
type FundTransToAccountTransfer ¶
type FundTransToAccountTransfer struct { AppAuthToken string `json:"-"` // 可选 OutBizNo string `json:"out_biz_no"` // 必选 商户转账唯一订单号 PayeeType string `json:"payee_type"` // 必选 收款方账户类型,"ALIPAY_LOGONID":支付宝帐号 PayeeAccount string `json:"payee_account"` // 必选 收款方账户。与payee_type配合使用 Amount string `json:"amount"` // 必选 转账金额,元 PayerShowName string `json:"payer_show_name"` // 可选 付款方显示姓名 PayeeRealName string `json:"payee_real_name"` // 可选 收款方真实姓名,如果本参数不为空,则会校验该账户在支付宝登记的实名是否与收款方真实姓名一致。 Remark string `json:"remark"` // 可选 转账备注,金额大于50000时必填 }
////////////////////////////////////////////////////////////////////////////// https://docs.open.alipay.com/api_28/alipay.fund.trans.toaccount.transfer 单笔转账到支付宝账户接口请求结构
func (FundTransToAccountTransfer) APIName ¶
func (this FundTransToAccountTransfer) APIName() string
func (FundTransToAccountTransfer) Params ¶
func (this FundTransToAccountTransfer) Params() map[string]string
type FundTransToAccountTransferRsp ¶
type FundTransToAccountTransferRsp struct { Content struct { Code string `json:"code"` Msg string `json:"msg"` SubCode string `json:"sub_code"` SubMsg string `json:"sub_msg"` OutBizNo string `json:"out_biz_no"` // 商户转账唯一订单号:发起转账来源方定义的转账单据号。请求时对应的参数,原样返回 OrderId string `json:"order_id"` // 支付宝转账单据号,成功一定返回,失败可能不返回也可能返回 PayDate string `json:"pay_date"` // 支付时间:格式为yyyy-MM-dd HH:mm:ss,仅转账成功返回 } `json:"alipay_fund_trans_toaccount_transfer_response"` Sign string `json:"sign"` }
单笔转账到支付宝账户接口响应参数
func (*FundTransToAccountTransferRsp) IsSuccess ¶
func (this *FundTransToAccountTransferRsp) IsSuccess() bool
type GoodsDetail ¶
type GoodsDetail struct { GoodsId string `json:"goods_id"` AliPayGoodsId string `json:"alipay_goods_id,omitempty"` GoodsName string `json:"goods_name"` Quantity int `json:"quantity"` Price float64 `json:"price"` GoodsCategory string `json:"goods_category,omitempty"` CategoriesTree string `json:"categories_tree,omitempty"` Body string `json:"body,omitempty"` ShowURL string `json:"show_url,omitempty"` }
type GoodsDetailItem ¶
type GoodsDetailItem struct { GoodsId string `json:"goods_id"` AliPayGoodsId string `json:"alipay_goods_id"` GoodsName string `json:"goods_name"` Quantity string `json:"quantity"` Price string `json:"price"` GoodsCategory string `json:"goods_category"` Body string `json:"body"` ShowUrl string `json:"show_url"` }
type IdentityParam ¶
type OpenAuthTokenApp ¶
type OpenAuthTokenApp struct { GrantType string `json:"grant_type"` // 值为 authorization_code 时,代表用code换取;值为refresh_token时,代表用refresh_token换取 Code string `json:"code"` RefreshToken string `json:"refresh_token"` }
////////////////////////////////////////////////////////////////////////////// https://docs.open.alipay.com/api_9/alipay.open.auth.token.app
func (OpenAuthTokenApp) APIName ¶
func (this OpenAuthTokenApp) APIName() string
func (OpenAuthTokenApp) Params ¶
func (this OpenAuthTokenApp) Params() map[string]string
type OpenAuthTokenAppRsp ¶
type OpenAuthTokenAppRsp struct { Content struct { Code string `json:"code"` Msg string `json:"msg"` SubCode string `json:"sub_code"` SubMsg string `json:"sub_msg"` AppAuthToken string `json:"app_auth_token"` UserId string `json:"user_id"` AuthAppId string `json:"auth_app_id"` ExpiresIn int64 `json:"expires_in"` ReExpiresIn int64 `json:"re_expires_in"` AppRefreshToken string `json:"app_refresh_token"` } `json:"alipay_open_auth_token_app_response"` Sign string `json:"sign"` }
type Param ¶
type RefundDetailItem ¶
type RoyaltyDetailInfoItem ¶
type RoyaltyDetailInfoItem struct { SerialNo string `json:"serial_no"` TransInType string `json:"trans_in_type"` BatchNo string `json:"batch_no"` OutRelationId string `json:"out_relation_id"` TransOutType string `json:"trans_out_type"` TransOut string `json:"trans_out"` TransIn string `json:"trans_in"` Amount string `json:"amount"` Desc string `json:"desc"` AmountPercentage string `json:"amount_percentage"` AliPayStoreId string `json:"alipay_store_id"` }
type RoyaltyInfo ¶
type RoyaltyInfo struct { RoyaltyType string `json:"royalty_type"` RoyaltyDetailInfo []*RoyaltyDetailInfoItem `json:"royalty_detail_infos,omitempty"` }
type RoyaltyParameter ¶
type RoyaltyParameter struct { TransOut string `json:"trans_out"` // 可选 分账支出方账户,类型为userId,本参数为要分账的支付宝账号对应的支付宝唯一用户号。以2088开头的纯16位数字。 TransIn string `json:"trans_in"` // 可选 分账收入方账户,类型为userId,本参数为要分账的支付宝账号对应的支付宝唯一用户号。以2088开头的纯16位数字。 Amount float64 `json:"amount"` // 可选 分账的金额,单位为元 AmountPercentage float64 `json:"amount_percentage,omitempty"` // 可选 分账信息中分账百分比。取值范围为大于0,少于或等于100的整数。 Desc string `json:"desc"` // 可选 分账描述 }
type SystemOauthToken ¶
type SystemOauthToken struct { AppAuthToken string `json:"-"` // 可选 GrantType string `json:"-"` // 值为 authorization_code 时,代表用code换取;值为refresh_token时,代表用refresh_token换取 Code string `json:"-"` RefreshToken string `json:"-"` }
////////////////////////////////////////////////////////////////////////////// https://docs.open.alipay.com/api_9/alipay.system.oauth.token
func (SystemOauthToken) APIName ¶
func (this SystemOauthToken) APIName() string
func (SystemOauthToken) Params ¶
func (this SystemOauthToken) Params() map[string]string
type SystemOauthTokenRsp ¶
type SystemOauthTokenRsp struct { Content struct { Code string `json:"code"` Msg string `json:"msg"` SubCode string `json:"sub_code"` SubMsg string `json:"sub_msg"` UserId string `json:"user_id"` AccessToken string `json:"access_token"` ExpiresIn int64 `json:"expires_in"` RefreshToken string `json:"refresh_token"` ReExpiresIn int64 `json:"re_expires_in"` } `json:"alipay_system_oauth_token_response"` Error *struct { Code string `json:"code"` Msg string `json:"msg"` SubCode string `json:"sub_code"` SubMsg string `json:"sub_msg"` } `json:"error_response"` // 不要访问此结构体 Sign string `json:"sign"` }
type Trade ¶
type Trade struct { NotifyURL string `json:"-"` ReturnURL string `json:"-"` // biz content,这四个参数是必须的 Subject string `json:"subject"` // 订单标题 OutTradeNo string `json:"out_trade_no"` // 商户订单号,64个字符以内、可包含字母、数字、下划线;需保证在商户端不重复 TotalAmount string `json:"total_amount"` // 订单总金额,单位为元,精确到小数点后两位,取值范围[0.01,100000000] ProductCode string `json:"product_code"` // 销售产品码,与支付宝签约的产品码名称。 注:目前仅支持FAST_INSTANT_TRADE_PAY Body string `json:"body,omitempty"` // 订单描述 BusinessParams string `json:"business_params,omitempty"` // 商户传入业务信息,具体值要和支付宝约定,应用于安全,营销等参数直传场景,格式为json格式 DisablePayChannels string `json:"disable_pay_channels,omitempty"` // 禁用渠道,用户不可用指定渠道支付 当有多个渠道时用“,”分隔 注,与enable_pay_channels互斥 EnablePayChannels string `json:"enable_pay_channels,omitempty"` // 可用渠道,用户只能在指定渠道范围内支付 当有多个渠道时用“,”分隔 注,与disable_pay_channels互斥 //ExtUserInfo string `json:"ext_user_info,omitempty"` // 外部指定买家 ExtendParams string `json:"extend_params,omitempty"` // 业务扩展参数,详见下面的“业务扩展参数说明” GoodsType string `json:"goods_type,omitempty"` // 商品主类型:0—虚拟类商品,1—实物类商品 注:虚拟类商品不支持使用花呗渠道 InvoiceInfo string `json:"invoice_info,omitempty"` // 开票信息 PassbackParams string `json:"passback_params,omitempty"` // 公用回传参数,如果请求时传递了该参数,则返回给商户时会回传该参数。支付宝会在异步通知时将该参数原样返回。本参数必须进行UrlEncode之后才可以发送给支付宝 PromoParams string `json:"promo_params,omitempty"` // 优惠参数 注:仅与支付宝协商后可用 RoyaltyInfo string `json:"royalty_info,omitempty"` // 描述分账信息,json格式,详见分账参数说明 SellerId string `json:"seller_id,omitempty"` // 收款支付宝用户ID。 如果该值为空,则默认为商户签约账号对应的支付宝用户ID SettleInfo string `json:"settle_info,omitempty"` // 描述结算信息,json格式,详见结算参数说明 SpecifiedChannel string `json:"specified_channel,omitempty"` // 指定渠道,目前仅支持传入pcredit 若由于用户原因渠道不可用,用户可选择是否用其他渠道支付。 注:该参数不可与花呗分期参数同时传入 StoreId string `json:"store_id,omitempty"` // 商户门店编号。该参数用于请求参数中以区分各门店,非必传项。 SubMerchant string `json:"sub_merchant,omitempty"` // 间连受理商户信息体,当前只对特殊银行机构特定场景下使用此字段 TimeoutExpress string `json:"timeout_express,omitempty"` // 该笔订单允许的最晚付款时间,逾期将关闭交易。取值范围:1m~15d。m-分钟,h-小时,d-天,1c-当天(1c-当天的情况下,无论交易何时创建,都在0点关闭)。 该参数数值不接受小数点, 如 1.5h,可转换为 90m。 }
//////////////////////////////////////////////////////////////////////////////
type TradeAppPay ¶
type TradeAppPay struct { Trade TimeExpire string `json:"time_expire,omitempty"` // 绝对超时时间,格式为yyyy-MM-dd HH:mm。 }
//////////////////////////////////////////////////////////////////////////////// https://docs.open.alipay.com/api_1/alipay.trade.app.pay/
func (TradeAppPay) APIName ¶
func (this TradeAppPay) APIName() string
func (TradeAppPay) Params ¶
func (this TradeAppPay) Params() map[string]string
type TradeCancel ¶
type TradeCancel struct { AppAuthToken string `json:"-"` // 可选 NotifyURL string `json:"-"` // 可选 OutTradeNo string `json:"out_trade_no"` // 原支付请求的商户订单号,和支付宝交易号不能同时为空 TradeNo string `json:"trade_no"` // 支付宝交易号,和商户订单号不能同时为空 }
//////////////////////////////////////////////////////////////////////////////// https://docs.open.alipay.com/api_1/alipay.trade.cancel/
func (TradeCancel) APIName ¶
func (this TradeCancel) APIName() string
func (TradeCancel) Params ¶
func (this TradeCancel) Params() map[string]string
type TradeCancelRsp ¶
type TradeCancelRsp struct { Content struct { Code string `json:"code"` Msg string `json:"msg"` SubCode string `json:"sub_code"` SubMsg string `json:"sub_msg"` TradeNo string `json:"trade_no"` // 支付宝交易号 OutTradeNo string `json:"out_trade_no"` // 创建交易传入的商户订单号 RetryFlag string `json:"retry_flag"` // 是否需要重试 Action string `json:"action"` // 本次撤销触发的交易动作 close:关闭交易,无退款 refund:产生了退款 } `json:"alipay_trade_cancel_response"` Sign string `json:"sign"` }
func (*TradeCancelRsp) IsSuccess ¶
func (this *TradeCancelRsp) IsSuccess() bool
type TradeClose ¶
type TradeClose struct { AppAuthToken string `json:"-"` // 可选 NotifyURL string `json:"-"` // 可选 OutTradeNo string `json:"out_trade_no,omitempty"` // 与 TradeNo 二选一 TradeNo string `json:"trade_no,omitempty"` // 与 OutTradeNo 二选一 OperatorId string `json:"operator_id,omitempty"` // 可选 }
////////////////////////////////////////////////////////////////////////////// https://docs.open.alipay.com/api_1/alipay.trade.close/
func (TradeClose) APIName ¶
func (this TradeClose) APIName() string
func (TradeClose) Params ¶
func (this TradeClose) Params() map[string]string
type TradeCloseRsp ¶
type TradeCreate ¶
type TradeCreate struct { Trade AppAuthToken string `json:"-"` // 可选 DiscountableAmount string `json:"discountable_amount"` // 可打折金额. 参与优惠计算的金额,单位为元,精确到小数点后两位 BuyerId string `json:"buyer_id"` GoodsDetail []*GoodsDetailItem `json:"goods_detail,omitempty"` OperatorId string `json:"operator_id"` TerminalId string `json:"terminal_id"` }
//////////////////////////////////////////////////////////////////////////////// https://docs.open.alipay.com/api_1/alipay.trade.create/
func (TradeCreate) APIName ¶
func (this TradeCreate) APIName() string
func (TradeCreate) Params ¶
func (this TradeCreate) Params() map[string]string
type TradeCreateRsp ¶
type TradeCreateRsp struct { Content struct { Code string `json:"code"` Msg string `json:"msg"` SubCode string `json:"sub_code"` SubMsg string `json:"sub_msg"` TradeNo string `json:"trade_no"` // 支付宝交易号 OutTradeNo string `json:"out_trade_no"` } `json:"alipay_trade_create_response"` Sign string `json:"sign"` }
type TradeFastPayRefundQuery ¶
type TradeFastPayRefundQuery struct { AppAuthToken string `json:"-"` // 可选 OutTradeNo string `json:"out_trade_no,omitempty"` // 与 TradeNo 二选一 TradeNo string `json:"trade_no,omitempty"` // 与 OutTradeNo 二选一 OutRequestNo string `json:"out_request_no"` // 必须 请求退款接口时,传入的退款请求号,如果在退款请求时未传入,则该值为创建交易时的外部交易号 }
////////////////////////////////////////////////////////////////////////////// https://docs.open.alipay.com/api_1/alipay.trade.fastpay.refund.query
func (TradeFastPayRefundQuery) APIName ¶
func (this TradeFastPayRefundQuery) APIName() string
func (TradeFastPayRefundQuery) Params ¶
func (this TradeFastPayRefundQuery) Params() map[string]string
type TradeFastPayRefundQueryRsp ¶
type TradeFastPayRefundQueryRsp struct { Content struct { Code string `json:"code"` Msg string `json:"msg"` SubCode string `json:"sub_code"` SubMsg string `json:"sub_msg"` OutRequestNo string `json:"out_request_no"` // 本笔退款对应的退款请求号 OutTradeNo string `json:"out_trade_no"` // 创建交易传入的商户订单号 RefundReason string `json:"refund_reason"` // 发起退款时,传入的退款原因 TotalAmount string `json:"total_amount"` // 发该笔退款所对应的交易的订单金额 RefundAmount string `json:"refund_amount"` // 本次退款请求,对应的退款金额 TradeNo string `json:"trade_no"` // 支付宝交易号 } `json:"alipay_trade_fastpay_refund_query_response"` Sign string `json:"sign"` }
func (*TradeFastPayRefundQueryRsp) IsSuccess ¶
func (this *TradeFastPayRefundQueryRsp) IsSuccess() bool
type TradeNotification ¶
type TradeNotification struct { AuthAppId string `json:"auth_app_id"` // App Id NotifyTime string `json:"notify_time"` // 通知时间 NotifyType string `json:"notify_type"` // 通知类型 NotifyId string `json:"notify_id"` // 通知校验ID AppId string `json:"app_id"` // 开发者的app_id Charset string `json:"charset"` // 编码格式 Version string `json:"version"` // 接口版本 SignType string `json:"sign_type"` // 签名类型 Sign string `json:"sign"` // 签名 TradeNo string `json:"trade_no"` // 支付宝交易号 OutTradeNo string `json:"out_trade_no"` // 商户订单号 OutBizNo string `json:"out_biz_no"` // 商户业务号 BuyerId string `json:"buyer_id"` // 买家支付宝用户号 BuyerLogonId string `json:"buyer_logon_id"` // 买家支付宝账号 SellerId string `json:"seller_id"` // 卖家支付宝用户号 SellerEmail string `json:"seller_email"` // 卖家支付宝账号 TradeStatus string `json:"trade_status"` // 交易状态 TotalAmount string `json:"total_amount"` // 订单金额 ReceiptAmount string `json:"receipt_amount"` // 实收金额 InvoiceAmount string `json:"invoice_amount"` // 开票金额 BuyerPayAmount string `json:"buyer_pay_amount"` // 付款金额 PointAmount string `json:"point_amount"` // 集分宝金额 RefundFee string `json:"refund_fee"` // 总退款金额 Subject string `json:"subject"` // 总退款金额 Body string `json:"body"` // 商品描述 GmtCreate string `json:"gmt_create"` // 交易创建时间 GmtPayment string `json:"gmt_payment"` // 交易付款时间 GmtRefund string `json:"gmt_refund"` // 交易退款时间 GmtClose string `json:"gmt_close"` // 交易结束时间 FundBillList string `json:"fund_bill_list"` // 支付金额信息 PassbackParams string `json:"passback_params"` // 回传参数 VoucherDetailList string `json:"voucher_detail_list"` // 优惠券信息 }
type TradeOrderInfoSync ¶
type TradeOrderInfoSync struct { AppAuthToken string `json:"-"` // 可选 OutRequestNo string `json:"out_request_no"` // 必选 标识一笔交易多次请求,同一笔交易多次信息同步时需要保证唯一 BizType string `json:"biz_type"` // 必选 交易信息同步对应的业务类型,具体值与支付宝约定;信用授权场景下传CREDIT_AUTH TradeNo string `json:"trade_no"` // 可选 支付宝交易号,和商户订单号不能同时为空 OrderBizInfo string `json:"order_biz_info"` // 可选 商户传入同步信息,具体值要和支付宝约定;用于芝麻信用租车、单次授权等信息同步场景,格式为json格式 }
//////////////////////////////////////////////////////////////////////////////// https://docs.open.alipay.com/api_1/alipay.trade.orderinfo.sync/
func (TradeOrderInfoSync) APIName ¶
func (this TradeOrderInfoSync) APIName() string
func (TradeOrderInfoSync) Params ¶
func (this TradeOrderInfoSync) Params() map[string]string
type TradeOrderInfoSyncRsp ¶
type TradeOrderInfoSyncRsp struct { Content struct { Code string `json:"code"` Msg string `json:"msg"` SubCode string `json:"sub_code"` SubMsg string `json:"sub_msg"` TradeNo string `json:"trade_no"` OutTradeNo string `json:"out_trade_no"` BuyerUserId string `json:"buyer_user_id"` } `json:"alipay_trade_orderinfo_sync_response"` Sign string `json:"sign"` }
type TradeOrderSettle ¶
type TradeOrderSettle struct { AppAuthToken string `json:"-"` // 可选 OutRequestNo string `json:"out_request_no"` // 必须 结算请求流水号 开发者自行生成并保证唯一性 TradeNo string `json:"trade_no"` // 必须 支付宝订单号 RoyaltyParameters []*RoyaltyParameter `json:"royalty_parameters"` // 必须 分账明细信息 OperatorId string `json:"operator_id"` //可选 操作员id }
////////////////////////////////////////////////////////////////////////////// https://docs.open.alipay.com/api_1/alipay.trade.order.settle
func (TradeOrderSettle) APIName ¶
func (this TradeOrderSettle) APIName() string
func (TradeOrderSettle) Params ¶
func (this TradeOrderSettle) Params() map[string]string
type TradeOrderSettleRsp ¶
type TradePagePay ¶
type TradePagePay struct { Trade AuthToken string `json:"auth_token,omitempty"` // 针对用户授权接口,获取用户相关数据时,用于标识用户授权关系 GoodsDetail []*GoodsDetail `json:"goods_detail,omitempty"` // 订单包含的商品列表信息,Json格式,详见商品明细说明 QRPayMode string `json:"qr_pay_mode,omitempty"` // PC扫码支付的方式,支持前置模式和跳转模式。 QRCodeWidth string `json:"qrcode_width,omitempty"` // 商户自定义二维码宽度 注:qr_pay_mode=4时该参数生效 }
////////////////////////////////////////////////////////////////////////////// https://docs.open.alipay.com/api_1/alipay.trade.app.pay
func (TradePagePay) APIName ¶
func (this TradePagePay) APIName() string
func (TradePagePay) Params ¶
func (this TradePagePay) Params() map[string]string
type TradePay ¶
type TradePay struct { Trade AppAuthToken string `json:"-"` // 可选 Scene string `json:"scene"` // 必须 支付场景 条码支付,取值:bar_code 声波支付,取值:wave_code, bar_code, wave_code AuthCode string `json:"auth_code,omitempty"` // 必须 支付授权码 AuthNo string `json:"auth_no,omitempty"` // 可选 预授权冻结交易号 BuyerId string `json:"buyer_id"` // 可选 家的支付宝用户id,如果为空,会从传入了码值信息中获取买家ID TransCurrency string `json:"trans_currency,omitempty"` SettleCurrency string `json:"settle_currency,omitempty"` DiscountableAmount string `json:"discountable_amount,omitempty"` // 可选 参与优惠计算的金额,单位为元,精确到小数点后两位,取值范围[0.01,100000000]。 如果该值未传入,但传入了【订单总金额】和【不可打折金额】,则该值默认为【订单总金额】-【不可打折金额】 GoodsDetail []*GoodsDetailItem `json:"goods_detail,omitempty"` // 可选 订单包含的商品列表信息,Json格式,其它说明详见商品明细说明 OperatorId string `json:"operator_id,omitempty"` // 可选 商户操作员编号 TerminalId string `json:"terminal_id,omitempty"` // 可选 商户机具终端编号 AuthConfirmMode string `json:"auth_confirm_mode,omitempty"` TerminalParams string `json:"terminal_params,omitempty"` }
//////////////////////////////////////////////////////////////////////////////// https://docs.open.alipay.com/api_1/alipay.trade.pay/
type TradePayRsp ¶
type TradePayRsp struct { Content struct { Code string `json:"code"` Msg string `json:"msg"` SubCode string `json:"sub_code"` SubMsg string `json:"sub_msg"` BuyerLogonId string `json:"buyer_logon_id"` // 买家支付宝账号 BuyerPayAmount string `json:"buyer_pay_amount"` // 买家实付金额,单位为元,两位小数。 BuyerUserId string `json:"buyer_user_id"` // 买家在支付宝的用户id CardBalance string `json:"card_balance"` // 支付宝卡余额 DiscountGoodsDetail string `json:"discount_goods_detail"` // 本次交易支付所使用的单品券优惠的商品优惠信息 FundBillList []*FundBill `json:"fund_bill_list,omitempty"` // 交易支付使用的资金渠道 GmtPayment string `json:"gmt_payment"` InvoiceAmount string `json:"invoice_amount"` // 交易中用户支付的可开具发票的金额,单位为元,两位小数。 OutTradeNo string `json:"out_trade_no"` // 创建交易传入的商户订单号 TradeNo string `json:"trade_no"` // 支付宝交易号 PointAmount string `json:"point_amount"` // 积分支付的金额,单位为元,两位小数。 ReceiptAmount string `json:"receipt_amount"` // 实收金额,单位为元,两位小数 StoreName string `json:"store_name"` // 发生支付交易的商户门店名称 TotalAmount string `json:"total_amount"` // 发该笔退款所对应的交易的订单金额 VoucherDetailList []*VoucherDetail `json:"voucher_detail_list,omitempty"` // 本交易支付时使用的所有优惠券信息 } `json:"alipay_trade_pay_response"` Sign string `json:"sign"` }
func (*TradePayRsp) IsSuccess ¶
func (this *TradePayRsp) IsSuccess() bool
type TradePreCreate ¶
type TradePreCreate struct { Trade AppAuthToken string `json:"-"` // 可选 DiscountableAmount string `json:"discountable_amount"` // 可选 可打折金额. 参与优惠计算的金额,单位为元,精确到小数点后两位,取值范围[0.01,100000000] 如果该值未传入,但传入了【订单总金额】,【不可打折金额】则该值默认为【订单总金额】-【不可打折金额】 GoodsDetail []*GoodsDetailItem `json:"goods_detail,omitempty"` // 可选 订单包含的商品列表信息.Json格式. 其它说明详见:“商品明细说明” OperatorId string `json:"operator_id"` // 可选 商户操作员编号 TerminalId string `json:"terminal_id"` // 可选 商户机具终端编号 }
//////////////////////////////////////////////////////////////////////////////// https://docs.open.alipay.com/api_1/alipay.trade.precreate/
func (TradePreCreate) APIName ¶
func (this TradePreCreate) APIName() string
func (TradePreCreate) Params ¶
func (this TradePreCreate) Params() map[string]string
type TradePreCreateRsp ¶
type TradePreCreateRsp struct { Content struct { Code string `json:"code"` Msg string `json:"msg"` SubCode string `json:"sub_code"` SubMsg string `json:"sub_msg"` OutTradeNo string `json:"out_trade_no"` // 创建交易传入的商户订单号 QRCode string `json:"qr_code"` // 当前预下单请求生成的二维码码串,可以用二维码生成工具根据该码串值生成对应的二维码 } `json:"alipay_trade_precreate_response"` Sign string `json:"sign"` }
func (*TradePreCreateRsp) IsSuccess ¶
func (this *TradePreCreateRsp) IsSuccess() bool
type TradeQuery ¶
type TradeQuery struct { AppAuthToken string `json:"-"` // 可选 OutTradeNo string `json:"out_trade_no,omitempty"` // 订单支付时传入的商户订单号, 与 TradeNo 二选一 TradeNo string `json:"trade_no,omitempty"` // 支付宝交易号 }
https://docs.open.alipay.com/api_1/alipay.trade.query/
func (TradeQuery) APIName ¶
func (this TradeQuery) APIName() string
func (TradeQuery) Params ¶
func (this TradeQuery) Params() map[string]string
type TradeQueryRsp ¶
type TradeQueryRsp struct { Content struct { Code string `json:"code"` Msg string `json:"msg"` SubCode string `json:"sub_code"` SubMsg string `json:"sub_msg"` TradeNo string `json:"trade_no"` // 支付宝交易号 OutTradeNo string `json:"out_trade_no"` // 商家订单号 BuyerLogonId string `json:"buyer_logon_id"` // 买家支付宝账号 TradeStatus string `json:"trade_status"` // 交易状态 TotalAmount string `json:"total_amount"` // 交易的订单金额 TransCurrency string `json:"trans_currency"` // 标价币种 SettleCurrency string `json:"settle_currency"` // 订单结算币种 SettleAmount string `json:"settle_amount"` // 结算币种订单金额 PayCurrency string `json:"pay_currency"` // 订单支付币种 PayAmount string `json:"pay_amount"` // 支付币种订单金额 SettleTransRate string `json:"settle_trans_rate"` // 结算币种兑换标价币种汇率 TransPayRate string `json:"trans_pay_rate"` // 标价币种兑换支付币种汇率 BuyerPayAmount string `json:"buyer_pay_amount"` // 买家实付金额,单位为元,两位小数。 PointAmount string `json:"point_amount"` // 积分支付的金额,单位为元,两位小数。 InvoiceAmount string `json:"invoice_amount"` // 交易中用户支付的可开具发票的金额,单位为元,两位小数。 SendPayDate string `json:"send_pay_date"` // 本次交易打款给卖家的时间 ReceiptAmount string `json:"receipt_amount"` // 实收金额,单位为元,两位小数 StoreId string `json:"store_id"` // 商户门店编号 TerminalId string `json:"terminal_id"` // 商户机具终端编号 FundBillList []*FundBill `json:"fund_bill_list,omitempty"` // 交易支付使用的资金渠道 StoreName string `json:"store_name"` // 请求交易支付中的商户店铺的名称 BuyerUserId string `json:"buyer_user_id"` // 买家在支付宝的用户id ChargeAmount string `json:"charge_amount"` // 该笔交易针对收款方的收费金额; ChargeFlags string `json:"charge_flags"` // 费率活动标识,当交易享受活动优惠费率时,返回该活动的标识; SettlementId string `json:"settlement_id"` // 支付清算编号,用于清算对账使用; AuthTradePayMode string `json:"auth_trade_pay_mode"` // 预授权支付模式,该参数仅在信用预授权支付场景下返回。信用预授权支付:CREDIT_PREAUTH_PAY BuyerUserType string `json:"buyer_user_type"` // 买家用户类型。CORPORATE:企业用户;PRIVATE:个人用户。 MdiscountAmount string `json:"mdiscount_amount"` // 商家优惠金额 DiscountAmount string `json:"discount_amount"` // 平台优惠金额 BuyerUserName string `json:"buyer_user_name"` // 买家名称; Subject string `json:"subject"` // 订单标题; Body string `json:"body"` // 订单描述; AlipaySubMerchantId string `json:"alipay_sub_merchant_id"` // 间连商户在支付宝端的商户编号; ExtInfos string `json:"ext_infos"` // 交易额外信息,特殊场景下与支付宝约定返回。 DiscountGoodsDetail string `json:"discount_goods_detail"` // 本次交易支付所使用的单品券优惠的商品优惠信息 IndustrySepcDetail string `json:"industry_sepc_detail"` // 行业特殊信息(例如在医保卡支付业务中,向用户返回医疗信息)。 VoucherDetailList []*VoucherDetail `json:"voucher_detail_list,omitempty"` // 本交易支付时使用的所有优惠券信息 } `json:"alipay_trade_query_response"` Sign string `json:"sign"` }
func (*TradeQueryRsp) IsSuccess ¶
func (this *TradeQueryRsp) IsSuccess() bool
type TradeRefund ¶
type TradeRefund struct { AppAuthToken string `json:"-"` // 可选 OutTradeNo string `json:"out_trade_no,omitempty"` // 与 TradeNo 二选一 TradeNo string `json:"trade_no,omitempty"` // 与 OutTradeNo 二选一 RefundAmount string `json:"refund_amount"` // 必须 需要退款的金额,该金额不能大于订单金额,单位为元,支持两位小数 RefundReason string `json:"refund_reason"` // 可选 退款的原因说明 OutRequestNo string `json:"out_request_no"` // 可选 标识一次退款请求,同一笔交易多次退款需要保证唯一,如需部分退款,则此参数必传。 OperatorId string `json:"operator_id"` // 可选 商户的操作员编号 StoreId string `json:"store_id"` // 可选 商户的门店编号 TerminalId string `json:"terminal_id"` // 可选 商户的终端编号 }
////////////////////////////////////////////////////////////////////////////// https://docs.open.alipay.com/api_1/alipay.trade.refund/
func (TradeRefund) APIName ¶
func (this TradeRefund) APIName() string
func (TradeRefund) Params ¶
func (this TradeRefund) Params() map[string]string
type TradeRefundRsp ¶
type TradeRefundRsp struct { Content struct { Code string `json:"code"` Msg string `json:"msg"` SubCode string `json:"sub_code"` SubMsg string `json:"sub_msg"` TradeNo string `json:"trade_no"` // 支付宝交易号 OutTradeNo string `json:"out_trade_no"` // 商户订单号 BuyerLogonId string `json:"buyer_logon_id"` // 用户的登录id BuyerUserId string `json:"buyer_user_id"` // 买家在支付宝的用户id FundChange string `json:"fund_change"` // 本次退款是否发生了资金变化 RefundFee string `json:"refund_fee"` // 退款总金额 GmtRefundPay string `json:"gmt_refund_pay"` // 退款支付时间 StoreName string `json:"store_name"` // 交易在支付时候的门店名称 RefundDetailItemList []*RefundDetailItem `json:"refund_detail_item_list,omitempty"` // 退款使用的资金渠道 } `json:"alipay_trade_refund_response"` Sign string `json:"sign"` }
func (*TradeRefundRsp) IsSuccess ¶
func (this *TradeRefundRsp) IsSuccess() bool
type TradeWapPay ¶
type TradeWapPay struct { Trade QuitURL string `json:"quit_url,omitempty"` AuthToken string `json:"auth_token,omitempty"` // 针对用户授权接口,获取用户相关数据时,用于标识用户授权关系 TimeExpire string `json:"time_expire,omitempty"` // 绝对超时时间,格式为yyyy-MM-dd HH:mm。 }
//////////////////////////////////////////////////////////////////////////////// https://docs.open.alipay.com/api_1/alipay.trade.wap.pay/
func (TradeWapPay) APIName ¶
func (this TradeWapPay) APIName() string
func (TradeWapPay) Params ¶
func (this TradeWapPay) Params() map[string]string
type UserCertifyOpenCertify ¶
type UserCertifyOpenCertify struct { AppAuthToken string `json:"-"` // 可选 CertifyId string `json:"certify_id"` // 必选 本次申请操作的唯一标识,由开放认证初始化接口调用后生成,后续的操作都需要用到 }
////////////////////////////////////////////////////////////////////////////// https://docs.open.alipay.com/api_2/alipay.user.certify.open.certify
func (UserCertifyOpenCertify) APIName ¶
func (this UserCertifyOpenCertify) APIName() string
func (UserCertifyOpenCertify) Params ¶
func (this UserCertifyOpenCertify) Params() map[string]string
type UserCertifyOpenCertifyRsp ¶
type UserCertifyOpenInitialize ¶
type UserCertifyOpenInitialize struct { AppAuthToken string `json:"-"` // 可选 OuterOrderNo string `json:"outer_order_no"` // 必选 商户请求的唯一标识,商户要保证其唯一性,值为32位长度的字母数字组合。建议:前面几位字符是商户自定义的简称,中间可以使用一段时间,后段可以使用一个随机或递增序列 BizCode CertifyBizCode `json:"biz_code"` // 必选 认证场景码。入参支持的认证场景码和商户签约的认证场景相关,取值如下: FACE:多因子人脸认证 CERT_PHOTO:多因子证照认证 CERT_PHOTO_FACE :多因子证照和人脸认证 SMART_FACE:多因子快捷认证 IdentityParam IdentityParam `json:"identity_param"` // 必选 MerchantConfig MerchantConfig `json:"merchant_config"` // 必选 商户个性化配置,格式为json,详细支持的字段说明为: return_url:需要回跳的目标地址,必填,一般指定为商户业务页面 FaceContrastPicture string `json:"face_contrast_picture,omitempty"` // 可选 自定义人脸比对图片的base64编码格式的string字符串 }
https://docs.open.alipay.com/api_2/alipay.user.certify.open.initialize
func (UserCertifyOpenInitialize) APIName ¶
func (this UserCertifyOpenInitialize) APIName() string
func (UserCertifyOpenInitialize) Params ¶
func (this UserCertifyOpenInitialize) Params() map[string]string
type UserCertifyOpenInitializeRsp ¶
type UserCertifyOpenQuery ¶
type UserCertifyOpenQuery struct { AppAuthToken string `json:"-"` // 可选 CertifyId string `json:"certify_id"` // 必选 本次申请操作的唯一标识,由开放认证初始化接口调用后生成,后续的操作都需要用到 }
////////////////////////////////////////////////////////////////////////////// https://docs.open.alipay.com/api_2/alipay.user.certify.open.query/
func (UserCertifyOpenQuery) APIName ¶
func (this UserCertifyOpenQuery) APIName() string
func (UserCertifyOpenQuery) Params ¶
func (this UserCertifyOpenQuery) Params() map[string]string
type UserCertifyOpenQueryRsp ¶
type UserCertifyOpenQueryRsp struct { Content struct { Code string `json:"code"` Msg string `json:"msg"` SubCode string `json:"sub_code"` SubMsg string `json:"sub_msg"` Passed string `json:"passed"` IdentityInfo string `json:"identity_info"` MaterialInfo string `json:"material_info"` } `json:"alipay_user_certify_open_query_response"` Sign string `json:"sign"` }
type UserInfoShare ¶
type UserInfoShare struct {}
////////////////////////////////////////////////////////////////////////////// https://docs.open.alipay.com/api_2/alipay.user.info.share
func (UserInfoShare) APIName ¶
func (this UserInfoShare) APIName() string
func (UserInfoShare) Params ¶
func (this UserInfoShare) Params() map[string]string
type UserInfoShareRsp ¶
type UserInfoShareRsp struct { string `json:"code"` Msg string `json:"msg"` SubCode string `json:"sub_code"` SubMsg string `json:"sub_msg"` AuthNo string `json:"auth_no"` UserId string `json:"user_id"` Avatar string `json:"avatar"` Province string `json:"province"` City string `json:"city"` NickName string `json:"nick_name"` IsStudentCertified string `json:"is_student_certified"` UserType string `json:"user_type"` UserStatus string `json:"user_status"` IsCertified string `json:"is_certified"` Gender string `json:"gender"` } `json:"alipay_user_info_share_response"` }Code
type VoucherDetail ¶
type VoucherDetail struct { Id string `json:"id"` // 券id Name string `json:"name"` // 券名称 Type string `json:"type"` // 当前有三种类型: ALIPAY_FIX_VOUCHER - 全场代金券, ALIPAY_DISCOUNT_VOUCHER - 折扣券, ALIPAY_ITEM_VOUCHER - 单品优惠 Amount string `json:"amount"` // 优惠券面额,它应该会等于商家出资加上其他出资方出资 MerchantContribute string `json:"merchant_contribute"` // 商家出资(特指发起交易的商家出资金额) OtherContribute string `json:"other_contribute"` // 其他出资方出资金额,可能是支付宝,可能是品牌商,或者其他方,也可能是他们的一起出资 Memo string `json:"memo"` // 优惠券备注信息 }