使用支付宝沙箱的时候经常踩坑 TAT 自己排查问题还要花好长时间。

今天总结了一下支付宝沙箱的使用教程,希望帮助到大家,避免重复踩坑~ψ(*`ー´)ψ

我们先看下官方对沙箱的说明,如下:

我们可以看到官方文档上说明的指出了沙箱的三个特性

  • 使用账号不需要任何的资质
  • 账号不需要开通任何权限
  • 沙箱环境下的调用不会对生产环境数据造成影响

这不就说明了这是可以在官方给的接口范围内
随便乱搞
认真调研了嘛。

沙箱账号体系说明

为了实现上面这三个功能,支付宝给沙箱单独做了一套
账号体系

应用体系
以及
独立的支付宝沙箱 APP
(暂时仅支持Android,iOS 使用详见:
iOS 如何下载使用沙箱钱包
)。

  • 账号体系:第一次登录支付宝开放平台的小伙伴记得先按照指引入驻一下,传送门:
    沙箱账号获取入口

  • 应用体系:

  • 支付宝沙箱 APP:暂时仅支持Android。

划重点:支付宝沙箱钱包也只能使用沙箱账号登录

划重点:支付宝沙箱钱包也只能使用沙箱账号登录

划重点:支付宝沙箱钱包也只能使用沙箱账号登录

重要的事情说三遍,大家在登录的时候记得
不要直接用自己的账号登录
,选择下面的【更多选项】-【用支付宝/邮箱登录】去输入沙箱账号。

相信我,你们一定不会想体会重复被提示“账号不存在”,反复检查账号的感觉。

我把之前遇到关于支付宝沙箱 APP 的问题列在这边,大家共勉~/(ㄒoㄒ)/~~

沙箱接口开发流程说明

支付宝沙箱目前不仅后端接口开发,还支持小程序前端开发。

目前沙箱产品支持的范围参考:
支付宝沙箱支持的产品范围

这个范围我觉得 ok,至少市面上主流的能力都能测试,可以覆盖产品的绝大部分核心链路和对接逻辑。

接下来将分别从
前端

后端
讲解如何具体使用沙箱。

前端如何使用沙箱

首先介绍下小程序如何使用沙箱进行调试。

正式和沙箱环境的区别


知道之前有没有用过支付宝沙箱的小伙伴,以前支付宝沙箱如果要调试小程序的话,还需要在 IDE 上下载沙箱插件,重启之后才能生效,非常麻烦。

不知道是不是听到了广大群众的呼声,这次支付宝沙箱在小程序开发上做了一次升级,抛弃了沙箱插件,直接把正式环境的小程序同步到了沙箱里。
针对 2021 开头的小程序,小程序会自动同步到沙箱环境。

简单来说在同一套代码、不切换环境的情况下,你推到沙箱 APP 上了就是沙箱环境测试;推到正式的 APP 上就是正式环境测试了。

调试步骤

  • 第一步:使用
    线上APP
    扫码登录支付宝小程序开发工具
  • 第二步:选择需要开发的小程序
    • 这里需要
      选择 2021 开头的小程序 APPID,否则会报错

      码已失效,请刷新二维码后重试。详见:[
      沙箱支持的小程序范围
      ]
  • 第三步:正常调试小程序,如果遇到线上环境没有权限的功能,可以直接使用沙箱的 APP 去扫调试码,推送到沙箱 APP上进行真机调试,记住沙箱 APP 登录的是
    商家账号
    ,不要使用买家账号去登录。
    • ⚠️注意:最好把
      小程序自动推送给支付宝
      选项的勾选给去掉,不然就会推送到正式的支付宝 APP上了

可以使用
my.env
的 clientEnv 动态获取支付宝 APP 的环境信息,来决定网络请求接口的目标地址。

后端如何使用沙箱

接下来我们就来介绍下,服务端如何使用沙箱环境。

正式和沙箱环境的区别

因为账号体系不一样,应用、密钥和支付宝网关都是不一样的,最主要的区别还是支付宝网关地址。

  • 正式环境支付宝网关地址为:
    https://openapi.alipay.com/gateway.do
  • 沙箱环境支付宝网关地址为:
    https://openapi-sandbox.dl.alipaydev.com/gateway.do

最好配置两套密钥,方便正式和沙箱环境来回搞。

调试步骤

就以「当面付」产品为例,看一下沙箱环境如何调用。

第一步:获取配置信息

服务端接口所需要的平台上的信息就是
APPID

接口加签方式中的密钥信息

支付宝网关地址

  • APPID、接口加签方式和支付宝网关地址获取位置截图如下:

  • 点击【查看】获取密钥

第二步:将配置信息入参到代码中

为了方便说明,这边就直接引用官方提供的代码示例了,详情参考:[
当面付示例代码
]。

在 Config 类中,参数与平台中对应的关系如下:

  • gatewayUrl:支付宝应用网关
  • app_id:APPID
  • merchant_private_key:应用私钥
  • alipay_public_key:支付宝公钥

配置完成,调用成功之后就会返回

{"alipay_trade_precreate_response":{"code":"10000","msg":"Success","out_trade_no":"2023888888888888","qr_code":"https://qr.alipay.com/bax04390c1pudiutvskn009b"},"sign":"lcwdCgQgkUGcjoqWDlfmQojtFSof+XigNflDorz8Lmep1yGfSMB75S8S0ZbPfzA5p8fRWnnyDyVatlRcnA+AmBeh/VlDxxQ9KmE9BR+0UHZtd6+ucdBDGU/hAhZd3+NbCmZ61eAEeArpE7HPOQWwac/nOynrPjnp3YSTOCR7U+O8o3gbz1Hc6QQo0aVz63t0DKGPanvrk4hkRJhLsZj1oMoguevj86mPoixRX5mxGiheIPbmtB4CjJAS5kx6EGEuBd3uk2UL8BQjQ/XqyCsDHSNJ8zglGwW0PyBuRPhF1S2LSIazlOz32cQDFh2NZLpXtJl/fFSQzQhy99i57+z/dg=="}

第三步:使用沙箱钱包支付

上述 qr_code 参数里面的链接就可以转成二维码用
沙箱钱包扫码支付
了。

沙箱钱包账单:

其他常见问题

在使用支付宝沙箱过程中,还会遇到一些其他常见问题,这里全都列出来供大家参考查阅:

以上就是关于支付宝沙箱支付的所有内容了,希望对大家有所帮助(ノ ̄▽ ̄)~❀欢迎留言交流

标签: none

添加新评论