Sign In to Follow Application
View All Documents & Correspondence

A System And A Method To Provide Data Reconciliation

Abstract: A system (100) to provide data reconciliation is disclosed. A data source module (120) configured to receive a first data source and a second data source from a user. The user defines data types, locations, and columns, and set preferences for currency and date formats. A data attribute module (125) allows defining data types, assigning user-friendly names, and applying encryption and masking. A data relationship setup module (130) defines a plurality of joining conditions. A tolerance module (135) configures discrepancy levels, and a data verification module (140) performs a plurality of checks. A publishing module (145) dynamically generate tables and logic required for reconciliation. A display configuration module (150) customizes the fields displayed on a user interface. An execution module (155) manages and verifies reconciliation processes. A reporting module (160) generates reports, while a security management module (165) provides role-based access. A notification module (170) alerts users about critical updates. FIG. 1

Get Free WhatsApp Updates!
Notices, Deadlines & Correspondence

Patent Information

Application #
Filing Date
19 December 2024
Publication Number
03/2025
Publication Type
INA
Invention Field
COMPUTER SCIENCE
Status
Email
Parent Application

Applicants

MAIARA TECHNOLOGIES PRIVATE LIMITED
4TH FLOOR, A7/404, SWARGANGA SOCIETY, VALLABH NAGAR, PIMPRI CHINCHWAD, PUNE, MAHARASHTRA- 411018, INDIA

Inventors

1. VASANT RAMCHANDRA MANWADKAR
8411, TWISTPINE RD, FRISCO, TX ,75035, USA

Specification

