支付宝沙箱超详细教程+避雷经验,看这篇就够了
使用支付宝沙箱的时候经常踩坑 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 参数里面的链接就可以转成二维码用 沙箱钱包扫码支付 了。
沙箱钱包账单:
其他常见问题
在使用支付宝沙箱过程中,还会遇到一些其他常见问题,这里全都列出来供大家参考查阅:
以上就是关于支付宝沙箱支付的所有内容了,希望对大家有所帮助(ノ ̄▽ ̄)~❀欢迎留言交流