具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定***结构、技术之类的具体细节,以便透彻理解本发明实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本发明。在其它情况中,省略对众所周知的***、***、电路以及方法的详细说明,以免不必要的细节妨碍本发明的描述。
为了说明本发明所述的技术方案,下面通过具体实施例来进行说明。请参考图1,图1示出了本发明实施例提供的一种支付方法的实现流程,详述如下:
在步骤S101中,将具有相同收款方信息的商户的应放款金额进行合并,生成放款指令信息。
在本发明实施例中,由于个人或公司所拥有的银行账号具有唯一性,上述具有相同收款方信息的商户具体为具有相同收款账号的商户。在这里,一个商户对应有一个收款账号,由于不同的商户可能会有相同的收款账号,那么对应生成的放款指令信息的数量至少为一条,最多与商户数量相同。
在这里,放款指令信息包括但不限于收款方信息、付款方信息、应放款金额和备注等。在这里,收款方信息和付款方信息中包含相应的账户名称、账号等信息;应放款金额具体为合并后的具有相同收款方信息的所有商户的应放款金额总和。
可以理解的是,具有相同收款方信息的商户的应放款金额还可以为具有相同收款账号的商户的最终放款金额,比如已经进行金额轧差之后所得到的最终放款金额。
在步骤S102中,确定所述放款指令信息中的收款方的账号类型是为对公账号还是对私账号。
在本发明实施例中,由于不同的银行对对私账号的单笔支付金额有一定的限制,不能超过一定的支付阈值,比如,对私支付中单笔支付不能超过5万元,这样,我们就需要区分各个收款方的账号类型具体是对公账号还是对私账号,以便于进行下一步操作。
可以理解的是,对公账号就是非居民(个人)账户所对应的账号,如公司、行政事业单位等银行账号,对私账号就是居民(个人)账号,如张三、李四等个人用户的银行账户对应的账号。
具体的,如何区分各个收款方的账号类型是为对公账号还是为对私账号,可以通过下述步骤实现:
获取所述放款指令信息中的收款方的账户信息;所述账户信息包括账户名称;
计算所述账户名称的字符长度;
将所述字符长度与预设字符阈值进行比较;
当所述字符长度大于预设字符阈值时,将所述账户名称对应的账号设定为对公账号;
当所述字符长度小于预设字符阈值时,将所述账户名称对应的账号设定为对私账号。
可以理解的是,由于对私账号和对公账号相对应的账号名称长度有一定的限制要求,比如对私账号只能是个人开设的账号,其对应的账户名称为用户的姓名,那么该对私账号相应的账户名称的字符长度也就被限制在4到8个字符之内;而对公账号相应的账户名称是以公司名称而开设的,一般都会超过8个字符,根据账户名称的字符长度,可以方便快速地判断其对应账号的账号类型是为对公账号还是对私账号。
在步骤S103中,当所述放款指令信息中的收款方的账号类型为对私账号时,根据预设单笔支付阈值判断是否将所述放款指令信息拆分为放款子指令信息。
在本发明实施例中,在步骤S102的说明中可知,由于不同的银行对对私账号的单笔支付金额有一定的限制,不能超过一定的支付阈值,因此,在处理对私账号的支付过程中,需要判断是否需要将当前放款指令信息中对应的支付金额进行拆分处理,从而生成包含拆分后的支付金额的放款子指令信息。
具体的,预设单笔支付阈值可以是根据各家银行中对私支付的单笔限额而预先设置的最小单笔支付阈值;也可以是从各个银行数据处理中心所获取的对私支付的单笔限额,即根据银行数据处理中心反馈的单笔支付限额而设定的单笔支付阈值。
在步骤S104中,将所述放款子指令信息与未拆分的放款指令信息发送至银行数据处理中心。
在本发明实施例中,未拆分的放款指令信息包括账号类型为对公账号的放款指令信息,和单笔支付金额未超过预设单笔支付阈值的并且账号类型为对私账号的放款指令信息。
在这里,支付***将放款子指令信息和未拆分的放款指令信息发送至银行数据处理中心后,银行数据处理中心根据其包含的支付金额和账号分别将对应的款项支付至对应的账号中。
在本发明实施例中,通过将具有相同收款方信息的商户的应放款金额进行合并,生成放款指令后;再在确定所述放款指令信息中的收款方的账号类型为对私账号时,根据预设单笔支付阈值判断是否将所述放款指令信息拆分为放款子指令信息;将所述放款子指令信息与未拆分的放款指令信息发送至银行数据处理中心。降低了在处理对私账号的支付过程中需要手工拆分支付金额而导致的居高不下的错误率,减轻了人们的工作负担,并提高了拆分的准确率和效率。
具体的,在步骤S103中,图2提供了一种将放款指令信息拆分为放款子指令信息的具体实现流程:
在步骤S201中,获取所述放款指令信息中包含的应放款金额;
在步骤S202中,将所述应放款金额与所述预设单笔支付阈值进行比较;
在步骤S203中,当所述应放款金额超过所述预设单笔支付阈值时,将所述应放款金额对应的放款指令信息拆分为若干条放款子指令信息;
在步骤S204中,当所述应放款金额未超过所述预设单笔支付阈值时,不执行任何操作。
在本发明实施例中,当对私账号中的支付金额,即应放款金额超过预设单笔支付阈值时,由于银行的支付限制并不能完成该笔支付,需要将当前的放款金额拆分为小于或等于预设单笔支付阈值的金额,以使得能够顺利完成该笔支付。
在这里,步骤S203中将所述应放款金额对应的放款指令信息拆分为若干条放款子指令信息具体可以为:
根据预设的拆分数量将所述放款指令信息拆分为所述拆分数量对应的放款子指令信息。
可以理解的是,在将放款指令信息拆分为所述拆分数量对应的放款子指令信息后,再次执行步骤S202至204,以判断是否需要对该放款子指令信息进行拆分以使得其所包含的应放款金额不超过预设单笔支付阈值。
进一步的,为了提高拆分处理的效率,在步骤S203中,图3提供了另一种将放款指令信息拆分为放款子指令信息的具体实现流程:
在步骤S301中,将所述应放款金额与所述预设单笔支付阈值进行相除后向上取整,将所得到的值作为所述放款子指令信息的拆分条数。
在步骤S302中,根据所述拆分条数将所述应放款金额对应的放款指令信息拆分为对应条数的放款子指令信息。
在本发明实施例中,将应放款金额与预设单笔支付阈值的比值向上取整后的值作为拆分条数,可以减少拆分处理的步骤,提高拆分处理的效率;而且可以减少拆分条数,从而相应地减少放款子指令信息,能够有效地提高银行数据处理中心的工作效率。
可以理解的是,在步骤S302中,可以将应放款金额按照拆分条数进行平均分配,即每条放款子指令信息中包含的应放款金额为原应放款金额与拆分条数的商;也可以将所述应放款金额优选按照预设单笔支付阈值和剩余的应放款金额分别分配至对应的放款子指令信息中,比如原应放款金额为8万,预设单笔支付阈值为5万,那么,包含原应放款金额为8万的放款指令信息可以拆分为两条包含放款金额为4万的放款子指令信息,或拆分为一条包含放款金额为5万的放款子指令信息和一条包含放款金额为3万的放款子指令信息。
优选的,为了进一步提高后期维护的工作效率,在步骤S104之前或之后,还包括以下步骤:
将所述放款子指令信息与未拆分的放款指令信息存储至指令信息明细表中。
在本发明实施例中,通过指令信息明细表,可以精确地查询到每个商户的放款信息,应放款金额等,并对应到具体的流水账号,使得工作人员能够快速地查询相应的款项流向和进行精确的对账,提高后期维护的工作效率。
在本发明实施例中,步骤S101一种生成放款指令信息的方法的具体实现流程如图4所示:在步骤S401中,获取所有的合同信息和合同对应的商户汇总信息。
在本发明实施例中,商户汇总信息具体为将合同中所有商户的名称进行汇总,仅保留一个具有相同名称的商户,也就是商户汇总信息中没有名称重复的商户,但在所有的合同信息中可以找到对应的商户。
为了方便查询商户与合同之间的关系,在步骤S401之后,还包括以下步骤:
将商户与包含其名称的合同进行关联匹配,生成对应的关联标识。
通过将商户与包含有其名称的合同进行关联匹配后生成对应的关联标识,使得工作人员能够根据该关联标识方便地查询到对应的商户或合同,准确地找到两者之间的关系,实现精准查询。在步骤S402中,对所述商户汇总信息中同一商户的合同进行金额轧差处理,得到该商户的最终放款金额。
在本发明实施例中,金额轧差处理具体为结算轧差。结算轧差是指交易正常结束时,交易各方进行的轧差操作,结算轧差通常在结算之前先轧净同种类的相互债务债权。
可以理解的是,在商户所签订的合同中,有可能由于某些原因,虽然已经进行了收款或付款处理,但是该合同并没有执行,也就是合同撤销了,当处理这一批合同时,需要将已调整为负数的撤销合同和当前其他所有要结算的合同进行轧差操作,从而得到最终的付款金额。为了便于计算,这里的商户对应仅有一个账号,不同商户的账号可以相同,也可以完全不同,也就是说所得到的最终的付款金额为该商户的最终放款金额。
当然,如果没有需要调整的撤销合同,也可以直接将该商户名下所有的合同中的应收款金额进行求和,以得到该商户的最终放款金额。
在步骤S403中,根据合同信息获取各个商户的收款方信息,将具有相同收款方信息的商户的最终放款金额进行合并,得到同一收款方的应放款金额。
在步骤S404中,根据合同信息获取各个商户的资方信息,将所述同一收款方的应放款金额与所述资方信息进行匹配关联,生成相应的付款指令信息。
在本发明实施例中,资方信息为资方的付款账号、付款金额、付款备注等信息,具体是指与当前商户进行交易的另一商户或公司,在合同中表现为需要付款的一方的信息,即资方信息具体表现为付款方的付款账号、付款金额、付款备注等。
在这里,匹配关联具体是指将具有交易关系的商户和资方的相关信息进行匹配关联,以得到具体付款指令信息,以便于银行数据处理中心将对应的应放款金额发放至匹配的收款方,并从匹配的付款方中扣除相应的金额。
为了能够快速查找定位合同、商户和放款指令信息这三者之间的关系,便于提高工作人员的对账效率和后期维护,在步骤S404之后,还包括以下步骤:将商户、包含其名称的合同和其对应的放款指令信息进行映射关联后存储至映射关联表中。
根据合同信息获取各个商户的资方信息,将所述同一收款方的应放款金额与所述资方信息进行匹配关联,生成相应的付款指令信息。
在本发明实施例中,通过将商户、合同和放款指令信息进行映射关联后存储至映射关联表中,从而能够快速定位,找到三者之间的关系从而进行相应的处理,提高了工作效率和准确性。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
对应于上文实施例所述的一种支付方法,图5示出了本发明实施例提供的一种支付***的示意图,为了便于说明,仅示出了与本发明实施例相关的部分。
参照图5,该***包括:
放款指令信息生成单元51,用于将具有相同收款方信息的商户的应放款金额进行合并,生成放款指令信息;
账号类型判断单元52,用于确定所述放款指令信息中的收款方的账号类型是为对公账号还是对私账号;
拆分判断单元53,用于当所述放款指令信息中的收款方的账号类型为对私账号时,根据预设单笔支付阈值判断是否将所述放款指令信息拆分为放款子指令信息;
信息发送单元54,用于将所述放款子指令信息与未拆分的放款指令信息发送至银行数据处理中心。
具体的,所述账号类型判断单元52包括:
账户信息获取子单元,用于获取放款指令信息中的收款方的账户信息;所述账户信息包括账户名称;
字符长度计算子单元,用于计算所述账户名称的字符长度;
字符长度比较子单元,用于将所述字符长度与预设字符阈值进行比较;
第一账号类型设定子单元,用于当所述字符长度大于预设字符阈值时,将所述账户名称对应的账号设定为对公账号;
第二账号类型设定子单元,用于当所述字符长度小于预设字符阈值时,将所述账户名称对应的账号设定为对私账号。
进一步的,所述拆分判断单元53包括:
应放款金额获取子单元,用于获取所述放款指令信息中包含的应放款金额;
金额比较单元,用于将所述应放款金额与所述预设单笔支付阈值进行比较;
第一拆分处理子单元,用于当所述应放款金额超过所述预设单笔支付阈值时,将所述应放款金额对应的放款指令信息拆分为若干条放款子指令信息;
第二拆分处理子单元,用于当所述应放款金额未超过所述预设单笔支付阈值时,不执行任何操作。
具体的,所述第一拆分处理子单元具体用于:
将所述应放款金额与所述预设单笔支付阈值进行相除后向上取整,将所得到的值作为所述放款子指令信息的拆分条数;
根据所述拆分条数将所述应放款金额对应的放款指令信息拆分为对应条数的放款子指令信息。
进一步的,所述拆分判断单元53还包括:
信息存储单元,用于将所述放款子指令信息与未拆分的放款指令信息存储至指令信息明细表中。
进一步的,所述放款指令信息生成单元51包括:
汇总信息获取单元,用于获取所有的合同信息和合同对应的商户汇总信息;
金额轧差处理子单元,用于对所述商户汇总信息中同一商户的合同进行金额轧差处理,得到该商户的最终放款金额;
金额合并处理子单元,用于根据合同信息获取各个商户的收款方信息,将具有相同收款方信息的商户的最终放款金额进行合并,得到同一收款方的应放款金额;
付款指令信息生成子单元,用于根据合同信息获取各个商户的资方信息,将所述同一收款方的应放款金额与所述资方信息进行匹配关联,生成相应的付款指令信息。
进一步地,所述放款指令生成单元51还包括:
映射关联处理子单元,用于将商户、包含其名称的合同和其对应的放款指令信息进行映射关联后存储至映射关联表中。
在本发明实施例中,通过将具有相同收款方信息的商户的应放款金额进行合并,生成放款指令后;再在确定所述放款指令信息中的收款方的账号类型为对私账号时,根据预设单笔支付阈值判断是否将所述放款指令信息拆分为放款子指令信息;将所述放款子指令信息与未拆分的放款指令信息发送至银行数据处理中心。降低了在处理对私账号的支付过程中需要手工拆分支付金额而导致的居高不下的错误率,减轻了人们的工作负担,并提高了拆分的准确率和效率。
图6是本发明一实施例提供的一种终端的示意图。如图6所示,该实施例的终端6包括:处理器60、存储器61以及存储在所述存储器61中并可在所述处理器60上运行的计算机程序62。所述处理器60执行所述计算机程序62时实现上述各个支付方法实施例中的步骤,例如图1所示的步骤101至104。或者,所述处理器60执行所述计算机程序62时实现上述各***实施例中各单元的功能,例如图5所示模块51至54的功能。
示例性的,所述计算机程序62可以被分割成一个或多个单元,所述一个或者多个单元被存储在所述存储器61中,并由所述处理器60执行,以完成本发明。所述一个或多个单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序62在所述终端6中的执行过程。例如,所述计算机程序62可以被分割成放款指令信息生成单元51、账号类型判断单元52、拆分判断单元53、信息发送单元54,各单元具体功能如下:
放款指令信息生成单元51,用于将具有相同收款方信息的商户的应放款金额进行合并,生成放款指令信息;
账号类型判断单元52,用于确定所述放款指令信息中的收款方的账号类型是为对公账号还是对私账号;
拆分判断单元53,用于当所述放款指令信息中的收款方的账号类型为对私账号时,根据预设单笔支付阈值判断是否将所述放款指令信息拆分为放款子指令信息;
信息发送单元54,用于将所述放款子指令信息与未拆分的放款指令信息发送至银行数据处理中心。
所述终端6可以是桌上型计算机、笔记本、掌上电脑及智能手机等终端设备。所述终端6可包括,但不仅限于,处理器60、存储器61。本领域技术人员可以理解,图6仅仅是终端6的示例,并不构成对终端6的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述终端还可以包括输入输出设备、网络接入设备、总线等。
所称处理器60可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器61可以是所述终端6的内部存储单元,例如终端6的硬盘或内存。所述存储器61也可以是所述终端6的外部存储设备,例如所述终端6上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器61还可以既包括所述终端6的内部存储单元也包括外部存储设备。所述存储器61用于存储所述计算机程序以及所述终端所需的其他程序和数据。所述存储器61还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述***的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述***中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的实施例中,应该理解到,所揭露的***/终端设备和方法,可以通过其它的方式实现。例如,以上所描述的***/终端设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,***或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或***、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。