今天在对接支付宝 APP 支付的时候遇到了一个报错,记录下问题的排查过程~

报错过程

APP 中弹窗提示的报错“商家订单参数异常,请重新发起付款”,检查了下参数感觉没啥问题,不知道是啥问题导致的。

去官网搜了下,折腾排查了一遍,发现是环境问题,没有切到沙箱环境导致的 (*/ω\*) 。

先放个官网提供的报错排查思路:

[商家订单参数异常,请尝试返回后重新付款或联系商家确认 (ALIN10146)]

排查思路

造成这个问题的原因还挺多的,下面把排查过程总结下:

第一步:使用官方的诊断工具查日志

支付宝提供了一个日志的查询工具,可以直接根据交易号查到报错信息,(๑•̀ㅂ•́)و✧nice~!

[诊断工具] 建议收藏使用

输入 out_trade_no 之后,说是“接口传入的 app_id(9021000123607990)不正确”

发现 appid 没有从沙箱的换回线上的,重新切换回线上的环境,发现查不到日志了=-=

注意:这个工具只能查线上环境的,沙箱环境的无法查询!!!

第二步:排查参数是否有问题

没有办法,只能重新确认下请求参数

method 没有问题,product_code 参数也跟文档上一致。

没啥思路了,重新按照官方的文档排查下。

第三步:排查密钥是否有问题

可以参考官网文档 [如何检验 RSA2 密钥是否匹配]

检查了下密钥,发现没有问题,是匹配的;

应用私钥放在代码中,应用公钥上传到平台上,跟文档说的一致。

第四步:排查权限是否正常

可以参考官网文档 [如何确认是否完成签约]

直接到应用下产品绑定里查看产品开通状态,是 已开通 的,没有问题

第五步:排查测试的环境

沙箱联调时要在客户端代码里加上下面这行代码,客户端请求的时候才能请求到沙箱环境,如果不加的话,就是请求到正式网关。

EnvUtils.setEnv(EnvUtils.EnvEnum.SANDBOX);

找到这里就定位到问题了

我之前在沙箱测试的,想着网关和密钥切回去了之后就没有问题了,忘记了客户端还得改。

去掉这行代码之后,走通了。

希望能对你有所帮助~✿✿ヽ(°▽°)ノ✿,有问题一起沟通~。

关于沙箱的更多内容,可以参考这一篇:

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

