具体实施方式
为使本说明书一个或多个实施例的目的、技术方案和优点更加清楚,下面将结合本说明书具体实施例及相应的附图对本说明书一个或多个实施例的技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本说明书的一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本说明书一个或多个实施例保护的范围。
以下结合附图,详细说明本说明书各实施例提供的技术方案。
随着移动支付的普及和数字人民币的推广,基于移动终端的支付场景愈加普及。在目前的移动支付场景中,用户终端与商家的终端网络连接情况主要分2种,即:
1)用户端与商家端均在线,实现支付信息的同步完成支付;
2)用户端离线商家端在线,如在手机信号较差的商场进行移动支付,由于付款二维码由本地生成,用户端可实现离线支付但对应的商家端需要进行联网进行支付信息同步。
而对于用户端与商家端的设备处于双离线的状态时,在部分公交和地铁刷码支付场景下,由于部分公交和地铁网络连接不够实时,用户刷码支付后公交和地铁收款端会将收款信息暂存本地,待网络连接顺畅时再进行联网信息同步,这种方案会导致支付结果信息同步存在长时间的滞后,只适用于公交地铁等交易额较低的场景,对于其他商户如商场酒店等地方移动支付,支付结果信息长时间滞后会带来高风险的资金漏洞。即当在用户端在线但商家端离线或者用户端、商家端均离线的场景下无法完成支付。
本发明旨在提供一种离线支付的方法,解决用户在线商家离线或者用户商家均离线的应用场景。
为了解决现有技术中的缺陷,本方案给出了以下实施例:
图1为本说明书实施例中一种离线支付方法的硬件场景示意图。如图1所示,涉及到的设备有用户端的终端设备101、商家端的扫码设备103。其中,用户端的终端设备101上设置有磁传感器1011,扫码设备103上设置有磁感应线圈1031,更为具体地,磁感应线圈1031可以设置在扫码设备的扫描口的周围。在终端设备101与扫码设备103均处于离线状态时,终端设备101的磁传感器1011,可以为用户手机自带的传感器,通常用于地磁检测辨别方向,用户在支付扫码过程中,可以将终端设备101与扫码设备103靠近,扫码设备103上的磁感应线圈1031将产生经过磁场,从而被终端设备101上的磁传感器1011检测到,向用户手机传递信息。用户端的终端设备101向商家端的扫码设备103通过二维码方式传递信息,被商家的扫码设备103捕获到,从而完成用户到商家的支付信息传递。商家端的扫码设备103向用户端的终端设备101的信息传递通过磁感应线圈1031以磁场的方式发射出去,可以被终端设备101的磁传感器1011捕获,从而完成商家到用户的支付信息传递。
接下来,将针对说明书实施例提供的一种离线支付方法结合附图进行具体说明:
实施例1
图2为本说明书实施例提供的应用于扫码设备的一种离线支付方法的流程示意图。从程序角度而言,流程的执行主体可以为搭载于应用服务器的程序或应用客户端。在本说明书实施例中,涉及到的信息交互主体可以包括扫码设备以及终端设备。在本实施例中,执行主体可以是扫码设备。
如图2所示,该流程可以包括以下步骤:
步骤210:扫码设备获取终端设备的屏幕中显示的二维码图像信息;所述终端设备中安装有至少具有磁场感应功能的第一元件;所述扫码设备中安装有至少具有磁场激发功能的第二元件。
扫码设备可以表示具有扫码功能的设备。在本方案中,扫码设备可以是。比如:条形码扫码枪、二维码扫描器、扫码机、扫描平台等等。扫码设备可以扫描条形码,也可以扫描二维码。在本方案中,在支付场景中,扫码设备可以表示用于扫描用户的终端设备的支付二维码的扫描设备。
终端设备可以表示安装有磁传感器的智能终端,例如:智能手机、平板电脑等。
二维条码/二维码可以表示用某种特定的几何图形按一定规律在平面(二维方向上)分布的、黑白相间的、记录数据符号信息的图形。二维码图像信息可以表示对生成的二维码进行渲染之后在终端设备的屏幕中显示的,包含支付信息的图像。
磁场是对放入其中的磁体有磁力的作用的物质叫做磁场,磁场的基本特征是能对其中的运动电荷施加作用力,即通电导体在磁场中受到磁场的作用力。第一元件可以表示具有磁感应功能的元件,例如:MR元件(磁阻元件)以及霍尔元件等,霍尔元件即基于霍尔效应的磁传感器。磁传感器可以是把磁场、电流、应力应变、温度、光等外界因素引起敏感元件磁性能变化转换成电信号,以这种方式来检测相应物理量的器件。
在本说明书实施例中,终端设备中可以安装有具有磁场感应功能的第一元件,扫码设备中可以安装有具有磁场激发功能的第二元件,第二元件可以是磁感应线圈,当通有电流时,可以产生磁场。在扫码设备离线时,扫码设备仍然可以接收到用户的支付二维码信息,并向终端设备返回支付反馈信息。
步骤220:判断对于所述二维码图像信息中是否包含预设内容信息。
扫码设备在扫描了终端设备的二维码图像信息之后,可以对二维码图像信息进行解析,得到二维码图像中包含的信息。上述步骤中的预设内容信息可以表示用于后续支付需要用到的相关信息,例如:用户信息、账户信息。扫描的二维码图像信息中包含预设内容信息,可以确定扫描到的二维码图像信息扫描成功。若扫描的二维码图像信息中不包含预设内容信息,则可以确定未扫描成功。其中,未扫描成功的情况可以包括:扫描时未对准付款二维码导致扫描失败、由于付款二维码未及时刷新,导致扫描得到的二维码信息无效、或者扫描得到的二维码信息与用户的身份信息不匹配等等。
步骤230:当所述二维码图像信息中包含所述预设内容信息时,生成支付反馈信息;所述支付反馈信息用于表示所述扫码设备已接收到所述预设内容信息。
支付反馈信息可以表示扫描设备扫描了二维码图像信息,并解析了二维码图像信息之后,如果二维码图像信息中包含了预设内容信息,则扫码设备可以生成预扣款记录,在扫码设备处于离线状态时,并不能实时将信息传送至银行,从而对用户账户中进行实时扣款。但是商家侧的扫码设备在接收到用户终端的二维码图像信息中的用户信息以及支付账户信息之后,信息审核成功后,可以进行预扣费操作,生成支付反馈信息。支付反馈信息可以表示扫码设备已经接收到用于支付的信息,即扫码设备已经接收到预设内容信息,具体地,支付反馈信息中可以包括商家信息、扣除金额信息、当前支付状态信息、支付的商品信息、支付时间信息、支付账户信息、交易单号信息等。其中,当商家侧的扫码设备处于离线状态时,当前支付状态信息可以显示“待扣除”、“扣除成功”等信息。
步骤240:将所述支付反馈信息采用所述第二元件通过磁场通信方式发送至所述终端设备。
磁场通信可以表示通过磁场间的耦合来进行信号传输的通信方式。在扫码设备处于离线状态时,不能通过网络进行信息传输,此时,本方案中,可以通过磁场通信的方式将支付反馈信息传输给终端设备。
应当理解,本说明书一个或多个实施例所述的方法其中部分步骤的顺序可以根据实际需要相互交换,或者其中的部分步骤也可以省略或删除。
图2中的方法,通过安装有至少具有磁场激发功能的第二元件的扫码设备获取安装有至少具有磁场感应功能的第一元件的终端设备的屏幕中显示的二维码图像信息,判断对于所述二维码图像信息中是否包含预设内容信息;当所述二维码图像信息中包含所述预设内容信息时,生成用于表示所述扫码设备已接收到所述预设内容信息的支付反馈信息,并将所述支付反馈信息采用所述第二元件通过磁场通信方式发送至所述终端设备。用户终端通过二维码图像信息向扫码设备传输终端设备的支付信息(用户信息以及账户信息等),扫码设备通过第二元件采用磁场通信的方式向终端设备传输支付反馈信息,即使在扫码设备处于离线状态时,或者终端设备和扫码设备处于双离线状态时,均能够实现扫码设备以及终端设备之间的信息传输,解决双离线状态下的移动支付的问题。
基于图2的方法,本说明书实施例还提供了该方法的一些具体实施方案,下面进行说明。
可选的,所述预设内容信息包括用户身份标识信息以及支付账户信息;所述生成支付反馈信息,具体可以包括:
确定所述二维码图像信息中包含的支付账户信息;
基于所述支付账户信息对订单信息进行预支付,得到支付反馈信息。
终端设备显示的二维码图像信息可以是付款码图像信息,付款码图像信息中可以包括用户信息以及支付账户信息,需要从付款码图像信息中获取支付账户信息,才能对订单进行预支付。预支付可以表示的是基于用户的支付账户信息,生成预扣款记录信息。在实际应用中,为了保证用户的账户信息安全,在基于二维码图像信息中的支付账户信息进行预支付之前,需要根据用户信息对用户身份进行验证,例如:用户A在进行商品结算,但是在扫描付款码图像时,扫描到用户B的付款码图像信息,用户B的付款码图像信息中包含有用户B的用户信息以及用户B的支付账户信息,此时,需要对用户B的身份信息进行验证,当发现用户B不是当前结算商品的用户A时,停止基于用户B的支付账户信息进行支付。
可选的,所述确定所述二维码图像信息中包含的支付账户信息之前,还可以包括:
获取待支付订单信息中的用户信息;
将所述用户信息与所述用户标识信息进行匹配;
所述确定所述二维码图像信息中包含的支付账户信息,具体包括:
当所述用户信息与所述用户标识信息匹配成功时,确定所述二维码图像信息中包含的支付账户信息。
在实际应用场景中,用户在进行结算时,可以输入自己的手机号或者其他身份标识,结算完成后,扫描用户的付款码图像,比对用户信息之后,若付款码图像信息中的用户信息与待支付订单信息中的用户信息一致时,可以基于该付款码图像信息中的支付账户信息进行预支付。
当然,在不同的应用场景中,上述验证用户身份信息的步骤并不是必须执行的,例如:在一些场景中,用户A的订单信息,也可以采用用户B的账户信息进行支付,在超市收银台,结算完商品之后,用户A由于特殊原因(例如:手机没电、账户金额不够等)时,可能会需求周围人或者认识的人帮助付款,此时,即使不对用户的身份信息进行核验,也可以基于其他用户的付款码为该用户的商品进行付款。因此,上述步骤是在实际应用场景中的选择操作,并不对本申请的技术方案的保护范围进行限制。
所述将所述支付反馈信息采用所述第二元件通过磁场通信方式发送至所述终端设备,具体可以包括:
将所述支付反馈信息进行加密,得到加密后的支付反馈信息;
将所述加密后的支付反馈信息通过磁场通信方式发送至所述终端设备。
为了保证支付反馈信息的安全性,从而保障数据传输过程中的安全性。具体地,可以对支付反馈信息中的所有信息都进行加密,例如:用户信息、支付账户信息、商家信息、商品信息等,也可以进队支付反馈信息中的部分信息进行加密,例如:用户标识可以加密,特别是对于采用身份证号码或手机号码之类作为用户ID的情况。
上述加密,即可以采用密钥加密。例如:采用商家侧的扫码设备的私钥对支付反馈信息进行加密,将公钥发送给终端设备,终端设备采用公钥才能对支付反馈信息进行解密。具体,可以是对称加密,也可以是非对称加密。
例如:还可以采用哈希算法对支付反馈信息进行加密,计算支付反馈信息的哈希值,将计算得到的支付反馈信息的哈希值传输给终端设备。
通过上述方式,可以保障传输的信息是经过加密的,以确保数据传输过程中的安全。类似的,传输的信息,可以由发送方(扫码设备)用自身的秘钥签名,从而通过验证签名的过程证明该数据是由发送方发送的,且内容是完整的,没有被篡改。
可选的,所述第一元件可以为磁传感器,所述第二元件可以为磁感应线圈;所述将所述加密后的支付反馈信息通过磁场通信方式发送至所述终端设备,具体可以包括:
将所述加密后的支付反馈信息转换为二进制编码;
基于所述二进制编码,通过单片机控制所述磁感应线圈按照二进制编码中的二进制位值产生电流信号;
基于所述电流信号产生所述二进制编码对应的磁场信号。
在实际应用场景中,支付反馈信息中可以支付账户信息(银行卡后四位、支付账户ID等)、商家信息(商家名称)、支付的商品信息、支付金额信息等等。二进制序列可以是对支付反馈信息进行编码得到的序列。为了让计算机识别,可以利用计算机内部逻辑,用数字“0”和“1”作为代码,同时使用若干个与二进制相对应的几何形体组成二进制序列。
基于所述二进制编码,通过单片机控制所述磁感应线圈按照二进制编码中的二进制位值产生电流信号,可以根据二进制编码向磁感应线圈中通电,从而产生对应的磁场信号。具体地,在实际应用中,可以设置磁感性线圈中有电流时,检测到磁场是1,线圈中无电流,没有检测到磁场是0,以此来传递二进制编码。
另外,用户终端向扫码设备传输的二维码图像信息(支付信息)也可以进行加密,商家端通过扫码设备得到的是加密后的支付信息。
终端设备与扫码设备之间的信息传输方式可以结合图3进行说明:
图3为本说明书实施例提供的信息传输示意图。
如图3所示,在用户端的终端设备向扫码设备传输支付信息时,可以先采编码算法对支付信息进行加密,生成二进制编码,基于二进制编码生成付款二维码图像,商家端通过扫码设备扫描付款二维码图像,得到加密的支付信息,对付款二维码图像进行解析,得到解析后的支付信息。
在商户端的扫码设备向终端设备传输支付反馈信息时,支付反馈信息可以是支付结果信息,包括具体被扣除的金额信息、以及商家信息等。商家端向用户的支付反馈信息传递,可以通过将支付反馈信息经过加密算法加密后,以二进制编码方式控制磁感应线圈向外传送。其中当磁感应线圈通电时,产生磁场,磁传感器检测到突变的磁场表示1,线圈不通电时无突变磁场表示0,以此将加密后的二进制编码支付反馈信息传递给用户手机端。用户手机端再通过解密算法获得最终的支付反馈信息。
通过上述方法,通过增加磁感应线圈结合加密算法,将支付信息以二进制编码方式传递给用户手机端;通过二维码与磁感应线圈相结合方式解决线下用户在线商家离线和用户商家双离线状态下移动支付问题。
可选的,所述扫码设备获取所述终端设备的屏幕中显示的二维码图像信息,具体可以包括:
监测所述终端设备与自身之间的距离;
当所述距离满足预设磁场感应距离时,获取所述终端设备的屏幕中显示的二维码图像信息。
在具体实现过程中,预设磁场感应距离可以是预先设置的,例如:设置终端设备与扫码设备距离50厘米之内,终端设备上才显示二维码图像信息,或者只有在1米之内,扫码设备才扫描终端设备的屏幕中显示的二维码。
当然,预设磁场感应距离也可以是由磁场强度决定的,磁场强度越大,预设磁场感应距离就越大。即所述预设磁场感应距离由所述磁感应线圈的匝数以及线圈中的电流大小共同决定。
可选的,所述判断对于所述二维码图像信息中是否包含预设内容信息之后,还可以包括:
当所述二维码图像信息中不包含所述预设内容信息时,生成扫描失败信息;
将所述扫描失败信息采用第二元件通过磁场通信方式发送至所述终端设备。
在实际应用场景中,无论扫描设备扫描终端设备上显示的二维码图像信息是否成功,都可以将相应的信息采用第二元件通过磁场通信方式传送给终端设备。
其中,所述扫描失败信息可以包括:失败错误码信息以及提示信息;所述提示信息用于表示扫描失败的原因。在扫描失败后,可以将扫描失败信息发送至终端设备,终端设备为用户显示该扫描失败信息,用户基于扫描失败信息可以执行相应的行为,例如:当是由于二维码未刷新导致扫描失败时,可以提示用户对付款二维码进行刷新。
在实际应用场景中,本方案可以应用在多个应用场景中,例如:终端设备与扫码设备均在线、终端设备在线而扫码设备均离线、终端设备离线而扫码设备均在线、终端设备与扫码设备双离线。其中,当扫码设备在线时,可以使用网络传输信息,也可以采用本方案的方法传输信息。
可选的,当所述终端设备与所述扫描设备中的至少一个设备处于在线状态时,所述确定所述二维码图像信息中包含的支付账户信息之后,还可以包括:
基于所述支付账户信息,在预设时间段内,查询是否存在所述支付账户信息对应的支付反馈信息;
若存在所述支付账户信息对应的支付反馈信息,则终止本次针对所述支付账户信息进行扣款的任务;
若不存在所述支付账户信息对应的支付反馈信息,则基于所述支付账户信息对订单信息进行预支付。
为了避免重复扣款,在用户和商家双离线的场景下,用户和商家通过上述方案进行支付信息传递后,若双方均存在长时间离线的情况下,需要通过支付账号与设备之间的唯一绑定,即在新的在线设备(PC或者手机等)上登陆账号必须由之前绑定的设备授权,以使两个或多个登录有该支付账号的设备可以同步支付信息,从而避免长时间离线下通过新的在线设备进行支付。
而对于扫码设备,在进行预支付之前,为了避免对终端设备的支付账户进行重复扣款,可以先查询自身生成的支付反馈信息记录中是否存在该支付账户信息在预设时间段内对应的记录,如果有,可以确定已经对该支付账户进行了预支付。
可选的,所述将所述加密后的支付反馈信息通过磁场通信方式发送至所述终端设备之前,还可以包括:
查询所述扫码设备的服务器中是否存在向所述终端设备发送所述加密后的支付反馈信息的发送记录;
若存在,则停止向所述终端设备发送所述加密后的支付反馈信息的发送记录;
若不存在,则将所述加密后的支付反馈信息通过磁场通信方式发送至所述终端设备。
通过上述方法,用户和商家双离线情况下,可通过上述交互方式完成商家与用户之间支付信息的传递,但若长时间双离线,支付账号如数字钱包等可以与线下支付设备之间形成唯一绑定,防止其他在线设备因无法同步账户信息做出额外支付。
实施例3
图4为本说明书实施例提供的应用于终端设备的一种离线支付方法的流程示意图。从程序角度而言,流程的执行主体可以为搭载于应用服务器的程序或应用客户端。在本说明书实施例中,涉及到的信息交互主体可以包括扫码设备以及终端设备。在本实施例中,执行主体可以是终端设备。
如图4所示,该流程可以包括以下步骤:
步骤410:终端设备接收显示触发指令;所述显示触发指令用于指示所述终端设备显示二维码图像信息。
触发指令可以是由终端设备的服务器发送的,此时,发送显示触发指令的触发条件可以是用户的操作行为信息,例如:用户点击“出示付款码”的功能按钮。触发指令也可以是由除终端设备以及扫码设备之外的第三服务器发送,该服务器可以接收扫码设备发送的商品订单生成信息,确定扫码设备已完成商品统计清算,此时,第三服务器可以向终端设备发送显示触发指令,以指示终端设备显示用于付款的二维码图像信息。
步骤420:基于所述显示触发指令,在所述终端设备屏幕中显示二维码图像信息,以供扫码设备对所述二维码图像信息进行扫描;所述终端设备中安装有至少具有磁场感应功能的第一元件;所述扫码设备中安装有至少具有磁场激发功能的第二元件。
步骤430:接收所述扫码设备返回的支付反馈信息;所述支付反馈信息是所述扫码设备对所述二维码图像信息进行扫描后,确定所述二维码图像信息中包含预设内容信息后,采用所述第二元件通过磁场通信方式发送至所述终端设备的;所述支付反馈信息;所述支付反馈信息用于表示所述扫码设备已接收到所述预设内容信息。
需要说明的是,该实施例中的部分步骤的实现过程以及解释与实施例1相同,具体可以参见实施例的描述,对此,本实施例不再进行赘述。
应当理解,本说明书一个或多个实施例所述的方法其中部分步骤的顺序可以根据实际需要相互交换,或者其中的部分步骤也可以省略或删除。
图4中的方法,通过安装有至少具有磁场感应功能的第一元件的终端设备接收用于指示所述终端设备显示二维码图像信息的显示触发指令;基于所述显示触发指令,在所述终端设备屏幕中显示二维码图像信息,以供安装有至少具有磁场激发功能的第二元件的扫码设备对所述二维码图像信息进行扫描;接收所述扫码设备返回的支付反馈信息;所述支付反馈信息是所述扫码设备对所述二维码图像信息进行扫描后,确定所述二维码图像信息中包含预设内容信息后,采用所述第二元件通过磁场通信方式发送至所述终端设备的;所述支付反馈信息;所述支付反馈信息用于表示所述扫码设备已接收到所述预设内容信息。用户终端通过二维码图像信息向扫码设备传输终端设备的支付信息(用户信息以及账户信息等),扫码设备通过第二元件采用磁场通信的方式向终端设备传输支付反馈信息,即使在扫码设备处于离线状态时,或者终端设备和扫码设备处于双离线状态时,均能够实现扫码设备以及终端设备之间的信息传输,解决双离线状态下的移动支付的问题。
基于图4的方法,本说明书实施例还提供了该方法的一些具体实施方案,下面进行说明。
所述基于所述显示触发指令,在所述终端设备屏幕中显示二维码图像信息,以供扫码设备对所述二维码图像信息进行扫描之后,还可以包括:
接收所述扫码设备返回的扫描失败信息;所述扫描失败信息中包括:失败错误码信息以及提示信息;所述提示信息用于标识扫描失败的原因。
对所述扫描失败信息进行显示。
其中,基于所述失败错误码信息,可以确定所述支付失败信息对应的错误类型,错误码可以是一段序列,具体地,错误码可以是由字母和数字组成的序列,错误码可以和错误的语义进行对应,例如:错误码A对应二维码失效,错误码B对应未扫描到二维码、错误码C对应账户余额不足等等。
可选的,所述第一元件可以为磁传感器,所述第二元件可以为磁感应线圈;
所述接收所述扫码设备返回的支付反馈信息,具体可以包括:
基于所述磁传感器接收通过所述磁感应线圈产生的磁场信号;
将所述磁场信号转换为二进制编码;
对所述二进制编码进行解密,得到支付反馈信息。
对于终端设备,接收到扫码设备通过磁场通信方式传输的加密后的支付反馈信息之后,也需要对加密后的支付反馈信息进行解密。
上述两个实施例中的方法,可以结合图5进行说明。
图5为本说明书实施例提供的一种离线支付方法的整体流程示意图。
图5中的部分名词解释如下:
用户数字钱包:数字钱包可以是一种能使用户在Web网上支付货款的软件。可以保存信用卡号码和其它个人信息,如送货地址。数据一旦被输入,就自动转移到商家网站的订货域。使用数字钱包时,当消费者购买物品时,不需要填写每个站点上的订单,因为信息已经存储了,并自动更新和进入到厂商站点的订货域。消费者使用数字钱包时也能得到好处,因为他们的信息被加密了,即由私人软件代码加以保护。商家也避免了受骗而得到保护,也从中获益。数字钱包可以表示用户的付款二维码中的支付账户。
如图5所示,流程如下:
用户打开手机端的数字钱包,即使处于离线状态,也可以通过本地算法生成付款二维码;商家的扫码设备扫用户的付款二维码,根据扫码结果分别执行不同步骤:
若扫码失败,直接通过MCU控制磁感应线圈传递扫描失败的信息,手机的磁传感器检测到扫描失败信息后通知给用户支付失败。
若支付成功,商家完成收款,商家端数字钱包完成入账检测后将收款的信息经过加密算法加密传递给磁感应线圈,磁感应线圈以磁场方式将收款结果传递给手机的磁传感器,在通知用户数字钱包完成收款结果的校验与确认。
离线支付场景,需要解决收款方与付款方双方的信息传递,上述实施例中,用户端向商家端的信息传递通过二维码方式,被商家的扫码设备捕获,从而完成用户到商家的支付信息传递。商家端向用户端的信息传递通过磁感应线圈以磁场的方式发射出去被用户手机的磁传感器捕获,从而完成商家到用户的支付信息传递。在用户在线商家离线场景下,可通过磁感应线圈与磁传感器之间的交互将商家支付信息传递给用户手机端,手机端再联网同步给商家账户,同时也与线下商家端扫码结果进行核对校验,即商家的支付结果传递给用户端后可通过用户端联网同步支付结果到商家账户,同时与线下商家扫码的结果进行核对校验。
基于同样的思路,本说明书实施例还提供了上述方法对应的装置。图6为本说明书实施例提供的应用于扫码设备的一种离线支付装置的结构示意图。如图6所示,该装置可以包括:
二维码图像信息获取模块610,用于扫码设备获取终端设备的屏幕中显示的二维码图像信息;所述终端设备中安装有至少具有磁场感应功能的第一元件;所述扫码设备中安装有至少具有磁场激发功能的第二元件;
判断模块620,用于判断对于所述二维码图像信息中是否包含预设内容信息;
支付反馈信息生成模块630,用于当所述二维码图像信息中包含所述预设内容信息时,生成支付反馈信息;所述支付反馈信息用于表示所述扫码设备已接收到所述预设内容信息;
支付反馈信息发送模块640,用于将所述支付反馈信息采用所述第二元件通过磁场通信方式发送至所述终端设备。
基于图6的装置,本说明书实施例还提供了该装置的一些具体实施方案,下面进行说明。
可选的,所述预设内容信息可以包括用户身份标识信息以及支付账户信息;所述支付反馈信息生成模块630,具体可以包括:
支付账户信息确定单元,用于确定所述二维码图像信息中包含的支付账户信息;
支付反馈信息生成单元,用于基于所述支付账户信息对订单信息进行预支付,得到支付反馈信息。
可选的,所述装置,还可以包括:
用户信息获取模块,用于获取待支付订单信息中的用户信息;
匹配模块,用于将所述用户信息与所述用户标识信息进行匹配;
所述支付账户信息确定单元,具体用于:
当所述用户信息与所述用户标识信息匹配成功时,确定所述二维码图像信息中包含的支付账户信息。
可选的,所述支付反馈信息发送模块640,具体可以包括:
加密单元,用于将所述支付反馈信息进行加密,得到加密后的支付反馈信息;
支付反馈信息发送单元,用于将所述加密后的支付反馈信息通过磁场通信方式发送至所述终端设备。
可选的,所述第一元件可以为磁传感器,所述第二元件可以为磁感应线圈;
所述支付反馈信息发送单元,具体可以包括:
转换子单元,用于将所述加密后的支付反馈信息转换为二进制编码;
电流信号产生子单元,用于基于所述二进制编码,通过单片机控制所述磁感应线圈按照二进制编码中的二进制位值产生电流信号;
磁场信息产生子单元,用于基于所述电流信号产生所述二进制编码对应的磁场信号。
可选的,所述二维码图像信息获取模块610,具体可以包括:
距离监测单元,用于监测所述终端设备与自身之间的距离;
二维码图像信息获取单元,用于当所述距离满足预设磁场感应距离时,获取所述终端设备的屏幕中显示的二维码图像信息。
可选的,所述装置,还可以包括:
扫描失败信息生成模块,用于当所述二维码图像信息中不包含所述预设内容信息时,生成扫描失败信息;
扫描失败信息发送模块,用于将所述扫描失败信息采用第二元件通过磁场通信方式发送至所述终端设备。
可选的,所述扫描失败信息中可以包括:失败错误码信息以及提示信息;所述提示信息可以用于表示扫描失败的原因。
可选的,所述终端设备与所述扫描设备可以均处于离线状态。
可选的,当所述终端设备与所述扫描设备中的至少一个设备处于在线状态时,所述支付反馈信息生成模块630,还可以包括:
查询单元,用于基于所述支付账户信息,在预设时间段内,查询是否存在所述支付账户信息对应的支付反馈信息;
终止任务单元,用于若存在所述支付账户信息对应的支付反馈信息,则终止本次针对所述支付账户信息进行扣款的任务;
预支付单元,用于若不存在所述支付账户信息对应的支付反馈信息,则基于所述支付账户信息对订单信息进行预支付。
可选的,所述支付反馈信息发送模块640,还可以包括:
发送记录查询单元,用于查询所述扫码设备的服务器中是否存在向所述终端设备发送所述加密后的支付反馈信息的发送记录;
停止发送记录单元,用于若存在,则停止向所述终端设备发送所述加密后的支付反馈信息的发送记录;
信息发送单元,用于若不存在,则将所述加密后的支付反馈信息通过磁场通信方式发送至所述终端设备。
基于同样的思路,本说明书实施例还提供了上述方法对应的装置。图7为本说明书实施例提供的应用于终端设备的一种离线支付装置的结构示意图。如图7所示,该装置可以包括:
显示触发指令接收模块710,用于终端设备接收显示触发指令;所述显示触发指令用于指示所述终端设备显示二维码图像信息;
二维码图像信息显示模块720,用于基于所述显示触发指令,在所述终端设备屏幕中显示二维码图像信息,以供扫码设备对所述二维码图像信息进行扫描;所述终端设备中安装有至少具有磁场感应功能的第一元件;所述扫码设备中安装有至少具有磁场激发功能的第二元件;
支付反馈信息接收模块730,用于接收所述扫码设备返回的支付反馈信息;所述支付反馈信息是所述扫码设备对所述二维码图像信息进行扫描后,确定所述二维码图像信息中包含预设内容信息后,采用所述第二元件通过磁场通信方式发送至所述终端设备的;所述支付反馈信息;所述支付反馈信息用于表示所述扫码设备已接收到所述预设内容信息。
基于图7的装置,本说明书实施例还提供了该装置的一些具体实施方案,下面进行说明。
可选的,所述装置,还可以包括:
支付反馈信息接收模块,用于接收所述扫码设备返回的扫描失败信息;所述扫描失败信息中包括:失败错误码信息以及提示信息;所述提示信息用于标识扫描失败的原因。
对所述扫描失败信息进行显示。
可选的,所述第一元件可以为磁传感器,所述第二元件可以为磁感应线圈;
所述支付反馈信息接收模块730,具体可以用于:
基于所述磁传感器接收通过所述磁感应线圈产生的磁场信号;
将所述磁场信号转换为二进制编码;
对所述二进制编码进行解密,得到支付反馈信息。
基于同样的思路,本说明书实施例还提供了上述方法对应的设备。
图8为本说明书实施例提供的一种离线支付设备的结构示意图。如图8所示,设备800可以包括:
至少一个处理器810;以及,
与所述至少一个处理器通信连接的存储器830;其中,
所述存储器830存储有可被所述至少一个处理器810执行的指令820。
对应于实施例1,所述指令被所述至少一个处理器810执行,以使所述至少一个处理器810能够:
扫码设备获取终端设备的屏幕中显示的二维码图像信息;所述终端设备中安装有至少具有磁场感应功能的第一元件;所述扫码设备中安装有至少具有磁场激发功能的第二元件;
判断对于所述二维码图像信息中是否包含预设内容信息;
当所述二维码图像信息中包含所述预设内容信息时,生成支付反馈信息;所述支付反馈信息用于表示所述扫码设备已接收到所述预设内容信息;
将所述支付反馈信息采用所述第二元件通过磁场通信方式发送至所述终端设备。
对应于实施例2,所述指令被所述至少一个处理器810执行,以使所述至少一个处理器810能够:
终端设备接收显示触发指令;所述显示触发指令用于指示所述终端设备显示二维码图像信息;
基于所述显示触发指令,在所述终端设备屏幕中显示二维码图像信息,以供扫码设备对所述二维码图像信息进行扫描;所述终端设备中安装有至少具有磁场感应功能的第一元件;所述扫码设备中安装有至少具有磁场激发功能的第二元件;
接收所述扫码设备返回的支付反馈信息;所述支付反馈信息是所述扫码设备对所述二维码图像信息进行扫描后,确定所述二维码图像信息中包含预设内容信息后,采用所述第二元件通过磁场通信方式发送至所述终端设备的;所述支付反馈信息;所述支付反馈信息用于表示所述扫码设备已接收到所述预设内容信息。
基于同样的思路,本说明书实施例还提供了上述方法对应的计算机可读介质。计算机可读介质上存储有计算机可读指令。
对应于实施例1,所述计算机可读指令可被处理器执行以实现以下方法:
扫码设备获取终端设备的屏幕中显示的二维码图像信息;所述终端设备中安装有至少具有磁场感应功能的第一元件;所述扫码设备中安装有至少具有磁场激发功能的第二元件;
判断对于所述二维码图像信息中是否包含预设内容信息;
当所述二维码图像信息中包含所述预设内容信息时,生成支付反馈信息;所述支付反馈信息用于表示所述扫码设备已接收到所述预设内容信息;
将所述支付反馈信息采用所述第二元件通过磁场通信方式发送至所述终端设备。
对应于实施例2,所述计算机可读指令可被处理器执行以实现以下方法:
终端设备接收显示触发指令;所述显示触发指令用于指示所述终端设备显示二维码图像信息;
基于所述显示触发指令,在所述终端设备屏幕中显示二维码图像信息,以供扫码设备对所述二维码图像信息进行扫描;所述终端设备中安装有至少具有磁场感应功能的第一元件;所述扫码设备中安装有至少具有磁场激发功能的第二元件;
接收所述扫码设备返回的支付反馈信息;所述支付反馈信息是所述扫码设备对所述二维码图像信息进行扫描后,确定所述二维码图像信息中包含预设内容信息后,采用所述第二元件通过磁场通信方式发送至所述终端设备的;所述支付反馈信息;所述支付反馈信息用于表示所述扫码设备已接收到所述预设内容信息。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于设备实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字符系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字符助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字符多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带式磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。