Filtration and extraction of data blocks from a storage repository from a remote terminal

The method leverages a blockchain-based storage repository to efficiently filter and extract data blocks, addressing inefficiencies in conventional lending systems by applying filtering and optimization models, resulting in reduced network traffic and computational costs while enhancing data block recommendation efficiency.

WO2025006903A1PCT designated stage expired Publication Date: 2025-01-02QUINSTREET
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
PCT/US2024/036043
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-06-30
Filing Date
2024-06-28
Publication Date
2025-01-02

AI Technical Summary

Technical Problem

Conventional lending systems require multiple data block requests, involving substantial network traffic and high computational costs, to identify suitable data blocks for consumers, which leads to inefficiencies in data extraction and recommendation processes.

Method used

A computer-implemented method that uses a blockchain-based storage repository to efficiently filter and extract data blocks by applying filtering and optimization models, reducing the need for multiple requests and improving latency, network traffic, and computational efficiency.

Benefits of technology

This approach enables real-time or near real-time extraction of relevant data blocks with improved approval likelihood, reducing network traffic and computational resources, and providing consumers with optimized data block recommendations.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000059_0000
    Figure 00000059_0000
  • Figure 00000060_0000
    Figure 00000060_0000
  • Figure 00000061_0000
    Figure 00000061_0000
Patent Text Reader

Abstract

Various embodiments, of the present disclosure provide techniques for efficient real-time or near real-time extraction of data blocks. A data block recommendation request associated with a user may be received. One or more candidate data blocks associated with one or more generators may be identified based on the data block recommendation request. One or more qualifying data blocks may be identified by applying one or more filtering models to the one or more candidate data blocks based on one or more criteria datasets. Optimized data block recommendations may be generated by applying an optimization model to the one or more qualifying data blocks. The optimized data block recommendations may comprise at least a subset of the one or more qualifying data blocks. The optimized data block recommendations may be rendered on a display of a computing entity.
Need to check novelty before this filing date? Find Prior Art

Description

FILTRATION AND EXTRACTION OF DATA BLOCKS FROM A STORAGE REPOSITORY FROM A REMOTE TERMINALCROSS-REFERENCE TO RELATED APPLICATIONS

[0001] This application claims priority to and the benefit of U.S. Provisional Application No. 63 / 511,571, titled “FILTRATION AND EXTRACTION OF DATA BLOCKS FROM A BLOCKCHAIN-BASED STORAGE REPOSITORY FROM A REMOTE TERMINAL,” filed June 30, 2023, the contents of which is incorporated by reference herein in its entirety.BACKGROUND

[0002] In many environments and applications, it is desirable to extract data from one or more data sources to facilitate various functions. Applicant has identified a number of deficiencies and problems associated with data extraction. Through applied effort, ingenuity, and innovation many deficiencies of existing systems have been solved by developing solutions that are in accordance with the embodiments as discussed herein, many examples of which are described in detail herein.BRIEF SUMMARY

[0003] Various embodiments, of the present disclosure provide techniques for efficient real-time or near real-time extraction of data blocks.

[0004] According to one aspect, a computer-implemented method is provided, the computer-implemented method comprising receiving, by one or more processors, a data block recommendation request associated with a user; identifying, by the one or more processors and based on the data block recommendation request, one or more candidate data blocks associated with one or more generators; identifying, by the one or more processors, one or more qualifying data blocks by applying one or more filtering models to the one or more candidate data blocks based on one or more criteria datasets; generating, by the one or more processors, optimized data block recommendations by applying an optimization model to the one or more qualifying data blocks, wherein the optimized data block recommendations comprise at least a subset of the one or more qualifying datablocks; and rendering, by the one or more processors, the optimized data block recommendations on a display of a computing entity.

[0005] In some embodiments, generating the optimized data block recommendations comprises ranking, using the optimization model, the one or more qualifying data blocks; and selecting top N-ranked qualifying data blocks from the one or more qualifying data blocks, wherein the subset of the one or more qualifying data blocks comprise the top N- ranked qualifying data blocks.

[0006] In some embodiments, the one or more fdtering models comprise a first set of filtering models associated with the one or more generators and a second set of filtering models associated with at least one provider, wherein the one or more criteria datasets comprise (i) one or more generator criteria datasets each associated with a respective generator of the one or more generators and (ii) one or more provider criteria datasets associated with the at least one provider.

[0007] In some embodiments, the computer-implemented method further comprises receiving one or more generator data objects associated with the one or more generators; identifying one or more generator criteria associated with a data block based on the one or more generator data objects; and storing the one or more generator criteria, wherein the one or more generator criteria datasets comprises the one or more generator criteria.

[0008] In some embodiments, the computer-implemented method further comprises receiving one or more provider data objects associated with one or more providers; identifying one or more provider criteria based on the one or more provider data objects; and storing the one or more provider criteria, wherein the one or more provider criteria datasets comprises the one or more provider criteria.

[0009] In some embodiments, identifying the one or more candidate data blocks comprises applying a trained artificial intelligence model to the one or more candidate data blocks.

[0010] In some embodiments, the data block recommendation request comprises one or more of (i) user verification data, or (ii) project data.

[0011] In some embodiments, the optimization model is a machine learning model.

[0012] According to another aspect, a computing system is provider, the computing system comprising memory and one or more processors communicatively coupled to thememory, the one or more processors configured to receive a data block recommendation request associated with a user; identify based on the data block recommendation request, one or more candidate data blocks associated with one or more generators; identify one or more qualifying data blocks by applying one or more filtering models to the one or more candidate data blocks based on one or more criteria datasets; generate optimized data block recommendations by applying an optimization model to the one or more qualifying data blocks, wherein the optimized data block recommendations comprise at least a subset of the one or more qualifying data blocks; and render the optimized data block recommendations on a display of a computing entity.

[0013] In some embodiments, the one or more processors are configured to generate the optimized data block recommendations by ranking, using the optimization model, the one or more qualifying data blocks; and selecting top N-ranked qualifying data blocks from the one or more qualifying data blocks, wherein the subset of the one or more qualifying data blocks comprise the top N-ranked qualifying data blocks.

[0014] In some embodiments, the one or more filtering models comprise a first set of filtering models associated with the one or more generators and a second set of filtering models associated with at least one provider, wherein the one or more criteria datasets comprise (i) one or more generator criteria datasets each associated with a respective generator of the one or more generators and (ii) one or more provider criteria datasets associated with the at least one provider.

[0015] In some embodiments, the one or more processors are further configured to receive one or more generator data objects associated with the one or more generators; identify one or more generator criteria associated with a data block based on the one or more generator data objects; and store the one or more generator criteria, wherein the one or more generator criteria datasets comprises the one or more generator criteria.

[0016] In some embodiments, the one or more processors are further configured to receive one or more provider data objects associated with one or more providers; identify one or more provider criteria based on the one or more provider data objects; and store the one or more provider criteria; wherein the one or more provider criteria datasets comprises the one or more provider criteria.

[0017] In some embodiments, identifying the one or more candidate data blocks comprises applying a trained artificial intelligence model to the one or more candidate data blocks.

[0018] In some embodiments, the data block recommendation request comprises one or more of (i) user verification data, or (ii) project data.

[0019] In some embodiments, the optimization model is a machine learning model.

[0020] According to another aspect, one or more non-transitory computer-readable storage media is provided, the one or more non-transitory computer-readable storage media including instructions that, when executed by one or more processors, cause the one or more processors to receive a data block recommendation request associated with a user; identify based on the data block recommendation request, one or more candidate data blocks associated with one or more generators; identify one or more qualifying data blocks by applying one or more filtering models to the one or more candidate data blocks based on one or more criteria datasets; generate optimized data block recommendations by applying an optimization model to the one or more qualifying data blocks, wherein the optimized data block recommendations comprise at least a subset of the one or more qualifying data blocks; and render the optimized data block recommendations on a display of a computing entity.

[0021] In some embodiments, the one or more processors are configured to generate the optimized data block recommendations by ranking, using the optimization model, the one or more qualifying data blocks; and selecting top N-ranked qualifying data blocks from the one or more qualifying data blocks, wherein the subset of the one or more qualifying data blocks comprise the top N-ranked qualifying data blocks.

[0022] In some embodiments, the one or more filtering models comprise a first set of filtering models associated with the one or more generators and a second set of filtering models associated with at least one provider, wherein the one or more criteria datasets comprise (i) one or more generator criteria datasets each associated with a respective generator of the one or more generators and (ii) one or more provider criteria datasets associated with the at least one provider.

[0023] In some embodiments, the one or more processors are further configured to receive one or more generator data objects associated with the one or more generators;identify one or more generator criteria associated with a data block based on the one or more generator data objects; and store the one or more generator criteria, wherein the one or more generator criteria datasets comprises the one or more generator criteria.BRIEF DESCRIPTION OF THE DRAWINGS

[0024] Reference will now be made to the accompanying drawings, which are not necessarily drawn to scale, and wherein:

[0025] FIG. 1 provides an example overview of an architecture that can be used to practice embodiments of the present disclosure.

[0026] FIG. 2 provides an example central computing entity in accordance with some embodiments of the present disclosure.

[0027] FIG. 3 provides an example provider computing entity in accordance with some embodiments described herein.

[0028] FIG. 4 provides an example generator computing entity in accordance with some embodiments described herein.

[0029] FIG. 5, provides an example data extraction user interface in accordance with some embodiments of the present disclosure.

[0030] FIG. 6 provides an example generator list user interface pane in accordance with some embodiments of the present disclosure.

[0031] FIG. 7 provides an example data block user interface pane in accordance with some embodiments of the present disclosure.

[0032] FIG. 8 provides an example data block creation user interface pane in accordance with some embodiments of the present disclosure.

[0033] FIG. 9 provides an example data block configuration user interface pane in accordance with some embodiments of the present disclosure.

[0034] FIG. 10 provides an example data block user interface pane displaying data block data associated with a data block offered by a generator in accordance with some embodiments of the present disclosure.

[0035] FIG. 11 provides an example product group user interface pane in accordance with some embodiments of the present disclosure.

[0036] FTG. 12 provides an example product group creation user interface pane in accordance with some embodiments of the present disclosure.

[0037] FIG. 13 provides an example product group user interface pane displaying product group data associated with a product group defined by a generator in accordance with some embodiments of the present disclosure.

[0038] FIG. 14 provides an example data block link user interface pane in accordance with some embodiments of the present disclosure.

[0039] FIG. 15 provides an example provider list user interface pane in accordance with some embodiments of the present disclosure.

[0040] FIG. 16 provides an example company creation user interface pane in accordance with some embodiments of the present disclosure.

[0041] FIG. 17 provides an example provider configuration user interface pane in accordance with some embodiments of the present disclosure.

[0042] FIG. 18 provides an example provider list user interface pane displaying company information associated with a provider in accordance with some embodiments of the present disclosure.

[0043] FIG. 19 provides an example financial entity link creation user interface pane in accordance with some embodiments of the present disclosure.

[0044] FIG. 20 provides an example provider list user interface pane displaying company data associated with a provider and financial entity link information associated with the provider in accordance with some embodiments of the present disclosure.

[0045] FIG. 21 provides an example branch creation user interface pane in accordance with some embodiments of the present disclosure.

[0046] FIG. 22 provides an example branch configuration user interface pane in accordance with some embodiments of the present disclosure.

[0047] FIG. 23 provides an example provider list user interface pane displaying branch data associated with a provider in accordance with some embodiments of the present disclosure.

[0048] FIG. 24 provides an example user creation user interface pane in accordance with some embodiments of the present disclosure.

[0049] FTG. 25 provides an example provider list user interface pane displaying a user management user interface pane in accordance with some embodiments of the present disclosure.

[0050] FIG. 26 provides an example data block user interface pane in accordance with some embodiments of the present disclosure.

[0051] FIG. 27 provides an example data block bundle creation user interface pane in accordance with some embodiments of the present disclosure.

[0052] FIG. 28A provides an example data block review user interface pane in accordance with some embodiments of the present disclosure.

[0053] FIG. 28B provides an example provider list user interface pane displaying certain information in accordance with some embodiments of the present disclosure.

[0054] FIG. 29A provides an example provider list user interface pane displaying certain information in accordance in accordance with some embodiments of the present disclosure.

[0055] FIG. 29B provides an example provider identifier creation user interface pane in accordance with some embodiments of the present disclosure.

[0056] FIG. 29C provides an example provider list user interface pane displaying certain information in accordance with some embodiments of the present disclosure.

