如何设计个人与企业实名认证流程?
随着互联网业务的开展,为了维护信息安全、资金安全,实名认证成了许多互联网细分领域必须要完成的一个工作。本文作者从自身工作经验出发,分享了个人和企业实名认证流程设计中需要注意的相关元素以及存在的问题,供大家一同参考和学习。
实名认证,对我们来说并不陌生,最常见的就是我们申请银行一类卡的时候,是必须本人亲自到银行网点,带着身份证进行面对面鉴权的,保证了信息的真实性与准确性。此外,前些年刚落实的电话实名制,国家也是要求运营商在开展业务的过程中做好实名认证工作。
实名认证主要体现在社交类产品、媒体资讯类产品、互联网金融、支付结算等领域。这些领域要么涉及信息安全(比如谣言的散播),要么涉及资金安全(比如信息的冒用与资金盗用),所以必须要做好实名认证工作。
从认证的主体来分,实名认证包括个人实名认证与企业实名认证。
个人实名认证主要依赖以下数据源:公安部门身份数据库(通过身份证号码和姓名来校验是否一致)、银联数据库(通过姓名、身份证号、手机号、银行卡来校验信息是否一致)、运营商数据库(通过合规运营商检验姓名、身份证、手机号码是否一致)。目前市面上常见的个人实名认证方式有:身份证二要素、运营商三要素、银行卡三要素、银行卡四要素。
企业实名认证主要依赖工商部门企业信息数据库(通过企业名称、社会信用代码、法人名称、法人身份证来校验信息是否一致),目前市面上常见的企业实名认证方式有:企业工商信息四要素、企业银行对公账户认证(包括主动打款认证、被动打款认证)。
本篇文章主要向大家介绍基于公安部门与银联数据库的个人实名认证流程、基于工商部门信息数据库的企业实名认证流程,这也是第三方支付平台普遍会提供的认证能力。
一、个人实名认证流程设计
1. 身份证二要素
即通过姓名与身份证号来校验信息是否一致,目前国内最具权威性的居民信息来自NCIIC,全称是全国公民身份证号码查询服务中心,也就是常说的公安部接口。
这里要注意的是,由于身份证是有特定格式规范的,因此前端可以提前对身份证的格式进行校验,若不合规,即可报错,无需调用接口进行校验,可减少后端压力。
身份证二要素仅仅能校验姓名与身份证号是否一致,无法避免因个人信息泄露带来的信息盗用问题,在百度上、或者其他网络渠道要找到一个身份号不是一件难事。
如何规避上述问题?有的平台会要求用户在实名认证时,拍摄并上传身份证正面与反面照片。如果把设计做得更加友好一点,可以利用图像识别能力,自动读取用户的姓名与身份证信息,减少用户输入量。
这里有个有趣的问题想要问问大家,你觉得身份证正面是带有个人信息的一面还是国徽面呢?
正确的答案是国徽面。虽然是个小问题,但是在产品设计引导用户上传身份证照片的时候,最好避免使用身份证正面或者反面这种提示文案,存在歧义,可以使用“个人信息面”或者“国徽面”类似的文案。
即使让用户上传了身份证,还是会存在漏洞,比如我直接盗用了他人的身份证照片呢?这种情况其实也是存在的。所以有些平台会在身份证二要素的基础上,加上人脸识别环节,即综合“姓名+身份证号+人脸识别”来校验用户信息的真实性。以下为百度提供的个人实名认证流程方案,可以简单了解一下。
2. 银行卡三要素
即通过姓名、身份证号码、银行卡号来校验信息是否一致,底层调用的是银联接口,通过银行卡三要素进行实名鉴权,这种实名认证方式还是比较少用的。
3. 银行卡四要素
与银行卡三要素相比,四要素多了一个银行预留手机号,即通过姓名、身份证号码、银行卡号、银行预留手机号来校验信息是否一致。
这是比较常见的实名认证方式,银行卡四要素其实是银行卡快捷支付的一个副产品,绑定快捷支付银行卡一般还需要短信验证码。
在用户通过四要素+验证码完成实名认证后,间接也就完成了绑卡流程。快捷支付实际上是一个授权,是用户、平台与银行之间签订的协议,即用户授权平台可以直接从银行卡中划扣款项。
快捷支付绑卡是接入第三方支付平台的电商平台基本都会实现的一个功能,因为快捷支付的流程相对传统的网银支付、银联在线支付来说,整个支付流程是非常简短的,只需要用户在平台做支付密码的校验即可,支付流程的简单带来的是支付转化率高,早期的微信支付在春节红包晚会上,就是依靠绑卡率的快速上涨,有效的沉淀了大量的用户。
以苏宁金融APP的实名认证流程为例
- 首先引导用户通过手动或者图像识别的方法,输入用户的银行卡号。
- 根据卡号带出对应的银行,引导用户补充个人信息,包括姓名、身份证号、手机号,点击“验证银行卡”,对四要素进行校验。
- 四要素信息一致后进入手机验证码激活环节,验证码校验成功后,实名认证成功,并绑定银行卡。以上就是一个完整的四要素实名认证环节,在设计的时候,可以将流程分为三个部分,减少用户焦虑,分步骤引导用户完成实名认证,包括个人信息的输入、银行卡信息的输入、手机验证码校验环节。
二、企业实名认证流程设计
企业实名认证常见于电商平台,比如企业入驻电商平台成为卖方、有些B2B电商平台也会要求买家也完成实名认证,其他以企业身份提供享有或者提供服务的平台,比如微信公众号的企业认证、B端产品中的企业微信或者钉钉,完成企业实名认证可以享有更多的功能。
1. 企业工商信息四要素
即通过校验企业名称、企业社会信用代码、企业法人姓名以及法人身份证号的信息是否一致,一般还会要求上传企业营业执照照片。目前市面上很多机构均有提供企业工商信息四要素认证,第三方支付平台也是通过调用此类接口为平台提供鉴权服务。
企业实名认证有个地方需要注意的是认证接口数据更新的实时性问题,企业进行法人的变更是比较常见的现象,但是鉴权机构的数据接口的更新可能存在滞后的问题,保存的还是旧的法人信息,导致企业进行实名认证时,发生法人信息不一致的错误。
2. 企业银行对公账户认证之“被动打款”
企业银行对公账户认证是比企业工商信息四要素认证更为严谨的认证方式,被动打款指的是用户提供企业名称、企业社会信用代码、法人姓名以及对公银行账户完成企业信息一致性的基本校验,第三方支付平台或者其他认证机构向用户提供的对公账户随机打款,金额一般在0~1元之间,用户查到打款金额后,在认证界面输入对应的数字,完成对公账户的认证。
这种方式之所以称为被动打款,是从认证用户的角度出发,认证机构是打款方,待认证的用户是被动接收打款的一方。
为什么说这种企业实名认证方式更为严谨呢?这得从企业对公账户本身的安全性说起,一般只有企业内部相关岗位的人员,才拥有企业对公账户的key,登陆进入企业网银界面进行相关的查询与资金操作动作。
原型设计中,可以将整个流程分为两大部分,包括企业信息与对公账户信息的填写与校验、打款金额的填写与认证。
需要注意的是,打款校验允许错误的次数一般是有限的,超过之后只能重新提交审核并再次触发打款金额。用户超过指定的时限未输入金额进行验证,也会导致本次验证流程失效。
由于企业银行对公账户认证流程比较复杂,所以平台如果涉及企业结算的需求,也可以把本次认证成功的账户作为企业结算提现账户,后续就不用重复绑卡了。
企业对公账户认证原型界面设计
3. 企业银行对公账户认证之“主动打款”
该认证方式与“企业银行对公账户认证之被动打款”的差异在于打款校验环节,在该认证方式中,用户在提交企业基本信息与银行对公账户A的信息后,认证机构会提供一个另外一个对公账户B,用户需要在指定时限内使用提交的对公账户A向对公账户B汇一笔指定的金额,一般在0~1元之间,汇款金额正确后,则完成对公账户的认证。
这种方式比较少见,因为需要用户主动去打款,显得比较强势。目前企业开通微信支付商户资格时,需要进行对公账户认证,采用的就是这种方式,如下图:
三、写在最后
以上列出的只是本人对接的支付平台提供的一些实名认证能力,虽然实名认证方式多样化,但是最根本的数据源还是基于公安部门数据库、银联数据库、企业工商信息数据库以及其他权威性性数据源比如运营商。不同的实名认证方式往往对应着不同的安全级别,越高安全级别往往对应着越为复杂用户操作流程,平台应该根据自身的实际业务以及风控实际需求,选择最合适的实名认证产品。
作者:小狼人,微信公众号:人称产品汪。不定期更新本人在对接第三方支付平台与银行存管系统中的经验心得、支付知识、产品心得等。
本文由 @ 小狼人 原创发布于人人都是产品经理,未经作者许可,禁止转载。
题图来自Unsplash,基于CC0协议。
请教下老师,关于银行卡三要素鉴权、四要素鉴权,这些鉴权的动作是银行做吗?还是有专门的第三方机构做,如果是第三方机构做的话,主要是哪些第三方?如何收费的呢?
鉴权是在第三方的鉴权服务器执行的,这些数据来自各家银行,第三方提供接口,比如银联就有,还有其他的,这个算是比较常见的API,大部分数据公司都有做,收费的话,华为云的是三毛一次,多的话更便宜。
请教一下前辈,被动打款的自动转账随机金额是如何实现的?
一般第三方支付平台能提供这种能力,有专门的鉴权产品
好的,谢谢,那是要付费了,还有什么其他方法吗?可不可以通过上传开户许可证等进行人工审核对公账户?
其实整个过程分为两个环节,第一,用户得提供资质,证明你是你,这个是最基础的(这个可以走人工审核)。第二、为了证明你对这个对公账户有实际掌控能力,平台可以通过主动或者被动打款的形式再做最后一层校验。
你说的其实是第一步,可以要求用户上传资质凭证进(你说的开户许可证是其中一项),具体要求什么凭证,这个是风控问题了,上传的资料少,门槛低、风险高,反之。
请教一个问题,一个网站的部分功能需要企业认证后才能使用,那如何解决两个用户同时认证同一家企业呢?
根据网站(你们公司的实际业务)来做产品方案的落地,不同的公司对方案的诉求可能不同。可以分享一下我之前看到的几个网站的做法:
1、A网站,一个B2B电商平台,对企业资质管控十分严格,同一个企业是不能同时被多个独立的账号认证的,这时候第一个认证的账号,成为了公司的主体账号,该主体账号可以添加其他未认证的账号作为子账号,分配不同的操作权限。还有一个问题就是企业信息被盗用了,一个真实的公司去认证的时候发现自己的公司无法认证了,那么平台会提供申诉的路径。
2、B网站,是一个B2B供求信息的发布与展示平台,该平台支持多个用户同时认证同一家企业,有个缺点就是用户可以看到多个企业店铺,但是都是同个公司的,这种平台就对企业认证的限制比较松,但是我觉得有点弊端。
所以,两个用户同时认证一家企业在技术上是没问题的,但是带来的业务问题也是不少的,可能要考虑一下潜在的几个问题:你们的网站是什么类型的,两个用户认证一个企业,对前端普通用户有影响吗,会不会造成混淆。两个用户认证一个企业,对你们平台的管理与未来发展的规划会有冲突吗等等。
所以,大概的方案有:
方案一:直接就是每个账号都可以认证同一家企业,只要鉴权正常就行。
方案二:不支持两个用户同时认证一个企业,但是可以提供主体账号与子账号类似的功能,就是已完成实名认证的企业,可以授权给其他账号,其他账号也不需要再走一次实名认证流程了。
因为不知道你的网站具体是什么业务,暂时给不出其他想法~
非盈利组织的企业,如学校、医院等如何企业认证?
这个还真的没接触过,如果没有接口的话,只能依靠上传对应的资料,然后人工审核了吧。搜了一下学校使用钉钉怎么实名认证,找到了这个“学校若只有办学许可证,可以在企业认证时选择【政府/事业单位】(组织机构代码证),然后填写信息和上传办学许可证、企业认证授权函提交审核。”https://www.dingtalk.com/qidian/help-detail-1000029966.html
有跟企业四要素相同的接口服务,非企业四要素api接口。有兴趣可以一起沟通一下!
您好,我正在做有关的认证,请问可以交流一下么?
被动打款,如果遇到不良企业多次故意金额输错,导致平台多次打款到企业账户,这种该如何规避呢
首先这种情况应该是少之又少,真有这么奇葩的用户。我觉得平台可以自己做风险控制,超出一定的次数(这个阈值可能得设置高一点)可以发起预警,甚至暂时冻结该企业账号,后面这个企业客户如果想继续审核了,那就直接找客服处理吧
平台只打一次款,企业输错金额验证不会通过,不存在平台需要多次打款
国内的认证还比较容易,国外认证就很难了,尤其是针对不同地区不同人群不同企业,每个国家拥有不同的身份认证标准或者渠道。
嗯嗯,是的,国外用户认证确实是个难题,我对接的渠道里面,基本都没写清楚国外用户的对接方案,问起来的话就是人工审核,哈哈
可以考虑跟邓氏码那个合作,做国外企业的认证服务。
目前也在苦恼国外认证的问题,各国之间的认证标准不同,即使人工审核也要考虑各国的证书的准确性,大家有什么建议的吗