Description:FIELD OF INVENTION
[0001] Embodiments of the present disclosure relate to the field of data management and reconciliation, and more particularly, a system and a method to provide data reconciliation.
BACKGROUND
[0002] As the financial industry faces increased regulatory compliance, companies must ensure an accurate and compliant financial reporting process. Reconciliation, the process of comparing two or more datasets to reveal discrepancies. However, the complexities and volume of data make manual reconciliation difficult and time-consuming. The Finance department is under increasing pressure to streamline the financial close and reporting function. Account reconciliation, a key process for financial close, is often a significant bottleneck. The manual reconciliation process faces possibilities of manual errors, dependency on individual personnel, inability to handle the large volume of data, and lack of tracking.
[0003] The current dynamics make it imperative to understand the details behind every transaction and to easily identify mismatched, fraudulent, improper, and excessively aged transactions. In most organizations, the account reconciliation process is very time-consuming and manual. A robust and integrated account reconciliation software application can allow Finance to manage its business more effectively.
[0004] There are many reconciliation solutions available in the market. However, the most crucial step in reconciliation is setting up the reconciliation workflow, and the solutions available in the market require the help of software developers to set up these workflows.
[0005] Hence, there is a need for an improved system and method to provide data reconciliation which addresses the aforementioned issue(s).
OBJECTIVES OF THE INVENTION
[0006] Primary objective of the invention is to develop a system that is capable of receiving various types of data sources, including structured and unstructured text files, Excel files, databases, and application programming interfaces (APIs).
[0007] Another objective of the invention is to enable users to define each data source by specifying the source type, location, and columns with corresponding data types, ensuring accurate data interpretation for reconciliation.
[0008] Yet another objective of the invention is to allow users to integrate and utilize multiple data sources.
[0009] Yet another objective of the invention is to include a data attribute module that lets users define data types, assign user-friendly names, configure encryption settings for data storage, and apply data masking for display.
[0010] Yet another objective of the invention is to implement a data verification module to perform various checks, such as exact matches, tolerance settings, excess and lower tolerance matches, consolidation-level reconciliation, duplicate record identification, reversals detection, and Natural Language Processing (NLP) matches. These checks aim to validate data accuracy and identify discrepancies.
BRIEF DESCRIPTION
[0011] In accordance with an embodiment of the present disclosure, a system to provide data reconciliation is provided. The system includes a processing subsystem hosted on a server. The processing subsystem is configured to execute on a network to control bidirectional communications among a plurality of modules. The processing subsystem includes a data source module configured to receive a first data source and a second data source from a user. The first data source and the second data source include structured and unstructured text files, excel files, databases, and application programming interfaces. The data source module configured to allow the user to define each data source by specifying a source type, location, and columns with corresponding data types to facilitate accurate data interpretation for reconciliation. The data source module configured to support integration of a plurality of data sources, for facilitating the integration and simultaneous utilization of multiple data types throughout the reconciliation. The data source module configured to receive a user input from the user based on the plurality of data sources. The user input includes a file template for a file data source and a table name or query for a database data source. The data source module configured to receive a user preference for currency and a date format from the user. The processing subsystem includes a data attribute module operatively coupled to the data source module. The data attribute module is configured to enable the user to define data types, assign user-friendly names, configure encryption settings for data storage, and apply data masking for display. The data attribute module is configured to automatically retrieve data type from the underlying source if the source is a database. The processing subsystem includes a data relationship setup module operatively coupled to the data attribute module. The data relationship setup module is configured to allow the user to define a plurality of joining conditions. The plurality of joining conditions is a set of criteria defining relationships between data from the plurality of data sources. The processing subsystem includes a tolerance module operatively coupled to the data relationship setup module. The tolerance module is configured to configure tolerance level if needed during data matching to accommodate discrepancies that naturally occur in data from the plurality of data sources. The processing subsystem includes a data verification module operatively coupled to the tolerance module. The data verification module is configured to perform a plurality of checks for validating data accuracy and identify discrepancies in the plurality of data sources. The plurality of checks includes exact match, tolerance settings for data matching, excess and lower tolerance matches, reconciliation at consolidation levels, duplicate records identification, reversals detection, and Natural Language Processing match. The processing subsystem includes a publishing module operatively coupled to the data verification module. The publishing module is configured to dynamically generate tables and logic required for reconciliation based on a predefined setup. The processing subsystem includes a display configuration module operatively coupled to the publishing module. The display configuration module is configured to allow the user to configure the fields displayed on a user interface. The display configuration module is configured to dynamically render data based on configured fields. The processing subsystem includes an execution module operatively coupled to the display configuration module. The execution module is configured to enable an authorized user to execute reconciliation manually or schedule the execution. The execution module is configured to parse and verify the user input based on an execution rule. The execution module is configured to compare records based on the relationship and attributes and identify matched records and exceptions. The execution module is configured to keep exceptions open until matching records are found in future executions. The processing subsystem includes a reporting module operatively coupled to the execution module. The reporting module is configured to enable the user to generate the report based on the requirement of the user. The processing subsystem includes a security management module operatively coupled to the reporting module. The security management module is configured to provide role-based security using a role-based access control to the reconciliation process. The processing subsystem includes a notification module operatively coupled to the security management module. The notification module is configured to generate a notification for the authorized user.
[0012] In accordance with another embodiment of the present disclosure, a method to provide data reconciliation is provided. The method includes receiving by a data source module, a first data source and a second data source from a user. The first data source and the second data source include structured and unstructured text files, excel files, databases, and application programming interfaces. The method includes allowing, by the data source module, the user to define each data source by specifying a source type, location, and columns with corresponding data types to facilitate accurate data interpretation for reconciliation. The method includes supporting, by the data source module, integration of a plurality of data sources, for facilitating the integration and simultaneous utilization of multiple data types throughout the reconciliation. The method includes receiving, by the data source module, a user input from the user based on the plurality of data sources. The user input includes a file template for a file data source and a table name or query for a database data source. The method includes receiving, by the data source module, a user preference for currency and a date format from the user. The method includes enabling, by a data attribute module, the user to define data types, assign user-friendly names, configure encryption settings for data storage, and apply data masking for display. The method includes automatically retrieving, by the data attribute module, data type from the underlying source if the source is a database. The method includes allowing, by a data relationship setup module, the user to define a plurality of joining conditions. The plurality of joining conditions is a set of criteria defining relationships between data from the plurality of data sources. The method includes configuring, by a tolerance module, tolerance level if needed during data matching to accommodate discrepancies that naturally occur in data from the plurality of data sources. The method includes performing, by a data verification module, a plurality of checks for validating data accuracy and identifying discrepancies in the plurality of data sources. The plurality of checks includes exact match, tolerance settings for data matching, excess and lower tolerance matches, reconciliation at consolidation levels, duplicate records identification, reversals detection, and Natural Language Processing match. The method includes dynamically generating, by a publishing module, tables and logic required for reconciliation based on a predefined setup. The method includes allowing, by a display configuration module, the user to configure the fields displayed on a user interface. The method includes dynamically rendering, by the display configuration module, data based on configured fields. The method includes enabling, by an execution module, an authorized user to execute reconciliation manually or schedule the execution. The method includes parsing and verifying, by the execution module, the user input based on an execution rule. The method includes comparing, by the execution module, records based on the relationship and attributes and identifying matched records and exceptions. The method includes keeping, by the execution module, exceptions open until matching records are found in future executions. The method includes enabling, by a reporting module, the user to generate the report based on the requirement of the user. The method includes providing, by a security management module, a role-based security using a role-based access control to the reconciliation process. The method includes generating, by a notification module, a notification for the authorized user.
[0013] To further clarify the advantages and features of the present disclosure, a more particular description of the disclosure will follow by reference to specific embodiments thereof, which are illustrated in the appended figures. It is to be appreciated that these figures depict only typical embodiments of the disclosure and are therefore not to be considered limiting in scope. The disclosure will be described and explained with additional specificity and detail with the appended figures.
BRIEF DESCRIPTION OF THE DRAWINGS
[0014] The disclosure will be described and explained with additional specificity and detail with the accompanying figures in which:
[0015] FIG. 1 is a block diagram representation of a system to provide data reconciliation in accordance with an embodiment of the present disclosure;
[0016] FIG. 2 is a data reconciliation process flow in accordance with an embodiment of the present disclosure;
[0017] FIG. 3 is a block diagram of a computer or a server in accordance with an embodiment of the present disclosure;
[0018] FIG. 4(a) illustrates a flow chart representing the steps involved in a method to provide data reconciliation in accordance with an embodiment of the present disclosure;
[0019] FIG. 4(b) illustrates continued steps of the method of FIG. 4(a) in accordance with an embodiment of the present disclosure; and
[0020] FIG. 4(c) illustrates continued steps of the method of FIG. 4(b) in accordance with an embodiment of the present disclosure.
[0021] Further, those skilled in the art will appreciate that elements in the figures are illustrated for simplicity and may not have necessarily been drawn to scale. Furthermore, in terms of the construction of the device, one or more components of the device may have been represented in the figures by conventional symbols, and the figures may show only those specific details that are pertinent to understanding the embodiments of the present disclosure so as not to obscure the figures with details that will be readily apparent to those skilled in the art having the benefit of the description herein.
DETAILED DESCRIPTION
[0022] For the purpose of promoting an understanding of the principles of the disclosure, reference will now be made to the embodiment illustrated in the figures and specific language will be used to describe them. It will nevertheless be understood that no limitation of the scope of the disclosure is thereby intended. Such alterations and further modifications in the illustrated system, and such further applications of the principles of the disclosure as would normally occur to those skilled in the art are to be construed as being within the scope of the present disclosure.
[0023] The terms “comprises”, “comprising”, or any other variations thereof, are intended to cover a non-exclusive inclusion, such that a process or method that comprises a list of steps does not include only those steps but may include other steps not expressly listed or inherent to such a process or method. Similarly, one or more devices or subsystems or elements or structures or components preceded by "comprises... a" does not, without more constraints, preclude the existence of other devices, sub-systems, elements, structures, components, additional devices, additional sub-systems, additional elements, additional structures or additional components. Appearances of the phrase "in an embodiment", "in another embodiment" and similar language throughout this specification may, but not necessarily do, all refer to the same embodiment.
[0024] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by those skilled in the art to which this disclosure belongs. The system, methods, and examples provided herein are only illustrative and not intended to be limiting.
[0025] In the following specification and the claims, reference will be made to a number of terms, which shall be defined to have the following meanings. The singular forms “a”, “an”, and “the” include plural references unless the context clearly dictates otherwise.
[0026] Embodiments of the present disclosure relate to a system to provide data reconciliation. The system includes a processing subsystem hosted on a server. The processing subsystem is configured to execute on a network to control bidirectional communications among a plurality of modules. The processing subsystem includes a data source module configured to receive a first data source and a second data source from a user. The first data source and the second data source include structured and unstructured text files, excel files, databases, and application programming interfaces. The data source module configured to allow the user to define each data source by specifying a source type, location, and columns with corresponding data types to facilitate accurate data interpretation for reconciliation. The data source module configured to support integration of a plurality of data sources, for facilitating the integration and simultaneous utilization of multiple data types throughout the reconciliation. The data source module configured to receive a user input from the user based on the plurality of data sources. The user input includes a file template for a file data source and a table name or query for a database data source. The data source module configured to receive a user preference for currency and a date format from the user. The processing subsystem includes a data attribute module operatively coupled to the data source module. The data attribute module is configured to enable the user to define data types, assign user-friendly names, configure encryption settings for data storage, and apply data masking for display. The data attribute module is configured to automatically retrieve data type from the underlying source if the source is a database. The processing subsystem includes a data relationship setup module operatively coupled to the data attribute module. The data relationship setup module is configured to allow the user to define a plurality of joining conditions. The plurality of joining conditions is a set of criteria defining relationships between data from the plurality of data sources. The processing subsystem includes a tolerance module operatively coupled to the data relationship setup module. The tolerance module is configured to configure tolerance level if needed during data matching to accommodate discrepancies that naturally occur in data from the plurality of data sources. The processing subsystem includes a data verification module operatively coupled to the tolerance module. The data verification module is configured to perform a plurality of checks for validating data accuracy and identify discrepancies in the plurality of data sources. The plurality of checks includes exact match, tolerance settings for data matching, excess and lower tolerance matches, reconciliation at consolidation levels, duplicate records identification, reversals detection, and Natural Language Processing match. The processing subsystem includes a publishing module operatively coupled to the data verification module. The publishing module is configured to dynamically generate tables and logic required for reconciliation based on a predefined setup. The processing subsystem includes a display configuration module operatively coupled to the publishing module. The display configuration module is configured to allow the user to configure the fields displayed on a user interface. The display configuration module is configured to dynamically render data based on configured fields. The processing subsystem includes an execution module operatively coupled to the display configuration module. The execution module is configured to enable an authorized user to execute reconciliation manually or schedule the execution. The execution module is configured to parse and verify the user input based on an execution rule. The execution module is configured to compare records based on the relationship and attributes and identify matched records and exceptions. The execution module is configured to keep exceptions open until matching records are found in future executions. The processing subsystem includes a reporting module operatively coupled to the execution module. The reporting module is configured to enable the user to generate the report based on the requirement of the user. The processing subsystem includes a security management module operatively coupled to the reporting module. The security management module is configured to provide role-based security using a role-based access control to the reconciliation process. The processing subsystem includes a notification module operatively coupled to the security management module. The notification module is configured to generate a notification for the authorized user.
[0027] FIG. 1 is a block diagram of a system (100) to provide data reconciliation in accordance with an embodiment of the present disclosure. The system (100) includes a processing subsystem (105) hosted on a server (108). In one embodiment, the server (108) may include a cloud-based server. In another embodiment, parts of the server (108) may be a local server coupled to a user device (not shown in FIG.1). The processing subsystem (105) is configured to execute on a network (115) to control bidirectional communications among a plurality of modules. In one example, the network (115) may be a private or public local area network (LAN) or Wide Area Network (WAN), such as the Internet. In another embodiment, the network (115) may include both wired and wireless communications according to one or more standards and/or via one or more transport mediums. In one example, the network (115) may include wireless communications according to one of the 802.11 or Bluetooth specification sets, or another standard or proprietary wireless communication protocol. In yet another embodiment, the network (115) may also include communications over a terrestrial cellular network, including, a global system for mobile communications (GSM), code division multiple access (CDMA), and/or enhanced data for global evolution (EDGE) network.
[0028] The processing subsystem (105) includes a data source module (120) configured to receive a first data source and a second data source from a user, specifically receiving multiple types of data sources. The first data source is a data set source that the user wishes to reconcile. The second data source is a data set source for the comparison and reconciliation of data. The type of data source of the first data source and the second data source includes but not limited to structured and unstructured text files, excel files, databases, and application programming interfaces. Examples for the structured text files include but are not limited to CSV (Comma-Separated Values) files, XML (eXtensible Markup Language) files, JSON (JavaScript Object Notation) files and the like. Examples for the unstructured text files include but are not limited to plain text documents, logs, and the like. The excel files include various excel formats including XLS and XLSX and the like. Examples for databases include but are not limited to MySQL, Oracle, and the like.
[0029] The data source module (120) configured to allow the user to define each data source by specifying a source type, location, and columns with corresponding data types to facilitate accurate data interpretation for reconciliation. Depending on the type of data, this could be file path for files stored locally or on an organization network. A database connection string for databases, detailing the server address, database name, and the like. API- URL for APIs, specifying the URL.
[0030] In an embodiment, the number of data sources received is not limited to the first data source and the second data source. This is typically a two-way reconciliation. The system also supports sources up to four (three-way reconciliation / four-way reconciliation) or more, allowing for more complex and comprehensive data reconciliation scenarios.
[0031] The data source module (120) configured to support integration of a plurality of data sources, for facilitating the integration and simultaneous utilization of multiple data types throughout the reconciliation. This allows users to integrate data from various sources without being constrained by the type or format of the data.
[0032] In one embodiment, the support of the plurality of data sources, allows the system (100) to process data from multiple sources concurrently, thereby speeding up the reconciliation process.
[0033] The data source module (120) configured to receive a user input from the user based on the plurality of data sources. The user input includes a file template for a file data source and a table name or query for a database data source.
[0034] In one embodiment, the file template typically includes file format that Specifies whether the file is CSV, XML, TXT, XLS, or XLSX, column headers that define the names of the columns present in the file, data types which indicate the data type for each column, such as string, integer, date, and the like.
[0035] In an embodiment, the table name helps the system (100) locate the specific dataset within the database.
[0036] The data source module (120) configured to receive a user preference for currency and a date format from the user.
[0037] In one embodiment, the data source module (120) allows the users to choose a variety of date formats to match their regional or organizational standards. Common formats include MM/DD/YYYY, DD/MM/YYYY, YYYY-MM-DD, and the like.
[0038] In an embodiment, the processing subsystem (105) includes a scheduler (175) operatively coupled to the data source module (120). The scheduler (175) is configured to allow users to set up automated schedules for the reconciliation process.
[0039] The processing subsystem (105) includes a data attribute module (125) operatively coupled to the data source module (120). The data attribute module (125) is configured to enable the user to define data types, assign user-friendly names, configure encryption settings for data storage, and apply data masking for display.
[0040] It must be noted that the plurality of data sources received by an organization is often difficult for users to understand due to the use of cryptic column names, inconsistent data types, and unprotected sensitive information. The data attribute module (125) addresses these issues by allowing the user to define data types for each column, ensuring that dates, numbers, and text are correctly interpreted. Additionally, the user may assign user-friendly names to columns to improve clarity in reports. To protect sensitive financial information, the user configures encryption settings so that data is securely stored. For added security, data masking is applied to sensitive columns like account numbers, displaying only partial information to unauthorized users and the like.
[0041] The data attribute module (125) is configured to automatically retrieve data type from the underlying source if the source is a database.
[0042] It must be noted that the data attribute module (125) is configured to apply data masking in real-time during data retrieval and display.
[0043] The processing subsystem (105) includes a data relationship setup module (130) operatively coupled to the data attribute module (125). The data relationship setup module (130) is configured to allow the user to define a plurality of joining conditions. The plurality of joining conditions is a set of criteria defining relationships between data from the plurality of data sources. The data relationship setup module (130) allows users to specify how different data sets should be connected or linked for accurate reconciliation. By defining the plurality of joining conditions, users may create relationships between tables or data sets based on common fields or keys.
[0044] The processing subsystem (105) includes a tolerance module (135) operatively coupled to the data relationship setup module (130). The tolerance module (135) is configured to configure tolerance level if needed during data matching to accommodate discrepancies that naturally occur in data from the plurality of data sources. The tolerance module (135) allows users to define an acceptable range of variation when comparing data, helping to account for minor differences and ensuring that only significant discrepancies are flagged during the reconciliation process.
[0045] It must be noted that the tolerance module (135) allows users to define multiple tolerance levels for different data types.
[0046] The processing subsystem (105) includes a data verification module (140) operatively coupled to the tolerance module (135). The data verification module (140) is configured to perform a plurality of checks for validating data accuracy and identify discrepancies in the plurality of data sources. The plurality of checks includes exact match, tolerance settings for data matching, excess and lower tolerance matches, reconciliation at consolidation levels, duplicate records identification, reversals detection, and Natural Language Processing match.
[0047] The exact match ensures data entries are identical in different sources. Tolerance settings for data matching allow small differences within the acceptable range of variation. Excess and lower tolerance matches identifies entries that exceed or fall below the acceptable range of variation, such as a small rounding difference versus a significant error. Duplicate records identification detects duplicate entries, preventing double-counting and the like. Natural Language Processing (NLP) match uses a natural language processing (NLP) model, which represents a unique feature of the system. This capability enables the product workflow to interpret and comprehend text and spoken language similarly to how humans do.
[0048] Natural Language Processing (NLP) refers to the field of artificial intelligence (AI), that enables computers to understand, interpret, and generate human language in a manner that is both meaningful and contextually relevant. The NLP model utilizes algorithms and techniques to process large amounts of natural language data, extracting meaningful insights, and enabling various applications such as machine translation, sentiment analysis, and speech recognition. The algorithms used in NLP model includes but are not limited to Hidden Markov Models (HMMs) or Conditional Random Fields (CRFs), support Vector Machines (SVM), Decision Trees, Recurrent Neural Networks (RNNs), Long Short-Term Memory networks (LSTMs), and the like.
[0049] In one embodiment, the data verification module (140) uses machine learning models to improve the accuracy of checks.
[0050] The processing subsystem (105) includes a publishing module (145) operatively coupled to the data verification module (140). The publishing module (145) is configured to dynamically generate tables and logic required for reconciliation, adapting to a predefined setup established by the plurality of modules. The publishing module (145) ensures that both the logic and storage for reconciliation are dynamically generated as per the established configurations.
[0051] The processing subsystem (105) includes a display configuration module (150) operatively coupled to the publishing module (145). The display configuration module (150) is configured to allow the user to configure the fields displayed on a user interface. The display configuration module (150) is configured to dynamically render data based on configured fields. By dynamically rendering data based on these configured fields, the module enhances user interaction and ensures that relevant information is readily accessible.
[0052] The user interface is the point at which human users interact with a computer, website or application, enabling users to interact with and manipulate digital content or physical machines. The various types of user interface include but not limited to graphical user interface, command line interface, menu-driven user interface, touch user interface, and the like.
[0053] The processing subsystem (105) includes an execution module (155) operatively coupled to the display configuration module (150). The execution module (155) is configured to enable an authorized user to execute reconciliation manually or schedule the execution. The execution module (155) is configured to parse and verify the user input based on an execution rule. The execution module (155) is configured to compare records based on the relationship and attributes and identify matched records and exceptions. The execution module (155) is configured to keep exceptions open until matching records are found in future executions.
[0054] In one embodiment the authorized user can schedule the execution to run automatically at specified times.
[0055] The processing subsystem (105) includes a reporting module (160) operatively coupled to the execution module (155). The reporting module (160) is configured to enable the user to generate the report based on the requirement of the user.
[0056] In one embodiment, the reporting module (160) allows for the export of reports in a plurality of formats. The plurality of formats includes but is not limited to PDF, Excel, CSV, and the like.
[0057] The processing subsystem (105) includes a security management module (165) operatively coupled to the reporting module (160). The security management module (165) is configured to provide role-based security using a role-based access control to the reconciliation process. This ensures that users are granted access and permissions based on their roles, thereby protect sensitive financial data.
[0058] The processing subsystem (105) includes a notification module (170) operatively coupled to the security management module (165). The notification module (170) is configured to generate a notification for the authorized user. The notifications alert the authorized user about critical updates, completion of reconciliation tasks and the like. The alerts may take various forms such as sound alerts, text messages, emails, popup notifications, and the like.
[0059] Let's consider an example. An individual "X" holds a bank account in Bank "A" and withdrew 10,000 rupees from a Bank "B" ATM machine. This transaction needs to be reconciled between the two banks, therefore they used the system. The data source module receives a structured text file from Bank "A" containing individual’s transactions, including the withdrawal of 10,000 rupees by individual "X" and a database query from Bank "B" listing ATM transactions, including the 10,000 rupees withdrawn by individual "X". the authorized user defines the data types for each column, user-friendly names are assigned, encryption settings are configured to securely store transaction data and data masking is applied to sensitive information. The data relationship setup module allows the user to defines joining conditions to link the transactions from Bank "A" and Bank "B" based on common fields or data. The tolerance module set tolerance levels for minor discrepancies in transaction. The data verification module performs the plurality of checks to validate transaction accuracy, ensuring the 10,000-rupee withdrawal is consistently recorded in both Bank "A" and Bank "B. The publishing module dynamically generates the necessary tables and logic for reconciliation. The display configuration module configures the fields displayed on the interface and data is dynamically rendered according to the configurations. The execution module allow the authorized user to schedules the reconciliation process to run daily and then parses and verifies the input data, compares records, and identifies matches and exceptions. The reporting module allow the authorized user to generate a report showing all reconciled transactions and any outstanding exceptions. The security management module allows role-based access control to ensure only authorized personnel can view or edit sensitive financial data. The notification module generates notifications alerting authorized users about critical updates and alerts are sent via email, SMS, and popup notifications. Using the system, Bank "A" and Bank "B" successfully reconcile the withdrawal transaction, ensuring accurate and secure financial records.
[0060] It is to be noted that the system may comprise, but is not limited to, a mobile phone, desktop computer, portable digital assistant (PDA), smart phone, tablet, ultra-book, netbook, laptop, multi-processor system, microprocessor-based or programmable consumer electronic system, or any other communication device that a user may use. In some embodiments, the system may comprise a display module (not shown) to display information (for example, in the form of user interfaces). In further embodiments, the system may comprise one or more of touch screens, accelerometers, gyroscopes, cameras, microphones, global positioning system (GPS) devices, and so forth.
[0061] In one embodiment, the various functional components of the system may reside on a single computer, or they may be distributed across several computers in various arrangements. The various components of the system may, furthermore, access one or more databases, and each of the various components of the system may be in communication with one another. Further, while the components of FIG. 1 are discussed in the singular sense, it will be appreciated that in other embodiments multiple instances of the components may be employed.
[0062] FIG. 2 is a data reconciliation process flow in accordance with an embodiment of the present disclosure. The data reconciliation process flow begins with a business application (205) from which a user provides data for reconciliation. Two primary data sources are involved: Data Set 1 (210), and Data Set 2 (215), along with a database table (220) which are fed into a data preparation (225). The business application (205), Data Set 1 (210), and Data Set 2 (215), along with a database table (220) corresponds to a data source module (120). The data attribute module (125) corresponds to the data preparation (225). A scheduler (175) facilitates the timely preparation of data, ensuring it is ready for reconciliation. Next, the prepared data enters a data reconciliation engine (230), which operates with two key inputs: reconciliation rules (235) corresponding to the data relationship setup module (130) and reconciliation configurations (240), corresponding to the tolerance module (135).The data reconciliation engine (230) includes the functionalities of the data verification module (140), publishing module (145), display configuration module (150), and execution module (155). The data reconciliation engine (230) is the brain of the system (100) which collects all the configuration, rules and applies against the data uploaded by the user/received from database to find out the exception, and the matching records. Using reconciliation rules (235) and reconciliation configurations (240), the data reconciliation engine (230) comparing and reconciling data. The output from the data reconciliation engine (230) bifurcates into reconciled data and exceptions (245). Reconciled data signifies matched records, while exceptions represent discrepancies or unmatched entries. Both reconciled data and exceptions (245) contribute to generating reports (250) which correspond to a reporting module (160). Further, there is a feedback loop where reconciled data and exceptions provide insights for exception handling and corrections (255) which includes the functionalities of a notification module (170). Corrected data is then channeled back to the business application (205).
[0063] FIG. 3 is a block diagram of a computer or a server in accordance with an embodiment of the present disclosure. The server (300) includes processor(s) (330), and memory (310) operatively coupled to the bus (320). The processor(s) (330), as used herein, means any type of computational circuit, such as, but not limited to, a microprocessor, a microcontroller, a complex instruction set computing microprocessor, a reduced instruction set computing microprocessor, a very long instruction word microprocessor, an explicitly parallel instruction computing microprocessor, a digital signal processor, or any other type of processing circuit, or a combination thereof.
[0064] The memory (310) includes several subsystems stored in the form of executable program which instructs the processor (330) to perform the method steps illustrated in FIG. 1. The memory (310) includes a processing subsystem (105) of FIG.1. The processing subsystem (105) further has following modules: a data source module (120), a data attribute module (125), a data relationship setup module (130), a tolerance module (135), a data verification module (140), a publishing module (145), a display configuration module (150), an execution module (155), a reporting module (160), a security management module (165), and a notification module (170).
[0065] In accordance with an embodiment of the present disclosure, a system (100) to provide data reconciliation is provided. The system (100) includes a processing subsystem (105) hosted on a server (108). The processing subsystem (105) is configured to execute on a network (115) to control bidirectional communications among a plurality of modules. The processing subsystem (105) includes a data source module (120) configured to receive a first data source and a second data source from a user. The first data source and the second data source include structured and unstructured text files, excel files, databases, and application programming interfaces. The data source module (120) configured to allow the user to define each data source by specifying a source type, location, and columns with corresponding data types to facilitate accurate data interpretation for reconciliation. The data source module (120) configured to support integration of a plurality of data sources, for facilitating the integration and simultaneous utilization of multiple data types throughout the reconciliation. The data source module (120) configured to receive a user input from the user based on the plurality of data sources. The user input includes a file template for a file data source and a table name or query for a database data source. The data source module (120) configured to receive a user preference for currency and a date format from the user. The processing subsystem (105) includes a data attribute module (125) operatively coupled to the data source module (120). The data attribute module (125) is configured to enable the user to define data types, assign user-friendly names, configure encryption settings for data storage, and apply data masking for display. The data attribute module (125) is configured to automatically retrieve data type from the underlying source if the source is a database. The processing subsystem (105) includes a data relationship setup module (130) operatively coupled to the data attribute module (125). The data relationship setup module (130) is configured to allow the user to define a plurality of joining conditions. The plurality of joining conditions is a set of criteria defining relationships between data from the plurality of data sources. The processing subsystem (105) includes a tolerance module (135) operatively coupled to the data relationship setup module (130). The tolerance module (135) is configured to configure tolerance level if needed during data matching to accommodate discrepancies that naturally occur in data from the plurality of data sources. The processing subsystem (105) includes a data verification module (140) operatively coupled to the tolerance module (135). The data verification module (140) is configured to perform a plurality of checks for validating data accuracy and identify discrepancies in the plurality of data sources. The plurality of checks includes exact match, tolerance settings for data matching, excess and lower tolerance matches, reconciliation at consolidation levels, duplicate records identification, reversals detection, and Natural Language Processing match. The processing subsystem (105) includes a publishing module (145) operatively coupled to the data verification module (140). The publishing module (145) is configured to dynamically generate tables and logic required for reconciliation based on a predefined setup. The processing subsystem (105) includes a display configuration module (150) operatively coupled to the publishing module (145). The display configuration module (150) is configured to allow the user to configure the fields displayed on a user interface. The display configuration module (150) is configured to dynamically render data based on configured fields. The processing subsystem (105) includes an execution module (155) operatively coupled to the display configuration module (150). The execution module (155) is configured to enable an authorized user to execute reconciliation manually or schedule the execution. The execution module (155) is configured to parse and verify the user input based on an execution rule. The execution module (155) is configured to compare records based on the relationship and attributes and identify matched records and exceptions. The execution module (155) is configured to keep exceptions open until matching records are found in future executions. The processing subsystem (105) includes a reporting module (160) operatively coupled to the execution module (155). The reporting module (160) is configured to enable the user to generate the report based on the requirement of the user. The processing subsystem (105) includes a security management module (165) operatively coupled to the reporting module (160). The security management module (165) is configured to provide role-based security using a role-based access control to the reconciliation process. The processing subsystem (105) includes a notification module (170) operatively coupled to the security management module (165). The notification module (170) is configured to generate a notification for the authorized user.
[0066] The bus (320) as used herein refers to internal memory channels or computer network that is used to connect computer components and transfer data between them. The bus (320) includes a serial bus or a parallel bus, wherein the serial bus transmits data in bit-serial format and the parallel bus transmits data across multiple wires. The bus (320) as used herein, may include but not limited to, a system bus, an internal bus, an external bus, an expansion bus, a frontside bus, a backside bus and the like.
[0067] FIG. 4(a) illustrates a flow chart representing the steps involved in a method (400) to provide data reconciliation in accordance with an embodiment of the present disclosure. FIG. 4(b) illustrates continued steps of the method (400) of FIG. 4(a) in accordance with an embodiment of the present disclosure. FIG. 4(c) illustrates continued steps of the method (400) of FIG. 4(b) in accordance with an embodiment of the present disclosure. The method (400) includes receiving by a data source module, a first data source and a second data source from a user. The first data source and the second data source include structured and unstructured text files, excel files, databases, and application programming interfaces in step 405. The first data source is a data set source that the user wishes to reconcile. The second data source is a data set source for the comparison and reconciliation of data. The type of data source of the first data source and the second data source includes but not limited to structured and unstructured text files, excel files, databases, and application programming interfaces. Examples for the structured text files include but are not limited to CSV (Comma-Separated Values) files, XML (eXtensible Markup Language) files, JSON (JavaScript Object Notation) files and the like. Examples for the unstructured text files include but are not limited to plain text documents, logs, and the like. The excel files include various excel formats including XLS and XLSX and the like. Examples for databases include but are not limited to MySQL, Oracle, and the like.
[0068] In an embodiment, the number of data sources received is not limited to the first data source and the second data source. This is typically a two-way reconciliation. The system also supports sources up to four (three-way reconciliation / four-way reconciliation) or more, allowing for more complex and comprehensive data reconciliation scenarios.
[0069] The method (400) includes allowing, by the data source module, the user to define each data source by specifying a source type, location, and columns with corresponding data types to facilitate accurate data interpretation for reconciliation in step 410. Depending on the type of data, this could be file path for files stored locally or on an organization network. A database connection string for databases, detailing the server address, database name, and authentication credentials. API- URL for APIs, specifying the URL.
[0070] The method (400) includes supporting, by the data source module, integration of a plurality of data sources, for facilitating the integration and simultaneous utilization of multiple data types throughout the reconciliation in step 415. This allows users to integrate data from various sources without being constrained by the type or format of the data.
[0071] In one embodiment, the support of the plurality of data sources allows the system to process data from multiple sources concurrently, thereby speeding up the reconciliation process.
[0072] The method (400) includes receiving, by the data source module, a user input from the user based on the plurality of data sources. The user input includes a file template for a file data source and a table name or query for a database data source in step 420.
[0073] In one embodiment, the file template typically includes file format that Specifies whether the file is CSV, XML, TXT, XLS, or XLSX, column headers that define the names of the columns present in the file, data types which indicate the data type for each column, such as string, integer, date, and the like.
[0074] In an embodiment, the table name helps the system locate the specific dataset within the database.
[0075] The method (400) includes receiving, by the data source module, a user preference for currency and a date format from the user in step 425.
[0076] In one embodiment, the data source module allows the users to choose a variety of date formats to match their regional or organizational standards. Common formats include MM/DD/YYYY, DD/MM/YYYY, YYYY-MM-DD, and the like.
[0077] In an embodiment, the processing subsystem includes a scheduler operatively coupled to the data source module. The scheduling module is configured to allow users to set up automated schedules for the reconciliation process.
[0078] The method (400) includes enabling, by a data attribute module, the user to define data types, assign user-friendly names, configure encryption settings for data storage, and apply data masking for display in step 430.
[0079] It must be noted that the plurality of data sources received by an organization is often difficult for users to understand due to the use of cryptic column names, inconsistent data types, and unprotected sensitive information. The data attribute module addresses these issues by allowing the user to define data types for each column, ensuring that dates, numbers, and text are correctly interpreted. Additionally, the user may assign user-friendly names to columns to improve clarity in reports. To protect sensitive financial information, the user configures encryption settings so that data is securely stored. For added security, data masking is applied to sensitive columns like account numbers, displaying only partial information to unauthorized users and the like.
[0080] The method (400) includes automatically retrieving, by the data attribute module, data type from the underlying source if the source is a database in step 435.
[0081] The method (400) includes allowing, by a data relationship setup module, the user to define a plurality of joining conditions. The plurality of joining conditions is a set of criteria defining relationships between data from the plurality of data sources in step 440. The data relationship setup module allows users to specify how different data sets should be connected or linked for accurate reconciliation. By defining the plurality of joining conditions, users may create relationships between tables or data sets based on common fields or keys.
[0082] The method (400) includes configuring, by a tolerance module, tolerance level if needed during data matching to accommodate discrepancies that naturally occur in data from the plurality of data sources in step 445. The tolerance module allows users to define an acceptable range of variation when comparing data, helping to account for minor differences and ensuring that only significant discrepancies are flagged during the reconciliation process.
[0083] The method (400) includes performing, by a data verification module, a plurality of checks for validating data accuracy and identifying discrepancies in the plurality of data sources. The plurality of checks includes exact match, tolerance settings for data matching, excess and lower tolerance matches, reconciliation at consolidation levels, duplicate records identification, reversals detection, and Natural Language Processing match in step 450.
[0084] The exact match ensures data entries are identical in different sources. Tolerance settings for data matching allow small differences within the acceptable range of variation. Excess and lower tolerance matches identifies entries that exceed or fall below the acceptable range of variation. Duplicate records identification detects duplicate entries, preventing double-counting and the like. Natural Language Processing (NLP) match uses a natural language processing (NLP) model, which represents a unique feature of the system. This capability enables the product workflow to interpret and comprehend text and spoken language similarly to how humans do.
[0085] Natural Language Processing (NLP) refers to the field of artificial intelligence (AI), that enables computers to understand, interpret, and generate human language in a manner that is both meaningful and contextually relevant. The NLP model utilizes algorithms and techniques to process large amounts of natural language data, extracting meaningful insights, and enabling various applications such as machine translation, sentiment analysis, and speech recognition. The algorithms used in NLP model includes but are not limited to Hidden Markov Models (HMMs) or Conditional Random Fields (CRFs), support Vector Machines (SVM), Decision Trees, Recurrent Neural Networks (RNNs), Long Short-Term Memory networks (LSTMs), and the like.
[0086] The method (400) includes dynamically generating, by a publishing module, tables and logic required for reconciliation based on a predefined setup in step 455. The publishing module ensures that both the logic and storage for reconciliation are dynamically generated as per the established configurations.
[0087] The method (400) includes allowing, by a display configuration module, the user to configure the fields displayed on a user interface in step 460.
[0088] The method (400) includes dynamically rendering, by the display configuration module, data based on configured fields in step 465. By dynamically rendering data based on these configured fields, the module enhances user interaction and ensures that relevant information is readily accessible.
[0089] The method (400) includes enabling, by an execution module, an authorized user to execute reconciliation manually or schedule the execution in step 470.
[0090] In one embodiment the authorized user can schedule the execution to run automatically at specified times.
[0091] The method (400) includes parsing and verifying, by the execution module, the user input based on an execution rule in step 475.
[0092] The method (400) includes comparing, by the execution module, records based on the relationship and attributes and identifying matched records and exceptions in step 480.
[0093] The method (400) includes keeping, by the execution module, exceptions open until matching records are found in future executions in step 485.
[0094] The method (400) includes enabling, by a reporting module, the user to generate the report based on the requirement of the user in step 490. In one embodiment, the reporting module allows for the export of reports in a plurality of formats. The plurality of formats includes but is not limited to PDF, Excel, CSV, and the like.
[0095] The method (400) includes providing, by a security management module, a role-based security using a role-based access control to the reconciliation process in step 495.
[0096] The method (400) includes generating, by a notification module, a notification for the authorized user in step 500. The notifications alert the authorized user about critical updates, completion of reconciliation tasks and the like. The alerts may take various forms such as sound alerts, text messages, emails, popup notifications, and the like.
[0097] Various embodiments of the system and method to provide data reconciliation as described above provide an automation for reconciliation. The system integrates the plurality of data sources, including structured and unstructured text files, Excel files, databases, and APIs, enabling seamless reconciliation of diverse data types. Further, allows users to define each data source by specifying source type, location, and columns with corresponding data types to facilitate accurate data interpretation. The system supports integration of multiple data sources concurrently, speeding up the reconciliation process and allowing for the simultaneous utilization of multiple data types. The data attribute module allows users to define data types, assign user-friendly names, configure encryption settings for secure data storage, and apply data masking for displaying sensitive information. This ensures that the data is both understandable and protected. The data relationship setup module enables users to define joining conditions, establishing relationships between data from different sources for accurate reconciliation. The tolerance module accommodates discrepancies by allowing users to set tolerance levels during data matching, ensuring minor differences do not hinder the reconciliation process. The data verification module performs the plurality of checks to validate data accuracy and identify discrepancies. The display configuration module allows users to configure and dynamically render data fields on the user interface, enhancing user interaction and data accessibility. The execution module supports both manual and scheduled reconciliations, parsing and verifying user input, comparing records, and identifying matched records and exceptions. Exceptions remain open until matching records are found in future executions. The reporting module enables users to generate reports based on their specific requirements, facilitating detailed analysis. The security management module provides role-based access control, ensuring secure data management and protection. Additionally, the notification module alerts users to critical updates through various forms such as sound alerts, text messages, emails, and popup notifications, ensuring users stay informed and may promptly address issues.
[0098] The techniques described in this disclosure may be implemented, at least in part, in hardware, software, firmware, or any combination thereof. For example, various aspects of the described techniques may be implemented within one or more processors, including one or more microprocessors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or any other equivalent integrated or discrete logic circuitry, as well as any combinations of such components. The term “processor” or “processing subsystem” may generally refer to any of the foregoing logic circuitry, alone or in combination with other logic circuitry, or any other equivalent circuitry. A control unit including hardware may also perform one or more of the techniques of this disclosure.
[0099] Such hardware, software, and firmware may be implemented within the same device or within separate devices to support the various techniques described in this disclosure. In addition, any of the described units, modules, or components may be implemented together or separately as discrete but interoperable logic devices. Depiction of different features as modules or units is intended to highlight different functional aspects and does not necessarily imply that such modules or units must be realized by separate hardware, firmware, or software components. Rather, functionality associated with one or more modules or units may be performed by separate hardware, firmware, or software components, or integrated within common or separate hardware, firmware, or software components.
[0100] It will be understood by those skilled in the art that the foregoing general description and the following detailed description are exemplary and explanatory of the disclosure and are not intended to be restrictive thereof.
[0101] While specific language has been used to describe the disclosure, any limitations arising on account of the same are not intended. As would be apparent to a person skilled in the art, various working modifications may be made to the method in order to implement the inventive concept as taught herein.
[0102] The figures and the foregoing description give examples of embodiments. Those skilled in the art will appreciate that one or more of the described elements may well be combined into a single functional element. Alternatively, certain elements may be split into multiple functional elements. Elements from one embodiment may be added to another embodiment. For example, the order of processes described herein may be changed and are not limited to the manner described herein. Moreover, the actions of any flow diagram need not be implemented in the order shown; nor do all of the acts need to be necessarily performed. Also, those acts that are not dependent on other acts may be performed in parallel with the other acts. The scope of embodiments is by no means limited by these specific examples.
, Claims:1. A system (100) to provide data reconciliation comprising:
a processing subsystem (105) hosted on a server (108) and configured to execute on a network (115) to control bidirectional communications among a plurality of modules, wherein the plurality of modules comprising:
characterized in that,
a data source module (120) configured to:
receive a first data source and a second data source from a user, wherein the first data source and the second data source comprises structured and unstructured text files, excel files, databases, and application programming interfaces;
allow the user to define each data source by specifying a source type, location, and columns with corresponding data types to facilitate accurate data interpretation for reconciliation;
support integration of a plurality of data sources, for facilitating the integration and simultaneous utilization of multiple data types throughout the reconciliation;
receive an user input from the user based on the plurality of data sources, wherein the user input comprises a file template for a file data source and a table name or query for a database data source; and
receive a user preference for currency and a date format from the user;
a data attribute module (125) operatively coupled to the data source module (120), wherein the data attribute module (125) is configured to:
enable the user to define data types, assign user-friendly names, configure encryption settings for data storage, and apply data masking for display;
automatically retrieve data type from the underlying source if the source is a database;
a data relationship setup module (130) operatively coupled to the data attribute module (125), wherein the data relationship setup module (130) is configured to allow the user to define a plurality of joining conditions, wherein the plurality of joining conditions is a set of criteria defining relationships between data from the plurality of data sources;
a tolerance module (135) operatively coupled to the data relationship setup module (130), wherein the tolerance module (135) is configured to configure tolerance level if needed during data matching to accommodate discrepancies that naturally occur in data from the plurality of data sources;
a data verification module (140) operatively coupled to the tolerance module (135), wherein the data verification module (140) is configured to perform a plurality of checks for validating data accuracy and identify discrepancies in the plurality of data sources, wherein the plurality of checks comprises exact match, tolerance settings for data matching, excess and lower tolerance matches, reconciliation at consolidation levels, duplicate records identification, reversals detection, and Natural Language Processing match;
a publishing module (145) operatively coupled to the data verification module (140), wherein the publishing module (145) is configured to dynamically generate tables and logic required for reconciliation based on a predefined setup;
a display configuration module (150) operatively coupled to the publishing module (145), wherein the display configuration module (150) is configured to:
allow the user to configure the fields displayed on a user interface; and
dynamically render data based on configured fields;
an execution module (155) operatively coupled to the display configuration module (150), wherein the execution module (155) is configured to:
enable an authorized user to execute reconciliation manually or schedule the execution;
parse and verify the user input based on an execution rule;
compare records based on the relationship and attributes and identify matched records and exceptions; and
keep exceptions open until matching records are found in future executions;
a reporting module (160) operatively coupled to the execution module (155), wherein the reporting module (160) is configured to enable the user to generate the report based on the requirement of the user;
a security management module (165) operatively coupled to the reporting module (160), wherein the security management module (165) is configured to provide a role-based security using a role-based access control to the reconciliation process; and
a notification module (170) operatively coupled to the security management module (165), wherein the notification module (170) is configured to generate a notification for the authorized user.
2. The system (100) as claimed in claim 1, wherein comprising a scheduler (175) operatively coupled to the data source module (120), wherein the scheduler (175) is configured to allow users to set up automated schedules for the reconciliation process.