[0057] FIG. 30 provides an example data block extraction user interface pane in accordance with some embodiments of the present disclosure.

[0058] FIG. 31 provides an example consumer information request user interface pane in accordance with some embodiments of the present disclosure.

[0059] FIG. 32 provides an example ID verification user interface pane in accordance with some embodiments of the present disclosure.

[0060] FIG. 33 provides an example project information user interface pane in accordance with some embodiments of the present disclosure.

[0061] FIGS. 34A-34D provide an example consumer information user interface pane 3400 in accordance with some embodiments of the present disclosure.

[0062] FIG. 35 provides an example financing project review user interface pane in accordance with some embodiments of the present disclosure.

[0063] FTG. 36 provides an example data extraction user interface pane 3600 in accordance with some embodiments of the present disclosure.

[0064] FIG. 37 is a flowchart diagram of an example process for performing operations configured to aggregate data in accordance with some embodiments of the present disclosure.

[0065] FIG. 38 is a flowchart diagram of an example process for performing operations configured to generate data block recommendations for rendering on a provider computing entity in accordance with some embodiments of the present disclosure.

[0066] FIG. 39 is a flowchart diagram of an example process for performing operations configured to facilitate data block approval in accordance with some embodiments of the present disclosure.DETAILED DESCRIPTION

[0067] The present disclosure more fully describes various embodiments with reference to the accompanying drawings. It should be understood that some, but not all embodiments are shown and described herein. Indeed, the embodiments may take many different forms, and accordingly this disclosure should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will satisfy applicable legal requirements. Like numbers refer to like elements throughout.

[0068] It should be understood at the outset that although illustrative implementations of one or more aspects are illustrated below, the disclosed assemblies, systems, and methods may be implemented using any number of techniques, whether currently known or not yet in existence. The disclosure should in no way be limited to the illustrative implementations, drawings, and techniques illustrated below, but may be modified within the scope of the appended claims along with their full scope of equivalents. While values for dimensions of various elements are disclosed, the drawings may not be to scale.

[0069] The words "example," or “exemplary,” when used herein, are intended to mean "serving as an example, instance, or illustration." Any implementation described herein as an "example" or “exemplary embodiment” is not necessarily preferred or advantageous over other implementations.

[0070] Embodiments of the present disclosure now will be described more fully hereinafter with reference to the accompanying drawings, in which some, but not all embodiments of the disclosure are shown. Indeed, embodiments of the disclosure may be embodied in many different forms and should not be construed as limited to the embodiments set forth herein; rather, these embodiments are provided so that this disclosure will satisfy applicable legal requirements. Like numbers refer to like elements throughout.Overview

[0071] Difficulties in filtering data to provide relevant data to computing users can arise in many different circumstances. As just one example, consumers (e.g., individuals, entities, etc.) looking for relevant loans for paying a service provider to complete projects, such as, for example, home improvement projects. Many of these consumers require financing through, for example, a generator to pay for the services of a provider employed to complete a project. However, conventional lending systems generally require multiple data block requests — each encompassing substantial amounts of personal data — to be transmitted over a network to multiple generators (e.g., generators) in order to identify suitable data blocks — each reflected within a data block for a specific data block product — for a consumer. In an example domain, for example, a data block may represent an offer / loan product. For example, a consumer may need to submit a loan application to each potential generator (e.g., loan provider), and each generator may then need to determine whether relevant loan products are available for the consumer. Accordingly, conventional lending system and the underlying functionality for retrieving data blocks representing data block products for presentation to consumers are associated with high network traffic, high computing resource cost, and high computation cost.

[0072] Various embodiments, of the present disclosure provide techniques for efficient real-time or near real-time extraction of data blocks (for certain data block products, for example) for recommendation to a consumer by maintaining various data associated with a plurality of generators and a plurality of providers (e.g., contractors) in a database, such as a blockchain based data repository, and identifying suitable data blocks (reflected within their respective data blocks) for a consumer in real-time or near real-time. Consumers arenot required to access data from separate databases maintained by each of a plurality of generators. Instead, consumers need only access data from a single database. However, to avoid common issues of latency involved when querying databases with large amounts of data, various embodiments provide data fdtering and extraction processes that enable relevant data blocks to be identified within the data storage environment and to be extracted from the data storage environment with minimal latency.

[0073] In certain embodiments, data may be stored in a plurality of data storage locations, such as the blockchain-based data repository and a separately maintained data store that stores various data objects reflecting criteria and / or characteristics specific to one or more providers and / or generators. Those data objects reflecting criteria for selecting various data blocks and / or entity characteristics may be provided by the providers and / or generators to enable the system to automatically select various data blocks when requested. By leveraging data maintained in a database such as a blockchain data repository, various embodiments of the present disclosure avoid the need to transmit multiple data block requests to generators, which in turn results in reduced network traffic and improved computational efficiency. Moreover, various embodiments of the present disclosure identify a short list of data blocks suitable for a consumer while taking into consideration requirements set forth within and associated with each data block for extraction of the data block and provider requirements. Data blocks (whether stored within a blockchain or otherwise) can be quickly filtered out based on criteria that identifies whether a particular data block is relevant (e.g., by providing a relevance tag to an identifier of the data block) without requiring that all data within the data block be reviewed. Accordingly, various embodiments provide data block recommendations with improved likelihood of approval by the data block generator with minimal latency. By presenting consumers with data block recommendations with improved likelihood of approval, various embodiments of the present disclosure obviate the need to transmit multiple subsequent requests for data blocks to different data block generators, which in turn reduces computing cost, reduces computing resources, and improves network traffic.System Architecture

[0074] Methods, apparatuses, systems, and computer program products of the present disclosure may be embodied by any of a variety of devices in various system architectures. For example, the method, apparatus, system, and computer program product of an example embodiment may be embodied by one or more computing devices, such as a server or other entity, configured to communicate with one or more computing devices and / or one or more external systems, such as for example, third party systems. Example embodiments include one or more servers configured to facilitate and / or perform various functions associated with providing real-time or near real-time data block recommendations, including generating, storing, maintaining, updating, and / or applying one or more filtering models; generating, maintaining and / or providing one or more user interfaces; and / or other functions associated with providing data block recommendations. Additionally, or alternatively, methods, apparatuses, systems, computer-readable media, and / or computer program product of an example embodiment may be embodied by one or more software modules configured to perform some or all of the operations performed disclosed herein and executed on one or more hardware modules or systems, such as one or more servers connected to one or more other devices and / or network.

[0075] FIG. 1 is a schematic diagram of an example architecture 100 for providing real-time or near real-time data block recommendations and facilitating real-time or near real-time data block approval. The architecture 100 includes a central computing system 101 configured to receive data block recommendation requests from provider computing entities 102 (or other computing entities), process the data block recommendation requests to generate data block recommendations, and provide the generated data block recommendations to the provider computing entities 102 (or other computing entities).

[0076] The central computing system 101 may include a central computing entity 106 and a storage subsystem 108. The central computing entity 106 may be configured to facilitate and / or perform one or more functions associated with the central computing system 101. For example, the central computing entity 106 may be configured to receive data block recommendation requests from provider computing entities 102 (or other computing entities), process the data block recommendationrequests to generate data block recommendations, and provide the generated data block recommendations to the provider computing entities 102 (or other computing entities). Additionally, the central computing system 101 may leverage one or more other systems, subsystems, and / or components to facilitate and / or perform one or more functions of the central computing system 101.

[0077] As illustrated, the system architecture 100 may include one or more systems, subsystems and / or components, including hardware, software, and / or firmware, for facilitating and / or performing various functions according to embodiments of the present disclosure. In some embodiments, the one or more illustrated systems, subsystems and / or components may be discrete systems and / or components or may be part of larger systems (e.g., central computing system 101) without departing from the present disclosure. In some embodiments, one or more illustrated systems, subsystems and / or components may be external to the central computing system 101.

[0078] As illustrated, the central computing system 101 may communicate with a third-party system 104 to facilitate various functions of the central computing system 101. For example, the central computing system 101 may be configured to communicate with the third-party system 104 to facilitate access to data, access to one or more models, access to one or more computing resources, access to one or more functions, and / or the like provided by, maintained by, or otherwise accessible via the third-party system 104.

[0079] In some embodiments, the third-party system 104 may comprise one or more computing devices embodied in hardware, software, firmware and / or a combination thereof configured to provide candidate data blocks for a consumer to the central computing system 101. In some embodiments, the third-party system 104 and / or the central computing system 101 may be implemented in part using a blockchain storage environment accessible to (or embodied as a part of) the third-party system 104 and / or the central computing system 101. For example, the third-party system 104 (or at least a portion thereof) and / or the central computing system 101 (or at least a portion thereof) may comprise, access, or otherwise may be implemented as a blockchain system (e.g., private blockchain and / or public blockchain). In some embodiments, theblockchain system may comprise one or more blockchain nodes 122A-122N each storing data in a blockchain storage environment.

[0080] Each of the blockchain node 122A-122N may be associated with one or more systems or computing entities illustrated in FIG. 1. In an example embodiment, each of the blockchain nodes 122A-122N is associated with the central computing entity 106 or a generator computing entity 103. For illustration, in such example embodiment, blockchain node 122A may be associated with the central computing entity 106 (and may be referred to herein as central blockchain node) and blockchain node 122B may be associated with a generator computing entity of one or more generator computing entities 103 (and may be referred to herein as generator blockchain node). Alternatively or additionally, in another example embodiment, one or more of the blockchain nodes 122A-122N may be associated with a third-party system such as third-party system 104. For illustration, in such other example embodiment, blockchain node 122D may be associated with the third-party system 104 (and may be referred to herein as third-party blockchain node).

[0081] In various embodiments, the central blockchain node 122A is configured to access generator blockchain nodes to aggregate and store data associated with generators. For example, the central blockchain node 122A may be configured to communicate with generator blockchain nodes to receive and store data blocks, provider criteria data, and / or other data associated with one or more generators. Alternatively or additionally, the central blockchain node 122A may be configured to communicate with the third-party blockchain node 122D to receive and store candidate data blocks provided by one or more generators. The data received from generator blockchain nodes and / or third-party blockchain nodes may be stored in one or more blocks of a blockchain storage environment in the blockchain node 122A (e.g., central blockchain node).

[0082] In some embodiments, the generator data (or a portion thereof) may be stored in a separate data storage environment outside of the blockchain environment, although it should be understood that certain generator data may be stored in one or more blockchain nodes in other embodiments (e.g., within one or more blocks of a blockchain storage environment in a blockchain node 122A corresponding to thecentral computing system 101), as described above. For example, certain generator data and / or certain provider data may be stored in the storage subsystem 108 (which may be external to the blockchain system in some embodiments). In various embodiments, the central computing system 101 is configured to aggregate and store data associated with one or more providers. In an example embodiment, the provider data are stored in one or more blocks of the blockchain storage environment in the blockchain node 122A (e.g., central blockchain node). In some embodiments, the provider data (or a portion thereof) may be stored in a separate data storage environment outside of the blockchain environment.

[0083] As shown, in some embodiments, a blockchain node may comprise an application programming interface (API) and / or a blockchain server. The API and / or the blockchain server of a blockchain node may be configured to facilitate communication, over a network (e.g., private blockchain communication channel or public blockchain communication chain), between the blockchain node and other blockchain nodes within the blockchain system. Alternatively or additionally, the central computing system 101, provider computing entities 102, generator computing entities 103, and / or third-party system 104 may utilize the corresponding APIs and / or servers of the blockchain nodes 122A-122N for enabling network access to the blockchain storage environments of each individual blockchain node 122A-122N. However, it should be understood that in other embodiments, the central computing system 101, provider computing entities 102, generator computing entities 103, and / or third-party systems 104 may utilize and / or store APIs and / or servers for enabling network access to the blockchain storage environments of each individual blockchain node 122A-122N.

[0084] In some embodiments, a blockchain node (e.g., central blockchain node or third-party blockchain node) may be configured to receive one or more generator approval models from one or more generator blockchain nodes. In various embodiments, the generator approval model is sent and / or received by the recipient blockchain node (e.g., central blockchain node or third-party blockchain node) in a byte code format. A generator approval model, for example, may comprise byte code (e.g., an executable code) configured to be executed on a particular blockchain node,such that the source code for the approval model is not provided or otherwise accessible by the particular blockchain node. In this regard, a generator approval model may be executed on the recipient blockchain node (e.g., central blockchain node or third-party blockchain node) without sharing the generator’s proprietary information.

