详情链接
 https://developers.weixin.qq.com/community/business/doc/000e06614ac74068f3d9237eb5440d?page=3#comment-list
 1、接口介绍
 接入微信城市服务,开发者小程序可以使用实名信息校验接口。主要实现的功能是,在用户同意情况下,通过微信城市服务去校验用户(或业务方)输入的实名信息,是否正确且与用户在“开通微信支付”时,预留的实名信息一致。
2、接入必读
 1、本接口暂只支持校验基于大陆身份证 “姓名与身份证开通微信支付”的用户实名信息;
 2、由于信息较为敏感,使用此接口校验用户(或业务方)输入的实名信息时,需要在页面前端征得用户的同意。因此调用此接口后,会跳转至微信官方的“用户同意”界面。用户点击同意按钮后方可继续后续调用。
 3、请根据开放范围、场景所需及信息校验必要性申请本接口,并请谨慎使用。若后期使用过程中,用户举报较多或被发现在不合理使用,微信有权永久回收该小程序的该接口的权限。
3、接口开放范围
 接口的开放的场景及必要性,参考国家法规、政策规定的需要“实名办理”的相关业务。具体的开放主体类目范围如下:
政务(政府和事业单位)
 公立医疗(含公立医疗机构的互联网医院)
 公立教育机构
 交通行业的官方企业或单位(含:航空公司、机场、客运、交通市民卡、铁路、公交、地铁、轮渡)
 基础运营商 合规的保险公司官方;
 水、电、燃、暖等官方生活缴费机构;
点击查看官方城市服务实名信息校验接口说明
4、后台校验实名信息的API
 (1)请求方式:POST
 (2)请求地址:
https://api.weixin.qq.com/intp/realname/checkrealnameinfo?access_token=ACCESSTOKEN
 (3)请求格式:JSON
 (4)请求参数:
字段 类型 说明 备注
 openid string 用户在业务方下的openid 与申请权限时提供的业务方的小程序appid保持一致
 real_name string 姓名 需要校验的姓名
 cred_id string 证件号 需要校验的证件号
 cred_type string 默认为1,即身份证 目前暂只支持身份证
 code string 回调获取的code 通过小程序回跳获取的code参数
 (5)返回字段
字段 类型 说明 备注
 errcode int 0为接口调用成功 错误码
 errmsg string 失败时的错误提示 错误原因
 verify_openid string V_OP_NA:用户暂未实名认证;V_OP_NM_MA:用户与姓名匹配;V_OP_NM_UM:用户与姓名不匹配。 有多个结果时用分号”;”连接;
 verify_real_name string 当verify_openid 为V_OP_NM_MA 时返回:V_NM_ID_MA:姓名与证件号匹配;V_NM_ID_UM:姓名与证件号不匹配。 校验结果
 5、小程序获取 code 参数
 (1)请求方式
跳转至微信城市服务提供的 appid 和 path
 appid:wx308bd2aeb83d3345 path:subPages/city/wxpay-auth/main
(2)应答方式:
用户完成确认同意后,会跳回至业务方小程序,并在 extraData 字段中带上调用后台接口所需的 code,即 extraData 中的 code 字段。
6、代码示例
 此处的 access_token 获取方式:点击查看详细说明