App支付报错"商家订单参数异常,请重新发起付款"排查流程的更多相关文章

  1. APP支付报错ALI40247处理方案!

    简直日狗!这里要吐槽支付宝: 1.支付宝文档太复杂,分类虽然详细,但是我找不到app支付 对应服务端的demo 2.提供下载的sdk都是全整合的 用下来都是一条龙服务,还有一些客户端(app)的请求也 ...

  2. 微信h5支付报错 商家参数格式有误,请联系商家解决

    商家参数格式有误,请联系商家解决 当前调起H5支付的referer为空导致,一般是因为直接访问页面调起H5支付,请按正常流程进行页面跳转后发起支付,或自行抓包确认referer值是否为空 解决:就把 ...

  3. 微信支付报错:统一下单和拉起支付的appid不一致(原创)

    微信支付报错:统一下单和拉起支付的appid不一致 错误码:-2 提示参考: 参考统一下单的API (谦信君原创,转载请注明来源) 原因排查: 我们做的是APP微信支付 客户端向我服务端发请求,获取预 ...

  4. python报错函数传参数传多了

    写python的时候报错: Exception : Traceback (most recent call last): File , in __bootstrap_inner self.run() ...

  5. vscode源代码管理(vscode报错 未找到Git,请安装Git,或在"git.path" 设置中配置)

    vscode源代码管理(vscode报错 未找到Git,请安装Git,或在"git.path" 设置中配置) 直接上图,电脑上已经安装git,由于vscode没有找到git,所以v ...

  6. 微信支付报错:app没有获取微信支付权限

    调试微信支付的时候报错: Array( [return_code] => FAIL [return_msg] => 您没有APP支付权限) 查询了,发现自己将之前的公众号支付的APPID一 ...

  7. APP微信支付报错《商户号该产品权限未开通,请前往商户平台>产品中心检查后重试》

    问题 最近项目使用MUI,HBuilder.开发打包H5的app 在开发H5 plus支付的时候,遇到以下问题: App微信支付调官方的统一下单接口返回错误信息 {return_msg=商户号该产品权 ...

  8. python (3):wxPython打包app,报错

    1,打包app报错 如图: 使用py2app,mac下打包成app.异常.程序直接退出. 没有详细的错误信息,client程序直接崩溃了. 2.原因 代码没有几行: #!/usr/bin/python ...

  9. go Rails 知识点,Concepts Series:url和parameter; 建立Rails App Templates;报错页面debug; counter_cache

    Rails Concepts Series: https://gorails.com/series/rails-concepts 基本都是免费的 一些细小的知识点,很有帮助. URL和paramete ...

  10. Django-自己写的py文件调用models&Non-ASCII character报错&url接收参数

    1.这个设置是网上能查到的最多的,但是没解决我的问题: Django的models.py在外部独立使用,新建一个文件夹,和monitor1目录平级 import sys,os sys.path.app ...

随机推荐

  1. Hexo博客Next主题DaoVoice实现在线联系

    注册登录DaoVoice 注册地址如下: http://www.daovoice.io/ 在官网注册帐号需要邀请码,可以输入我的邀请码 b69005f1 复制粘贴代码 修改的hexo的文件路劲如下: ...

  2. ObjectInputStream_报错问题

    报错: Exception in thread "main" java.io.StreamCorruptedException: invalid stream header: CE ...

  3. 树莓派命令——linux命令tips

    sudo python3 test.py 和 python3 test.py 完全不是一个东西,有时候是链接的编译器不同,环境是完全不同,sudo会调用一些无关资源,反而容易造成程序运行失败或浪费cp ...

  4. 【pandas小技巧】--字符串转数值

    字符串转数字的用途和场景很多,其中主要包括以下几个方面: 数据清洗:在进行数据处理时,经常会遇到一些数据类型不匹配的问题,比如某些列中的字符串类型被误认为是数字类型,此时需要将这些字符串类型转换为数字 ...

  5. LabVIEW图形化TensoRT工具包的安装下载分享

    前言 Hello,大家好,我是virobotics(仪酷智能)今天我们一起来看一下如何安装[LabVIEWTensoRT工具包]. 一.LabVIEW图形化TensoRT工具包简介 工具包特点: 图形 ...

  6. 论文解读(IW-Fit)《Better Fine-Tuning via Instance Weighting for Text Classification》

    Note:[ wechat:Y466551 | 可加勿骚扰,付费咨询 ] 论文信息 论文标题:Better Fine-Tuning via Instance Weighting for Text Cl ...

  7. 组合查询(left_inner_right)与排序(order by _DESC _ASC)在题目中的应用

    1,想要让哪一列放在开头或者结尾,只需要将select中的查询位置放在最开始或者结尾即可: 2,组合查询要注意使用 on 加上组合条件: 3,order by 默认升序(ASC),降序使用:order ...

  8. 【AI绘画模型汇总】分享5个国内实用的AI绘画模型网站-C站AI模型平替网站

    鉴于大家未必会有魔法工具访问civitai(C站)下载AI模型,这里我搜集整理了5个实用的国内版AI模型素材库,无障碍访问下载Stable diffusion模型. 1.LiblibAI 访问速度快, ...

  9. iOS添加图片

    添加一个按钮 将图片添加到

  10. C# winform 无边框窗口 移动

    给自己留个笔记, 在用wke做界面的时候. 往往需要把winform窗口设置成无边框 但是WebUI也需要移动窗口, 所以才把以前在易语言中用的方法翻译过来使用 第零步: 设置无边框窗口 form属性 ...