Abstract: ABSTRACT A method includes executing, through a computing platform, a first processing engine distinct from a second processing engine and, through the first processing engine, grouping a number of accounts under a single virtual account, detecting a transaction through the computing platform, distributing a requirement of the transaction across a number of accounts of the grouped number of accounts via the single virtual account, and creating an entry related to completion of the transaction in the second processing engine only after addressing the requirement of the transaction through the single virtual account by way of the number of accounts.
Claims:CLAIMS
What is claimed is:
1. A method comprising:
executing, through a computing platform comprising at least one server, a first processing engine distinct from a second processing engine thereof; and
creating, through the first processing engine, a single virtual account,
characterized in that, in accordance with the execution of the first processing engine through the computing platform, the method further comprises:
grouping a number of accounts with the computing platform under the single virtual account, each account created to enable transactions through the computing platform and being accessible through the second processing engine;
detecting a transaction through the computing platform originating from a channel associated with a client device communicatively coupled to the at least one server through a computer network;
determining that a requirement of the transaction is not satisfied solely through one account of the number of accounts via the single virtual account in accordance with the detected transaction;
distributing the requirement of the transaction across a plurality of accounts of the grouped number of accounts to be addressed therethrough via the single virtual account in accordance with the determination of non-satisfaction of the requirement of the transaction; and
creating an entry related to completion of the transaction in the second processing engine only after the addressing of the requirement of the transaction through the single virtual account by way of the plurality of accounts.
2. The method of claim 1, comprising:
the computing platform being associated with at least one of: a banking service entity and a financial service entity, and
the second processing engine being a core banking engine of the computing platform.
3. The method of claim 1, comprising presenting, to the client device initiating the transaction, a view from a perspective of the second processing engine as part of the addressing of the requirement of the transaction.
4. The method of claim 2, comprising the requirement of the transaction being related to a balance in at least one of the number of accounts.
5. The method of claim 1, comprising the first processing engine grouping the number of accounts under the single virtual account dynamically in response to determining the requirement of the transaction.
6. The method of claim 1, comprising distributedly executing at least one of the first processing engine and the second processing engine across the computer network.
7. The method of claim 1, further comprising updating the plurality of accounts in accordance with creating the entry in the second processing engine.
8. A server comprising:
a memory; and
a processor communicatively coupled to the memory, the processor executing instructions to:
execute, as part of a computing platform, a first processing engine distinct from a second processing engine thereof, characterized in that, in accordance with the execution of the first processing engine, the processor further executes instructions to:
create a single virtual account,
group a number of accounts with the computing platform under the single virtual account, each account created to enable transactions through the computing platform and being accessible through the second processing engine,
detect a transaction through the computing platform originating from a channel associated with a client device communicatively coupled to the server through a computer network,
determine that a requirement of the transaction is not satisfied solely through one account of the number of accounts via the single virtual account in accordance with the detected transaction,
distribute, through the first processing engine, the requirement of the transaction across a plurality of accounts of the grouped number of accounts to be addressed therethrough via the single virtual account in accordance with the determination of non-satisfaction of the requirement of the transaction, and
create, through the first processing engine, an entry related to completion of the transaction in the second processing engine only after the addressing of the requirement of the transaction through the single virtual account by way of the plurality of accounts.
9. The server of claim 8, wherein:
the computing platform is associated with at least one of: a banking service entity and a financial service entity, and
the second processing engine is a core banking engine of the computing platform.
10. The server of claim 8, wherein the processor executes instructions to distributedly execute at least one of: the first processing engine and the second processing engine across the computer network.
, Description:VIRTUAL ACCOUNT BASED TRANSACTIONING THROUGH A COMPUTING PLATFORM
FIELD OF TECHNOLOGY
[0001] This disclosure relates generally to transactional computing systems and, more particularly, to virtual account based transactioning through a computing platform.
BACKGROUND
[0002] A computing platform (e.g., a banking platform) may have a number of transactions occurring therethrough. A user of the computing platform may have a number of accounts therewith. A particular account may have a limitation associated therewith. For example, the user may be required to pay an amount greater than a limit allowed through the particular account. In this case, the user may have to manually pay from each of the number of accounts to overcome the aforementioned limitation. The aforementioned payment process/transaction may prove to be quite tedious to the user. Moreover, the entity that has the limitation in accounts thereof may lose customers such as the user because of the unfriendliness of the computing platform associated therewith.
SUMMARY
[0003] Disclosed are a method and a server of virtual account based transactioning through a computing platform.
[0004] In one aspect, a method includes executing, through a computing platform including one or more server(s), a first processing engine distinct from a second processing engine thereof, creating, through the first processing engine, a single virtual account, and grouping, through the first processing engine, a number of accounts with the computing platform under the single virtual account. Each account is created to enable transactions through the computing platform and is accessible through the second processing engine. The method also includes detecting, through the first processing engine, a transaction through the computing platform originating from a channel associated with a client device communicatively coupled to the one or more server(s) through a computer network and determining, through the first processing engine, that a requirement of the transaction is not satisfied solely through one account of the number of accounts via the single virtual account in accordance with the detected transaction.
[0005] Further, the method includes distributing, through the first processing engine, the requirement of the transaction across a number of accounts of the grouped number of accounts to be addressed therethrough via the single virtual account in accordance with the determination of non-satisfaction of the requirement of the transaction, and creating, through the first processing engine, an entry related to completion of the transaction in the second processing engine only after the addressing of the requirement of the transaction through the single virtual account by way of the number of accounts.
[0006] In another aspect, a server includes a memory, and a processor communicatively coupled to the memory. The processor executes instructions to execute, as part of a computing platform, a first processing engine distinct from a second processing engine thereof, create, through the first processing engine, a single virtual account, and group, through the first processing engine, a number of accounts with the computing platform under the single virtual account. Each account is created to enable transactions through the computing platform and is accessible through the second processing engine. The processor also executes instructions to detect, through the first processing engine, a transaction through the computing platform originating from a channel associated with a client device communicatively coupled to the server through a computer network, and determine, through the first processing engine, that a requirement of the transaction is not satisfied solely through one account of the number of accounts via the single virtual account in accordance with the detected transaction.
[0007] Further, the processor executes instructions to distribute, through the first processing engine, the requirement of the transaction across a number of accounts of the grouped number of accounts to be addressed therethrough via the single virtual account in accordance with the determination of non-satisfaction of the requirement of the transaction, and create, through the first processing engine, an entry related to completion of the transaction in the second processing engine only after the addressing of the requirement of the transaction through the single virtual account by way of the number of accounts.
[0008] Other features will be apparent from the accompanying drawings and from the detailed description that follows.
BRIEF DESCRIPTION OF THE DRAWINGS
[0009] The embodiments of this invention are illustrated by way of example and not limitation in the figures of the accompanying drawings, in which like references indicate similar elements and in which:
[0010] Figure 1 is a schematic view of a computing system, according to one or more embodiments.
[0011] Figure 2 is a schematic view of a pre-core engine communicatively coupled to a core banking engine of a computing platform associated with the computing system of Figure 1, according to one or more embodiments.
[0012] Figure 3 is a process flow diagram detailing the operations involved in virtual account based transactioning through the computing platform of the computing system of Figures 1 and 2, according to one or more embodiments.
[0013] Other features of the present embodiments will be apparent from the accompanying drawings and from the detailed description that follows.
DETAILED DESCRIPTION
[0014] Example embodiments, as described below, may be used to provide a method and/or a server of virtual account based transactioning through a computing platform. Although the present embodiments have been described with reference to specific example embodiments, it will be evident that various modifications and changes may be made to these embodiments without departing from the broader spirit and scope of the various embodiments.
[0015] Figure 1 shows a computing system 100 (e.g., a distributed computing system), according to one or more embodiments. In one or more embodiments, computing system 100 may include a number of servers 1021-N communicatively coupled to one another through a computer network 104 (e.g., a Wide Area Network (WAN), a Local Area Network (LAN) and/or a short range network (e.g., WiFi®, Bluetooth®). Other forms of computer network 104 are within the scope of the exemplary embodiments discussed herein. In one or more embodiments, computing system 100 may also include a number of client devices 1061-M communicatively coupled to the number of servers 1021-N through computer network 104. As implied above, computer network 104 may, in some embodiments, encompass a wide variety of computer networks.
[0016] In one or more embodiments, computing system 100 may be a traditional computing system with data centers, a cloud based computing system or a hybrid computing system. In one or more embodiments, computing system 100 may provide one or more computing environment(s) through a computing platform 150 thereof. Computing platform 150, as discussed herein, may encompass hardware, software, operating systems, applications including browsers and/or virtualized environments (e.g., virtual machines representing operating systems, virtual storage). Figure 1 shows a computing platform engine 170 (e.g., a comprehensive engine enabling capabilities and functionalities provided through computing platform 150) executing on a server 1021 and components (e.g., computing platform engine components 1702-N; computing platform engine components 1761-M) executing on other servers 1022-N and client devices 1061-M. Examples of client devices 1061-M may include but are not limited to desktop computers, laptops, notebooks, smart devices and mobile phones. Other client devices 1061-M including thin clients are within the scope of the exemplary embodiments discussed herein. Each client device 1061-M may represent a type of a channel for accessing capabilities provided through computing platform engine 170.
[0017] Each server 1021-N discussed above may be a standalone server or a network of servers configured to operate in conjunction with one another and capable of handling large sets of data. “Processor,” as used herein, may also refer to a number of processors configured to operate in conjunction with one another. In one or more embodiments, each server 1021-N may include a processor 1721-N communicatively coupled to a memory 1741-N. Figure 1 shows computing platform engine 170 stored in memory 1741; computing platform engine 170 is executable through processor 1721. Similarly, computing platform engine components 1702-N and computing platform engine components 1762-M may be stored in corresponding memories to be executed on processors associated therewith.
[0018] Figure 1 also shows data sources 1901-R within computing system 100. In one or more embodiments, data sources 1901-R may include but are not limited to mainframes, Relative Database Management Systems (RDBMS), NoSQL databases, feeds, files, legacy systems, Software-as-a-Service (SaaS), a Management Information System (MIS) and an entitlement data server. In one or more embodiments, data sources 1901-R may be local to one or more servers 1021-N, local to one or more client devices 1061-M and/or external to both the one or more servers 1021-N and the one or more client devices 1061-M. An example data source 1901-R may include account information of authorised users 1921-M; each authorised user 1921-M may be at a client device 1061-M of computing system 100. It should be noted that client device 1061-M (e.g., a common computing resource) may be shared by multiple users and that one authorised user 1921-M per client device 1061-M discussed above is merely for illustrative purposes.
[0019] Other forms of information within data sources 1901-R are within the scope of the exemplary embodiments discussed herein. In one or more embodiments, one authorised user 1921-M may differ from another authorised user 1921-M in terms of roles within an entity or outside thereof. For example, one or more servers 1021-N may be associated with an example entity of a banking institution, and one or more client devices 1061-M may be associated with one or more authorised users 1921-M (e.g., customers of the banking institution, banking personnel). One or more other servers 1021-N may be associated with another example entity of a software service provider associated with computing platform engine 170. One or more other client devices 1061-M may also be associated with one or more other authorised users 1921-M (e.g., sales, pre-sales, testing and/or development team personnel associated with the another example entity of the software service provider).
[0020] In one or more embodiments, one or more data sources 1901-R may reside on legacy systems. In one such implementation, an account that an authorised user 1921-M may have with a banking entity represented through computing platform 150 may not have a balance amount exceeding nine digits prior to a decimal. In other words, the account may not equal or exceed 100 crore or 1 billion of a unit currency (say, USD or INR) as a consolidated balance amount. For example, the aforementioned accounts may have been intended for small banking and financial institutions that may live with such limitations. However, for reasons related to globalization and development of e-commerce, the aforementioned small business accounts may exceed a 1 billion balance limit in unit currencies in some cases.
[0021] In one or more embodiments, to circumvent the limitation, the banking/financial services entity may open more than one account for authorised user 1921-M. In one account, transactions based on checks, Automated Clearing Houses (ACHs) and wire transfers may be conducted. The aforementioned transactions may be routed to repair queues in core banking systems, by which the account where a considerable balance is available is manually selected and the transactions posted therein. In some cases, operations may split transactions when the entire transactional balance is not available in a single account. Manual operational processes may be conducted to combine transactions to provide a consolidated statement to authorised user 1921-M.
[0022] The abovementioned model may not be scalable due to dependency on operational processes. In the case of e-commerce based accounts, transactions are of low value but the volume thereof may be high. Thus, one bank may lose customers thereof based on limitations of handling transactions. One way to tackle the problem due to the aforementioned limitations may involve increasing the length of a maximum capability of the balance amount in the core banking system. However, the cost of the activity involved may be prohibitive. Further, adequate resources with skill and knowledge of the legacy system may not be available. Still further, the risk involved in such a change may be very high.
[0023] The obvious other option may involve replacing the core banking system/engines, which also is fraught with risk and involves prohibitive costs. In a typical banking system, virtual accounts may constitute sub-accounts for one core banking account. Figure 2 shows implementation of a pre-core engine 202 communicatively coupled to a core banking engine 204 of computing platform engine 170, according to one or more embodiments. In one or more embodiments, core banking engine 204 may include one or more engines and/or modules (e.g., sets of instructions) to realize all core banking functionalities provided by a banking/financial institution.
[0024] As seen above, in one or more embodiments, computing platform engine 170 may be implemented on server 1021. It should be noted that core banking engine 204 and pre-core engine 202 may be distributed across servers 1021-N (or, part of computing platform engine components 1701-N) of computing system 100 communicatively coupled to one another through computer network 104. Figure 2 shows core banking engine 204 and pre-core engine 202 solely as part of computing platform engine 170 on server 1021 for illustrative purposes. In one or more embodiments, computing platform engine 170 may also enable exposure of rich functionalities of products (e.g., through core banking engine 204) of a banking/financial institution associated with server 1021 to client devices 1061-M; the aforementioned products may be utilized by client devices 1061-M through foundational Application Programming Interfaces (APIs) that are consumable through various channels 2061-M (e.g., mobile phones, desktop computers, laptop computers, Automated Teller Machines (ATMs)). Figure 2 shows client device 1061 as utilizing a mobile phone channel 2061, client device 1062 as utilizing a desktop computer channel 2062 and client device 106M as an ATM channel 206M merely for illustrative purposes.
[0025] In one or more embodiments, an authorised user 1921-M at a client device 1061-M may have an account with a banking/financial services institution represented by computing system 100. In one or more embodiments, authorised user 1921-M may utilize a banking service component 2081-M (e.g., part of computing platform engine component 1761-M) executing on client device 1061-M to initiate a transaction. Figure 2 shows client device 1061-M as including a processor 2101-M communicatively coupled to a memory 2121-M (e.g., a volatile memory and/or a non-volatile memory), according to one or more embodiments. In one or more embodiments, memory 2121-M may include banking service component 2081-M to enable a corresponding authorised user 1921-M to initiate transactions and perform other functionalities associated with a bank account thereof.
[0026] In one or more embodiments, pre-core engine 202 may create a virtual account for a group of accounts with the banking institution. As shown in Figure 2, core banking engine 204 may have banking information 252 associated therewith. In one or more embodiments, the aforementioned banking information 252 may be stored in one or more databases associated with one or more servers 1021-N of computing system 100. Figure 2 shows banking information 252 stored in one database 270 for illustrative purposes. In one or more embodiments, pre-core engine 202 may create one virtual account 282 for a group of bank accounts 2841-Q (shown as being stored as part of banking information 252). In one or more embodiments, said group of bank accounts 2841-Q may be associated with a single authorised user 1921-M; in certain embodiments, bank accounts 2841-Q may be bank accounts pooled for transactional purposes; bank accounts 2841-Q and other bank accounts may be accessible through core banking engine 204 and each bank account may enable transactions through computing platform 150.
[0027] In one or more embodiments, said grouping may be based on a common identifier across bank accounts 2841-Q; obviously, the common identifier (e.g., common identifier 286) may be part of banking information 252. Virtual account 282, as discussed above, may have a unique account number and may possess all capabilities of a physical account. However, in a typical hierarchy, a single bank account may be a parent node/root node for several virtual accounts by way of the single bank account header. The virtual bank accounts may participate in transactional pools. In contrast, exemplary embodiments discussed herein reverse the typical role(s) of a virtual account. In one or more embodiments, as discussed above, a single virtual account 282 may be created for a group of bank accounts 2841-Q.
[0028] Now, in one or more embodiments, once a transaction 290 through a channel 2061-M (e.g., associated with a client device 1061-M) is detected through pre-core engine 202, pre-core engine 202 may determine virtual account 282 therefor and the group of bank accounts 2841-Q corresponding to virtual account 282. In one or more embodiments, once the determination of the group of bank accounts 2841-Q is done, pre-core engine 202 may determine whether requirements of transaction 290 is satisfied by a single bank account 2841-Q; this determination may be done via virtual account 282 that has the group of bank accounts 2841-Q associated therewith. In other words, in one or more embodiments, pre-core engine 202 may determine whether transaction 290 may be posted in one bank account 2841-Q of the group of bank accounts 2841-Q. For example, transaction 290 may require withdrawal of funds from one or more bank accounts 2841-Q associated with authorised user 1921-M. If a single bank account 2841-Q has enough funds to address requirements of transaction 290, in one or more embodiments, pre-core engine 202 may create an entry 292 for the particular single bank account 2841-Q, following which entry 292 is posted into core banking engine 204. In one or more embodiments, said entry 292 updates the single bank account 2841-Q in core banking engine 204.
[0029] In one or more embodiments, if pre-core engine 202 determines that requirements of transaction 290 may not be addressed through a single bank account 2841-Q that is part of the group via virtual account 282, pre-core engine 202 may split a transactional amount (or value) 294 of transaction 290 into amounts compatible with multiple bank accounts 2841-Q of the group via virtual account 282. In one or more embodiments, only once requirements of transaction 290 are addressed, pre-core engine 202 may create entries 2961-Q (can be less if the number of bank accounts 2841-Q chosen is less than Q) to be posted into core banking engine 204, which updates the corresponding bank accounts 2841-Q.
[0030] Thus, in one or more embodiments, more transactions analogous to transaction 290 may be addressed through computing system 100 including pre-core engine 202. Transactional limitations such as the ones discussed above may, therefore, be avoided. In one or more embodiments, if pre-core engine 202 determines that requirements of transaction 290 cannot be addressed through splitting transaction 290, the abovementioned manual intervention may be triggered. For example, only credit transactions may be repaired and debit transactions may be rejected.
[0031] It should be noted that exemplary embodiments discussed above may not solely be limited to banking/financial services. In certain scenarios such as gaming, legacy systems may not incorporate values above a threshold. In cases of detecting such violations, multiple user accounts may be grouped under a virtual account and the requirements of transactions may thereby be addressed.
[0032] Further, it should be noted that, in one or more embodiments, the grouping of bank accounts 2841-Q under a single virtual account 282 may be performed by pre-core engine 202 dynamically following detection of transaction 290 and determination of requirements of transaction 290. In case pre-core engine 202 determines that any bank account 2841-Q may address the aforementioned requirements, pre-core engine 202 may directly create an entry to post into core banking engine 204 to update a bank account 2841-Q. All reasonable variations are within the scope of the exemplary embodiments discussed herein.
[0033] Still further, authorised user 1921-M may be able to bypass limitations of computing system 100 through pre-core engine 202, which improves efficiency of transactional processing through computing system 100. In one or more embodiments, as pre-core engine 202 may operate in the background, authorised user 1921-M may solely be presented a view that is from the perspective of core banking engine 204, which renders the process seamless.
[0034] Figure 3 shows a process flow diagram detailing the operations involved in virtual account based transactioning through a computing platform (e.g., computing platform 150), according to one or more embodiments. In one or more embodiments, operation 302 may involve executing, through the computing platform including one or more server(s) (e.g., server(s) 1021-N), a first processing engine (e.g., pre-core engine 202) distinct from a second processing engine (e.g., core banking engine 204) thereof. In one or more embodiments, operation 304 may involve creating, through the first processing engine, a single virtual account (e.g., virtual account 282).
[0035] In one or more embodiments, operation 306 may involve grouping, through the first processing engine, a number of accounts (e.g., bank accounts 2841-Q) with the computing platform under the single virtual account. In one or more embodiments, each account may be created to enable transactions through the computing platform and may be accessible through the second processing engine. In one or more embodiments, operation 308 may involve detecting, through the first processing engine, a transaction (e.g., transaction 290) through the computing platform originating from a channel (e.g., a channel 2061-M) associated with a client device (e.g., a client device 1061-M) communicatively coupled to the one or more server(s) through a computer network (e.g., computer network 104).
[0036] In one or more embodiments, operation 310 may involve determining, through the first processing engine, that a requirement of the transaction is not satisfied solely through one account of the number of accounts via the single virtual account in accordance with the detected transaction. In one or more embodiments, operation 312 may involve distributing, through the first processing engine, the requirement of the transaction across a number of accounts of the grouped number of accounts to be addressed therethrough via the single virtual account in accordance with the determination of non-satisfaction of the requirement of the transaction. In one or more embodiments, operation 314 may then involve creating, through the first processing engine, an entry (e.g., entry 292) related to completion of the transaction in the second processing engine only after the addressing of the requirement of the transaction through the single virtual account by way of the number of accounts.
[0037] It may be appreciated that the various systems, methods, and apparatus disclosed herein may be embodied in a non-transitory machine-readable medium (e.g., a hard disk, a Compact Disc (CD), a Digital Video Disc (DVD), a Blu-ray disc®) and/or a machine-accessible medium compatible with a data processing system (e.g., computing system 100, servers 1021-N), and/or may be performed in any order.
[0038] The structures and modules in the figures may be shown as distinct and communicating with only a few specific structures and not others. The structures may be merged with each other, may perform overlapping functions, and may communicate with other structures not shown to be connected in the figures.
[0039] Although the present embodiments have been described with reference to specific example embodiments, it will be evident that various modifications and changes may be made to these embodiments without departing from the broader spirit and scope of the various embodiments. Accordingly, the specification and drawings are to be regarded in an illustrative rather than a restrictive sense.
| # | Name | Date |
|---|---|---|
| 1 | 202141032738-STATEMENT OF UNDERTAKING (FORM 3) [21-07-2021(online)].pdf | 2021-07-21 |
| 2 | 202141032738-FORM 1 [21-07-2021(online)].pdf | 2021-07-21 |
| 3 | 202141032738-DRAWINGS [21-07-2021(online)].pdf | 2021-07-21 |
| 4 | 202141032738-DECLARATION OF INVENTORSHIP (FORM 5) [21-07-2021(online)].pdf | 2021-07-21 |
| 5 | 202141032738-COMPLETE SPECIFICATION [21-07-2021(online)].pdf | 2021-07-21 |
| 6 | 202141032738-POA [28-05-2023(online)].pdf | 2023-05-28 |
| 7 | 202141032738-FORM 13 [28-05-2023(online)].pdf | 2023-05-28 |
| 8 | 202141032738-AMENDED DOCUMENTS [28-05-2023(online)].pdf | 2023-05-28 |
| 9 | 202141032738-FORM 18 [04-09-2023(online)].pdf | 2023-09-04 |
| 10 | 202141032738-Proof of Right [18-10-2023(online)].pdf | 2023-10-18 |
| 11 | 202141032738-RELEVANT DOCUMENTS [13-09-2024(online)].pdf | 2024-09-13 |
| 12 | 202141032738-FORM 13 [13-09-2024(online)].pdf | 2024-09-13 |
| 13 | 202141032738-FER.pdf | 2025-03-12 |
| 14 | 202141032738-POA [22-07-2025(online)].pdf | 2025-07-22 |
| 15 | 202141032738-FORM 13 [22-07-2025(online)].pdf | 2025-07-22 |
| 16 | 202141032738-RELEVANT DOCUMENTS [11-09-2025(online)].pdf | 2025-09-11 |
| 17 | 202141032738-PETITION UNDER RULE 137 [11-09-2025(online)].pdf | 2025-09-11 |
| 18 | 202141032738-OTHERS [11-09-2025(online)].pdf | 2025-09-11 |
| 19 | 202141032738-FER_SER_REPLY [11-09-2025(online)].pdf | 2025-09-11 |
| 20 | 202141032738-CORRESPONDENCE [11-09-2025(online)].pdf | 2025-09-11 |
| 21 | 202141032738-COMPLETE SPECIFICATION [11-09-2025(online)].pdf | 2025-09-11 |
| 22 | 202141032738-CLAIMS [11-09-2025(online)].pdf | 2025-09-11 |
| 23 | 202141032738-ABSTRACT [11-09-2025(online)].pdf | 2025-09-11 |
| 1 | 2738E_13-03-2024.pdf |