[0085] In some embodiments, a generator computing entity 103 may leverage an API to provide the one or more generator approval models over a private blockchain communications channel. The recipient blockchain node may store the generator approval model in a private partition of memory or storage. In some embodiments, the third-party system 104 and / or central computing system 101 may be configured to generate a request and retrieve a consumer evaluation report (e g., creditworthiness report) based at least in part on consumer personal information such as, but not limited to, consumer name, consumer residential address, and / or consumer social security number.

[0086] In some embodiments, the central blockchain node 122 A may be configured to execute one or more generator approval models associated with one or more generators (e.g., execute the byte code provided by the generators) based on the consumer personal information and / or consumer evaluation report. For example, the consumer personal information and / or consumer evaluation report may be provided as input to one or more approval models to identify candidate data blocks for the consumer associated with the consumer data. In some embodiments, third-party system 104 and / or the third-party blockchain node 122D associated with the third-part system 104 may be configured to execute the one or more generator approval models to identify the candidate data blocks and provide the candidate data blocks to the central computing entity 106 and / or central block chain node 122A.

[0087] Various data may be stored in the blockchain storage environments of the one or more blockchain nodes 122A-122N in the blockchain system and / or in one or more databases external to the blockchain system. Such data may include identified candidate data blocks and / or data associated with the candidate data blocks, data used by the central computing system 101 and / or third-party system 104 to identify the candidate data blocks, models used to identify the candidate data blocks, data receivedby the systems, and / or other data used by the systems to perform various functions associated therewith.

[0088] Each data item stored in the blockchain storage environment may be associated with a hash or other identifier. In various embodiments, upon receiving data associated with a generator and / or data associated with a provider, the central blockchain node 122A executes an encryption algorithm to generate a hash of the data and stores the generated hash in blockchain storage environment in the blockchain node. According to various embodiments, each block in the blockchain storage environment includes a hash of the previous block to link the blocks together and establish immutable records. For example, when the central blockchain node generates a new block to store data, it generates a hash of the data and appends the hash of the previous block to the hash of the new block.

[0089] In some embodiments, the central computing system 101 may be configured to transmit a candidate data block request to the third-party system 104. In such embodiments, the candidate data block request may include data associated with a consumer seeking a data block to fulfill financial obligations associated with proposed services and / or product rendered by a provider (e.g., such as a contractor). For example, the candidate data block request may include consumer personal information (e.g., name, address, phone number, social security number, etc.) associated with the consumer, consumer evaluation report and / or other data relevant for the third-party system 104 to provide candidate data blocks for the consumer to the central computing entity 106.

[0090] The third-party system 104 may be configured to process the candidate data block request to generate candidate data blocks and provide the candidate data blocks to the central computing system 101. In some embodiments, processing the candidate data block request comprises executing one or more generator approval models of one or more generators (e.g., as described above). The candidate data blocks provided by the third-party system 104 may be associated with a wide range of data blocks. Additionally, the candidate data blocks may be associated with a plurality of generators. In some embodiments, the candidate data blocks provided by the third- party system 104 may include one or more data blocks which may not be applicablebased on one or more factors, such as for example, data block terms (e.g., data block duration, data block amount, etc.), context data (e.g., product purchased, services purchased, provider data), and / or other data relevant for providing optimized data block recommendations with a high probability of approval. In some embodiments, the third-party system 104 may be embodied by the central computing system 101.

[0091] As illustrated, the central computing system 101 may include a criteria maintenance engine 110 and a filtering engine 112. The criteria maintenance engine 110 may be configured to maintain criteria datasets associated with one more generators and / or providers (e.g., generator criteria datasets and / or provider criteria datasets). The criteria maintenance engine 110 may be configured to receive data regarding updates to one or more provider data objects and / or one or more generator data objects and update the one or more provider data objects, the one or more generator data objects, one or more generator criteria datasets, and / or one or more provider criteria datasets based on the received data. The filtering engine 112 may be configured to receive candidate data blocks associated with a data block recommendation request from the third-party system 104 and apply one or more filtering models in accordance with one or more criteria datasets (e.g., generator criteria dataset and / or provider criteria dataset) to recommend one or more data blocks for a consumer.

[0092] The central computing system 101 may communicate with the provider computing entities 102, the generator computing entities 103, and the third-party system using one or more communication networks. Examples of communication networks include, a wired or wireless local area network (LAN), personal area network (PAN), metropolitan area network (MAN), wide area network (WAN), or the like, as well as any hardware, software and / or firmware required to implement it (such as, e.g., network routers, etc.). For example, a network may include a cellular telephone, an 802.11, 802.16, 802.20, and / or WiMax network. Further, a network may include a public network, such as the Internet, a private network, such as an intranet, or combinations thereof, and may utilize a variety of networking protocols now available or later developed including, but not limited to Transmission Control Protocol / Internet Protocol (TCP / IP) based networking protocols. For instance, the networking protocolmay be customized to suit the needs of the page management system. In some embodiments, the protocol is a custom protocol of JavaScript Object Notation (JSON) objects sent via a WebSocket channel. In some embodiments, the protocol is JSON over RPC, JSON over REST / HTTP, and the like.

[0093] The storage subsystem 108 may be configured to store input data used by the central computing entity 106 to perform data analysis to identify and ultimately extract data block objects suitable for a consumer for presentation via a user interface. In some embodiments, the storage subsystem 108 may be configured to store data associated with one or more generators, including generator data objects, and / or other data associated with generator computing entities 103. Additionally, in some embodiments, the storage subsystem 108 may be configured to store data associated with one or more providers, including provider data objects and / or other data associated with provider computing entities 102. The storage subsystem 108 may include one or more storage units, such as a plurality of distributed storage units that are connected through a computer network. Each storage unit in the storage subsystem 108 may store at least one of one or more data assets and / or one or more data about the computed properties of one or more data assets. Moreover, each storage unit in the storage subsystem 108 may include one or more nonvolatile storage or memory media including but not limited to hard disks, ROM, PROM, EPROM, EEPROM, flash memory, MMCs, SD memory cards, Memory Sticks, CBRAM, PRAM, FeRAM, NVRAM, MRAM, RRAM, SONOS, FJG RAM, Millipede memory, racetrack memory, and / or the like.Example Central Computing Entity

[0094] FIG. 2 provides a schematic of a central computing entity 106 according to one embodiment of the present disclosure. In general, the terms computing entity, computer, entity, device, system, and / or similar words used herein interchangeably may refer to, for example, one or more computers, computing entities, desktops, mobile phones, tablets, phablets, notebooks, laptops, distributed systems, kiosks, input terminals, servers or server networks, blades, gateways, switches, processing devices, processing entities, set-top boxes, relays, routers, network access points, base stations, the like, and / or any combination of devices or entities adapted to perform the functions, operations, and / orprocesses described herein. Such functions, operations, and / or processes may include, for example, transmitting, receiving, operating on, processing, displaying, storing, determining, creating / generating, monitoring, evaluating, comparing, and / or similar terms used herein interchangeably. In one embodiment, these functions, operations, and / or processes can be performed on data, content, information, and / or similar terms used herein interchangeably.

[0095] As indicated, in one embodiment, the central computing entity 106 may also include one or more communications interfaces 220 for communicating with various computing entities, such as by communicating data, content, information, and / or similar terms used herein interchangeably that can be transmitted, received, operated on, processed, displayed, stored, and / or the like.

[0096] As shown in FIG. 2, in one embodiment, the central computing entity 106 may include or be in communication with one or more processing elements 205 (also referred to as processors, processing circuitry, and / or similar terms used herein interchangeably) that communicate with other elements within the central computing entity 106 via a bus, for example. As will be understood, the processing element 205 may be embodied in a number of different ways.

[0097] For example, the processing element 205 may be embodied as one or more complex programmable logic devices (CPLDs), microprocessors, multi-core processors, coprocessing entities, application-specific instruction-set processors (ASIPs), microcontrollers, and / or controllers. Further, the processing element 205 may be embodied as one or more other processing devices or circuitry. The term circuitry may refer to an entirely hardware embodiment or a combination of hardware and computer program products. Thus, the processing element 205 may be embodied as integrated circuits, application specific integrated circuits (ASICs), field programmable gate arrays (FPGAs), programmable logic arrays (PLAs), hardware accelerators, other circuitry, and / or the like.

[0098] As will therefore be understood, the processing element 205 may be configured for a particular use or configured to execute instructions stored in volatile or non-volatile media or otherwise accessible to the processing element 205. As such, whether configured by hardware or computer program products, or by a combination thereof, the processingelement 205 may be capable of performing steps or operations according to embodiments of the present disclosure when configured accordingly.

[0099] In one embodiment, the central computing entity 106 may further include or be in communication with non-volatile media (also referred to as non-volatile storage, memory, memory storage, memory circuitry and / or similar terms used herein interchangeably). In one embodiment, the non-volatile storage or memory may include one or more non-volatile storage or memory media 210, including but not limited to hard disks, ROM, PROM, EPROM, EEPROM, flash memory, MMCs, SD memory cards, Memory Sticks, CBRAM, PRAM, Fer AM, NVRAM, MRAM, RRAM, SONOS, FJG RAM, Millipede memory, racetrack memory, and / or the like.

[0100] As will be recognized, the non-volatile storage or memory media may store databases, database instances, database management systems, data, applications, programs, program modules, scripts, source code, object code, byte code, compiled code, interpreted code, machine code, executable instructions, and / or the like. The term database, database instance, database management system, and / or similar terms used herein interchangeably may refer to a collection of records or data that is stored in a computer-readable storage medium using one or more database models, such as a hierarchical database model, network model, relational model, entity-relationship model, object model, document model, semantic model, graph model, and / or the like.

[0101] In one embodiment, the central computing entity 106 may further include or be in communication with volatile media (also referred to as volatile storage, memory, memory storage, memory circuitry and / or similar terms used herein interchangeably). In one embodiment, the volatile storage or memory may also include one or more volatile storage or memory media 215, including but not limited to RAM, DRAM, SRAM, FPM DRAM, EDO DRAM, SDRAM, DDR SDRAM, DDR2 SDRAM, DDR3 SDRAM, RDRAM, TTRAM, T-RAM, Z-RAM, RIMM, DIMM, SIMM, VRAM, cache memory, register memory, and / or the like.

[0102] As will be recognized, the volatile storage or memory media may be used to store at least portions of the databases, database instances, database management systems, data, applications, programs, program modules, scripts, source code, object code, byte code, compiled code, interpreted code, machine code, executable instructions, and / or thelike being executed by, for example, the processing element 205. Thus, the databases, database instances, database management systems, data, applications, programs, program modules, scripts, source code, object code, byte code, compiled code, interpreted code, machine code, executable instructions, and / or the like may be used to control certain aspects of the operation of the central computing entity 106 with the assistance of the processing element 205 and operating system.

[0103] As indicated, in one embodiment, the central computing entity 106 may also include one or more communications interfaces 220 for communicating with various computing entities, such as by communicating data, content, information, and / or similar terms used herein interchangeably that can be transmitted, received, operated on, processed, displayed, stored, and / or the like. Such communication may be executed using a wired data transmission protocol, such as fiber distributed data interface (FDDI), digital subscriber line (DSL), Ethernet, asynchronous transfer mode (ATM), frame relay, data over cable service interface specification (DOCSIS), or any other wired transmission protocol. Similarly, the central computing entity 106 may be configured to communicate via wireless external communication networks using any of a variety of protocols, such as general packet radio service (GPRS), Universal Mobile Telecommunications System (UMTS), Code Division A plurality of Access 2000 (CDMA2000), CDMA2000 IX (IxRTT), Wideband Code Division A plurality of Access (WCDMA), Global System for Mobile Communications (GSM), Enhanced Data rates for GSM Evolution (EDGE), Time Division-Synchronous Code Division A plurality of Access (TD-SCDMA), Long Term Evolution (LTE), Evolved Universal Terrestrial Radio Access Network (E-UTRAN), Evolution-Data Optimized (EVDO), High Speed Packet Access (HSPA), High-Speed Downlink Packet Access (HSDPA), IEEE 802.11 (Wi-Fi), Wi-Fi Direct, 802.16 (WiMAX), ultra-wideband (UWB), infrared (IR) protocols, near field communication (NFC) protocols, Wibree, Bluetooth protocols, wireless universal serial bus (USB) protocols, and / or any other wireless protocol.

