在支付系统中管理着各种用户账号资料、资金交易数据和商贸运转数据,这些都牵扯到商户、用户、渠道商及第三方支付平台等的利益,如果出现坏账和资金损失,则会对支付系统和企业信誉造成严重的影响,所以必须严格规避各类坏账、欺诈、作弊、恶意退款、套现等风险。
风控系统,又叫作风险控制系统,是支付系统中的一个较为独立的子系统,是资金安全的守护者,也是支付交易过程中的风险识别者、监管者、业务流程的决策者。风控系统主要用于在支付交易业务中识别出用户是谁、是否合法、发生在什么时间、做了什么事、通过什么渠道、产生了什么影响等,然后结合用户往期的行为和信用数据,针对这些事件做出相应的决策和反应,及时识别风险、止损和防止用户资金损失。
从技术架构层次来看,风控系统可以大致分为如图1所示的三层。
(1)应用层。主要负责具体的登录、下单、支付等应用场景中的业务逻辑处理,例如:在账户风控应用场景中主要围绕账户本身的安全性展开:登录设备识别,即怎么区分用户是真人登录还是机器登录;反盗号,即出现账户异常登录和异常支付、下单的情况该怎么应对;防刷,即优惠券、礼包防刷及商品防刷等。需要针对这些进行风险识别、数据分析、案件定性和后续流程引导。
(2)引擎层。主要基于各个平台建设具有实时计算、离线计算及决策能力的风控执行引擎,在执行引擎之下是各个具有业务属性的数据管理中心。例如:进行用户授权和可信度评估的资质评估中心,主要涉及授权过程中的实时风控模型,当客户端请求支付后端授权时,实时风控引|擎会将用户数据、请求数据和设备数据作为基础物料输入实时风控模型中,再由实时风控弓|擎计算和判断此过程是否有相关风险及等级数据。
(3)数据层。主要负责多维度海量数据的存储与访问,其中包含上层弓|擎执行所需的基础数据、用户相关的生物特征库(例如:在人脸识别设置过程中采集到的2D人脸、3D人脸模型数据;在指纹支付设置过程中采集到的手指指模数据等)、商户进件的资质资料数据和应用注册数据、从风险异常事件沉淀下来的案件数据、合约(信贷、签约等)管理数据、黑白名单数据及设备资料数据等。
图1
1、与支付系统的关系
风控系统在支付系统的很多其他子系统中都有用到,属于一种公共的基础服务系统。
当然,风控系统与支付系统之间的联系非常紧密,如图2所示。
风控系统数据层沉淀的很多数据都来源于交易过程,依附于支付终端或前端的原始数据的采集、处理和输入,在交易过程中,支付系统又需要依赖风控系统的服务来帮助进行交易的风险识别和决策。
图2
在图11中发起请求实质上是发起风控挑战,“发起风控挑战”是一个专业名词,意思是将当前数据和业务流程上送到风控系统进行数据清洗、应用场景引入、数据分析、规则匹配、决策信息返回等,将最终的决策结果返回给业务流程,由业务流程再做出相应的引|导。
例如:一个失信用户在网上购物时,电子商户网站会将其订单数据和用户信息提交给收银台,收银台收集到这些数据之后将数据发送给风控系统,风控系统经过运算后做出相应的决策,识别出这笔支付交易具有一定的风险级别,将限制部分信用支付渠道和基金支付渠道,仅提供银行卡或零钱包等风险较低的支付方式,不将其他支付方式返给收银台页面。
可以看到,风控系统对交易过程进行了实时分析(支付收银台、交易引擎等)、离线分析(账务系统)和跟踪处理,实现了对交易风险的预警、预判和决策,这样可以识别出当前是否为高风险交易,发现欺诈交易行为的可能性,及时给出决策信息到业务系统进行风险规避和防范,减少交易过程中的资产损失。
2、数据采集
风控系统的数据采集和建设是在支付系统正常运营过程中实现的,在遵守法律规定及得到用户授权的前提下采集系统中各个业务流程的数据。
(1)涵盖支付系统中的日常经营活动数据。例如用户账号登录、交易、支付推广营销、渠道路由等数据。
(2)涵盖支付系统线下和终端数据。例如商户进件的资料和应用数据、支付终端识别的数据、用户填写的数据、交易中常用的IP地理位置数据等。
(3)涵盖第三方系统采集的基础数据,比如支付交易数据、消费情况数据、社交属性数据、用户行为数据、信用授额和还款情况数据。例如用户申请线上信用卡支付时被要求填写的年龄、从事的职业、收入、学历、工作单位、借贷情况和额度、住所和房产信息、汽车、单位等数据。这些也会作为用户信用评估的一部分。
支付收银台中的信用支付方式(例如支付宝的花呗支付方式)主要利用了风控系统信用属性强大的金融基础数据,一方面利用这些基础数据对用户的还款能力、信用额度进行评分,另一方面识别向用户展示和使用信用支付方式的风险。
在数据采集完成之后,风控系统的基础数据管理中心有义务对这批数据进行管理,包含数据传输及存储安全、对外保密及数据合规输出等。
3、风控画像构建
风控画像,也叫作风险数据画像,它的构建主要基于支付系统中的交易引擎、收银台、账户系统、户注册系统、商户管理、渠道管理系统及运营活动系统等参数和案例沉淀。
构建画像的过程实质上是一个原始数据经过 数据沉淀和训练的数据处理的过程,最终输出用户身份画像、资产负债画像、消费画像、设备画像及其他画像,如图3所示。
图3
其中,数据沉淀与训练是一个非常关键的步骤,其中包含对原始数据的预处理、清洗、规范、分类打标、模型训练,下面针对各个过程进行讲解。
(1)数据预处理。这个过程主要是进行原始数据的格式和字段检查、特殊字符处理、字段数据类型转换和默认值补齐,其主要目的是让数据顺利进入格式化数据通道中。
(2)数据清洗。这个过程主要针对重复数据、异常数据进行处理,针对重复数据一般进行删除处理,针对异常数据一般有三种处理方法:对于不能使用的数据直接删除;对于不能填充默认数据的异常数据进行人工处理(人工判断并纠偏数据);对于常用类型和均值的数据进行均值填充、最可能值填充等。
(3)数据规范。这个过程实质上是对数据的字段值进行重定义和规范化处理,其中包含字段数据的数据字典的定义,例如:经过数据清洗之后的订单数据中的订单状态字段(存储了付款成功、待付款、交易关闭等值)就很容易抽取出数据字典,使用数据字典里的数值替换文字符串数据类型可以大量节约数据的存储空间。
(4)数据打标。这个过程实质上是对数据的应用场景进行识别、分类,经过这个过程之后,数据会依据自己的特征进入各个画像数据仓库中。其中的标签包含用户行为标签、场景标签、属性标签、定制化标签(例如游戏、百货行业相关的标签)、习惯偏好标签等。
(5)模型训练。这个过程其实是协助风控系统针对离线和实时业务模型进行训练(从建立、成长、成熟、衰落到终结),可以针对这个过程进行自身业务模型的扩展、调优等操作。
4、支付风控的过程
风控系统的能力输出主要有三种方式: API、SDK及CLI命令行界面。本文主要以服务器API方式来讲解对风控系统的调用。
如图4所示是一个风控API的调用流程图。
图4
支付交易数据包含所有进出支付系统相关的信息,比如,交易时间、交易货币、金额、交易对象、交易场景、交易频度、退款频度等其中交易时间、货币、金额、场景及对象会在交易过程中体现出来,其他则是数据仓库中的归集数据。
在收银台风控过程中,我们会将交易数据和其他数据在某一种支付场景中通过风控API提交给风控系统,这时会进入风控系统内部进行处理。
(1)数据清洗。主要对提交的数据纠偏、规范化处理,处理数据中的重复数据、异常数据。
(2)应用场景。这里包含对支付应用场景的判断,比如线上和线下支付场景、零钱包支付场景和大额转账场景。针对不同的应用场景有不同的风控规则和计算模型,例如:零钱包支付场景是一种低坏账率、低风险、快捷的应用场景,所以模型中的规则配置 就会针对这种场景进行特殊定制。针对大额转账场景,风控系统中的模型规则会配置相关的人脸识别规则来判断是否为本人操作,配置对方账户的名称规则,要求转账人在转账过程中输入收款人的姓名全称。
(3)风控规则。指特定应用场景和配置中的规则集合,例如:针对大额转账场景配置交易频率、交易时间、交易金额、持卡人所在省份、黑白名单账户、交易天数等风险规则。其中的参数可能是这样的:日交易频率低于3次,超过3次时就可能需要到柜台进行操作,或者第二天才能正常转账。交易金额规则配置一般为最高单日网络转账5万,如果超过1万,则要求转账时进行人脸识别等。
(4)计算权重。也叫作风险因子,一个风险规则是由一个或多个风险因子组成的。风险事件是由多个风险因子促成的,事件影响面的大小依赖于风险因子的相关数值。
(5)计算参数。主要是输入数据的参数数据。
(6)执行规则。属于规则引擎范畴,其中涉及将数据输入规则引擎里面,然后根据计算规则输出决策结果。
(7)命中规则,并输出决策数据列表。决策引擎针对支付过程中复杂的业务逻辑,首先抽象、剥离、组合各个业务规则,然后进行不同的决策分支组合、关联操作,接着进行各层规则及规则树运算,最后输出决策结果列表。