1.需求
微信公众号版产品实现会员自动续费功能。如果有什么问题可以添加微信咨询。
第一步,跳转签约页面
public function autoPayment(){
$appid = '服务商APPID';
$mchid= '服务商商户号';
$sub_mchid= '您的商户号';
$plan_id=""您的模板ID";
$contract_code = $this->gen_contract_code(); //签约协议号
$request_serial =$this->build_order_no(); //请求序列号
$notify_urls='https://'.$_SERVER['SERVER_NAME'].'/index.php/Home/User/notifyUrl'; //用于接收签约成功消息的回调通知地址
$key="服务商秘钥"; //服务商秘钥
$time=time(); //当前时间
//生成签名
$stringA="appid=".appid ."&contract_code=".$contract_code."&contract_display_account=微信代扣&mch_id=".$mchid."¬ify_url=".$notify_urls."&plan_id=".plan_id."&request_serial=".$request_serial."&sub_mch_id=".plan_id."×tamp=".$time."&version=1.0";
$stringSign=$stringA."&key=".$key;
$sign=strtoupper(md5($stringSign)); //签名
$url="https://api.mch.weixin.qq.com/papay/entrustweb?appid=".$appid."&contract_code=".$contract_code."&contract_display_account=微信代扣&mch_id=".$mchid."&sub_mch_id=".$sub_mchid."¬ify_url=".urlencode($notify_urls)."&plan_id=".plan_id."&request_serial=".$request_serial."×tamp="."$time"."&version=1.0&sign=".$sign; //签约URL拼接
$contract_data=[
"openid"=>"用户ID",
"vip_day"=>30,
"vip_price"=>15.00,
"contract_code"=>$contract_code,
"contract_id"=>$contract_code,
"plan_id"=>$plan_id,
"create_time"=>$time
];
$model=new ContractModel(); //实例化模型
$res=$model>where('openid',$openid)->find();
if(!$res){
$model>save($contract_data);
}else{
$model->where('openid',$openid)->save($contract_data);
}
Header("Location:$url"); //跳转签约页面
}
Wx : OoOM927