[0104] Although not shown, the central computing entity 106 may include or be in communication with one or more input elements, such as a keyboard input, a mouse input, a touch screen / display input, motion input, movement input, audio input, pointing device input joystick input, keypad input, and / or the like. The central computing entity 106 mayalso include or be in communication with one or more output elements (not shown), such as audio output, video output, screen / di splay output, motion output, movement output, and / or the like.Example Provider Computing Entity

[0105] FIG. 3 provides an illustrative schematic representative of a provider computing entity 102 that can be used in conjunction with embodiments of the present invention. In general, the terms device, system, computing entity, entity, and / or similar words used herein interchangeably may refer to, for example, one or more computers, computing entities, desktops, mobile phones, tablets, phablets, notebooks, laptops, distributed systems, kiosks, input terminals, servers or server networks, blades, gateways, switches, processing devices, processing entities, set-top boxes, relays, routers, network access points, base stations, the like, and / or any combination of devices or entities adapted to perform the functions, operations, and / or processes described herein. Provider computing entities 102 can be operated by various parties. As shown in FIG. 3, the provider computing entity 102 can include an antenna 312, a transmitter 304 (e.g., radio), a receiver 306 (e.g., radio), and a processing element 308 (e.g., CPLDs, microprocessors, multi-core processors, coprocessing entities, ASIPs, microcontrollers, and / or controllers) that provides signals to and receives signals from the transmitter 304 and receiver 306, correspondingly.

[0106] The signals provided to and received from the transmitter 304 and the receiver 306, correspondingly, may include signaling information / data in accordance with air interface standards of applicable wireless systems. In this regard, the provider computing entity 102 may be capable of operating with one or more air interface standards, communication protocols, modulation types, and access types. More particularly, the provider computing entity 102 may operate in accordance with any of a number of wireless communication standards and protocols, such as those described above with regard to the central computing entity 106. In a particular embodiment, the provider computing entity 102 may operate in accordance with a plurality of wireless communication standards and protocols, such as UMTS, CDMA2000, IxRTT, WCDMA, GSM, EDGE, TD-SCDMA, LTE, E-UTRAN, EVDO, HSPA, HSDPA, Wi-Fi, Wi-Fi Direct, WiMAX, UWB, IR, NFC,Bluetooth, USB, and / or the like. Similarly, the provider computing entity 102 may operate in accordance with a plurality of wired communication standards and protocols, such as those described above with regard to the central computing entity 106 via a network interface 320.

[0107] Via these communication standards and protocols, the provider computing entity 102 can communicate with various other entities using concepts such as Unstructured Supplementary Service Data (USSD), Short Message Service (SMS), Multimedia Messaging Service (MMS), Dual-Tone Multi -Frequency Signaling (DTMF), and / or Subscriber Identity Module Dialer (SIM dialer). The provider computing entity 102 can also download changes, add-ons, and updates, for instance, to its firmware, software (e.g., including executable instructions, applications, program modules), and operating system.

[0108] According to one embodiment, the provider computing entity 102 may include location determining aspects, devices, modules, functionalities, and / or similar words used herein interchangeably. For example, the provider computing entity 102 may include outdoor positioning aspects, such as a location module adapted to acquire, for example, latitude, longitude, altitude, geocode, course, direction, heading, speed, universal time (UTC), date, and / or various other information / data. In one embodiment, the location module can acquire data, sometimes known as ephemeris data, by identifying the number of satellites in view and the relative positions of those satellites (e.g., using global positioning systems (GPS)). The satellites may be a variety of different satellites, including Low Earth Orbit (LEO) satellite systems, Department of Defense (DOD) satellite systems, the European Union Galileo positioning systems, the Chinese Compass navigation systems, Indian Regional Navigational satellite systems, and / or the like. This data can be collected using a variety of coordinate systems, such as the Decimal Degrees (DD); Degrees, Minutes, Seconds (DMS); Universal Transverse Mercator (UTM); Universal Polar Stereographic (UPS) coordinate systems; and / or the like. Alternatively, the location information / data can be determined by triangulating the external computing entity’s 102 position in connection with a variety of other systems, including cellular towers, Wi-Fi access points, and / or the like. Similarly, the provider computing entity 102 may include indoor positioning aspects, such as a location module adapted to acquire, for example, latitude, longitude, altitude, geocode, course, direction, heading, speed, time, date, and / orvarious other information / data. Some of the indoor systems may use various position or location technologies including RFID tags, indoor beacons or transmitters, Wi-Fi access points, cellular towers, nearby computing devices (e.g., smartphones, laptops) and / or the like. For instance, such technologies may include the iBeacons, Gimbal proximity beacons, Bluetooth Low Energy (BLE) transmitters, NFC transmitters, and / or the like. These indoor positioning aspects can be used in a variety of settings to determine the location of someone or something to within inches or centimeters.

