登录页面验证码不显示

【问题描述】运营平台或商户系统登录界面,验证码不能显示。

【解决思路】

  • 检查是否开启跨域设置,修改yml文件配置
  • 验证码需要存入redis,检查redis连接是否正常
  • 如果以上都正常,前端谷歌浏览器F12键,查看请求接口是否报错。如果接口报错表明服务端接口连接失败,请检查服务是否正常,连接服务端接口地址是否正确。

系统部署后的默认密码是多少

【问题描述】 运营平台或商户系统登部署后的默认密码是多少。

【问题解答】

  • 运营平台默认账号为:jeepay,默认密码为:jeepay123
  • 商户系统账号需要[运营平台-商户管理]增加商户时指定账号名称,默认密码为:jeepay666

修改yml配置中的数据库连接不生效

【问题描述】本地开发环境修改了application.yml配置中的数据库连接,但依然连不上数据库

【解决思路】

  • 确保数据正常,网络可访问,配置参数正确
  • 开发环境下请阅读conf/readme.txt文件,更改 conf/devCommons/config/application.yml 文件内的配

项目maven编译报错

【问题描述】服务端项目使用maven编译时报错,提示

【解决思路】

  • maven编译失败会有很多种情况,具体问题要根据日志查看
  • 上图中错误提示,maven版本过低,需要升级到新版。建议直接使用3.6.1版本

项目编译时报jdk问题

【问题描述】服务端项目maven编译时报错,提示信息:com\alibaba\druid\1.2.6/lib/openjdk-1.8-tools.jar

【解决思路】

  • 该错误是由于jeepay目前不支持openjdk导致,请切换oracle jdk 1.8 版本

前端vue编译报错

【问题描述】前端项目编译时,错误提示:compiling ERROR TypeError: Cannot read property ‘get’ of undefined

【解决思路】

  • 该问题一般是使用cnpm编译导致,请使用命令 npm intall
  • 参考命令
    npm config set registry https://registry.npm.taobao.org
    npm install

导入sql语句报错

【问题描述】导入数据库sql语句,出现错误提示

【解决思路】

  • 一般是 init.sqlpatch.sql 都导入,导致错误。初始安装只需导入init.sql文件即可,patch.sql文件是记录每次版本升级的sql语句,根据对应版本选择导入。
  • 由于jeepay中使用到了json数据格式,所以要求msyql版本不能低于5.7

切换RabbitMQ后启动报错

【问题描述】切换了mq,然后重新启动项目,会报各种错误,无法启动项目

【解决思路】

  • 确保application.yml文件中的mq配置正确,空格占位符要对
  • 确保mq服务正常启动,rabbitmq需要安装延迟插件
  • 确保pom.xml中mq依赖的jar都正常开启(修改jeepay-components/jeepay-components-mq中的pom.xml文件,将mq需要依赖的jar,去掉<scope>provided</scope>配置)
  • 切换后,本地环境重新编译下项目,再启动
  • 确保以上每步都理解,然后自己检查核对

前端页面刷新报404错误

【问题描述】前端项目已经正常部署,可以登录访问,但是页面刷新后提示404错误

【解决思路】

  • 该问题是由于vue导致,更多原理可百度搜vue 404 了解
  • 在nginx中的解决方案,可配置 try_files $uri $uri/ /index.html; 解决
  • 更多配置可参考部署文档中的nginx配置:https://docs.jeequan.com/docs/jeepay/deploy

发起支付测试页面没有反应

【问题描述】商户系统侧发起支付测试,已经支付成功,但是页面没有任何反应

【解决思路】

  • 首先排查该订单当前的支付状态,是否为支付成功
  • 如果订单支付成功,但是页面没有提示成功,则检查websocket连接是否正常
  • 支付页面和服务端通信使用了websocket协议,如果使用nginx,注意nginx配置是否增加了如下配置
      proxy_set_header Upgrade $http_upgrade;
      proxy_set_header Connection "upgrade";

打开收银台页面空白

【问题描述】通过手机打开收银台时,显示空白页面

【解决思路】

  • 出现该问题一般是前端收银台界面部署问题导致,参考部署文档排查:https://docs.jeequan.com/docs/jeepay/deploy
  • 多是因为部署后,依赖的js和css加载失败导致,cashier项目生成dist时,尝试修改.evn文件中VUE_APP_BASE_URL=./ 后重新部署
  • 同时也可以查看下payment项目日志,看后台有没有异常日志信息,辅助排查

收银台页面报404错误

【问题描述】访问收银台项目,页面报404错误提示

【解决思路】

支付参数修改后不生效

【问题描述】在支付通道参数配置,已经将参数修改为最新,但是请求到支付通道的参数还是修改之前的

【解决思路】

  • 检查mq是否正常,修改参数时服务端会有参数同步更新的日志输出
  • jeepay将通道配置缓存在了内存中,通过后台修改时通过mq通知修改内存中的参数
  • 其他现象,如下单提示签名不对时,也要考虑是否配置已生效

订单支付后好久才成功

【问题描述】订单已经支付了,但是订单状态没有成功,大概过了10分钟后订单又成功了

【解决思路】

  • 该问题大部分都是因为回调地址错误,导致支付通道回调请求不到,然后jeepay的自动补单机制会主动去支付通道查询订单状态
  • 在 [运营平台 - 系统管理 - 系统设置] 中,检查支付网关地址配置是否正确
  • 确保支付网关地址,公网是可以访问的(微信支付V3接口要求是https地址)
  • 保存成功后,确保内存中参数也会修改(mq确保正常,如果还不生效,尝试重启应用)
  • 如果以上都检查,还是回调不正常,需要查看payment日志,检查是否有验证签名错误等问题

