Alipay SDK 调用示例

Alipay SDK 集成说明

  • 由于实例化 SDK 客户端时需要指定应用的私钥信息,请务必注意不要将私钥信息配置在源码中(例如配置为常量或储存在配置文件的某个字段中等),因为私钥的保密等级往往比源码高得多,将会增加私钥泄露的风险。推荐将私钥信息储存在专用的私钥文件中,将私钥文件通过安全的流程分发到服务器的安全储存区域上,仅供自己的应用运行时读取。
  • SDK 已经对加签验签逻辑做了封装,使用 SDK 时传入支付宝公钥等内容可直接通过 SDK 自动进行加验签。

确定接口对应的类

例如接口名为: alipay.offline.material.image.upload

在 SDK 中对应的类为:每个单词首字母大写,并去掉分隔符(“.”),末尾加上 Request(或 Response)。

如上接口名对应的类为

AlipayOfflineMaterialImageUploadRequest(请求类)

AlipayOfflineMaterialImageUploadResponse(响应类)

具体调用方式见下方各语言集成示例。

签名方法

加签验签详情可查看 数据签名

Alipay Easy SDK

Easy 版服务端 SDK( Alipay Easy SDK )适用于 Java、C#、PHP 编程语言,对开放产品的 API 进行了更加贴近高频场景的精心设计与裁剪,简化了服务端调用方式,让开发者享受极简编程体验,快速访问支付宝开放平台开放的各项核心产品。

同时,开发者不必担心面向高频场景提炼的 API 无法完全契合自身个性化场景的问题,Alipay Easy SDK 支持灵活的动态扩展方式,同样可以满足低频参数、低频 API 的使用需求。

注意: Alipay Easy SDK 需使用 maven 依赖引入,请勿直接下载 JAR 包导入项目。

Easy 版、通用版服务端 SDK 相关说明

  • 通用版 SDK 中:
  • certificateExecute 和 execute 方法,可使用 Easy 版服务端 SDK 提供的 Factory.Util.Generic.execute 方法替换。
  • sdkExecute 方法,可以用 Easy 版服务端 SDK 提供的 Factory.Util.Generic.sdkExecute 方法替换。
  • 文件上传场景,可以用 Easy 版服务端 SDK Factory.Util.Generic.fileExecute 方法替换。
  • 更多场景查看下文对应语言 动态扩展 SDK 功能满足个性化需求。
  • 通用版 SDK 中的门店照片和视频文件的上传 ,可使用Easy版服务端 SDK 中的 Factory.Base.Image.upload 和 Factory.Base.Video.upload 覆盖。
  • 通用版 SDK 中的支付类 异步通知 验签 AlipaySignature.rsaCertCheckV1 和 AlipaySignature.rsaCheckV1 方法,可使用Easy版本服务端 SDK 提供的 Factory.Payment.Common.verifyNotify 方法替换。
  • 两个版本 SDK 并无冲突,可以共存。

获取 Alipay Easy SDK

开发语言

资源下载

环境要求

Java

Maven 项目依赖

GitHub 项目主页

适用于 JDK 1.8 及其以上版本

注意: 需使用 maven 依赖引入,请勿直接下载 JAR 包导入项目。

C#

NuGet 项目依赖

GitHub 项目主页

适用于 .Net Framework 4.6.1、.Net Core 2.0 及其以上版本

PHP

Composer 项目依赖

GitHub 项目主页

适用于 PHP 7.0 及其以上版本

注意: 不同语言连接符可能不一致,以各语言示例为准。

Alipay Easy SDK API 总览

能力类别

场景类别

接口方法名称

Base(基础能力)

OAuth(用户授权)

getToken(获取授权访问令牌和用户 user_id)

Base(基础能力)

OAuth(用户授权)

refreshToken(刷新授权访问令牌)

Base(基础能力)

Qrcode(小程序二维码)

create(创建小程序二维码)

Base(基础能力)

Image(图片)

upload(上传门店照片)

Base(基础能力)

Video(视频)

upload(上传门店视频)

Member(会员能力)

Identification(支付宝身份认证)

init(身份认证初始化)

Member(会员能力)

Identification(支付宝身份认证)

certify(生成认证链接)

Member(会员能力)

Identification(支付宝身份认证)

query(身份认证记录查询)

Payment(支付能力)

Common(通用)

create(创建交易)

Payment(支付能力)

Common(通用)

query(查询交易)

Payment(支付能力)

Common(通用)

refund(交易退款)

Payment(支付能力)

Common(通用)

close(关闭交易)

Payment(支付能力)

Common(通用)

cancel(撤销交易)

Payment(支付能力)

Common(通用)

queryRefund(交易退款查询)

Payment(支付能力)

Common(通用)

downloadBill(查询对账单下载地址)

Payment(支付能力)

Common(通用)

verifyNotify(异步通知验签)

Payment(支付能力)

Huabei( 花呗分期

create(创建花呗分期交易)

Payment(支付能力)

FaceToFace( 当面付

pay(扫用户出示的付款码,完成付款)

Payment(支付能力)

FaceToFace(当面付)

precreate(生成交易付款码,待用户扫码付款)

Payment(支付能力)

App(手机APP)

pay(生成订单串,再使用客户端 SDK 凭此串唤起支付宝收银台)

Payment(支付能力)

Page(电脑网站)

pay(生成交易表单,渲染后自动跳转支付宝网站引导用户完成支付)

Payment(支付能力)

Wap(手机网站)

pay(生成交易表单,渲染后自动跳转支付宝网站引导用户完成支付)

Security(安全能力)

TextRisk(文本内容安全)

detect(检测内容风险)

Marketing(营销能力)

Pass(支付宝卡包)

createTemplate(卡券模板创建)

Marketing(营销能力)

Pass(支付宝卡包)

updateTemplate(卡券模板更新)

Marketing(营销能力)

Pass(支付宝卡包)

addInstance(卡券实例发放)

Marketing(营销能力)

Pass(支付宝卡包)

updateInstance(卡券实例更新)

Marketing(营销能力)

TemplateMessage( 小程序模板 消息)

send(发送模板消息)

Marketing(营销能力)

OpenLife(生活号)

createImageTextContent(创建图文消息内容)

Marketing(营销能力)

OpenLife(生活号)

modifyImageTextContent(更新图文消息内容)

Marketing(营销能力)

OpenLife(生活号)

sendText(群发本文消息)

Marketing(营销能力)

OpenLife(生活号)

sendImageText(群发图文消息)

Marketing(营销能力)

OpenLife(生活号)

sendSingleMessage(单发模板消息)

Marketing(营销能力)

OpenLife(生活号)

recallMessage(生活号消息撤回)

Marketing(营销能力)

OpenLife(生活号)

setIndustry(模板消息行业设置)

Marketing(营销能力)

OpenLife(生活号)

getIndustry(生活号查询行业设置)

Util(辅助工具)

AES(加解密)

decrypt(解密,常用于会员手机号解密)

Util(辅助工具)

AES(加解密)

encrypt(加密)

Util(辅助工具)

Generic(通用接口)

execute(自行拼接参数,执行OpenAPI调用)

Util(辅助工具)

Generic(通用接口)

sdkExecute(自行拼接参数,生成加签串,功能等同于通用版 SDK 中的 sdkExecute 方法)