$access_token = ‘’;
 
    
     
      
       
        u
       
       
        r
       
       
        l
       
       
        =
       
       
        "
       
       
        h
       
       
        t
       
       
        t
       
       
        p
       
       
        s
       
       
        :
       
       
        /
       
       
        /
       
       
        a
       
       
        p
       
       
        i
       
       
        .
       
       
        w
       
       
        e
       
       
        i
       
       
        x
       
       
        i
       
       
        n
       
       
        .
       
       
        q
       
       
        q
       
       
        .
       
       
        c
       
       
        o
       
       
        m
       
       
        /
       
       
        i
       
       
        n
       
       
        t
       
       
        p
       
       
        /
       
       
        r
       
       
        e
       
       
        a
       
       
        l
       
       
        n
       
       
        a
       
       
        m
       
       
        e
       
       
        /
       
       
        c
       
       
        h
       
       
        e
       
       
        c
       
       
        k
       
       
        r
       
       
        e
       
       
        a
       
       
        l
       
       
        n
       
       
        a
       
       
        m
       
       
        e
       
       
        i
       
       
        n
       
       
        f
       
       
        o
       
       
        ?
       
       
        a
       
       
        c
       
       
        c
       
       
        e
       
       
        s
       
       
        
         s
        
        
         t
        
       
       
        o
       
       
        k
       
       
        e
       
       
        n
       
       
        =
       
      
      
       url = "https://api.weixin.qq.com/intp/realname/checkrealnameinfo?access_token=
      
     
    url="https://api.weixin.qq.com/intp/realname/checkrealnameinfo?accesstoken=access_token";
 $params = [
 ‘openid’ => ‘’, // 用户 openid
 ‘real_name’ => ‘’, // 用户姓名
 ‘cred_id’ => ,’’ // 身份证号
 ‘cred_type’ => 1,
 ‘code’ => ‘’ // 小程序获取到的 code
 ];
 
    
     
      
       
        r
       
       
        e
       
       
        s
       
       
        u
       
       
        l
       
       
        t
       
       
        =
       
       
        c
       
       
        u
       
       
        r
       
       
        l
       
       
        R
       
       
        e
       
       
        q
       
       
        u
       
       
        e
       
       
        s
       
       
        t
       
       
        (
       
      
      
       result = curlRequest(
      
     
    result=curlRequest(url, 
    
     
      
       
        p
       
       
        a
       
       
        r
       
       
        a
       
       
        m
       
       
        s
       
       
        )
       
       
        ;
       
       
        i
       
       
        f
       
       
        (
       
      
      
       params); if (
      
     
    params);if(result[‘errcode’] == 0) {
 switch (KaTeX parse error: Expected '}', got 'EOF' at end of input: … if (result[‘verify_real_name’] == ‘V_NM_ID_MA’) {
 return ‘姓名与证件号匹配’;
 }
 if ($result[‘verify_real_name’] == ‘V_NM_ID_UM’) {
 return ‘姓名与证件号不匹配’;
 }
 break;
 case ‘V_OP_NM_UM’:
 return ‘用户与姓名不匹配’;
 break;
 }
 } else {
 return KaTeX parse error: Expected 'EOF', got '}' at position 19: …ult['errmsg']; }̲ // 发送 CURL 请求 …url, $data = [])
 {
 
    
     
      
       
        s
       
       
        t
       
       
        r
       
       
        i
       
       
        n
       
       
        
         g
        
        
         d
        
       
       
        a
       
       
        t
       
       
        a
       
       
        =
       
       
        j
       
       
        s
       
       
        o
       
       
        
         n
        
        
         e
        
       
       
        n
       
       
        c
       
       
        o
       
       
        d
       
       
        e
       
       
        (
       
      
      
       string_data = json_encode(
      
     
    stringdata=jsonencode(data, JSON_UNESCAPED_UNICODE);
 
    
     
      
       
        c
       
       
        h
       
       
        =
       
       
        c
       
       
        u
       
       
        r
       
       
        
         l
        
        
         i
        
       
       
        n
       
       
        i
       
       
        t
       
       
        (
       
       
        )
       
       
        ;
       
       
        c
       
       
        u
       
       
        r
       
       
        
         l
        
        
         s
        
       
       
        e
       
       
        t
       
       
        o
       
       
        p
       
       
        t
       
       
        (
       
      
      
       ch = curl_init(); curl_setopt(
      
     
    ch=curlinit();curlsetopt(ch, CURLOPT_URL, 
    
     
      
       
        u
       
       
        r
       
       
        l
       
       
        )
       
       
        ;
       
       
        c
       
       
        u
       
       
        r
       
       
        
         l
        
        
         s
        
       
       
        e
       
       
        t
       
       
        o
       
       
        p
       
       
        t
       
       
        (
       
      
      
       url); curl_setopt(
      
     
    url);curlsetopt(ch, CURLOPT_HTTPHEADER, array(
 ‘Content-Type: application/json; charset=utf-8’,
 'Content-Length: ’ . strlen(
    
     
      
       
        s
       
       
        t
       
       
        r
       
       
        i
       
       
        n
       
       
        
         g
        
        
         d
        
       
       
        a
       
       
        t
       
       
        a
       
       
        )
       
       
        )
       
       
        )
       
       
        ;
       
       
        /
       
       
        /
       
       
        设
       
       
        置
       
       
        请
       
       
        求
       
       
        头
       
       
        c
       
       
        u
       
       
        r
       
       
        
         l
        
        
         s
        
       
       
        e
       
       
        t
       
       
        o
       
       
        p
       
       
        t
       
       
        (
       
      
      
       string_data))); // 设置请求头 curl_setopt(
      
     
    stringdata)));//设置请求头curlsetopt(ch, CURLOPT_POSTFIELDS, 
    
     
      
       
        s
       
       
        t
       
       
        r
       
       
        i
       
       
        n
       
       
        
         g
        
        
         d
        
       
       
        a
       
       
        t
       
       
        a
       
       
        )
       
       
        ;
       
       
        /
       
       
        /
       
       
        设
       
       
        置
       
       
        请
       
       
        求
       
       
        体
       
       
        c
       
       
        u
       
       
        r
       
       
        
         l
        
        
         s
        
       
       
        e
       
       
        t
       
       
        o
       
       
        p
       
       
        t
       
       
        (
       
      
      
       string_data); // 设置请求体 curl_setopt(
      
     
    stringdata);//设置请求体curlsetopt(ch, CURLOPT_CUSTOMREQUEST, “POST”); // 定义请求类型
 curl_setopt(
    
     
      
       
        c
       
       
        h
       
       
        ,
       
       
        C
       
       
        U
       
       
        R
       
       
        L
       
       
        O
       
       
        P
       
       
        
         T
        
        
         P
        
       
       
        O
       
       
        S
       
       
        T
       
       
        ,
       
       
        1
       
       
        )
       
       
        ;
       
       
        c
       
       
        u
       
       
        r
       
       
        
         l
        
        
         s
        
       
       
        e
       
       
        t
       
       
        o
       
       
        p
       
       
        t
       
       
        (
       
      
      
       ch, CURLOPT_POST, 1); curl_setopt(
      
     
    ch,CURLOPTPOST,1);curlsetopt(ch, CURLOPT_SSL_VERIFYPEER, 1);
 curl_setopt(
    
     
      
       
        c
       
       
        h
       
       
        ,
       
       
        C
       
       
        U
       
       
        R
       
       
        L
       
       
        O
       
       
        P
       
       
        
         T
        
        
         E
        
       
       
        N
       
       
        C
       
       
        O
       
       
        D
       
       
        I
       
       
        N
       
       
        G
       
       
        ,
       
       
        "
       
       
        "
       
       
        )
       
       
        ;
       
       
        c
       
       
        u
       
       
        r
       
       
        
         l
        
        
         s
        
       
       
        e
       
       
        t
       
       
        o
       
       
        p
       
       
        t
       
       
        (
       
      
      
       ch, CURLOPT_ENCODING, ""); curl_setopt(
      
     
    ch,CURLOPTENCODING,"");curlsetopt(ch, CURLOPT_SSL_VERIFYHOST, false);
 curl_setopt(
    
     
      
       
        c
       
       
        h
       
       
        ,
       
       
        C
       
       
        U
       
       
        R
       
       
        L
       
       
        O
       
       
        P
       
       
        
         T
        
        
         R
        
       
       
        E
       
       
        T
       
       
        U
       
       
        R
       
       
        N
       
       
        T
       
       
        R
       
       
        A
       
       
        N
       
       
        S
       
       
        F
       
       
        E
       
       
        R
       
       
        ,
       
       
        1
       
       
        )
       
       
        ;
       
       
        c
       
       
        u
       
       
        r
       
       
        
         l
        
        
         s
        
       
       
        e
       
       
        t
       
       
        o
       
       
        p
       
       
        t
       
       
        (
       
      
      
       ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt(
      
     
    ch,CURLOPTRETURNTRANSFER,1);curlsetopt(ch, CURLOPT_HTTP_VERSION, ‘CURL_HTTP_VERSION_1_1’);
 
    
     
      
       
        o
       
       
        u
       
       
        t
       
       
        p
       
       
        u
       
       
        t
       
       
        =
       
       
        c
       
       
        u
       
       
        r
       
       
        
         l
        
        
         e
        
       
       
        x
       
       
        e
       
       
        c
       
       
        (
       
      
      
       output = curl_exec(
      
     
    output=curlexec(ch);
 curl_close($ch);
 
    
     
      
       
        a
       
       
        r
       
       
        r
       
       
        =
       
       
        j
       
       
        s
       
       
        o
       
       
        
         n
        
        
         d
        
       
       
        e
       
       
        c
       
       
        o
       
       
        d
       
       
        e
       
       
        (
       
      
      
       arr = json_decode(
      
     
    arr=jsondecode(output, true);
 return $arr;
 }










