支付宝支付实战总结

支付宝支付实战总结

  • APP支付介绍

    • 已安装支付宝支付流程
    • 未安装支付宝支付流程
  • 快速接入

    • 创建应用并获取APPID: 需要登录支付宝开放平台(open.alipay.com),在开发者中心中创建您的应用,应用审核通过后会生成应用唯一标识(APPID
    • 添加App支付能力。添加功能后开发者需要在开放平台里进行签约,第三方应用开发者可以代替商户签约
    • 配置秘钥:支持上传 RSA2(SHA256) 的应用公钥和公钥证书两种形式
      • RSA 密钥包含应用私钥(APP_PRIVATE_KEY)、应用公钥(APP_PUBLIC_KEY),是通过支付宝提供的工具可以一键生成秘钥
      • 生成密钥后,开发者就可以在应用信息页面进行配置,配置完成后可以获取支付宝公钥(ALIPAY_PUBLIC_KEY)
    • 集成开发,接入APP支付需要集成两个 SDK
      • 客户端 SDK 需要集成在商户自己的 APP 中,点击下载客户端SDK
      • 服务端SDK 需要商户集成在自己的服务端系统中,用于协助解析并验证客户端同步返回的支付结果和异步通知,开放平台服务端 SDK,包含 JAVA, PHP, PYTHON, NodeJS 和 .NET 版本,封装了签名&验签、HTTP接口请求等基础功能
  • 沙盒测试

    • 点击“开放平台-开发者中心-沙箱环境”。进入沙箱环境页面,系统已经自动为你创建一个应用,在 信息配置 中可以看到应用信息
    • 沙箱环境密钥设置,和正式环境的秘钥配置一样,参见上面
    • 使用沙箱环境,需要替换下面4项配置
      • 请求网关修改为:https://openapi.alipaydev.com/gateway.do
      • appid 切换为沙箱的 appid
      • 应用私钥(app_private_key)换成沙箱环境的私钥,可通过支付宝提供的工具生成
      • 支付宝公钥(alipay_public_key)使用沙箱环境的支付宝公钥,在沙箱环境上传应用公钥后,会生成沙箱环境的支付宝公钥
    • 沙箱环境会用到 沙箱版钱包APP,目前只支持android版
      • 登录开发平台后,点击使用沙箱工具连接,进到沙箱环境,可以用支付宝扫描下载
      • 沙箱账号为沙箱工具提供了买家和卖家账号,可以选择登录
  • 集成服务端SDK

    • pom

      <dependency>
         <groupId>com.alipay.sdk</groupId>
         <artifactId>alipay-sdk-java</artifactId>
         <version>4.9.106.ALL</version>
      </dependency>
      
    • APP支付 : alipay.trade.app.pay - app 支付接口 2.0

      // alipayClient 只需要初始化一次,后续调用不同的API都可以使用同一个 alipayClient 对象
      // URL : 支付宝网关 : https://openapi.alipay.com/gateway.do
      // APP_PRIVATE_KEY : 应用私钥 : 由开发者自己生成
      // FORMAT: 参数返回格式,只支持 json
      // CHARSET : 请求和签名使用的字符编码格式,支持 GBK 和 UTF-8
      // ALIPAY_PUBLIC_KEY: 支付宝公钥,由支付宝生成
      // SIGN_TYPE : 商户生成签名字符串所使用的签名算法类型,目前支持 RSA2 和 RSA,推荐使用 RSA2
      AlipayClient alipayClient = new DefaultAlipayClient(URL, APP_ID, APP_PRIVATE_KEY, FORMAT, CHARSET, ALIPAY_PUBLIC_KEY, SIGN_TYPE);
      
      //实例化具体API对应的request类,类名称和接口名称对应,当前调用接口名称:alipay.trade.app.pay
      AlipayTradeAppPayRequest request = new AlipayTradeAppPayRequest();
      request.setNotifyUrl(this.aliPayNotifyUrl);
      
      //biz_content={"out_trade_no":"102004101730291161689","passback_params":"{\"payType\":0}","product_code":"QUICK_MSECURITY_PAY","subject":"测试商品","timeout_express":"5m","total_amount":"11"}
      // 附加参数
      Map appParams = new HashMap(2);
      appParams.put("payType", PayType.ALIPAY.getType()
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值