手机端脚本回调使用指南
本文介绍了手机脚本的使用,以及如何正确的拉单测试。
手机端脚本目前支持代收和代付,代收即在手机上登录收款卡对应手机银行,然后安装回调脚本(不同银行使用不同回调脚本),通过定时刷新账单获取最新得账单,并通过过滤将最新得订单上报到服务器以实现回调。代付则是在手机上安装支持快速打款的手机银行app之后,登录手机银行,使用代付脚本打开app,实现自动打款,回调打款状态,脚本代付和代收为全自动,用户可以监听每台脚本机已打款和已收款,用于提示运营人员及时对资金进行操作。
不管是手机脚本代付还是代收。都需要一些列前置准备工作,准备工作如下。
准备工作
在所有准备工作之前,我们要准备好需要的资料和环境,包括但不限于:
Windows 电脑一台
刷机套件(开发人员提供,已刷机请忽略)
TypeC 的 USB 数据线
测试机(小米8/一加8/小米8青春版)
账户信息(收款或代付账户,用于登录对应银行app,通常包括uid,账号,密码,pin,tpin)
账户对应手机卡(登录和转账需要用到)
OKSMS短信App
银行对应脚本(代付或代收,每个银行脚本不一样)
通用测试脚本(用于测试短信连通性,目标app是否可开发)
OKPAY的后台运营账号(查单,添加手机号,链接脚本机需要在后台操作)
telegram运营账号(用于tg查单和日常的交流,故障反馈)
账号信息准备
为了方便管理,通常我们需要标准的账号信息,如果没有,最小要求是能够登录手机银行并正常转账,这个需要运营人员自行测试。账号关键信息主要是:
收款码
银行名称
账户名+账号+ifsc
手机号
loginId/uid/password/tpin/mpin
信用卡信息(如果有必要)
每日限额
账户信息格式可参考如下:
脚本机环境
首先我们需要确保脚本机刷入了我们的系统,刷入定制系统可以参考另一篇文章《OKPAY定制系统刷入流程》。输入完成后进入如下桌面[见图11],以 IOB银行为例,我们需要安装测试脚本OK助手。然后使用谷歌商店安装目标银行IOB MOBILE。
手机银行适配
对于已经适配的手机银行,我们可以直接使用。目前已经适配的手机银行有:
RBL Bank
IndusInd Bank (Indus)
Bank of Baroda (BOB)
Federal Bank (Fedral Mobile)
Ujjivan Small Finance Bank (Ujjbank)
UCO Bank
Canara Bank
Karnataka Bank (KBL)
Muthoot Finance (Manco Bank)
Bank of India (BOI)
Indian Overseas Bank (IOB)
State Bank of India (SBI Plus)
Maharashtra Bank (Maharastra Bank)
Jana Small Finance Bank (Jana Bank)
City Union Bank (CUB)
Tamilnad Mercantile Bank (TMB)
IDBI Bank
Punjab & Sind Bank (PSB)
Jammu and Kashmir Bank (JBK)
India Smart Bank (India Smart)
South Indian Bank (SIB)
Yes Bank (Yesbank)
对于没有适配的手机银行,后续可提供适配支持,但在适配之前,需要运营人员做一下验证,验证流程如下:
在应用商店找到对应手机银行app。
登录手机银行app
找到查看流水的地方
判断流水格式是否符合要求
流水格式是否符合要求,主要看找到的流水页面的数据上是否有对应的utr显示,是否支持带备注(付款的时候会自动带上备注),备注信息是否完整(需要和开发人员核对)。
无Sim的登陆实现
很多时候,我们收到的卡在卡商那边,运营人员无法直接操作,这是我们需要使用OKSMS配合操作来实现短信的收发,用以完成手机银行app的登录。关于OKSMS app的使用方法可以参考《OKSMS使用指南》。
无sim卡登录手机银行,分两种情况,一种是需要发短信验证的一种是直接接码登录的。接码登录只需要能拿到验证码即可。当卡在卡商那边运营人员无法访问的时候,需要要求卡商将对应的sim卡插在安卓手机中,并安装OKSMS的App,打开App之后需要留意sim卡一栏,如果是空的需要手动编辑当前sim卡手机号。然后将编辑的这个手机号告诉运营人员,运营人员在后台添加该手机号之后即可看到改手机号已经在线,且能在后台页面的短信一栏看到短信内容。
短信app在收到新消息时会第一时间将收到的短信上报到服务器,并显示在短信验证码区域。
短信app在使用的时候尽量保证在前台,以防止掉线而导致运营人员无法正常转账的情况
通用登陆脚本
有的时候,单纯OTP码并不能实现手机银行登录,有很多银行需要验证手机卡,禁用wifi,发短信绑定设备等一些列复杂操作。这个时候就需要用到通用登陆脚本。通用登陆脚本需要配合定制系统使用,我们在安装通用登陆脚本OK助手之后,打开可以看到如下页面。其中模拟位置可以点击,选择印度的一些主要城市,下面的控制台,通过绿色小字,可以打印出运行的辅助日志。
在启动测试前,需要进行一些配置。点击右上角会显示配置菜单(见图二),先选择目标银行app,弹出app选择对话框,选择我们要劫持的银行如Cub。选择后需要编辑用于登录手机银行对应账号的手机号(见图四),这个手机号是和短信App (OKSMS)上填写的手机号要完全对应,要保证后台配置的手机号和短信App配置的手机号以及登陆脚本的手机号完全一致,否则会导致无法登录的情况。
有时候测试人员在测试的时候,会发现及时正确选择了目标银行,配置了正确的手机号,还是无法登录成功的情况,这个时候需要检查卡商的手机卡是否欠费,或者短信App是否在线(短信App是否在线除了通过后台查看外,还可以通过 TG 机器人查看,详细使用方法请参考《telegram运营机器人使用手册》)。此时可以通过第三项菜单,进行短信发出测试,在弹出的对话框中填入自己的手机号(见图五),确认后,输入的手机号会收到一条测试短信,如果没有收到,则需要联系卡上是否需要充值。
通用脚本还有备份还原App的功能,有时候,由于银行App出现自动升级,导致脚本无法正常使用,我们可以事先在手机中备份对应的银行App,只需要选择需要备份的App,App就会备份到Backups/[pkg]/[versionName]
下。需要还原的时候,直接先卸载掉最新的,选择还原即可。
代收流程测试
为了确保后续运营工作顺利进行,我们需要先做代收测试,也就是模拟用户进入收银台拉取支付订单进行支付,确保其正常回调。在测试前,代收的流程测试是为了验证用户进入我们的收银台后,我们可以正确创建支付订单,并在用户付款后及时更新支付状态,并告知商户订单是否支付成功,流程如下。
在后台创建通道测试链接的时候,需要注意的是,关闭的通道无法创建测试链接,会提示通道找不到。这个很好理解,关闭的通道无法测试。在打开的通道中,如果没有可以用于测试的账号也无法完成回调测试,这个也很好理解,没有用于回调的账号,测试则无意义。
通道创建
拿到新的卡商账号之后,需要卡商在后台创建通道(Ok会创建卡商账号给卡商),卡商先创建通道,然后将账号信息配置上去。目前OkPay
系统支持创建自己的通道,也支持接入三方通道分流。这里只是为了测试,创建个人通道,具体配置方法可参考文档《后台使用文档-运营端》的通道篇。
通道创建(通常建议创建的时候选择关闭,等配置好账号再打开)
随后可在通道列表看到刚创建的通道。
配置通道账号
点击账户配置,可对账号进行管理,目前是空的
新增账号
点击新增按钮,弹出新增账号对话框,这里需要填账号信息(带*的是必填项)。由于是收款账号,需要填写账户,每日限额等基本信息。其中还有一个唯一id,是根据下面的手机端脚本操作的脚本获取到的唯一id填入,绑定手机如果要填就是天短信App主页显示那个手机号,填入之后点击确定,通道就配置好了。
查看短信App和账号在线
在通道管理那里可以看到所有的通道账号,其中可以进行通道的账号配置。点开可以看到手机号和脚本机在线情况。
配置商户
通道创建好之后,需要和商户关联,点击需要测试的商户,基础管理->支付用户->通道配置。
然后勾选前面创建的通道,选中之后就可以开始测试了。
后台创建测试链接
创建好了通道之后,可以进行通道测试,创建测试订单流程如下,具体可以参考文档《后台使用文档-运营端》。
如上图,我们通过复制ResponseData
的code_url
的值,放在浏览器中打开。即可跳转到收银台页面,当然实际接入过程中,是开发人员通过调用我们的接口生成的收银台页面,具体可以参考文档《新商户接入开发文档》。
手机端脚本操作
手机端银行脚本主要功能和通用测试脚本相似,不同得手机银行使用的脚本不一样,脚本在使用前也需要先配置手机号和登陆密码(有一些银行需要password而不是pin,脚本都有做针对性适配)。有一些脚本属于版协议脚本,也就是拿到需要的一些登陆参数后不需要再次打开银行App即可实现账单抓取回调。有一些需要保持手机银行打开。
一般来说,第一次登陆手机银行,需要运营人员借助对应的银行脚本或通用测试脚本辅助登录,之后每次点击StartWork
,脚本会自动执行登录并回调。点击StartWork
后,右上角会有一个悬浮窗以方便运营人员快捷的监控和操作手机脚本。
注意:首次运行脚本后,会拿到登录信息,在脚本的下方会打印出账号标识,可看到绿字
unqueid:xxxxx
字样,这个唯一id需要和通道账号中的唯一ID保持一致
各自作用为:
Balance:显示当前账户余额,不可点击
Size/Pause:显示当前上报的最新账单如4/200 表示上报了4条最新的,总共处理了200条。点击之后会暂停轮询账单
time:上一次上报的时间
Hide Me:点击之后隐藏悬浮窗
Stop Run:点击之后立即停止脚本,并退回到手机脚本页面
Fill Order:点击之后执行补单操作
补单机制:有时候由于脚本没有启动或者脚本中途出现异常退出,或者其它一些异常情况导致漏掉了一些账单的上报,可以点击此按钮进行补单。同时程序在运行时,也会定时补单,一般为10分钟一次
测试员回调测试
收银台页面如下,测试人员需要按照页面提示进行操作,目前大部分支付链接的唤起,需要在用户支付之后,回填12位数的 UTR 码,这样服务器才能进行订单状态回调。
用户回填UTR之后,点击submit,等待服务端回调,稍等片刻,回调完成,提示success。
注意:不会填UTR无法完成系统回调 !!
Last updated