[0109] The provider computing entity 102 may also comprise a user interface (that can include a display 316 coupled to a processing element 308) and / or a user input interface (coupled to a processing element 308). For example, the user interface may be a user application, browser, user interface, and / or similar words used herein interchangeably executing on and / or accessible via the provider computing entity 102 to interact with and / or cause display of information / data from the central computing entity 106, as described herein. The user input interface can comprise any of a number of devices or interfaces allowing the provider computing entity 102 to receive data, such as a keypad 318 (hard or soft), a touch display, voice / speech or motion interfaces, or other input device. In embodiments including a keypad 318, the keypad 318 can include (or cause display of) the conventional numeric (0-9) and related keys (#, *), and other keys used for operating the provider computing entity 102 and may include a full set of alphabetic keys or set of keys that may be activated to provide a full set of alphanumeric keys. In addition to providing input, the user input interface can be used, for example, to activate or deactivate certain functions, such as screen savers and / or sleep modes.

[0110] The provider computing entity 102 can also include volatile storage or memory 322 and / or non-volatile storage or memory 324, which can be embedded and / or may be removable. For example, the non-volatile memory may be ROM, PROM, EPROM, EEPROM, flash memory, MMCs, SD memory cards, Memory Sticks, CBRAM, PRAM, FeRAM, NVRAM, MRAM, RRAM, SONOS, FJG RAM, Millipede memory, racetrack memory, and / or the like. The volatile memory may be RAM, DRAM, SRAM, FPM DRAM, EDO DRAM, SDRAM, DDR SDRAM, DDR2 SDRAM, DDR3 SDRAM, RDRAM, TTRAM, T-RAM, Z-RAM, RIMM, DIMM, SIMM, VRAM, cache memory, register memory, and / or the like. The volatile and non-volatile storage or memory can storedatabases, database instances, database management systems, data, applications, programs, program modules, scripts, source code, object code, byte code, compiled code, interpreted code, machine code, executable instructions, and / or the like to implement the functions of the provider computing entity 102. As indicated, this may include a user application that is resident on the entity or accessible through a browser or other user interface for communicating with the central computing entity 106 and / or various other computing entities.

[0111] In another embodiment, the provider computing entity 102 may include one or more components or functionality that are the same or similar to those of the central computing entity 106, as described in greater detail above. As will be recognized, these architectures and descriptions are provided for exemplary purposes only and are not limiting to the various embodiments.

[0112] In various embodiments, the provider computing entity 102 may be embodied as an artificial intelligence (Al) computing entity, such as an Amazon Echo, Amazon Echo Dot, Amazon Show, Google Home, and / or the like. Accordingly, the provider computing entity 102 may be configured to provide and / or receive information / data from a user via an input / output mechanism, such as a display, a camera, a speaker, a voice-activated input, and / or the like. In certain embodiments, an artificial intelligence computing entity may comprise one or more predefined and executable program algorithms stored within an onboard memory storage module, and / or accessible over a network. In various embodiments, the artificial intelligence computing entity may be configured to retrieve and / or execute one or more of the predefined program algorithms upon the occurrence of a predefined trigger event.Example Generator computing entity

[0113] FIG. 4 provides an illustrative schematic representative of a generator computing entity 103 that can be used in conjunction with embodiments of the present invention. In general, the terms device, system, computing entity, entity, and / or similar words used herein interchangeably may refer to, for example, one or more computers, computing entities, desktops, mobile phones, tablets, phablets, notebooks, laptops, distributed systems, kiosks, input terminals, servers or server networks, blades, gateways,switches, processing devices, processing entities, set-top boxes, relays, routers, network access points, base stations, the like, and / or any combination of devices or entities adapted to perform the functions, operations, and / or processes described herein. Generator computing entities 103 can be operated by various parties. As shown in FIG. 4, the generator computing entity 103 can include an antenna 412, a transmitter 404 (e.g., radio), a receiver 406 (e.g., radio), and a processing element 408 (e.g., CPLDs, microprocessors, multi-core processors, coprocessing entities, ASIPs, microcontrollers, and / or controllers) that provides signals to and receives signals from the transmitter 404 and receiver 406, correspondingly.

[0114] The signals provided to and received from the transmitter 404 and the receiver 406, correspondingly, may include signaling information / data in accordance with air interface standards of applicable wireless systems. In this regard, the generator computing entity 103 may be capable of operating with one or more air interface standards, communication protocols, modulation types, and access types. More particularly, the generator computing entity 103 may operate in accordance with any of a number of wireless communication standards and protocols, such as those described above with regard to the central computing entity 106. In a particular embodiment, the generator computing entity 103 may operate in accordance with a plurality of wireless communication standards and protocols, such as UMTS, CDMA2000, IxRTT, WCDMA, GSM, EDGE, TD-SCDMA, LTE, E-UTRAN, EVDO, HSPA, HSDPA, Wi-Fi, Wi-Fi Direct, WiMAX, UWB, IR, NFC, Bluetooth, USB, and / or the like. Similarly, the generator computing entity 103 may operate in accordance with a plurality of wired communication standards and protocols, such as those described above with regard to the central computing entity 106 via a network interface 420.

[0115] Via these communication standards and protocols, the generator computing entity 103 can communicate with various other entities using concepts such as Unstructured Supplementary Service Data (USSD), Short Message Service (SMS), Multimedia Messaging Service (MMS), Dual-Tone Multi -Frequency Signaling (DTMF), and / or Subscriber Identity Module Dialer (SIM dialer). The generator computing entity 103 can also download changes, add-ons, and updates, for instance, to its firmware,software (e.g., including executable instructions, applications, program modules), and operating system.

[0116] According to one embodiment, the generator computing entity 103 may include location determining aspects, devices, modules, functionalities, and / or similar words used herein interchangeably. For example, the generator computing entity 103 may include outdoor positioning aspects, such as a location module adapted to acquire, for example, latitude, longitude, altitude, geocode, course, direction, heading, speed, universal time (UTC), date, and / or various other information / data. In one embodiment, the location module can acquire data, sometimes known as ephemeris data, by identifying the number of satellites in view and the relative positions of those satellites (e.g., using global positioning systems (GPS)). The satellites may be a variety of different satellites, including Low Earth Orbit (LEO) satellite systems, Department of Defense (DOD) satellite systems, the European Union Galileo positioning systems, the Chinese Compass navigation systems, Indian Regional Navigational satellite systems, and / or the like. This data can be collected using a variety of coordinate systems, such as the Decimal Degrees (DD); Degrees, Minutes, Seconds (DMS); Universal Transverse Mercator (UTM); Universal Polar Stereographic (UPS) coordinate systems; and / or the like. Alternatively, the location information / data can be determined by triangulating the external computing entity’s 102 position in connection with a variety of other systems, including cellular towers, Wi-Fi access points, and / or the like. Similarly, the generator computing entity 103 may include indoor positioning aspects, such as a location module adapted to acquire, for example, latitude, longitude, altitude, geocode, course, direction, heading, speed, time, date, and / or various other information / data. Some of the indoor systems may use various position or location technologies including RFID tags, indoor beacons or transmitters, Wi-Fi access points, cellular towers, nearby computing devices (e.g., smartphones, laptops) and / or the like. For instance, such technologies may include the iBeacons, Gimbal proximity beacons, Bluetooth Low Energy (BLE) transmitters, NFC transmitters, and / or the like. These indoor positioning aspects can be used in a variety of settings to determine the location of someone or something to within inches or centimeters.

[0117] The generator computing entity 103 may also comprise a user interface (that can include a display 416 coupled to a processing element 408) and / or a user input interface(coupled to a processing element 408). For example, the user interface may be a user application, browser, user interface, and / or similar words used herein interchangeably executing on and / or accessible via the generator computing entity 103 to interact with and / or cause display of information / data from the central computing entity 106, as described herein. The user input interface can comprise any of a number of devices or interfaces allowing the generator computing entity 103 to receive data, such as a keypad 318 (hard or soft), a touch display, voice / speech or motion interfaces, or other input device. In embodiments including a keypad 418, the keypad 418 can include (or cause display of) the conventional numeric (0-9) and related keys (#, *), and other keys used for operating the generator computing entity 103 and may include a full set of alphabetic keys or set of keys that may be activated to provide a full set of alphanumeric keys. In addition to providing input, the user input interface can be used, for example, to activate or deactivate certain functions, such as screen savers and / or sleep modes.

[0118] The generator computing entity 103 can also include volatile storage or memory 422 and / or non-volatile storage or memory 424, which can be embedded and / or may be removable. For example, the non-volatile memory may be ROM, PROM, EPROM, EEPROM, flash memory, MMCs, SD memory cards, Memory Sticks, CBRAM, PRAM, FeRAM, NVRAM, MRAM, RRAM, SONOS, FJG RAM, Millipede memory, racetrack memory, and / or the like. The volatile memory may be RAM, DRAM, SRAM, FPM DRAM, EDO DRAM, SDRAM, DDR SDRAM, DDR2 SDRAM, DDR3 SDRAM, RDRAM, TTRAM, T-RAM, Z-RAM, RIMM, DIMM, SIMM, VRAM, cache memory, register memory, and / or the like. The volatile and non-volatile storage or memory can store databases, database instances, database management systems, data, applications, programs, program modules, scripts, source code, object code, byte code, compiled code, interpreted code, machine code, executable instructions, and / or the like to implement the functions of the generator computing entity 103. As indicated, this may include a user application that is resident on the entity or accessible through a browser or other user interface for communicating with the central computing entity 106 and / or various other computing entities.

[0119] In another embodiment, the generator computing entity 103 may include one or more components or functionality that are the same or similar to those of the centralcomputing entity 106, as described in greater detail above. As will be recognized, these architectures and descriptions are provided for exemplary purposes only and are not limiting to the various embodiments.Example User Interfaces

[0120] Various example user interfaces described herein, including, for example, those as shown in FIG. 5 to FIG. 36, may facilitate the various technical advantages and / or improvements described above. In particular, FIG. 5 to FIG. 36 illustrate various example user interfaces associated with generating and presenting data block objects, including onboarding generators and providers. For example, the central computing system 101 (e.g., central computing entity 106 thereof) may leverage one or more user interfaces, such as those shown in FIG. 5 to FIG. 36, to receive and / or present data associated with generators, providers, and / or predictive entities. In some embodiments, at least a portion of the one or more user interfaces may be specially configured for receiving and / or providing access to data associated with generators. Additionally or alternatively, in some embodiments, at least a portion of the one or more user interfaces may be specially configured for receiving and / or accessing data associated with providers. In some embodiments, at least a portion of the one or more user interfaces may require user authentication (e.g., password verification, biometrics verification, etc.) to access the portion of the one or more user interfaces. For example, in some embodiments, a provider may possess the requisite permissions to view data associated with a generator but may not possess the requisite permissions to modify data associated with a generator. As another example, in some embodiments, a generator may possess the requisite permissions to view data associated with a provider but may not possess the requisite permissions to modify data associated with the provider.

[0121] FIG. 5, depicts an example data extraction user interface 500 in accordance with some embodiments of the present disclosure. In some embodiments, the example data extraction user interface 500 includes a side menu bar 502. The side menu bar 502 may provide one or more user interface options associated with the central computing system 101. For example, as shown in FIG. 5, the side menu bar 502, may provide a generators option 504, a providers option 516, a message center 518, and / or other options.

[0122] When a user (e.g., administrator user, or other user) interacts with the generators option 504 (e.g., clicks using a computer mouse, taps via a touch screen, or otherwise selects the generators option 504, the example data extraction user interface 500 may be refreshed to display a generator list user interface pane. In the example shown in FIG. 5, the example generator list user interface pane 506 includes a generator list user interface pane title section 508 (e.g., “List of Generators”) that displays the title of the example generator list user interface pane. The example generator list user interface pane 506 further includes identify data for each of one or more generators that have been previously added along with certain information associated with the generators (e.g., location data, contact information, or the like). As shown in FIG. 5, the generator list user interface pane may include a generator creation user interface element 510 (e.g., “Add Generator” button). When a user interacts with the generator creation user interface element 510 (e.g., clicks using a computer mouse, taps via a touch screen, or otherwise selects the generator creation user interface element 510, the example data extraction user interface 500 may be refreshed to display a generator creation user interface pane 512. As shown in FIG. 5, the generator creation user interface pane 512 may include one or more input fields 514, where the generator may enter identifying data (e.g., generator name, generator legal name, etc.) and / or other data associated with the generator (e.g., consumer service phone number salesforce ID, model ID, etc.). As shown in the FIG. 5, in some embodiments, the generator creation user interface pane 512 may include a logo creation user interface element (e g., “Add Logo” button) that when clicked using a computer mouse, tapped via a touch screen, or otherwise selected by a user enables the user to add a logo. As further shown in FIG. 5, in some embodiments, the generator creation user interface pane 512 may include a notification to a user such as, for example, a disclaimer.

[0123] FIG. 6 provides an example generator list user interface pane 506 in accordance with some embodiments of the present disclosure. As shown in FIG. 6, the generator list user interface pane 506 may be configured to display a list of generators 602. The generator list user interface pane 506 may include a data view user interface element 604 (e.g., “view details”). When a user interacts with the data view user interface element 604 (e.g., clicks using a computer mouse, taps via a touch screen, or otherwise selects the data view userinterface element 604, the example data extraction user interface 500 may be refreshed to display data blocks and / or product groups associated with a generator.

[0124] FIG. 7 provides an example data block user interface pane 702 in accordance with some embodiments of the present disclosure. In some embodiments, the data block user interface pane 702 may include a data block creation user interface element 706. When a user interacts with the data block creation user interface element 706 (e.g., clicks using a computer mouse, taps via a touch screen, or otherwise selects the data block creation user interface element 706), the example data extraction user interface 500 may be refreshed to display a data block creation user interface pane.

[0125] FIG. 8 provides an example data block creation user interface pane 800 in accordance with some embodiments of the present disclosure. In some embodiments, data block creation user interface pane 800 may include one or more data block input fields 802, where a generator may enter data regarding data blocks offered by the generator (e g., plan identifier, data block type, data block category, data block description, minimum interest rate, minimum payment factor, payment terms, provider fee, promotion, and / or other data associated with a respective data block).

[0126] FIG. 9 provides an example data block configuration user interface pane 900 in accordance with some embodiments of the present disclosure. In some embodiments, data block configuration user interface pane 900 may include one or more data block configuration input fields 902, where a generator may enter configuration data regarding data blocks offered by the generator (e.g., data block offer expiration period, data block approval expiration period, data block purchase window period, etc.)

[0127] FIG. 10 provides an example data block user interface pane 702 displaying data block data 1002 associated with a data block offered by a generator in accordance with some embodiments of the present disclosure. As shown in FIG. 10, the generator list user interface pane 506 may include a products group tab 1004. When a user interacts with the products group tab 1004 (e.g., clicks using a computer mouse, taps via a touch screen, or otherwise selects the products group tab 1004), the example data extraction user interface 500 may be refreshed to display a products group user interface pane.

[0128] FIG. 11 provides an example product group user interface pane 1102 in accordance with some embodiments of the present disclosure. In some embodiments, theproduct group user interface pane 1102 may include a product creation interface element 1104 (e.g., “Add Product”). When a user interacts with the product group user interface pane 1102 (e.g., clicks using a computer mouse, taps via a touch screen, or otherwise selects the product group user interface pane 1102), the example data extraction user interface 500 may be refreshed to display a product group creation user interface pane.

[0129] FIG. 12 provides an example product group creation user interface pane 1200 in accordance with some embodiments of the present disclosure. In some embodiments, the product group creation user interface pane 1200 may be configured to enable a generator to define a product group that includes one or more criteria to be satisfied for a data block to be applicable to a project, consumer, and / or provider. As shown in FIG. 12, the product group creation user interface pane 1200 may include one or more product group input fields 1202, where a generator may enter the one or more criteria (e.g., start date, end date, minimum data block amount range, maximum data block amount range, operation territory, trade selection, provider flag list, and / or the like.). In some embodiments, a provider flag list may comprise approved providers (e.g., included providers) and / or disqualified providers (e.g., “excluded providers) as specified by a generator. As shown in FIG. 12, the example product group creation user interface pane 1200 may include at least one product group identifier 1204 (e.g., group name, group ID, etc.) configured to uniquely identify a given product group of other product groups.

[0130] FIG. 13 provides an example product group user interface pane 1102 displaying product group data 1302 associated with a product group defined by a generator in accordance with some embodiments of the present disclosure. As shown in FIG. 13, the product group user interface pane 1102 may include a data block link user interface element 1304 (e.g., “Add Data blocks” button). When a user interacts with the data block link user interface element 1304 (e.g., clicks using a computer mouse, taps via a touch screen, or otherwise selects the data block link user interface element 1304), the example data extraction user interface 500 may be refreshed to display a data block link user interface pane.

[0131] FIG. 14 provides an example data block link user interface pane 1400 in accordance with some embodiments of the present disclosure. As shown in FIG. 14, the data block link user interface pane 1400 may include a select user interface element 1402associated with each data block, where a generator may link a data block to a product group (e.g., add a data block to a data block group) by selecting the corresponding select user interface element 1402.

[0132] FIG. 15 provides an example provider list user interface pane 1500 in accordance with some embodiments of the present disclosure. In some embodiments, the provider list user interface pane 1500 may be rendered on a computing entity in response to interaction with the providers option 516. For example, when a user interacts with the providers option 516 (e.g., clicks using a computer mouse, taps via a touch screen, or otherwise selects the providers option 516), the example data extraction user interface 500 may be refreshed to display the example provider list user interface pane 1500 of the example data extraction user interface 500. The provider list user interface pane 1500 may include a company creation user interface element 1504 (e.g., “Add Company” button). When a user interacts with the company creation user interface element 1504 (e g., clicks using a computer mouse, taps via a touch screen, or otherwise selects the company creation user interface element 1504, the example data extraction user interface 500 may be refreshed to display a company creation user interface pane.

[0133] FIG. 16 provides an example company creation user interface pane 1600 in accordance with some embodiments of the present disclosure. As shown in FIG. 16, the company creation user interface pane 1600 may include one or more company data input fields 1602, where a provider may enter data regarding one or more companies associated with the provider (e.g., company name, company legal name, consumer service phone number, salesforce ID, company address, company contact information, and / or other data regarding the provider.).

[0134] FIG. 17 provides an example provider configuration user interface pane 1700 in accordance with some embodiments of the present disclosure. In some embodiments, provider configuration user interface pane 1700 may include one or more provider configuration input fields 1702, where a provider may enter provider configuration data, such as for example, provider classification, provider company status, provider workflow type, and / or other configuration data.

[0135] FIG. 18 provides an example provider list user interface pane 1500 displaying company information 1802 associated with a provider in accordance with someembodiments of the present disclosure. As shown in FIG. 18, the provider list user interface pane 1500 may include a financial entity link creation user interface element 1804. When a user interacts with the financial entity link creation user interface element 1804 (e.g., clicks using a computer mouse, taps via a touch screen, or otherwise selects the financial entity link creation user interface element 1804), the example data extraction user interface 500 may be refreshed to display a financial entity link creation user interface pane.

[0136] FIG. 19 provides an example financial entity link creation user interface pane 1900 in accordance with some embodiments of the present disclosure. In some embodiments, the financial entity link creation user interface pane 1900 may include one or more funding input fields 1902, where a provider may enter account information for remitting funds for financed projects associated with a provider, such as account name, account type, routing number, account number, and / or other funding related data.

[0137] FIG. 20 provides an example provider list user interface pane 1500 displaying company data associated with a provider and funding data 2004 (also referred to herein as financial entity link information) associated with the provider in accordance with some embodiments of the present disclosure. As shown in FIG. 20, the provider list user interface pane 1500 may include a branch creation user interface element 2006. When a user interacts with the branch creation user interface element 2006 (e.g., clicks using a computer mouse, taps via a touch screen, or otherwise selects the branch creation user interface element 2006), the example data extraction user interface 500 may be refreshed to display a branch creation user interface pane.

[0138] FIG. 21 provides an example branch creation user interface pane 2100 in accordance with some embodiments of the present disclosure. As shown in FIG. 21, the branch creation user interface pane 2100 may include one or more branch data input fields 2102, where a provider may enter data regarding one or more branches (e.g., company locations) associated with the provider (e.g., branch name, branch legal name, salesforce ID, branch address, contact information, and / or other data regarding a branch associated with the provider).

[0139] FIG. 22 provides an example branch configuration user interface pane 2200 in accordance with some embodiments of the present disclosure. In some embodiments, branch configuration user interface pane 2200 may include one or more branchconfiguration input fields 2202, where a provider may enter branch configuration data, such as for example, branch status (e.g., active, not active, etc.), trade supported by the branch, operation territory associated with the branch, and / or the like.

[0140] FIG. 23 depicts an example provider list user interface pane 1500 displaying branch data 2300 associated with a provider in accordance with some embodiments of the present disclosure. As shown in FIG. 23, the branch data 2300 displayed may include status 2304, Salesforce ID 2306, operation territory 2308, trades 2310, and / or the like. In some example embodiments, the branch data 2300 may include contact information 2604 as shown in FIG. 26. As further shown in FIG. 23, the example provider list user interface pane 1500 may be configured to display funding data 2004 associated with the provider. As shown in FIG. 23, the provider list user interface pane 1500 may include a user creation user interface element 2302. When a user interacts with the user creation user interface element 2302 (e.g., clicks using a computer mouse, taps via a touch screen, or otherwise selects the user creation user interface element 2302), the example provider list user interface pane 1500 may be refreshed to display a user creation user interface pane.

[0141] FIG. 24 provides an example user creation user interface pane 2400 in accordance with some embodiments of the present disclosure. As shown in FIG. 24, the user creation user interface pane 2400 may include one or more user invitation input fields 2402, where a provider may enter data that may be used to transmit an invitation request to an individual (e.g., team member), such as email address, first name, last name, role, and / or other data associated with a team member.

[0142] FIG. 25 provides an example provider list user interface pane 1500 displaying a user management user interface pane 2502 in accordance with some embodiments of the present disclosure. The user management user interface pane 2502 may be configured to display user data 2504. As shown in FIG. 25, the example provider list user interface pane 1500 may include a data blocks tab 2506 and / or a provider identifier tab 2508. When a user interacts with the data blocks tab 2506 (e.g., clicks using a computer mouse, taps via a touch screen, or otherwise selects data blocks tab 2506), the example data extraction user interface 500 may be refreshed to display a data block user interface pane.

[0143] FIG. 26 provides an example data block user interface pane 2600 in accordance with some embodiments of the present disclosure. As shown in FIG. 26, the data block userinterface pane 2600 may include a data block bundle creation user interface element 2602. When a user interacts with the data block bundle creation user interface element 2602 (e.g., clicks using a computer mouse, taps via a touch screen, or otherwise selects data block bundle creation user interface element 2602), the example data extraction user interface 500 may be refreshed to display a data block bundle creation user interface pane.

[0144] FIG. 27 provides an example data block bundle creation user interface pane 2700 in accordance with some embodiments of the present disclosure. As shown in FIG. 27, the data block bundle creation user interface pane 2700 may include one or more data block bundle data input fields 2702, where a provider may enter and or select data (e.g., bundle name, trade, data block among range, operation territory, data block active date range, and / or other data) to define a data block bundle.

[0145] FIG. 28A depicts an example data block review user interface pane 2800 in accordance with some embodiments of the present disclosure. The data block review user interface pane 2800 may be configured to display various data, associated with a data block bundle, such as for example, a data block bundle category 2802 (e.g., pro elite, pro platinum, pro gold, pro silver, etc.).

[0146] FIG. 28B depicts an example provider list user interface pane 1500 displaying branch data 2300, financial entity link information (e.g., funding data 2004), and data block bundle information 2812 in accordance with some embodiments of the present disclosure. As shown in FIG. 28B, the provider list user interface pane 1500 may include a data block sorting user interface element 2810, which when clicked using a computer mouse, tapped via a touch screen, or otherwise selected cause the list of data blocks to be sorted in accordance with specified sorting criteria (e.g., sort by last updated date, etc.).

[0147] FIG. 29A depicts an example provider list user interface pane 1500 displaying branch data 2300, financial entity link information (e.g., funding data 2004), and provider identifier user interface pane 2902 in accordance with some embodiments of the present disclosure. The example data extraction user interface 500 may be refreshed to display the provider identifier user interface pane 2902 when a user interacts with the provider identifier tab 2508 (e.g., clicks using a computer mouse, taps via a touch screen, or otherwise selects provider identifier tab 2508). As shown in FIG. 29A, the provider identifier user interface pane 2902 may include a provider identifier creation user interfaceelement 2904. When a user interacts with the provider identifier creation user interface element 2904 (e.g., clicks using a computer mouse, taps via a touch screen, or otherwise selects provider identifier creation user interface element 2904), the example data extraction user interface 500 may be refreshed to display a provider identifier creation user interface pane.

[0148] FIG. 29B depicts an example provider identifier creation user interface pane 2906 in accordance with some embodiments of the present disclosure. As shown in FIG. 29B, the provider identifier creation user interface pane 2906 may include one or more provider identifier input fields 2908, where a provider may enter and or select data (e.g., generator, identification number, and / or other data) to define or otherwise provide provider identifier information.

[0149] FIG. 29C depicts an example provider list user interface pane 1500 displaying branch data 2300, financial entity link information (e.g., funding data 2004), and provider identifier user interface pane 2902 with provider identifier information in accordance with some embodiments of the present disclosure. As shown in the FIG. 29C, the provider identifier information displayed within the provider identifier user interface pane 2902 may include generator name 2912, identification number 2914, and / or the like.

[0150] FIG. 30 provides an example data block extraction user interface pane 3000 in accordance with some embodiments of the present disclosure. A data block extraction user interface pane 3000 may be configured to display projects associated with a particular provider. In some embodiments and as shown in FIG. 30, the example data block extraction user interface pane 3000 includes a side menu bar 3002. The side menu bar 3002 may provide one or more user interface options associated with the central computing system 101. For example, the side menu bar 3002, may provide a dashboard option 3004, a project option 3008, a frequently asked question (FAQ) option 3010, an administration option 3012, a project learning option 3014, and / or other options. When a user interacts with the dashboard option 3004 (e.g., clicks using a computer mouse, taps via a touch screen, or otherwise selects the dashboard option 3004, the example data extraction user interface 500 may be refreshed to display a list of recent projects associated with the provider. As shown in FIG. 30, the data block extraction user interface pane 3000 may include a project creation user interface element 3006. When a user interacts with the project creation userinterface element 3006 (e.g., clicks using a computer mouse, taps via a touch screen, or otherwise selects the project creation user interface element 3006, the example data extraction user interface 500 may be refreshed to display a consumer information request user interface pane.

[0151] FIG. 31 depicts an example consumer information request user interface pane 3100 in accordance with some embodiments of the present disclosure. As shown in FIG. 31, the consumer information request user interface pane 3100. may include one or more user ID interface elements, such as a scanner user interface element 3102 configured to scan a barcode (e.g., barcode on government-issued photo ID); ID verification user interface element 3104 configured to enable a user to enter data regarding a consumer. When a user interacts with the ID verification user interface element 3104 (e.g., clicks using a computer mouse, taps via a touch screen, or otherwise selects ID verification user interface element 3104), the example data extraction user interface 500 may be refreshed to display an ID verification user interface pane.

[0152] FIG. 32 provides an example ID verification user interface pane 3200 in accordance with some embodiments of the present disclosure. As shown in FIG. 32, the ID verification user interface pane 3200 may include one or more consumer data input fields 3202, where a user may enter consumer data that may be used to verify the identity of the user and / or access other data information regarding the consumer. In some embodiments and as shown in FIG. 32, the one or more consumer data input fields 3202 may correspond to data fields on a government-issued photo ID (e.g., ID type, ID number, issued state, expiration date, first name, middle name, last name, date of birth, street address, city, zip code, state, etc.).

[0153] FIG. 33 provides an example project information user interface pane 3300 in accordance with some embodiments of the present disclosure. As shown in FIG. 33, the project information user interface pane 3300 may include one or more project information input fields 3302, where a user may provide data regarding a project, such as for example, service provided, project type, and / or the like. Additionally or alternatively, the project information user interface pane 3300 may include one or more data block request information input fields 3304.

[0154] FIGS. 34A-34D provide an example consumer information user interface pane 3400 in accordance with some embodiments of the present disclosure. As shown in FIG. 34, the consumer information user interface pane 3400 may include one or more consumer information input fields 3402, where a user may provide data regarding a consumer seeking financial services (e.g., data block), such as for example, consumer personal information 3404, consumer address 3406, consumer employment information 3408, consumer income information 3410, and / or other data.

[0155] FIG. 35 provides an example financing project review user interface pane 3500 in accordance with some embodiments of the present disclosure. The financing project review user interface pane 3500 may configured to display project financing data 3502 (e.g., financing information, project address, consumer information, home address, employment information, income information, and / or other data provided by a user with respect to financing a project) for review and / or editing by a user prior to submitting for processing (e.g., by the central computing system 101).

[0156] FIG. 36 provides an example data extraction user interface pane 3600 in accordance with some embodiments of the present disclosure. As shown in FIG. 36, the data extraction user interface pane 3600 may display one or more data block objects 3602 representing recommended data blocks for the consumer. As shown in FIG. 36, each recommended data block object may include generator identifying data 3604 configured to identify a generator offering the data block, data block terms 3606, and / or other data.Example Data Flows and Operations

[0157] FIG. 37 is a flowchart diagram of an example process 3700 for performing operations configured to aggregate data leveraged by a central computing entity, such as central computing entity 106, to generate data block recommendations for a consumer in accordance with some embodiments of the present disclosure. In an example embodiment, data leveraged by the central computing entity 106 to generate data block recommendations include, but are not limited to, consumer data, generator criteria data, and provider criteria data. In some embodiments the data block recommendations may be rendered on a display of computing entity (e.g., display of a provider computing entity, display of a generatorcomputing entity, and / or the like) via a user interface, such as data extraction user interface 500 described above.

[0158] The process 3700 begins at operation 3702 when the central computing entity 106 receives one or more generator data objects. The central computing entity 106 may receive the one or more generator data objects from one or more generator computing entities. In some embodiments, the generator data objects may be received via one or more APIs and / or over a network (e.g., a private network or a public network). Additionally, the central computing entity may provide a user interface, such as data extraction user interface 500. The data extraction user interface 500 may be configured for rendering on a display of a generator computing entity such that a generator associated with the generator computing entity may provide, via the data extraction user interface 500, input corresponding to generator data objects.

[0159] In various embodiments, the central computing entity is associated with or otherwise corresponds to a central blockchain node in a blockchain system. The central blockchain node may be configured to receive generator data objects from generator blockchain nodes in the blockchain system. The central blockchain node and / or a generator blockchain node may include one or more APIs configured to facilitate communication between the central blockchain node and the generator blockchain node. Such communication may include transmission of generator data objects from the generator blockchain node to the central blockchain node over a private blockchain communication channel (or public blockchain communication channel in some embodiments).

[0160] A generator data object may comprise data about a generator (e.g., a lender in an example domain) such as, but not limited to, generator identification, generator contact information, salesforce ID associated with the generator, and / or third-party model ID associated with the generator. Additionally or alternatively, a generator data object may comprise data about one or more data blocks offered by a generator such as, but not limited to, data block ID, data block type, data block category, data block description, minimum interest rate and / or range associated with a data block, minimum payment factor and / or range associated with a data block, payment terms, provider fee (e.g., provider fee), and / or other data associated with a data block. In some implementations, a generator data object may comprise data obtained from a rate sheet associated with the generator. In someembodiments, a generator data object may comprise promotion(s) offered by a generator. In some embodiments, a generator data object may comprise data block configuration, such as, for example, offer expiration period for a data block, approval expiration period for a data block, purchase window period for a data block, and / or the like.

[0161] Additionally or alternatively, a generator data object may comprise one or more generator approval models. Each generator approval model may be associated with a particular data block (or a group of data blocks) and may be leveraged to identify candidate data blocks for a consumer. As described above, the approval models may be provided and received in bytecode formats.

[0162] Additionally or alternatively, a generator data object may comprise one or more generator criteria associated with a data block. In some embodiments, the one or more generator criteria may include geographic location(s) (e.g., operation territory) that describes project location requirements for a given data block to be applicable (e.g., City, State, Country, etc.). Additionally or alternatively, the one or more generator criteria may include trade type that describes project type requirements for a given data block to be applicable (e g., electrical, advance energy storage, generators, HVAC, etc.) Additionally or alternatively, the one or more generator criteria may include data block amount information that describes a minimum amount, a maximum amount, and / or a range of requested data block amount requirement for given data block to be applicable. Additionally or alternatively, the one or more generator criteria may include provider requirements for a given data block to be applicable, such, as for example, provider classification (e.g., gold status, gold plus, platinum status, platinum plus status, diamond status, etc.), excluded providers, approved providers, and / or the like. In some embodiments, provider classification may describe a rating associated with a provider. For example and not intended to be limiting, platinum status may correspond to an excellent rating, while gold status may correspond to a poor rating.

[0163] As described above, generator data objects may be received using a blockchain system / architecture, although in other embodiments, the generator data objects (or a portion thereof) may be received and stored in other database formats. For example, the central computing entity 106 may receive generator data objects (or a portion thereof) directly from a generator computing entity 103 over a communications network. One ormore APIs external to the blockchain system may be leveraged to facilitate communication between the central computing entity and generator computing entities.

[0164] At operation 3704, the central computing entity 106 stores the received generator data objects. In various embodiments, the central blockchain node is configured to store each received generator data object in a respective block of a blockchain storage environment in the central blockchain node. In some embodiments, the central blockchain node may be configured to store individual data items of a generator data object in separate blocks of the blockchain storage environment. In some embodiments, the blockchain storage environment comprises one or more storage partitions that are each associated with a particular generator. For example, a storage partition of the blockchain storage environment may be assigned to a particular generator and configured to store generator data objects associated with the particular generator. Each generator data object (or group of generator data objects) for a particular generator may be stored in a unique block within the assigned storage partition of the blockchain storage environment as an individual data entry. Alternatively or additionally, in some embodiments, each data item (or a group of data items) associated with a generator data object may be stored in a unique block within the assigned storage partition of the blockchain storage environment as an individual data entry.

[0165] Each block may comprise an identifier, such as a hash configured to identify the data (e g., generator data object(s) or particular data item(s) associated with generator data object(s)) entered in the block. In this regard, in various embodiments, the central blockchain node may be configured to execute an encryption algorithm to generate a hash of a generator data object, a hash of a group of generator data objects, a hash of one or more data items or a group of data items in the generator data object(s) and store the generated hash in a block of the blockchain storage environment. According to various embodiments, the blocks of a particular storage partition within the blockchain storage environment may be linked together by appending the hash of each block with the hash of the previous block. For example, in response to receiving a generator data object or group of data objects, the central blockchain node may execute an encryption algorithm to generate a hash of the generator data object, a hash of the group of data objects, a hash for each of one or more data items or group of data items in the generator data object(s) andappend the generated hash to the next data block generated within the particular storage partition or blockchain storage environment.

[0166] In some embodiments, generator data objects (or a portion thereof) may be stored outside of a blockchain storage environment. For example, in certain embodiments where generator data objects (or a portion thereof) are received outside of blockchain system, the central computing entity 106 may store the received generator data objects (or a portion thereof) in a database associated with the central computing entity and external to the blockchain system such as, for example, storage subsystem 108.

[0167] In an example embodiment, the central blockchain node or central computing entity may be configured to correlate at least a portion of the generator data objects stored in the blockchain storage environment of the central blockchain node or other database with corresponding data stored in blockchain storage environment of generator blockchain nodes or other databases associated with generator computing entities (which databases may be external to the blockchain system). The noted correlation may be performed to, for example, ensure data accuracy and / or to ensure the data stored in the blockchain storage environment or other databases associated with the central computing entity are up-to-date by correlating with corresponding data to identify discrepancy. In some embodiments, the noted correlation may be performed periodically.

[0168] In some embodiments, the central computing entity 106 or associated central blockchain node may be configured to update a generator data object, a group of generator data objects, a data item, or a group of data items in response to updates received from a generator computing entity or a blockchain node associated with the generator computing entity. In some embodiments, updating a generator data object, a group of generator data objects, a data item, or a group of data items comprises creating a new block in the blockchain storage environment and storing the updated generator data object, updated group of generator data objects, updated data item, or updated group of data items in the new block as the latest revision for the particular generator data object, particular group of generator data objects, particular data item, or particular group of data items. In some embodiments, the central computing entity 106 may communicate with one or more other systems (e.g., third-party system 104 and / or other external systems) to facilitate updatingof corresponding data in the one or more other systems. For example, the central computing entity 106 may transmit the received update to the one or more other systems.

[0169] At operation 3706, the central computing entity 106 receives one or more provider data objects. The central computing entity 106 may receive the one or more provider data objects from one or more provider computing entities. In some embodiments, the provider data objects may be received via one or more API’s. Additionally, the central computing entity may provide a user interface, such as data extraction user interface 500. The data extraction user interface may be configured for rendering on a display of a provider computing entity such that a provider associated with the provider computing entity may provide, via the data extraction user interface, input corresponding to provider data objects.

[0170] A provider data object may comprise provider information (e g., contractor information in an example domain) such as, but not limited to, provider identification, provider contact information, salesforce ID associated with the provider, provider locations, provider classification, provider status, provider workflow type, and / or provider account information (e.g., bank account information to remit funds for services provided to a consumer).

[0171] Alternatively or additionally, in some embodiments, a provider data object may comprise for a given location (e.g., branch location) associated with a provider, one or more of location status (e.g., branch status), trade types supported, operation territory supported, and / or other data that may be leveraged to determine if a provider satisfies generator criteria associated with a data block (e.g., as defined or otherwise specified by a generator associated with the data block).

[0172] Alternatively or additionally, in some embodiments, a provider data object may comprise provider criteria such as, but not limited to, data block term requirements (e.g., data block interest rate requirement, data block duration, etc.) generator requirements (e.g., generator size, generator location, excluded generators, approved generators, and / or the like).

[0173] As described above, provider data objects may be received using a blockchain system / architecture, although in other embodiments, the provider data objects (or a portion thereof) may be received outside of the blockchain system. For example, the centralcomputing entity 106 may receive provider data objects (or a portion thereof) directly from a provider computing entity 102 over a communications network. One or more APIs external to the blockchain system may be leveraged to facilitate communication between the central computing entity and provider computing entities.

[0174] At operation 3708, the central computing entity 106 stores the received provider data objects. In various embodiments, the central blockchain node is configured to store each received provider data object in a respective block of a blockchain storage environment in the blockchain node. In some embodiments, the blockchain node may be configured to store individual data items of a provider data object in separate blocks of the blockchain storage environment. In some embodiments, the blockchain storage environment comprises one or more storage partitions that are each associated with a particular provider. For example, a storage partition of the blockchain storage environment may be assigned to a particular provider and configured to store provider data objects associated with the particular provider. Each provider data object (or group of provider data objects) for a particular provider may be stored in unique block within the assigned storage partition of the blockchain storage environment as an individual data entry. Alternatively or additionally, each data item (or a group of data items) associated with a provider data object may be stored in a unique block within the assigned storage partition of the blockchain storage environment as an individual data entry.

[0175] Each block may comprise a hash configured to identify the data (e g., provider data object(s) or particular data item(s) associated with provider data object(s)) entered in the block. In this regard, in various embodiments, the central blockchain node may be configured to execute an encryption algorithm to generate a hash of a provider data object, a hash of a group of provider data objects, a hash of one or more data items or a group of data items in the generator data object(s) and store the generated hash in a block of the blockchain storage environment. According to various embodiments, the blocks of a particular storage partition within the blockchain storage environment may be linked together by appending the hash of each block with the hash of the previous block. For example, in response to receiving a provider data object or a group of data objects, the central blockchain node may execute an encryption algorithm to generate a hash of the provider data object, a hash of the group of provider data objects, a hash for each of onedata items or group of data items in the provider data object(s) and append the generated hash to the next data block generated within the particular storage partition or blockchain storage environment.

[0176] In some embodiments, provider data objects (or a portion thereof) may be stored outside of a blockchain storage environment. For example, in certain embodiments where provider data objects (or a portion thereof) are received outside of a blockchain system, the central computing entity 106 may store the received provider data objects (or a portion thereof) in a database associated with the central computing entity and external to the blockchain system such as, for example, storage subsystem 108.

[0177] In some embodiments, the central blockchain node or associated central computing entity may be configured to correlate at least a portion of the provider data objects stored in the blockchain storage environment of the central blockchain node or other database with corresponding data stored in other external databases associated with provider computing entities. The noted correlation may be performed to, for example, ensure the data stored in the blockchain storage environment or other databases associated with the central computing entity are up-to-date by correlating with corresponding data to identify discrepancies. In some embodiments, the noted correlation may be performed periodically.

[0178] In some embodiments, the central computing entity 106 or associated central blockchain node may be configured to update a provider data object, a group of provider data objects, a data item, or group of data items in response to updates received from a provider computing entity or a blockchain node associated with the provider computing entity. In some embodiments, updating a provider data object, a group of provider data objects, a data item, or a group of data items comprises creating a new block in the blockchain storage environment and storing the updated provider data object, updated group of provider data objects, updated data item or updated group of data items in the new block as the latest revision for the particular provider data object, particular group of provider data objects, particular data items, or particular group of data items. In some embodiments, the central computing entity 106 may communicate with one or more other systems (e.g., third-party system 104 and / or external systems) to facilitate updating ofcorresponding data in the one or more other systems. For example, the central computing entity 106 may transmit the received update to the one or more other systems.

[0179] In some embodiments, the central computing entity 106 may be configured to execute a generator approval model for identifying data blocks applicable to a particular consumer based at least in part on the consumer data. In some embodiments, the generator approval model is a rules-based model. In some embodiments, the generator approval model is a machine learning model such as an artificial intelligence-based model. For example, in some embodiments, the central computing entity 106 may be configured to execute one or more machine learning models for identifying data blocks applicable to a particular consumer. These machine learning models may use input data (e.g., consumer data, and / or other relevant data) as discussed herein. The machine learning models may be embodied as any of a variety of machine learning model types (e.g., clustering-based models, neural networks, etc.) for identifying data blocks relevant to a particular consumer. These machine learning models may be trained using training data of previously accepted and rejected data block matches (e.g., where a consumer was approved for a data block reflected within a data block and / or where a consumer was rejected for a data block reflected within a data block). This training data may be utilized with supervised or unsupervised training.

[0180] FIG. 38 is a flowchart diagram of an example process 3800 for performing operations configured to generate data block recommendations for rendering on a provider computing entity (or other computing entity) in accordance with some embodiments of the present disclosure. The data block recommendations may be rendered on a central computing entity via a data extraction user interface, such as data extraction user interface 500 described above.

[0181] The process 3800 begins at operation 3802 when the central computing entity 106 receives a data block recommendation request from a provider computing entity. According to various embodiments, the data block recommendation request may originate from a provider associated with the provider computing entity. For example, the provider may provide input corresponding to the data block recommendation request via a user interface such as data extraction user interface 500.

[0182] The data block recommendation request may be associated with a consumer (e.g., a user) and may include consumer data (e.g., user data) such as consumer verification data (e.g., user verification data) that may be used to verify the identity of the consumer (e.g., entity seeking financing for services provided by a provider) and / or used to access other data associated with the consumer (e.g., credit score, credit history, etc.). In some embodiments, the consumer verification data may comprise data obtained from a government-issued photo ID associated with the consumer. In this regard, the data block recommendation request may comprise consumer identifier configured to uniquely identify a consumer from other consumers. In some embodiments, the data block recommendation request may also include other consumer data such as consumer address, consumer employment information, consumer income information, and / or the like.

[0183] In some embodiments, the consumer data may include data indicative of the creditworthiness of the consumer. For example, the consumer data may include creditworthiness factors, such as credit score, length of credit history, and other data associated with the consumer that is indicative of the creditworthiness of the consumer. In some embodiments, the consumer data may also comprise project data. In some embodiments, the project data may comprise one or more of service type that describes the type of provider service (e.g., HVAC, roofing, etc.) for which financing is desired, project type (e.g., custom, standard, etc.), data block amount requested, and / or preferred monthly payments amount.

[0184] At operation 3804, the central computing entity 106 identifies one or more candidate data blocks for the consumer. In various embodiments, identifying the one or more candidate data blocks comprises executing one or more generator approval models based at least in part on the consumer data (or a portion thereof). For example, the central blockchain node may apply at least a portion of the consumer data to one or more generator approval models stored in a blockchain storage environment of the central blockchain node to identify one or more candidate data blocks for the consumer.

[0185] In an example embodiment, identifying the one or more candidate data blocks comprises receiving the one or more candidate data blocks from an external system. For example, the central computing entity may receive the one or more candidate data blocks from a blockchain node associated with an external system. In such example embodiments,the central computing entity may transmit a request to the blockchain node associated with the external system to provide candidate block objects based on the consumer data. The central computing entity 106 may provide at least a portion of the data associated with the data block recommendation request to the third-party system.

[0186] At operation 3806, the central computing entity 106 applies one or more fdtering models to the candidate data blocks to identify one or more qualifying data blocks. In some embodiments, the one or more filtering models comprise one or more rules-based models and / or one or more machine learning models. In various embodiments, the one or more filtering models are generated based on the generator data objects and / or provider data objects stored in the blockchain storage environment of the central blockchain node. The central computing entity 106 may extract, from the generator data objects and provider data objects in the blockchain storage environment, relevant generator criteria and / or relevant provider criteria based on the data block recommendation request and / or consumer data of the consumer associated with the data block recommendation request. The central computing entity 106 may then generate the one or more filtering models based on the extracted generator criteria and / or provider criteria.

[0187] As described above in various embodiments, generator data objects and / or provider data objects are stored in the blockchain storage environment in encrypted formats (e.g., hashed) or otherwise with identifiers. In various embodiments, extracting a generator data object and / or provider data object from a blockchain storage environment includes executing a decoding algorithm to decode the encrypted (e.g., hashed) generator data object and / or provider data object to generate a model -readable format of the generator data object and / or provider data object to generate a model-readable format (e.g., a format that is capable of being analyzed, process, and / or understood by the filtering models).

[0188] In some embodiments, the one or more filtering models comprise a set of one or more generator filtering models associated with one or more generators and a set of one or more provider filtering models associated with the provider associated with the data block recommendation request. Each generator filtering model in the set of one or more generator filtering models may define a generator criteria dataset associated with one or more data blocks indicative of the requirements that must be satisfied by the consumer and / or provider associated with the data block recommendation request. Each provider filteringmodel in the set of one or more provider fdtering models may define a provider criteria dataset indicative of the preferences and / or requirements of the provider with respect to desired data blocks (e.g., desired characteristics / attributes of a data block). In some embodiments, the generator criteria data set of a filtering model may comprise an encrypted / hashed equivalent dataset that can be applied against encrypted / hashed generator data objects (or against an identifier of a generator data object). The encrypted hashed dataset of the generator criteria enables filtering of relevant generator data objects with low latency - because the generator data objects need not be decrypted prior to filtering to identify relevant data.

[0189] In some embodiments, applying the one or more filtering models to the candidate data blocks may comprise applying the set of one or more generator filtering models to the candidate data blocks to filter out candidate data blocks that do not satisfy the generator criteria dataset defined by the generator filtering models, and then applying the set of one or more provider filtering models to the remaining candidate data blocks to filter out candidate data blocks that do not satisfy the respective criteria dataset defined by the provider filtering models. In some embodiments, applying the one or more filtering models to the candidate data blocks may comprise applying the set of one or more provider filtering models to the candidate data blocks to filter out candidate data blocks that do not satisfy the provider criteria dataset, and then applying the set of one or more generator filtering models to the remaining candidate data blocks to filter out the candidate data blocks that do not satisfy the generator criteria datasets. In some embodiments, an ensemble model is generated based on the set of one or more generator filtering models and the set of one or more filtering models such that applying the one or more filtering models to the candidate data blocks comprises applying the ensemble model to the candidate data blocks. As discussed above, the dataset of the ensemble model may comprise an equivalent dataset that can be applied against the encrypted / hashed data. The candidate data blocks not filtered out may comprise or otherwise deemed qualifying data blocks.

[0190] At operation 3808, the central computing entity 106, using one or more optimization models, ranks the one or more qualifying data blocks. In some embodiments, the optimization model may comprise a rules-based model. In some embodiments, theoptimization model may comprise a machine learning model. Alternatively or additionally, in some embodiments, the optimization model may include a leaming-to-rank model.

[0191] At operation 3810, the central computing entity 106 selects the top-N ranked qualifying data blocks (e.g., top 3 qualifying data blocks, top 5 qualifying data blocks, etc.) from the one or more qualifying data blocks.

[0192] At operation 3810, the central computing entity 106 renders the top-N ranked qualifying data blocks on a generator computing entity or other computing entity. For example, in various embodiments, the central computing entity 106 generates optimized data block recommendations comprising the top-N ranked qualifying data blocks and renders the optimized data block recommendations for display on a generator computing entity associated with the data block recommendation request and / or other computing entity (e g., on a display of the respective computing entity). In some embodiments, each of the top-N ranked qualifying data blocks may comprise data that identifies a data block associated with a generator and deemed to satisfy the generator requirements and provider requirements, which in turn, improves the likelihood of approval of the data blocks by the respective generators associated with the data blocks.

[0193] FIG. 39 is a flowchart diagram of an example process 3900 for performing operations configured to facilitate data block approval in accordance with some embodiments of the present disclosure. The process 3900 begins at operation 3902 when the central computing entity 106 receives a data block selection from a user (e g., consumer selects one of the top N-ranked qualifying data blocks).

[0194] At operation 3904, the central computing entity 106 transmits a data block approval request to the generator computing entity associated with the selected data block object. In some embodiments, the data block approval request may include a data block extraction completed by the consumer or otherwise on behalf of the consumer.

[0195] At operation 3906, the central computing entity 106 receives a data block approval result from the generator computing entity.

[0196] At operation 3908, central computing entity 106 transmits the data block approval result to the provider computing entity and / or other computing entity for presenting to the consumer.Conclusion

[0197] Many modifications and other embodiments will come to mind to one skilled in the art to which this disclosure pertains having the benefit of the teachings presented in the foregoing descriptions and the associated drawings. Therefore, it is to be understood that the disclosure is not to be limited to the specific embodiments disclosed and that modifications and other embodiments are intended to be included within the scope of the appended claims. Although specific terms are employed herein, they are used in a generic and descriptive sense only and not for purposes of limitation.

Claims

CLAIMS1. A computer-implemented method comprising: receiving, by one or more processors, a data block recommendation request associated with a user; identifying, by the one or more processors and based on the data block recommendation request, one or more candidate data blocks associated with one or more generators; identifying, by the one or more processors, one or more qualifying data blocks by applying one or more fdtering models to the one or more candidate data blocks based on one or more criteria datasets; generating, by the one or more processors, optimized data block recommendations by applying an optimization model to the one or more qualifying data blocks, wherein the optimized data block recommendations comprise at least a subset of the one or more qualifying data blocks; and rendering, by the one or more processors, the optimized data block recommendations on a display of a computing entity.

2. The computer-implemented method of claim 1, wherein generating the optimized data block recommendations comprises: ranking, using the optimization model, the one or more qualifying data blocks; and selecting top N-ranked qualifying data blocks from the one or more qualifying data blocks, wherein the subset of the one or more qualifying data blocks comprise the top N-ranked qualifying data blocks.

3. The computer-implemented method of claim 1, wherein the one or more filtering models comprise a first set of filtering models associated with the one or more generators and a second set of filtering models associated with at least one provider, wherein the one or more criteria datasets comprise (i) one or more generator criteria datasets each associated with a respective generator of the one or more generators and (ii) one or moreprovider criteria datasets associated with the at least one provider.

4. The computer-implemented method of claim 3, further comprising: receiving one or more generator data objects associated with the one or more generators; identifying one or more generator criteria associated with a data block based on the one or more generator data objects; and storing the one or more generator criteria, wherein the one or more generator criteria datasets comprises the one or more generator criteria.

5. The computer-implemented method of claim 3, further comprising: receiving one or more provider data objects associated with one or more providers; identifying one or more provider criteria based on the one or more provider data objects; and storing the one or more provider criteria, wherein the one or more provider criteria datasets comprises the one or more provider criteria.

6. The computer-implemented method of claim 1, wherein identifying the one or more candidate data blocks comprises applying a trained artificial intelligence model to the one or more candidate data blocks.

7. The computer-implemented method of claim 1, wherein the data block recommendation request comprises one or more of (i) user verification data, or (ii) project data.

8. The computer-implemented method of claim 1, wherein the optimization model is a machine learning model.

9. A computing system comprising memory and one or more processors communicatively coupled to the memory, the one or more processors configured to:receive a data block recommendation request associated with a user; identify based on the data block recommendation request, one or more candidate data blocks associated with one or more generators; identify one or more qualifying data blocks by applying one or more filtering models to the one or more candidate data blocks based on one or more criteria datasets; generate optimized data block recommendations by applying an optimization model to the one or more qualifying data blocks, wherein the optimized data block recommendations comprise at least a subset of the one or more qualifying data blocks; and render the optimized data block recommendations on a display of a computing entity.

10. The computing system of claim 9, wherein the one or more processors are configured to generate the optimized data block recommendations by: ranking, using the optimization model, the one or more qualifying data blocks; and selecting top N-ranked qualifying data blocks from the one or more qualifying data blocks, wherein the subset of the one or more qualifying data blocks comprise the top N-ranked qualifying data blocks.

11. The computing system of claim 9, wherein the one or more filtering models comprise a first set of filtering models associated with the one or more generators and a second set of filtering models associated with at least one provider, wherein the one or more criteria datasets comprise (i) one or more generator criteria datasets each associated with a respective generator of the one or more generators and (ii) one or more provider criteria datasets associated with the at least one provider.

12. The computing system of claim 11, wherein the one or more processors are further configured to: receive one or more generator data objects associated with the one or more generators;identify one or more generator criteria associated with a data block based on the one or more generator data objects; and store the one or more generator criteria, wherein the one or more generator criteria datasets comprises the one or more generator criteria.

13. The computing system of claim 11, wherein the one or more processors are further configured to: receive one or more provider data objects associated with one or more providers; identify one or more provider criteria based on the one or more provider data objects; and store the one or more provider criteria; wherein the one or more provider criteria datasets comprises the one or more provider criteria.

14. The computing system of claim 9, wherein identifying the one or more candidate data blocks comprises applying a trained artificial intelligence model to the one or more candidate data blocks.

15. The computing system of claim 9, wherein the data block recommendation request comprises one or more of (i) user verification data, or (ii) project data.

16. The computing system of claim 9, wherein the optimization model is a machine learning model.

17. One or more non-transitory computer-readable storage media including instructions that, when executed by one or more processors, cause the one or more processors to: receive a data block recommendation request associated with a user; identify based on the data block recommendation request, one or more candidate data blocks associated with one or more generators; identify one or more qualifying data blocks by applying one or more filtering models to the one or more candidate data blocks based on one or more criteria datasets;generate optimized data block recommendations by applying an optimization model to the one or more qualifying data blocks, wherein the optimized data block recommendations comprise at least a subset of the one or more qualifying data blocks; and render the optimized data block recommendations on a display of a computing entity.

18. The one or more non-transitory computer-readable storage media of claim 17, wherein the one or more processors are configured to generate the optimized data block recommendations by: ranking, using the optimization model, the one or more qualifying data blocks; and selecting top N-ranked qualifying data blocks from the one or more qualifying data blocks, wherein the subset of the one or more qualifying data blocks comprise the top N-ranked qualifying data blocks.

19. The one or more non-transitory computer-readable storage media of claim 17, wherein the one or more filtering models comprise a first set of filtering models associated with the one or more generators and a second set of filtering models associated with at least one provider, wherein the one or more criteria datasets comprise (i) one or more generator criteria datasets each associated with a respective generator of the one or more generators and (ii) one or more provider criteria datasets associated with the at least one provider.

20. The one or more non-transitory computer-readable storage media of claim 19, wherein the one or more processors are further configured to: receive one or more generator data objects associated with the one or more generators; identify one or more generator criteria associated with a data block based on the one or more generator data objects; and store the one or more generator criteria, wherein the one or more generator criteriadatasets comprises the one or more generator criteria.

Citation Information

Patent Citations

  • Generating multi-dimensional recommendation data objects based on decentralized crowd sourcing

    US20220215931A1