- 调用微信的订单状态更新接口/shop/order/update为什么返回48001的状态码?
我的小程序销售虚拟产品,发货使用订阅模板消息通知用户,当模板消息发送完成后,再调用微信的订单状态更新接口,将该订单在微信支付中的状态改为status=2,调用时报错。用deepseek问答,其回复申请API权限:在API安全设置中,找到“API权限”或“API设置”。检查是否已经开通了[代码]/shop/order/update[代码]接口的权限。如果未开通,点击申请权限,按照提示提交申请。=============== 请问这个权限怎么申请,我在微信支付平台中找不到。这个权限可以申请吗? ================================ 以下是代码段和日志 Log::record('订阅消息发送结果:' . json_encode($result)); // 如果订阅消息发送成功,调用 updateOrder 接口更新订单状态 if (isset($result['errcode']) && $result['errcode'] == 0) { // 获取 access_token try { $accessToken = Wechat::getAccessToken(); } catch (\Exception $e) { Log::record('获取 access_token 异常:' . $e->getMessage()); return ['errcode' => -1, 'errmsg' => '获取 access_token 失败']; } // 调用 updateOrder 接口 $updateResult = $this->updateOrderStatus($accessToken['access_token'], $message['out_trade_no'], $deliveryTime); // 记录订单状态更新结果 Log::record('订单状态更新结果:' . json_encode($updateResult)); // 如果订单状态更新失败,返回错误信息 if (isset($updateResult['errcode']) && $updateResult['errcode'] != 0) { Log::record('订单状态更新失败:' . json_encode($updateResult)); return ['errcode' => $updateResult['errcode'], 'errmsg' => $updateResult['errmsg']]; } updateOrderStatus代码段: $url = "https://api.weixin.qq.com/shop/order/update?access_token={$accessToken}"; // 请求数据 $postData = [ 'order_id' => $orderId, 'status' => 2, // 2 表示已发货 'delivery_type' => 1, // 1 表示虚拟发货 'ship_done_time' => $deliveryTime // 发货完成时间 ]; // 初始化 cURL $ch = curl_init();以下省略 返回的日志信息: [ 2025-01-17T14:57:36+08:00 ] 121.51.58.172 POST ******/addons/unidrink/pay/notify [运行时间:0.904048s] [吞吐率:1.11req/s] [内存消耗:7,375.57kb] [文件加载:306] [ log ] 支付回调信息:result:{"return_code":"SUCCESS","return_msg":"OK","result_code":"SUCCESS","mch_id":"165******39","appid":"wxef6f*******6240","openid":"oxmm************4qmS8VIbHVmM","is_subscribe":"N","trade_type":"JSAPI","trade_state":"SUCCESS","bank_type":"CCB_DEBIT","total_fee":"20","fee_type":"CNY","cash_fee":"20","cash_fee_type":"CNY","transaction_id":"4200002531202501178777492873","out_trade_no":"121","attach":null,"time_end":"20250117145734","trade_state_desc":"\u652f\u4ed8\u6210\u529f","nonce_str":"ljim4iSEG6XUT8Mn","sign":"023B03B6***********48952791"} [ log ] 订阅消息发送参数:{"openId":"oxmm**************bHVmM","templateId":"I4SQMU-L*********gKyAaKN39-Zs","data":{"character_string1":{"value":"121"},"character_string2":{"value":"4200002531202501178777492873"},"time3":{"value":"2025-01-17 14:57:35"},"thing4":{"value":"\u865a\u62df\u53d1\u8d27"}}} [ log ] 订阅消息发送结果:{"errcode":0,"errmsg":"ok","msgid":3816896917370667008} [ log ] response:{"errcode":48001,"errmsg":"api unauthorized rid: 6789ff60-05da4450-4d6b0d8b"} [ log ] 订单状态更新结果:{"errcode":48001,"errmsg":"api unauthorized rid: 6789ff60-05da4450-4d6b0d8b"} [ log ] 订单状态更新失败:{"errcode":48001,"errmsg":"api unauthorized rid: 6789ff60-05da4450-4d6b0d8b"}
01-17 - 订餐小程序频繁访问异常?errno:600001,errcode:-101
小程序appid:wxac2046ad06b6ca20 场景:用户扫草料二维码生成的带参数的小程序静态码,同一个码有的用户不能识别,有的用户可以识别,有的用户上午能识别,下午就不能识别。 使用小程序的vConsole报错:(in promise)MinProgramError{"errno":600001,"errMsg":"request:fail errcode:-101 cronet_error_code:-101 error_msg:net::ERR_CONNECTION_RESET"} Object 网站后台日志显示的错误:{"errno":600001,"errMsg":"request:fail errcode:-101 cronet_error_code:-101 error_msg:net::ERR_CONNECTION_RESET"} [图片][图片]
2024-02-27 - 微信支付成功为什么返回{"errMsg":"requestPayment:fail cancel}?
今天以前小程序支付收款都正常,从今天0点开始就报错:{"errMsg":"requestPayment:fail cancel}。客户的微信提示支付成功,但小程序后台提示支付失败,请查一下日志是什么问题 appId: "wxac2046ad06b6ca20" nonceStr: "66e9b1c8b2104fd6bdd6af6a28ada4f1" package: "prepay_id=wx2310320042114556d2b757b335a4eb0000"
2024-01-23 - 请问小程序商用调用地图相关的api或服务会收费吗?
我们有业务场景是接收到用户车辆间隔10秒发来的GPS定位信息(腾讯地图认可的格式),在小程序上显示该车辆在腾讯地图上的位置以及位移。请问这个业务场景下,腾讯地图服务和相关的API服务收费吗?
2023-07-21 - 我公司的微信商户怎么才能解绑已绑定的小程序?帮助文档关于产品中心有解绑链接,但我的商户里面怎么没有?
我公司的微信商户怎么才能解绑已绑定的小程序?帮助文档关于产品中心有解绑链接,但我的商户里面怎么没有?如何才能调出解绑界面? [图片]
2023-04-14 - 服务商在特约商户APPID配置中已将我的小程序加入到已绑定列表,我的小程序微信后台怎么设置?
我的微信支付服务商是工商银行,服务商已在其后台将我的小程序appid绑定到其“特约商户APPID配置”列表中,在我的小程序后台中,我的“待关联商户号(服务商模式)”是空白的,有几个问题帮解答一下:我看你们之前回复其他人,这个地方可以不绑定,可以是空白对吗?在已关联商户号(第二个箭头),这个绑定是否需要去掉,这个绑定的是我公司的商户号。如果将已关联商户号(第二个箭头)去掉,那么我们小程序支付时的流程是什么,是我们小程序调用微信支付API直接支付到服务商账号中了吗?因为如果按照非服务商模式,我们要把商户号、商户密钥都放到程序中提交给微信支付验证身份,但服务商没有提供给我们这些,我们怎么支付? [图片]
2023-04-14 - 我们的小程序发布后如何获得更多带参数二维码?
小程序开发设置后台,扫普通链接二维码打开小程序,这个功能,每个月只给100个,我们业务需要一次性添加600个然后开展业务,如果一个月一个月的加,那业务根本没法开展,所以请问,这个该如何快速将数量增加到我们需要的数字。
2022-08-31 - 使用通联支付,微信支付调起收银台失败,如何解决?
在通联支付注册了支付通道。在小程序中先发送报文给通联,通联接口收到支付请求,返回报文正常,在通联后台确认订单已经建立。将通联返回的报文按照JSAPI 通过 wx.requestPayment 发起请求,微信接口返回验证签名失败。 开发环境:uniapp,hbuilderX3.4.18,微信开发者工具Stable 1.05.2204250 向通联发起请求返回报文: appId: "wxef277996acc166c3" nonceStr: "7c9d6df92fac4f70848cb57591b1f40d" package: "prepay_id=wx211115179336730beb323af8a6d1b80000" paySign: "nE6+J9r86C5UNL5puTNvSg2ZuBTWQD+gVXfh63nxiA6j+2wjZQvLPzilukhc3NPDhpZkMe3HE/NvnyiS0+YYSAlqiKQQ6+JUcH/TYja86KgTl8UduNvlRHYdM4q1Z5QRqW4SPGeEr6CcGTG9zAzZ6UDj1EivKcnzRmb4HqPdd+mD ************中间省略了******** ADA==" signType: "RSA" 在编辑器中使用wx.requestPayment发送 wx.requestPayment({ appId: data.appid, nonceStr: data.nonce_str, package: data.package, paySign: data.sign, signType: "RSA", //改成MD5也试过,没有用 timeStamp: data.timestamp, success (res) { console.log(res)}, fail (res) { console.log(res)} }); 最终结果: 用wx.requestPayment ,在微信开发者工具中可以调起支付二维码,开发者本人微信扫码后,报“支付验证签名失败” 用uni.requestPayment ,加上了必备的参数"provider": "wxpay", :报:errMsg:requestPayment:fail parameter error: parameter.timeStamp should be String instead of Undefined; parameter.package should be String instead of Undefined; ....... 就是所有传入参数都有问题 请问这种情况该怎么处理?????????? timeStamp: "1658373317"
2022-07-21