3. The system (100) as claimed in claim 1, wherein the data attribute module (125) is configured to apply data masking in real-time during data retrieval and display.

4. The system (100) as claimed in claim 1, wherein the tolerance module (135) allows users to define multiple tolerance levels for different data types.

5. The system (100) as claimed in claim 1, wherein the reporting module (160) allows for the export of reports in a plurality of formats, wherein the plurality of formats comprises PDF, Excel, and CSV.

6. The system (100) as claimed in claim 1, wherein the data verification module (140) uses machine learning models to improve the accuracy of checks.

7. A method (400) to provide data reconciliation comprising:
characterized in that,
receiving by a data source module, a first data source and a second data source from a user, wherein the first data source and the second data source comprises structured and unstructured text files, excel files, databases, and application programming interfaces; (405)
allowing, by the data source module, the user to define each data source by specifying a source type, location, and columns with corresponding data types to facilitate accurate data interpretation for reconciliation; (410)
supporting, by the data source module, integration of a plurality of data sources, for facilitating the integration and simultaneous utilization of multiple data types throughout the reconciliation; (415)
receiving, by the data source module, an user input from the user based on the plurality of data sources, wherein the user input comprises a file template for a file data source and a table name or query for a database data source; (420)
receiving, by the data source module, a user preference for currency and a date format from the user; (425)
enabling, by a data attribute module, the user to define data types, assign user-friendly names, configure encryption settings for data storage, and apply data masking for display; (430)
automatically retrieving, by the data attribute module, data type from the underlying source if the source is a database; (435)
allowing, by a data relationship setup module, the user to define a plurality of joining conditions, wherein the plurality of joining conditions is a set of criteria defining relationships between data from the plurality of data sources; (440)
configuring, by a tolerance module, tolerance level if needed during data matching to accommodate discrepancies that naturally occur in data from the plurality of data sources; (445)
performing, by a data verification module, a plurality of checks for validating data accuracy and identify discrepancies in the plurality of data sources, wherein the plurality of checks comprises exact match, tolerance settings for data matching, excess and lower tolerance matches, reconciliation at consolidation levels, duplicate records identification, reversals detection, and Natural Language Processing match; (450)
dynamically generating, by a publishing module, tables and logic required for reconciliation based on a predefined setup; (455)
allowing, by a display configuration module, the user to configure the fields displayed on a user interface; (460)
dynamically rendering, by the display configuration module, data based on configured fields; (465)
enabling, by an execution module, an authorized user to execute reconciliation manually or schedule the execution; (470)
parsing and verifying, by the execution module, the user input based on an execution rule; (475)
comparing, by the execution module, records based on the relationship and attributes and identify matched records and exceptions; (480)
keeping, by the execution module, exceptions open until matching records are found in future executions; (485)
enabling, by a reporting module, the user to generate the report based on the requirement of the user; (490)
providing, by a security management module, a role-based security using a role-based access control to the reconciliation process; and (495)
generating, by a notification module, a notification for the authorized user. (500)

