微信支付
[图片] 这里的分账接收方列表,里面的人,是不是必须提前通过 ’添加分账接收方‘ 接口添加进去,才能在这里给他们进行分账
https://api.mch.weixin.qq.com/pay/unifiedorder 统一下单接口能否知道商户号被风控
商户进件被驳回,但是没有编辑商户信息重新进件的接口,难道只能再重新进件? [图片]
技术接入相关问题 在v3版接入文档--平台收付通(合单支付)--APP支付--APP调起支付的接入文档中 请求参数和代码示例对不上
公司有个充电业务小程序,最近开始内部员工免费充电,就会产生一定数量的0元单,或者先付款再退款的订单 如果有多笔这样的订单,小程序是否会被封,或者触发微信支付的风控
我们是支付公司,通过银联微信接口发起商户信息修改申请(修改商户状态为注销),接口返回失败“特约商户已绑定主体,不支持修改,请检査后重试”,请问这是什么原因,谢谢。[图片]
请教如下几个问题 1、现在商家转账功能是同主体下所有商户均可同时申请吗 2、同时使用会有什么限制吗 3、如果同主体原本有旧功能,会受到影响吗 4、新版转账提高每日转账额度时要填写appid,申请通过后是只有所填写的appid能超额发放吗 5、完成提额的条件后,单日是自动提到100w吗
微信商户平台商家转账到零钱佣金报酬场景如何实现自动维护openid名单?
微信开发者工具正常支付,但是发布测试版本手机上就报错[图片][图片][图片]
我们小程序的分账模式是服务商模式,请问这种支付订单可以使用新版订阅进行订单状态推送吗?
我们是服务商向子商户提供信用支付等相关功能,但是目前只能在文档中心中找到 开发文档(商户)的支付分(信用支付)文档,找不到开发文档(服务商)中的支付分(信用支付)文档。
location /wx-pay-api/ { rewrite ^/wx-pay-api(/.*)$ $1 break; proxy_pass https://api.mch.weixin.qq.com; proxy_set_header Host api.mch.weixin.qq.com; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass_request_headers on; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header Cookie $http_cookie; proxy_buffering off; proxy_set_header Content-Type $http_content_type; proxy_set_header Accept $http_accept; } 使用上述代理时接口返回{"code":"SIGN_ERROR","message":"Http头Authorization值格式错误,请参考《微信支付商户REST API签名规则》,不使用nginx直接使用微信域名时正常调起
2025-03-18 09:56:18.080 ERROR 50644 Error: 拉取平台证书失败 at Pay.<anonymous> (E:\myProject\hjss-project\tbms\hjss-tbms-be\node_modules\.pnpm\wechatpay-node-v3@2.2.1\node_modules\wechatpay-node-v3\dist\index.js:180:35) at step (E:\myProject\hjss-project\tbms\hjss-tbms-be\node_modules\.pnpm\wechatpay-node-v3@2.2.1\node_modules\wechatpay-node-v3\dist\index.js:59:23) at Object.next (E:\myProject\hjss-project\tbms\hjss-tbms-be\node_modules\.pnpm\wechatpay-node-v3@2.2.1\node_modules\wechatpay-node-v3\dist\index.js:40:53) at fulfilled (E:\myProject\hjss-project\tbms\hjss-tbms-be\node_modules\.pnpm\wechatpay-node-v3@2.2.1\node_modules\wechatpay-node-v3\dist\index.js:31:58) at processTicksAndRejections (node:internal/process/task_queues:95:5)
有大佬知道怎么解决吗?问题:iOS app 内嵌 h5 微信支付无法返回 app,而是返回了 Safari
请求地址 https://api.weixin.qq.com/card/create?access_token=xxxxq 关键参数:background_pic_url 不传这个参数就不报错 请求内容: { "card": { "card_type": "MEMBER_CARD", "member_card": { "background_pic_url": "http://mmecoa.qpic.cn/mmecoa_jpg/giajOzc8ZRtbibicMzZc0dBiaMsAiaczmoZ0XeUvb1IyqH94zJ0oJDhjM5BJJVMSdVXlXHicUhC2k98Qt3RDudgQbccw/0?from=appmsg", "supply_bonus": false, "supply_balance": false, "prerogative": "使用时出示此卡", "auto_activate": false, "wx_activate": true, "wx_activate_after_submit": true, "wx_activate_after_submit_url": "https://pos.flyhand.com/e5748/m/card_submit", "custom_field1": { "name_type": "FIELD_NAME_TYPE_COUPON", "url": "https://pos.flyhand.com/e5748/m/coupons?rid=16028" }, "custom_field2": { "name": "积分", "url": "https://pos.flyhand.com/e5748/m/credit_center?rid=16028" }, "custom_field3": { "name_type": "FIELD_NAME_TYPE_LEVEL", "url": "https://pos.flyhand.com/e5748/m/card?rid=16028" }, "base_info": { "logo_url": "http://mmecoa.qpic.cn/mmecoa_jpg/giajOzc8ZRtbibicMzZc0dBiaMsAiaczmoZ0XeUvb1IyqH94zJ0oJDhjM5BJJVMSdVXlXHicUhC2k98Qt3RDudgQbccw/0?from=appmsg", "brand_name": "御品四季大酒楼", "code_type": "CODE_TYPE_NONE", "title": "上传图片分组", "color": "Color010", "notice": "使用时出示此卡", "description": "", "date_info": { "type": "DATE_TYPE_PERMANENT" }, "sku": { "quantity": 100000000 }, "use_custom_code": false, "bind_openid": false, "service_phone": "0769-82682888", "use_all_locations": false, "center_title": "快速买单", "center_url": "https://pos.flyhand.com/e5748/m/choose_restaurant?rid=16028&type=CARD&showBarCode=true", "custom_url_name": "我的会员卡", "custom_url": "https://pos.flyhand.com/e5748/m/choose_restaurant?rid=16028&type=CARD", "can_share": false, "can_give_friend": false, "get_limit": 1, "need_push_on_view": false } } } } 响应: {"errcode":40141,"errmsg":"invalid image url hint: [2fCOuA03976013]"}
客户服务器有出、入口限制,需要配置固定ip以及系统hosts,微信文档只找到了回调网段,没有找到这个接口的网段
支付公钥已经申请成功了,并且从平台证书切换到公钥模式了,然后微信平台证书作废后,公钥入口不见了,是为什么呢 [图片]
一个旧的商户号,今天对接api发券,申请证书,结果自动变成了微信公钥模式,是否还能切换到平台证书模式呢
怎么注销微信商户?
调用的接口:https://api.mch.weixin.qq.com/v3/refund/domestic/refunds; 退款代码(PHP): static public function tuikuan($money_fen,$total,$out_trade_no,$reason="协商退款"){ $url = 'https://api.mch.weixin.qq.com/v3/refund/domestic/refunds'; $data = [ "out_trade_no"=>$out_trade_no,//商户订单号 "out_refund_no"=>$out_trade_no,//商户退款单号 "reason"=>$reason,// "notify_url"=>"https://api.huodongbaobao.com/pay/weixinpay_tuikuan_notify",//退款结果回调url "amount"=>[ "refund"=>$money_fen,//退款金额,单位为分。示例值:100 "total"=>$total,//原支付交易的订单总金额,单位为分。示例值:100 "currency"=>"CNY" ], ]; $header = [ "Accept: application/json", "User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36", self::getSign($url,json_encode($data)), ]; $res = curl($url,$data,true,$header); if(!isset($res['body'])){ return ["status"=>"error","msg"=>"微信申请退款请求失败"]; } $data = json_decode($res['body'],true); if( isset($data['refund_id']) && isset($data['status']) && !empty($data['refund_id']) && !empty($data['status']) ){ $res_status = $data['status'];//$data['status']枚举值:SUCCESS:退款成功 CLOSED:退款关闭 PROCESSING:退款处理中 ABNORMAL:退款异常 if($res_status == "SUCCESS"){ return ["status"=>"ok","data"=>"success"]; }else if($res_status == "PROCESSING"){ return ["status"=>"ok","data"=>"processing"]; }else{ return ["status"=>"error","msg"=>"退款异常"]; } } $msg = isset($data['code']) ? $data['code'] : ""; $msg .= isset($data['message']) ? "【".$data['message']."】" : ""; return ["status"=>"error","msg"=>$msg]; } 生成签名的代码: static private function getSign($url,$body,$http_method = "POST",$timestamp = 0,$nonce = ""){ $url_parts = parse_url($url); $canonical_url = ($url_parts['path'] . (!empty($url_parts['query']) ? "?{$url_parts['query']}" : "")); if(empty($timestamp)){ $timestamp = time(); } if(empty($nonce)){ $nonce = makeCode(32,true); } $message = $http_method."\n".$canonical_url."\n".$timestamp."\n".$nonce."\n".$body."\n"; openssl_sign($message, $raw_sign, file_get_contents(config("app.weixin_mchid_api_cert_pem")), 'sha256WithRSAEncryption'); $sign = base64_encode($raw_sign); $schema = 'WECHATPAY2-SHA256-RSA2048'; $token = sprintf('mchid="%s",serial_no="%s",nonce_str="%s",timestamp="%d",signature="%s"',config("app.weixin_mchid"),config("app.weixin_mchid_api_cert_serial"), $nonce, $timestamp, $sign); return "Authorization: " . $schema . " " . $token; } 入参: ( [out_trade_no] => 20250**********82541 [out_refund_no] => 2025030**********541 [reason] => 协商退款 [notify_url] => https:/xx.yy.com/pay/weixinpay_tuikuan_notify [amount] => Array ( [refund] => 1 [total] => 1 [currency] => CNY ) ) 打印出的参数: 生成签名用的数据: POST /v3/refund/domestic/refunds 1742463956 evhvqt02e7b125wsuienffzt4bgzv7mt {"out_trade_no":"20250309151620582541","out_refund_no":"20250309151620582541","reason":"\u534f\u5546\u9000\u6b3e","notify_url":"https:\/\/api.huodongbaobao.com\/pay\/weixinpay_tuikuan_notify","amount":{"refund":1,"total":1,"currency":"CNY"}} 生成的header Authorization: Kimj2a4kl/A8zG/xtGG5RneTVRrHVBvkDaccFhK1NzXwP1GReutazJtdKXpOOXl6rtwx/ke4DzV8zmt8XHUunX/3wIPZ3DZrlV/F+xM9lX3um1VudL6yxLovB4djfcloO0QlzN8XzRhf1k9f25hvDiBgAMzZ9omNp06Xigpnjy2lgaTS/CpihjG2j+qKtHg0t/cIvVdfkYW59cX/t+XBRNBGozFpTm6OnxqnbCj/r90da1GQ20AZQMjYl3X4gWBIOqyBrCt5yJk2atFq/6fRA2Zc3cFzwSlTJjx11phIyGsrgG5X+JVosTW1eWGceDNGhoFy6vJmU6C8HSNWSW9kzQ==authorization-admin: Authorization: WECHATPAY2-SHA256-RSA2048 mchid="165****008",serial_no="4498A82FCC548B7B4932AA4939807C395109770B",nonce_str="evhvqt02e7b125wsuienffzt4bgzv7mt",timestamp="1742463956",signature="Kimj2a4kl/A8zG/xtGG5RneTVRrHVBvkDaccFhK1NzXwP1GReutazJtdKXpOOXl6rtwx/ke4DzV8zmt8XHUunX/3wIPZ3DZrlV/F+xM9lX3um1VudL6yxLovB4djfcloO0QlzN8XzRhf1k9f25hvDiBgAMzZ9omNp06Xigpnjy2lgaTS/CpihjG2j+qKtHg0t/cIvVdfkYW59cX/t+XBRNBGozFpTm6OnxqnbCj/r90da1GQ20AZQMjYl3X4gWBIOqyBrCt5yJk2atFq/6fRA2Zc3cFzwSlTJjx11phIyGsrgG5X+JVosTW1eWGceDNGhoFy6vJmU6C8HSNWSW9kzQ==" ~ 最终的问题: 调用微信退款接口后,微信返回内容打印如下: Array ( [request_header] => POST /v3/refund/domestic/refunds HTTP/1.1 Host: api.mch.weixin.qq.com Accept: application/json User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/116.0.0.0 Safari/537.36 Authorization: WECHATPAY2-SHA256-RSA2048 mchid="16****008",serial_no="4498A82FCC548B7B4932AA4939807C395109770B",nonce_str="evhvqt02e7b125wsuienffzt4bgzv7mt",timestamp="1742463956",signature="Kimj2a4kl/A8zG/xtGG5RneTVRrHVBvkDaccFhK1NzXwP1GReutazJtdKXpOOXl6rtwx/ke4DzV8zmt8XHUunX/3wIPZ3DZrlV/F+xM9lX3um1VudL6yxLovB4djfcloO0QlzN8XzRhf1k9f25hvDiBgAMzZ9omNp06Xigpnjy2lgaTS/CpihjG2j+qKtHg0t/cIvVdfkYW59cX/t+XBRNBGozFpTm6OnxqnbCj/r90da1GQ20AZQMjYl3X4gWBIOqyBrCt5yJk2atFq/6fRA2Zc3cFzwSlTJjx11phIyGsrgG5X+JVosTW1eWGceDNGhoFy6vJmU6C8HSNWSW9kzQ==" Content-Type: application/json; charset=utf-8 Content-Length:229 [request_body] => {"out_trade_no":"20250309151620582541","out_refund_no":"20250309151620582541","reason":"协商退款","notify_url":"https:\/\/api.huodongbaobao.com\/pay\/weixinpay_tuikuan_notify","amount":{"refund":1,"total":1,"currency":"CNY"}} [header] => HTTP/1.1 401 Unauthorized Server: nginx Date: Thu, 20 Mar 2025 09:45:57 GMT Content-Type: application/json; charset=utf-8 Content-Length: 377 Connection: keep-alive Keep-Alive: timeout=8 Cache-Control: no-cache, must-revalidate X-Content-Type-Options: nosniff Request-ID: 08D5C7EFBE061053189DDFEEA30620A8B50128DA38-269546525 Content-Language: zh-CN [body] => {"code":"SIGN_ERROR","detail":{"detail":{"issue":"sign not match"},"field":"signature","location":"authorization","sign_information":{"method":"POST","sign_message_length":307,"truncated_sign_message":"POST\n/v3/refund/domestic/refunds\n1742463956\nevhvqt02e7b125wsuienffzt4bgzv7mt\n{\"out_tr\n","url":"/v3/refund/domestic/refunds"}},"message":"错误的签名,验签失败"} ) 最下面的[body]中返回了报错信息:{"code":"SIGN_ERROR","detail":{"detail":{"issue":"sign not match"},"field":"signature","location":"authorization","sign_information":{"method":"POST","sign_message_length":307,"truncated_sign_message":"POST\n/v3/refund/domestic/refunds\n1742463956\nevhvqt02e7b125wsuienffzt4bgzv7mt\n{\"out_tr\n","url":"/v3/refund/domestic/refunds"}},"message":"错误的签名,验签失败"} 我小程序上有一个退款功能,电脑端管理后台也有一个退款功能,小程序端退款功能的代码和电脑端退款功能的代码是处于两个地方,但代码内容是一模一样的(复制的),二者使用的是同一套证书、密钥,小程序上的支付、退款功能都好用,但电脑端的退款功能就不好用,请求退款接口时提示上面的报错内容,调试了很久,确实没找到问题原因,请大家帮忙看看。