1. 系统架构
1) 拓扑图
手机POS系统分为三个子系统:商户系统,手机POS控件系统以及银联后台系统。其中手机POS系统包括手机POS控件和手机POS前置系统,银联后台系统包括银联小微商户系统,银联二代商户系统,银联全渠道系统,银联条码前置平台等。手机POS前置系统与各个银联后台系统直接联接,这种方式称为银联手机POS的直联模式,本产品所讨论基于这种直联模式。
2) 数据流图
从数据流的纬度分析,商户App每调用一次API都是一次耗时操作,数据由商户App->手机POS控件程序->手机POS控件TA程序->手机POS控件程序>手机POS前置系统->银联后台系统->手机POS前置系统->手机POS控件程序->手机POS控件TA程序->手机POS控件程序->商户App。其中的TA是TEE可信环境下运行的程序,支持数据处理和页面显示等,这种安全性是REE环境下所不具备的。
3) 包图
将架构图简化为上图,蓝色部分属于商户的系统,红色部分属于银联的系统。商户系统集成手机POS控件的方式有API集成(Jar包集成)和H5集成两种方式,采用API集成的方式可以让商户App与手机POS深度融合,商户App开发者自行开发界面,调用API实现手机POS的底层功能。采用H5集成的方式可以让开发者以最低的开发成本集成手机POS,手机POS控件提供界面,商户App仅通过跳转H5页面就能获得手机POS的全部功能,但是就如上图蓝色箭头所示,商户系统跳转到H5页面以后无法获取返回结果,只能通过后台推送的方式得到业务数据。
2. SDK介绍
上图虚线部分为手机POS的SDK,开发者可以选择API集成或者H5集成手机POS控件。开发者可以在“文档下载”板块下载Jar包和控件等。
3. 集成方式
1) API集成
采用API集成的方式,此时的手机POS控件提供的是系统底层服务能力(不提供页面),为商户App赋能。手机POS控件作为一个隐藏的Android App不会出现在手机桌面,而是长期运行在手机系统后台。
商户App集成一个手机POS的Jar包,Jar包负责与手机POS控件建立绑定关系,并实现进程间通信。
具体的接入流程请参考“API接入”板块。
2) H5集成
方式一:浏览器跳转网页
商户App通过浏览器跳转网页的方式跳转到手机POS指定URL,这个手机POS的引导页再通过Scheme协议调起手机POS控件App,手机POS控件提供上层业务逻辑和底层服务能力。
方式二:JS SDK 集成
商户系统也可以通过Javascript集成手机POS控件,商户的Web App需要调用手机POS提供的js类并集成Jar包来获得收单的能力。
具体的接入流程请参考“H5接入”板块。
4. 功能介绍
手机POS的主要功能:设备管理,交易管理,商户管理。红色部分是需要开发者重点关注的接口。