Dated this 19th day of December 2024
Signature

Prakriti Bhattacharya
Patent Agent (IN/PA-5178)
Agent for the Applicant

Documents

Application Documents

# Name Date
1 202421101034-STATEMENT OF UNDERTAKING (FORM 3) [19-12-2024(online)].pdf 2024-12-19
2 202421101034-REQUEST FOR EARLY PUBLICATION(FORM-9) [19-12-2024(online)].pdf 2024-12-19
3 202421101034-PROOF OF RIGHT [19-12-2024(online)].pdf 2024-12-19
4 202421101034-POWER OF AUTHORITY [19-12-2024(online)].pdf 2024-12-19
5 202421101034-FORM-9 [19-12-2024(online)].pdf 2024-12-19
6 202421101034-FORM FOR SMALL ENTITY(FORM-28) [19-12-2024(online)].pdf 2024-12-19
7 202421101034-FORM FOR SMALL ENTITY [19-12-2024(online)].pdf 2024-12-19
8 202421101034-FORM 1 [19-12-2024(online)].pdf 2024-12-19
9 202421101034-EVIDENCE FOR REGISTRATION UNDER SSI(FORM-28) [19-12-2024(online)].pdf 2024-12-19
10 202421101034-EVIDENCE FOR REGISTRATION UNDER SSI [19-12-2024(online)].pdf 2024-12-19
11 202421101034-DRAWINGS [19-12-2024(online)].pdf 2024-12-19
12 202421101034-DECLARATION OF INVENTORSHIP (FORM 5) [19-12-2024(online)].pdf 2024-12-19
13 202421101034-COMPLETE SPECIFICATION [19-12-2024(online)].pdf 2024-12-19
14 202421101034-MSME CERTIFICATE [20-12-2024(online)].pdf 2024-12-20
15 202421101034-FORM28 [20-12-2024(online)].pdf 2024-12-20
16 202421101034-FORM-8 [20-12-2024(online)].pdf 2024-12-20
17 202421101034-FORM 18A [20-12-2024(online)].pdf 2024-12-20
18 Abstract.jpg 2025-01-16
19 202421101034-FORM-26 [27-02-2025(online)].pdf 2025-02-27
20 202421101034-FER.pdf 2025-07-18
21 202421101034-FORM 3 [25-07-2025(online)].pdf 2025-07-25
22 202421101034-OTHERS [30-10-2025(online)].pdf 2025-10-30
23 202421101034-FORM-5 [30-10-2025(online)].pdf 2025-10-30
24 202421101034-FER_SER_REPLY [30-10-2025(online)].pdf 2025-10-30

Search Strategy

1 202421101034_SearchStrategyNew_E_SearchHistoryE_30-03-2025.pdf