微信支付提示 Illegal key size

【问题描述】调用微信支付时,payment项目错误日志:

java.security.InvalidKeyException: Illegal key size

【解决思路】

微信支付配置参数oauth2的作用

【问题描述】在微信支付参数配置中,有个oauth2的参数,该参数的作用是什么

【问题解答】

  • 一般时该参数留空即可,那么微信跳转获取openid用到的域名,配置payment项目域名即可
  • 当有多个系统使用同一个公众号时,可以使用该参数,配置一个跳转的地址。那么获取openid时会先跳转oauth2的地址,成功后再调回payment项目。

微信条码支付好久才成功

【问题描述】使用微信条码支付,已经付款成功,但是要过10分钟左右订单才显示成功

【解决思路】

  • 是因为没有配置mq的延迟配置导致,jeepay的自动补单任务去微信查订单,再把订单改为成功
  • mq延迟配置参考:待出一个mq延迟配置文档

【深入解析】微信条码支付,需要请求微信查单接口,查询微信订单状态。jeepay使用mq的延迟消息机制,延迟发起查询。每隔5秒发起一次订单查询,一共查询6次。当查询6次或订单非支付中状态时,就不再发起查询。如果没有配置mq的延迟配置,则会瞬间查询6次,此时该订单还没有支付。然后jeepay的补单机制10分钟后,会再对该订单进行查询,进行状态更改。

微信H5支付提示错误

【问题描述】微信H5下单成功,访问返回的H5地址报错。提示:商家参数格式有误,请联系商家解决

【解决思路】

微信提示域名与后台配置不一致

【问题描述】使用微信公众号支付时,提示微信登录失败,redirect_uri域名与后台配置不一致,错误码:10003

【解决思路】

  • 配置微信公众号授权域名,登录微信公众号: 头像 –》 功能设置 –》 网页授权域名 与当前支付平台的域名进行绑定即可。
  • 绑定域名为payment项目域名,如:pay.jeepay.com
  • 检查 [运营平台 - 系统设置 - 支付网关] 域名配置是否正确,确保更新到内存(保证mq正常)

支付宝测试不显示二维码

【问题描述】在商户系统发起支付宝二维码下单,页面显示等待支付,然而并没有出现二维码

【解决思路】

  • 支付宝二维码使用的是支付宝当面付接口,确保该接口已经开通
  • 查看payment项目日志,根据错误提示排查
  • 前端使用谷歌浏览器F12查看接口请求是否正常

支付宝应用回调地址配置

【问题描述】支付宝应用中授权回调地址,配置是多少

【问题解答】

  • 配置地址 https://{payment项目域名}/api/channelbiz/alipay/appToAppAuthCallback 即可,然后勾选下面的只验证域名

  • 该授权回调目前在获取支付用户ID及特约商户授权获取access_token时使用

支付宝提示签名数据错误

【问题描述】支付宝下单,提示错误:sign check fail:check Sign and Data Fail!JSON also!

【解决思路】

  • 一般是支付宝公钥配置错误,导致对支付宝响应数据验签时报错误
  • 制作支付宝秘钥时密钥长度选择RSA2,密钥格式选择PKCS8(JAVA使用)
  • 切记在jeepay中配置支付宝参数时,接口签名方式也要选择RSA2

支付宝扫码提示页面不存在

【问题描述】使用jeepay生成的聚合码,用支付宝扫码后提示:页面不存在!对不起,访问出错了

  • 需要配置支付宝应用的授权回调地址
  • 授权回调地址配置payment项目域名即可,然后勾选下面的只验证域名

jeepay-sdk-java 的apiKey在哪里获取?

【问题描述】https://gitee.com/jeequan/jeepay-sdk-java 中的apiKey在哪里获取?
【解决思路】

  • sdk中的apiKey是与jeepay统一下单的标准接口( https://docs.jeequan.com/docs/jeepay/api_rule ) 中的key是对应的。
  • 设置路径:
    商户系统 : 商户中心 –》 应用管理 –》新建/修改 –》 私钥 AppSecret
    运营平台 : 商户管理 –》 –》商户列表 –》 应用配置 –》新建/修改 –》 私钥 AppSecret

*注意: 安全起见, 应用新建后不可查询到api秘钥, 只能重置。*

同一个企业主体是否可同时申请服务商和特约商户?

【以下来自Jeepay交流群】

  • 微信支付服务商是不能给自己企业申请特约商户的,那自己的支付业务如何在服务商+特约商户模式下进行?

  • A: 服务商主体不能申请成为自己企业的【特约商户】,但是可以在其他服务商下进件。
  • B:一个主体可以是服务商同时也可以是【普通商户】,所以申请普通商户就可以跑业务了。
  • 另外普通商户不能直接和服务商进行绑定操作。

分账业务: 是否可以退款不退分账(商家垫资)?

【以下来自Jeepay QQ交流群】

系统中的订单号都指什么?

  • 支付订单号:Jeepay支付系统生成的订单号,再请求支付通道(如微信支付)会把单号传过去
  • 渠道订单号:指的是该笔订单对应的支付渠道那边的单号
  • 商户订单号:是请求jeepay支付系统的商户侧的订单号
文档更新时间: 2021-10-22 15:02   作者:大森林