统一下单参数:
$time=date('YmdHis',time());
$times=date('YmdHis',time()+3600);
$input = new WxPayUnifiedOrder();
$input->SetBody("test"); //商品描述
$input->SetAttach("test"); //附加数据
$input->SetOut_trade_no('订单号'); //订单号
$input->SetTotal_fee('1'); //金额
$input->SetNonce_str('5K8264ILTKCH16CQ2502SI8ZNMTM67VS'); //随机字符串
$input->SetTime_start($time); //订单开始时间
$input->SetTime_expire($times); //订单结束时间
$input->SetNotify_url("回调"); //回调地址
$input->SetTrade_type("NATIVE");
$input->SetProduct_id("123456789"); //商品id
$result = $notify->GetPayUrl($input);
返回值:
[appid] => wx2XXXXXX
[code_url] => weixin://wxpay/bizpayurl?pr=qVMcIqU
[mch_id] => 1528XXX781
[nonce_str] => dI7b1Zp5NtbCRBEV
[prepay_id] => wx14160439857056c55c9XXXX7343300
[result_code] => SUCCESS
[return_code] => SUCCESS
[return_msg] => OK
[sign] => 11670F2901713029796503F0A7C0704F1XXXXXXX72B1AACBC5E9F
[trade_type] => NATIVE
结果是代码没有问题,我用公司集成的二维码生成器生成的二维码会出现这个问题(二维码已过期,请重新生成),然后网上随便找的生成器生成的二维码都没有问题,现在用的前端jq的二维码生成插件,可以正常使用,为什么我们公司集成的二维码有问题,原因未知。
看下是否设置了订单有效期。设置过短。