支付宝沙箱超详细教程+避雷经验,看这篇就够了

发布时间 2023-10-24 15:09:05作者: 盐焗代码虾

使用支付宝沙箱的时候经常踩坑 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 参数里面的链接就可以转成二维码用 沙箱钱包扫码支付 了。

沙箱钱包账单:

其他常见问题

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

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