The disclosed embodiments generally relate to computer-implemented systems and processes that generate and provision, in real time, directed product data based on structured messaging data.
The mass adoption of smart phones and digital payments within the global marketplace drives an increasingly rapid adoption of real-time payment (RTP) technologies by financial institutions, consumers, vendors and merchants, and other participants in the payment ecosystem. RTP technologies often emphasize data, messaging, and global interoperability and in contrast to many payment rails, such as those that support credit card payments, embrace the near ubiquity of mobile technologies in daily life to provide, to the participants in the RTP ecosystem, real-time service and access to funds.
In some examples, an apparatus includes a communications interface, a memory storing instructions, and at least one processor coupled to the communications interface and to the memory. The at least one processor is configured to execute the instructions to receive a plurality of messages via the communications interface. Each of the messages is associated with a real-time payment requested from a first counterparty by a corresponding second counterparty. Each of the messages includes elements of message data that are disposed within corresponding message fields, and that characterize a first exchange of data initiated between the first counterparty and the corresponding second counterparty. The at least one processor is further configured to execute the instructions to, based on the elements of message data, perform operations that generate intent data associated with the first data exchanges, and that predict an occurrence of at least one second exchange of data that involves the first counterparty and that is consistent with the intent data. The at least one processor is configured to generate product data characterizing a product that is available to the first counterparty and associated with the predicted occurrence of the at least one second data exchange, and transmit, via the communications interface, notification data that includes the product data to a device operable by the counterparty. The notification data causes an application program executed at the device to present a portion of the product data within a digital interface.
In other examples, a computer-implemented method includes receiving a plurality of messages using at least one processor. Each of the messages is associated with a real-time payment requested from a first counterparty by a corresponding second counterparty, and each of the messages includes elements of message data that are disposed within corresponding message fields, and that characterize a first exchange of data initiated between the first counterparty and the corresponding second counterparty. The computer-implemented method includes, based on the elements of message data, based on the elements of message data, performing operations, using the at least one processor, that generate intent data associated with the first data exchanges, and that predict an occurrence of at least one second exchange of data that involves the first counterparty and that is consistent with the intent data. The computer-implemented method includes generating, using the at least on processor, product data characterizing a product that is available to the first counterparty and associated with the predicted occurrence of the at least one second data exchange, and transmitting, using the at least on processor, notification data that includes the product data to a device operable by the first counterparty. The notification data causes an application program executed at the device to present a portion of the product data within a digital interface.
Further, in some examples, a tangible, non-transitory computer-readable medium stores instructions that, when executed by at least one processor, cause the at least one processor to perform a method that includes receiving a plurality of messages. Each of the messages is associated with a real-time payment requested from a first counterparty by a corresponding second counterparty, and each of the messages includes elements of message data that are disposed within corresponding message fields, and that characterize a first exchange of data initiated between the first counterparty and the corresponding second counterparty. The method includes, based on the elements of message data, performing operations that generate intent data associated with the first data exchanges, and that predict an occurrence of at least one second change of data that involves the first counterparty and this consistent with the intent data. The method includes generating product data characterizing a product that is available to the first counterparty and associated with the predicted occurrence of the at least one second data exchange, and transmitting notification data that includes the product data to a device operable by the first counterparty. The notification data causes an application program executed at the device to present a portion of the product data within a digital interface.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the invention, as claimed. Further, the accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate aspects of the present disclosure and together with the description, serve to explain principles of the disclosed embodiments as set forth in the accompanying claims.
Like reference numbers and designations in the various drawings indicate like elements.
Today, the mass adoption of smart phones and digital payments within the global marketplace drives an adoption of real-time payment (RTP) technologies by financial institutions, consumers, vendors and merchants, and other participants in the payment ecosystem. These RTP technologies often emphasize data, messaging, and global interoperability and in contrast to conventional payment rails, may embrace the near ubiquity of mobile technologies in daily life to provide, to the participants in the RTP ecosystem, real-time service and access to funds. To facilitate the strong emphasis on data, messaging, and global interoperability between financial institutions, many RTP technologies adopt, and exchange data formatted in accordance with, one or more standardized data-exchange protocols, such as the ISO 20022 standard for electronic data exchange between financial institutions.
For example, a customer of a financial institution may initiate a plurality of transactions to purchase one or more products or services from corresponding merchants or retailers, either through in-person interaction at a physical location of the merchant or retailer, or through digital interactions with a computing system of the merchant (e.g., via a web page or other digital portal). In some instances, and to fund the initiated purchase transaction, the customer may provide each of the merchants with data characterizing a payment instrument, such as credit card account issued by the financial institution (e.g., via input provisioned to the web page or digital portal, or based on an interrogation of a physical payment card by point-of-sale terminal, etc.). The merchant computing systems may perform operations that generate elements of messaging data that identify and characterize the corresponding merchant and the corresponding initiated purchase transaction, and that include portions of the data characterizing the payment instrument, and that submit the generated elements of messaging data to a transaction processing network or payment rail in accordance with a predetermined schedule (e.g., in batch form with other elements of messaging data at a predetermined time on a daily basis). In some instances, one or more computing systems of the transaction processing network or payment rail may perform operations that execute, clear, and settle each of the initiated purchase transactions involving the corresponding payment instrument within a predetermined temporal interval subsequent to the initiation of the purchase transaction, such as, but not limited to, forty-eight hours.
In other examples, the merchants (or the financial institutions of the merchants) and the financial institution of the customer may represent participants in the RTP ecosystem, and the merchant computing systems (or a computing system associated with the financial institution of one or more of the merchants) may generate a corresponding message (e.g., a Request for Payment (RFP) message) that requests a real-time payment from the customer that funds the corresponding initiated purchase transaction, and may transmit that message to one or more computing systems of the financial institution of the customer (e.g., directly or through one or more intermediate systems associated with the RTP ecosystem, such as a clearinghouse system). Each of the generated and transmitted RFP message may, for example, be formatted in accordance with the ISO 20022 data-exchange format, and may include message fields populated with information that includes, but is not limited to, information identifying the customer and the corresponding merchant, information characterizing the corresponding requested payment (e.g., a requested payment amount, a requested payment date, an identifier of an account selected by the customer to fund the requested, real-time payment, or an identifier of an account of the merchant capable of receiving the requested, real-time payment, etc.), and information characterizing the corresponding initiated purchase transaction (e.g., a transaction date or time, or an identifier of one or more of the products or services involved in the initiated purchase transaction, such as a corresponding UPC, etc.). Further, the ISO-20022-compliant RFP message may also include a link within a structured or unstructured message field to information, such as remittance data, associated with the requested, real-time payment (e.g., a long- or shortened Uniform Resource Location (URL) pointing to a formatted invoice or statement that includes any of the information described herein).
In some examples, the elements of structured or unstructured data maintained within the message fields of exemplary, ISO-20022-compliant RFP messages described herein may extend beyond the often-limited content of the message data transmitted across many existing payment rails and transaction processing networks. Further, when intercepted and decomposed by a computing system of the financial institution of the customer (e.g., an FI computing system), these elements of structured or unstructured RFP message data may be processed by the computing system of the financial institution to determine adaptively the terms and conditions of a financial product that is “pre-approved” for provisioning to the customer by the financial institution, and that is available and fund not only real-time payments associated with purchase transactions initiated by the customer at corresponding ones of the merchants (and requested by corresponding ones of the merchants) during a prior temporal interval, but also predicted occurrences of one or additional purchase transactions during a future temporal interval that are consistent with a intent or purpose of the purchase transactions initiated during the prior temporal interval. By way of example, and using any of the exemplary processes described herein, the computing system of the financial institution may provision, to a device operable by the customer, a product notification that identifies and characterizes the pre-approved financial product, such as a secured credit product or a loan product, and the terms and conditions associated with that available financial product, and an application program executed by the customer device may perform operations, described herein, that render the product notification for presentation with a portion of a digital interface.
Upon presentation within the digital interface of the customer device, the product notification may, among other things, identify the pre-approved financial product and the determined terms and conditions, and may prompt the customer to accept, or alternatively decline, the offer to fund the requested, real-time payments associated with the initiated purchase transaction (e.g., associated with corresponding ones of the received or intercepted RFP messages) using the available financial product in accordance with the determine terms and conditions. Further, and based on confirmation data indicative of the customer acceptance of the offered financial product, the computing system of the financial institution may perform any of the exemplary processes described herein to issue the now-accepted financial product to the customer, and to generate additional, ISO-2002-compliant RTP messages that, when provisioned to one or more computing systems of the merchants associated with the initiated purchase transactions and the received or intercepted RFP messages (or to an intermediate computing system, such as a computing system of the merchants' financial institutions), provides the corresponding requested payment using funds drawn from the issued financial product in real-time and contemporaneously with the initiation of the purchase transactions and the real-time payments requested by corresponding ones of the merchants.
Certain of the exemplary processes described herein, which decompose the structured message fields of a plurality of ISO-20022-compliant RFP messages received during a prior temporal interval to obtain corresponding elements of decomposed message data characterizing the customer, the merchant, and the initiated purchase transaction, and the requested, real-time payment, which analyze the elements of decompose message data to determine terms and conditions of a financial product appropriate to, and available to fund not each of the purchase transactions initiated during the prior temporal interval, but also predicted occurrences of one or more additional purchase transactions during a future temporal interval, which provision data characterizing the available financial product to the customer device for presentation within a digital interface in real-time and contemporaneously with the initiated purchase transactions and prior to an initiation of additional, future purchase transactions, may be implemented in addition to, or as an alternate to, many processes that rely on the often-limited content of temporally delayed message data transmitted across many existing payment rails and transaction processing networks.
Client device 102 may include a computing device having one or more tangible, non-transitory memories, such as memory 105, that store data and/or software instructions, and one or more processors, e.g., processor 104, configured to execute the software instructions. The one or more tangible, non-transitory memories may, in some aspects, store software applications, application modules, and other elements of code executable by the one or more processors, such as, but not limited to, an executable web browser (e.g., Google Chrome™, Apple Safari™, etc.), an executable application associated with one of merchant systems 110, 114, or 118 (e.g., merchant application 106), and additionally, or alternatively, an executable application associated with FI computing system 130 (e.g., mobile banking application 108).
In some instances, not illustrated in
Client device 102 may also include a display unit 109A configured to present interface elements to a corresponding user, such as a user 101, and an input unit 109B configured to receive input from user 101 (e.g., in response to the interface elements presented through display unit 109A). By way of example, display unit 109A may include, but is not limited to, an LCD display unit or other appropriate type of display unit, and input unit 109B may include, but is not limited to, a keypad, keyboard, touchscreen, voice activated control technologies, or appropriate type of input unit. Further, in additional aspects (not illustrated in
Examples of client device 102 may include, but are not limited to, a personal computer, a laptop computer, a tablet computer, a notebook computer, a hand-held computer, a personal digital assistant, a portable navigation device, a mobile phone, a smart phone, a wearable computing device (e.g., a smart watch, a wearable activity monitor, wearable smart jewelry, and glasses and other optical devices that include optical head-mounted displays (OHMDs)), an embedded computing device (e.g., in communication with a smart textile or electronic fabric), and any other type of computing device that may be configured to store data and software instructions, execute software instructions to perform operations, and/or display information on an interface device or unit, such as display unit 109A. In some instances, client device 102 may also establish communications with one or more additional computing systems or devices operating within environment 100 across a wired or wireless communications channel (e.g., via the communications interface 109C using any appropriate communications protocol). Further, user 101 may operate client device 102 and may do so to cause client device 102 to perform one or more exemplary processes described herein.
Each of the one or more merchant computing systems, including merchant system 110, merchant system 114, and merchant system 118, and FI computing system 130 may represent a computing system that includes one or more servers and one or more tangible, non-transitory memory devices storing executable code, application engines, or application modules. Each of the one or more servers may include one or more processors, which may be configured to execute portions of the stored code, application engines, or application modules to perform operations consistent with the disclosed exemplary embodiments. For example, as illustrated in
By way of example, each of the merchant systems 110, 114, and 118 may be associated with, or operated by, a corresponding merchant that offers products or services for sale to one or more customers, such as, but not limited to, user 101 that operates client device 102. In some instances, described herein, merchant system 110 may be associated with, or operated by, a local home improvement store (e.g., “Josh's Home and Lumber”), merchant system 114 may be associated with, or operated by, a local lighting showroom (e.g., “Sam's Lighting”), and merchant system 118 may be associated with, or operated by, a local electronics store (e.g., “Woody's Electronics”). Further, one or more of the merchant systems 110, 114, and 118 may exchange data programmatically with one or more application programs executed at client device 102, such as merchant application 106, and based on the programmatically exchanged data, client device 102 may perform any of the exemplary processes described herein to initiate a transaction to purchase one or more of the products or services offered for sale by merchant 111.
Further, and as described herein, FI computing system 130 may be associated with, or operated by, a financial institution that offers financial products or services to one or more customers, such as, but not limited to, user 101. The financial products or services may, for example, include a financial product issued to user 101 by the financial institution and available to fund the initiated purchase transaction, and examples of the payment instrument may include, but are not limited to, a credit card account issued by the financial institution, a secured or unsecured credit product issued by the financial institution (e.g., an unsecured or secured line-of-credit, an unsecured personal loan, etc.), or a checking, savings, or other deposit account issued by and maintained at the financial institution.
In some instances, FI computing system 130 may perform any of the exemplary processes described herein to obtain, receive, or intercept a plurality of request-for-payment (RFP) messages associated with purchase transactions initiated by a first counterparty (e.g., user 101 of
For example, the obtained data (e.g., “decomposed field” data) may include one or more of: (i) customer data identifying user 101, such as a unique customer identifier (e.g., a customer name, an alphanumeric login credential, etc.) and a postal address; (ii) payment data characterizing the real-time payment transaction, such as a transaction amount, a requested transaction date or time, an identifier of a product or service involved in the transaction, and an identifier of a customer account (e.g., from which the transaction amount will be debited) and a merchant account (e.g., to which the transaction amount will be credited); (iii) counterparty data identifying the corresponding merchant, such as a counterparty name (e.g., a merchant name, etc.) and postal address; and (iv) transaction data that identifies a value of one or more parameters of corresponding ones of the initiated purchase transactions (e.g., a transaction amount, a transaction date or time, an identifier of one or more of the products or services involved in corresponding ones of the initiated purchase transactions).
Based on the decomposed elements of customer, counterparty, merchant, transaction, or payment data, FI computing system 130 may perform any of the exemplary processes described herein to determine a common intent or purpose of each of the purchase transactions initiated by user 101 during a corresponding prior temporal interval. Further, based on the elements of decomposed field data that characterize each of the initiated purchase transaction and the corresponding requested real-time payments, and on elements of additional customer-specific data characterizing user 101, corresponding ones of the merchants, and interactions between user 101 and the merchants or between user 101 and the financial institution, FI computing system 130 may also perform any of the exemplary processes described herein to predict occurrences of one or more future purchase transactions that would be consistent with the determined intent or purpose, and to generate aggregated values of one or more parameters that characterize the predicted occurrences of these future purchase transactions.
In some examples, described herein, FI computing system may perform operations to determine that a secured credit or loan product, such as a home-equity line-of-credit (HELOC) product, a mortgage refinancing product, or another secured credit or loan product is available for provisioning to user and to fund both the initiated purchase transactions and the future purchase transactions, and based on internal qualification or underwriting criteria, to perform operations that “pre-approve” user 101 for secured credit or loan product in a loan amount sufficient to fund both the initiated purchase transactions and the predicted occurrences of the future purchase transactions. Further, FI computing system 130 may perform operations that generate a product notification characterizing the available, and pre-approved, secure credit product and one or more determined terms and conditions, and provision the product notification to a device operable by user 101, such as client device 102, in real-time and contemporaneously with an interception of receipt of each of plurality of RFP messages and in some instances, prior to an execution of a requested, real-time payment associated with at least one of the RFP messages, e.g., while user 101 continues to shop for products or services and continues to initiate purchase transactions consistent with the determined customer intent or purpose.
To facilitate a performance of one or more of these exemplary processes, FI computing system 130 may maintain, within the one or more tangible, non-transitory memories, a data repository 134 that includes, but is not limited to, a request-for-payment (RFP) queue 135, a candidate financial product data store 136, a mapping data store 138, a customer data store 140, an incentive data store 142, and a real-time payment (RTP) data store 144. RFP queue 135 may include one or more discrete RFP messages received by FI computing system 130 using any of the exemplary processes described herein. In some instances, the RFP messages maintained within RFP queue 135 may be prioritized in accordance with a time or date of receipt by FI computing system 130 or with requested payment data associated with each of the RFP messages, and each of the prioritized RFP messages may be associated with a corresponding temporal pendency. Further, FI computing system 130 may perform any of the exemplary processes described herein to provision elements of notification data associated with each of the RFP messages to a computing system or device associated with a corresponding customer (e.g., client device 102 associated with user 101), and FI computing system 130 may perform operations that maintain each of the RFP messages within RFP queue 135 until a receipt, at FI computing system 130, of confirmation data from corresponding ones of the computing systems or devices indicating an approval, or a rejection, of the corresponding requested payment, or until an expiration of the corresponding pendency period.
Candidate financial product data store 136 may include structured or unstructured data that characterizes one or more candidate financial products, such as, but not limited to, one or more of the exemplary, secured credit or loan products described herein, that a customer, such as user 101, may select to fund one or more of the requested, real-time payments associated with corresponding ones of the intercepted or received RFP message. In some instances, the elements of candidate financial product data store 136 may include, for each of the candidate financial products, a unique product identifier (e.g., a product name, etc.), data characterizing terms and conditions for each candidate financial product, and further, data characterizing internal qualification or underwriting procedures for each candidate financial product, as described herein.
Mapping data store 138 may include structured or unstructured data records that maintain one or more elements of field mapping data 138A. For example, and as described herein, FI computing system 130 may receive, obtain, or intercept one or more RFP messages, each of which may be formatted and structured in accordance with a corresponding, standardized data-exchange protocol, such as the ISO 20022 standard for electronic data exchange between financial institutions. In some instances, the one or more elements of field mapping data 138A may characterize a structure, composition, or format of the message data populating one or more data fields of the ISO-20002-compliant RFP messages, or a corresponding RFP message compliant with an additional, or alternate, standardized data-exchange protocol.
In some instances, customer data store 140 may include structured or unstructured data records that maintain information identifying and characterizing one or more customers of the financial institution, and further, interactions between these customers and not only the financial institution, but also other unrelated third parties, such as the merchants or retailers described herein. For example, as illustrated in
By way of example, for a corresponding one of the customers, such as user 101, the elements of customer profile data 140A may include, but are not limited to, a customer identifier of user 101 (e.g., an alphanumeric login credential, a customer name, etc.), a postal address of user 101, and values of one or more demographic parameters characterizing user 101 (e.g., a customer age, customer profession, etc.). The accounts held by the customers of the financial institution may include, but are not limited to, a deposit account (e.g., a checking or a savings account issued by the financial institution), a credit-card account, or an account associated with an additional, or alternate, financial product, such as an unsecured personal loan or an installment loan, and the elements of account data 140B may include, for an account held by a corresponding one of the customers, such as user 101, the customer identifier of user 101, all or a portion of an account number (e.g., an actual account number, a tokenized account number, etc.), and data characterizing a status of the account (e.g., a current balance, an overdue balance, length of account existence, etc.) and interactions between user 101 and the account (e.g., amounts and dates of withdrawals, etc.). Further, the elements of transaction data 140C may include the customer identifier of user 101, data identifying one or more prior purchase or payment transactions initiated by user 101 (e.g., a unique, alphanumeric transaction identifier assigned by FI computing system 130), and may include values of transaction parameters that characterize each of the prior purchase or payment transactions, such as a transaction date or time, a transaction amount, an identifier of a corresponding counterparty, or an identifier of an account (e.g., an account number, etc.) that funds, or receives proceeds from, the prior purchase or payment transaction.
The elements of third-party data 140D may, for a corresponding one of the customers, such as user 101, include the customer identifier of user 101 and one or more elements of governmental, judicial, regulatory, or reporting data associated with, and characterizing user 101. By way of example, the elements of third-party data 140D associated with user 101 may include one or more elements of data generated and maintained by a governmental entity (e.g., governmental data) that identifies parcels of real estate, vehicles, or other tangible properties held or owned by user 101. Additionally, or alternatively, the elements of third-party data 140D associated with user 101 may include one or more elements of data generated and maintained by a reporting entity, such as credit-bureau data that includes a credit score or data characterizing one or more credit inquiries associated with user 101 during corresponding temporal intervals. In some examples, FI computing system 130 perform operations that receive, via a secure programmatic channel of communications, one or more of the customer-specific elements of third-party data 140D maintained within customer data store 140 from one or more computing systems associated with corresponding governmental, judicial, regulatory, or reporting entities in accordance with a predetermined temporal schedule, on a continuous, streaming basis, or in response to a requested generated and transmitted by FI computing system 130.
Incentive data store 142 may include structured or unstructured data records that include elements of digital content that, when presented to user 101 by client device 102 within a corresponding digital interface, identify and provide an offer or incentive for user 101 to accept a pre-approved financial product, or to apply for a financial product, such as the exemplary financial products characterized by the data records of candidate financial product store 136. In some instances, the structured or unstructured data records of incentive data store 142 may store each of the elements of digital content in conjunction with one or more elements of metadata that, among other things, identify a corresponding financial product (e.g., a product name, an alphanumeric product identifier assigned by the financial institution, etc.). Further, in some instances, the structured or unstructured data records of incentive data store 142 may store each of the elements of digital content in conjunction with one or more elements of layout data, which specify a disposition of the elements of digital content, or visual characteristics of the elements of digital content, when rendered for presentation within a corresponding digital interface by one or more application programs executed by client device 102.
RTP data store 144 may include one or more elements of decomposed field data generated through a decomposition of corresponding ones of the received RFP messages, e.g., based on the elements of field mapping data 138A and through an implementation of any of the exemplary processes described herein. In some instances, the elements of decomposed field data maintained within RTP data store 144 may establish a time-evolving record of real-time payment transactions initiated by, or involving, the user 101 and other customers of the financial institution during a current temporal interval and across one or more prior temporal intervals, and across various merchant classifications or geographic regions.
Further, and to facilitate the performance of any of the exemplary processes described herein, FI computing system 130 may also maintain, within the one or more tangible, non-transitory memories, an application repository 145 that maintains, but is not limited to, a decomposition engine 146, an analytical engine 148, and a notification engine 150, each of which may be executed by the one or more processors of server 132.
For example, and upon execution by the one or more processors of FI computing system 130, executed decomposition engine 146 may perform any of the exemplary processes described herein to obtain field mapping data 138A from mapping data store 138, to apply field mapping data 138A to a received, obtained, or intercepted RFP message, and based on the application of field mapping data 130A to the RFP message, to decompose the RFP message and obtain elements of message data that not only identify and characterize each counterparty involved in an initiated purchase transaction (e.g., user 101 and merchant 111, described herein), but that also characterize the initiated purchase transaction.
Further, and upon execution by the one or more processors of FI computing system 130, executed analytical engine 148 may perform any of the exemplary processes described herein to process the elements of message data obtained from the message fields of each of the RFP messages obtained during the prior temporal interval (e.g., the decomposed elements of customer, counterparty, merchant, transaction, or payment data described herein), to determine a common intent or purpose of each of the purchase transactions initiated by user 101 during the corresponding prior temporal interval. Executed analytical engine 148 may also perform any of the exemplary processes described herein that, based on the elements of decomposed field data that characterize each of the initiated purchase transactions and the corresponding requested real-time payments, and on elements of additional customer-specific data characterizing user 101, corresponding ones of the merchants, and interactions between user 101 and the merchants or between user 101 and the financial institution, predict occurrences of one or more future purchase transactions that would be consistent with the determined intent or purpose and generate values of one or more aggregated parameters that characterize these future purchase transactions.
Executed analytical engine 148 may also perform operations, described herein, to determine that a secured credit or loan product, such as a home-equity line-of-credit (HELOC) product, a mortgage refinancing product, or another secured credit or loan product is available for provisioning to user and to fund both the initiated purchase transactions and the future purchase transactions. Based on internal qualification or underwriting criteria, executed analytical engine 148 may perform any of the exemplary processes described herein to “pre-approve” user 101 for secured credit or loan product in a loan amount sufficient to fund both the initiated purchase transactions and the predicted occurrences of the future purchase transactions.
Upon execution by the one or more processors of FI computing system 130, notification engine 150 may perform any of the exemplary processes described herein to generate one or more elements of notification data that include one or more of the information identifying each of the available and pre-approved secured credit or loan products, the corresponding loan amounts, and the corresponding terms and conditions. In some instances, when provisioned to client device 102 by FI computing system 130, the elements of notification data may cause one or more application programs executed by client device 102 (e.g., mobile banking application 108) to present interface elements within a corresponding digital interface that, among other things, offer each of the available and pre-approved secured credit or loan products to user 101 in accordance with their determined terms and conditions, and that prompt user 101 to accept one or more of the offered secured credit or loan products, which, when provisioned to user 101, may fund not only the initiated purchase transactions associated with the received or intercepted RFP messages (e.g., contemporaneously with the initiation of the purchase transactions and the reception or interception of the RFP messages), but also one or more of the future purchase transactions that are consistent with the determined intent or purpose of the initiated purchase transactions.
Referring to
By way of example, user 101 may own a home in Washington, D.C., and user 101 may elect to renovate and update a portion of that home, such as a partially furnished basement. In support of the renovation and update of the partially furnished basement, user 101 may initiate purchase transactions at one or more local merchants to support the renovation of the basement and to outfit the newly renovated space with modernized furniture and electronics. For instance, user 101 may initiate a first transaction to purchase $3,000 in hardwood flooring from a local home-improvement store (e.g., associated with merchant system 110 of
A programmatic interface established and maintained by FI computing system 130, such as application programming interface (API) 208, may receive each of RFP messages 202A, 202B, and 202C, and may route RFP messages 202A, 202B, and 202C to a decomposition engine 146 executed by the one or more processors of FI computing system 130. In some examples, FI computing system 130 may receive one or more of RFP messages 202A, 202B, and 202C directly across communications network 120 via a channel of communications established programmatically between API 203 and an executed RTP engine of a corresponding one of merchant systems 110, 114, and 118. Further, in some examples, one or more portions of RFP messages 202A, 202B, and/or 202C may be encrypted (e.g., using a public cryptographic key associated with FI computing system 130), and executed decomposition engine 146 may perform operations that access a corresponding decryption key maintaining within the one or more tangible, non-transitory memories of FI computing system 130 (e.g., a private cryptographic key associated with FI computing system 130), and that decrypt the encrypted portions of RFP messages 202A, 202B, and/or 202C using the corresponding decryption key.
In some instances, executed decomposition engine 146 may store each of RFP messages 202A, 202B, and 202C (in decrypted form) within a corresponding portion of data repository 134 (e.g., within RFP queue 135). Executed decomposition engine 146 may also perform operations that access mapping data store 138 (e.g., as maintained within data repository 134), and obtain one or more elements of field mapping data 138A that characterize a structure, composition, or format of one or more data fields of RFP messages 202A, 202B, and 202C. For example, and as described herein, each of RFP messages 202A, 202B, and 202C may include message fields consistent with the ISO 20022 standard for electronic data exchange between financial institutions, and each of the message fields may be populated with data structured and formatted in accordance with the ISO 20022 standard.
By way of example, user 101 may initiate the $3,000 purchase of the hardwood flooring from the local home-improvement store (e.g., “Josh's Home and Lumber”) at 10:30 a.m. on May 30, 2022. In some instances, RFP message 202A may be associated with a request, from the local home-improvement store (e.g., “Josh's Home and Lumber”) on May 30, 2022, for the real-time payment of $3,000.00 from user 101 for the purchased hardwood flooring, and referring to
RFP message 202A may also maintain, within corresponding ones of message fields 232, a formatted name of user 101 (e.g., “John Q. Stone”) and selected portions of a formatted postal address of user 101 (e.g., “2220 Eye Street NW, Washington, D.C., 20037, US”), and may maintain, within message field 234, a formatted identifier of a financial services account selected by user 101 to fund the $3,000.00 payment to user 101 (e.g., an account number “XXXX-1234-5678-9012” of a deposit account maintained by user 101 and the financial institution). Further, as illustrated in
In some instances, RFP message 202A may also include one or more message fields that specify structured or unstructured, remittance information associated with the requested, $3,000.00 real-time payment for the hardwood flooring purchased by user 101 from Josh's Home and Lumber on May 30, 2022, such as, but not limited to, a link to invoice data in PDF or HTML format that identifies the actual postal address of Josh's Home and Lumber, and that includes contextual information identifying and characterizing the purchased hardwood flooring (e.g., a unique product identifier of the purchased hardwood flooring, such as a stock keeping unit (SKU), a universal product code (UPC), a product name, etc.) or the $3,000.00 purchase (e.g., a subtotal of the transaction, any applied sales taxes, or any delivery fees, etc.). As described herein, the link may include a long-form or shortened URL associated with formatted invoice data (e.g., that that points to the storage location of formatted invoice data within a data repository maintained by one or more computing systems with the local home improvement store, e.g., merchant system 110). For example, message field 244 of RFP message 202A may be populated with a long-form URL (e.g., www.example.com/receipt?custid=′1234′?zip=′20002′) that points to the formatted invoice data maintained within the data repository of merchant system 110, and that includes the actual postal code of the local home improvement store (e.g., “20002”) and a customer identifier of user 101 assigned by the local home improvement store (e.g., “1234”).
The disclosed embodiments are, however, not limited to RFP messages populated with these exemplary elements of customer, merchant, payment, transaction, and additional remittance data, and in other examples, RFP message 202A may include any additional, or alternate, message fields specified within field mapping data 138A and consistent with the ISO 20022 standard for electronic data exchange. Further, although not illustrated in
Referring back to
By way of example, and based on the elements of field mapping data 138A, executed decomposition engine 146 may determine that message fields 232 of RFP message 202A include data that identifies and characterizes user 101, and may perform operations that obtain the customer name of user 101 (e.g., “John Q. Stone”) and the postal address associated with user 101 (e.g., “2220 Eye Street NW, Washington, D.C., 20037, US”) from message fields 232 of RFP message 202A, and that package the obtained customer name and postal address into corresponding portions of customer data 206 of decomposed field data 204. Additionally, and based on the elements of field mapping data 138A, executed decomposition engine 146 may determine that message fields 236 of RFP message 202A includes data identifying and characterizing the local home improvement store, and may perform operations that obtain the name of the local home improvement store (e.g., “Josh's Home and Lumber”) and the postal address associated with merchant 111 (e.g., “1500 Benning Road NE, Washington, D.C., 20002”) from message fields 236, and that package the obtained name and postal address of the local home improvement store into corresponding portions of counterparty data 212 within decomposed field data 204.
In some instances, and based on the elements of field mapping data 138A, executed decomposition engine 146 may determine that one or more additional message fields of RFP message 202A include elements of data identifying and characterizing the requested payment, such as, but not limited to: message field 228, which includes the requested payment date (e.g., “May 30, 2022”); message fields 230, which includes data identifying the payment amount of the requested payment (e.g., $3,000.00) and the requested payment currency (e.g., “USD”); message field 234, which includes an identifier of the payment instrument selected by user 101 to fund the initiated purchase transaction (e.g., the account number “XXXX-1234-5678-9012”); and message field 238, which includes an identifier of an account associated with the local home improvement store and available of receiving the requested payment (e.g., the tokenized account number “XXXX-9012-3456-7890,” etc.). Executed decomposition engine 146 may perform operations that extract the payment amount, the account identifiers, and the requested payment date from corresponding ones of message fields 228, 230, and 238, and that package the extracted payment amount, the identifiers of the selected payment instrument and the account associated with the local home improvement store, and the requested payment date into corresponding portions of payment data 208.
Further, and based on the elements of field mapping data 138A, executed decomposition engine 146 may also determine that one or more additional, or alternate, message fields of RFP message 202A (not illustrated in
Executed decomposition engine 146 may also determine, based on the elements of field mapping data 138A, that message field 244 of RFP message 202A includes structured or unstructured elements of remittance data that characterizes further the requested payment, the initiated transaction, user 101, or the local home improvement store, and executed decomposition engine 146 may obtain the structured or unstructured elements of remittance data from message field 244 of RFP message 202A and package the obtained elements of remittance data into corresponding portions of remittance information 214. In some instances, the elements of structured or unstructured remittance data may include a link (e.g., a shortened or tiny URL, a long-form URL, etc.) to formatted invoice data associated with the requested payment and maintained by a corresponding computing system associated with the local home improvement store, such as merchant system 110. For example, the remittance data may include a long-form URL 216 (e.g., www.example.com/receipt?custid=′1234′?zip=20002), that points to formatted invoice data 218 within the one or more tangible, non-transitory memories of merchant system 110 (e.g., within data repository 220), and that includes, among other things, the actual postal code of the local home improvement store (e.g., “20002”) and a customer identifier of user 101 assigned by the local home improvement store (e.g., “1234”).
In some instances, the one or more processors of FI computing system 130 may execute a remittance analysis engine 240, which may perform operations that, based on URL 216 maintained within remittance information 214 of decomposed field data 204, programmatically access elements of formatted invoice data 218 maintained within data repository 220 at merchant system 110, and that process the accessed elements of formatted invoice data 218 to obtain additional, or alternate, elements of customer data 206, payment data 208, transaction data 210, counterparty data 212, and additionally, or alternatively, one or more elements of contextual data 246 that further characterizes the initiated purchase transaction or the purchased products or services associated with the requested, real-time payment (e.g., the initiated $3,000.00 purchase of the hardwood flooring from Josh's Home and Lumber on May 30, 2022, at 10:30 a.m.). Examples of the additional elements of transaction data 210, or of the elements of contextual data 246, may include, but are not limited to, one or more identifiers of the purchased hardwood flooring (e.g., the product name, the corresponding UPC or SKU, etc.), the 10:30 a.m. transaction time, the May 30, 2022, transaction date, the total transaction amount of $3,000.00, a subtotal of $2,600.00 for the hardwood flooring, $260.00 in imposed local sales tax, and $140.00 in imposed delivery fees.
For example, remittance analysis engine 240 may access URL 216 maintained within remittance information 214, and may process URL 216 and generate a corresponding HTTP request 248 for the elements of formatted invoice data 218 maintained at merchant system 110. Executed remittance analysis engine 240 may also perform operations that cause FI computing system 130 to transmit HTTP request 248 across network 120 to merchant system 110. Merchant system 110 may, for example, receive HTTP request 248, and based on portions of HTTP request 248 and linking data 250 maintained within data repository 220 (e.g., based on a determined match or correspondence between the portions of HTTP request 248 and linking data 250), merchant system 110 may perform operations that obtain the elements of formatted invoice data 218 from data repository 220, and that transmit the elements of formatted invoice data 218 across network 120 to FI computing system 130, e.g., as a response to HTTP request 248.
Executed remittance analysis engine 240 may receive the elements of formatted invoice data 218 from merchant system 110, and may perform any of the exemplary processes described herein to parse the elements of formatted invoice data 218 (e.g., in a received format, such as a PDF or HTML form, or in a transformed or enhanced format, etc.) and obtain, from the parsed elements of formatted invoice data 218, one or more of the additional, or alternate, elements of customer data 206, payment data 208, transaction data 210, or counterparty data 212 and in some instances, one or more elements of contextual data 246. By way of example, executed remittance analysis engine 240 may apply one or more optical character recognition (OCR) processes or optical word recognition (OWR) processes to the elements of formatted invoice data 218 in PDF form to generate, or obtain, elements of textual content representative of the data that characterize user 101, the local home improvement store, the requested payment, or the initiated purchase of the hardwood flooring.
By way of example, executed remittance analysis engine 240 may perform operations that detect a presence of one or more keywords within the generated elements of textual content (e.g., “time,” “flooring,” “date,” “UPC,” etc.), and may extract elements of the textual content associated with these keywords as corresponding ones of the additional, or alternate, elements of customer data 206, payment data 208, transaction data 210, or counterparty data 212. In other examples, executed remittance analysis engine 240 may detect a presence of the additional, or alternate, elements of customer data 206, payment data 208, transaction data 210, or counterparty data 212 within the generated textual content based on an application of one or more adaptively trained machine learning or artificial intelligence models to portions of the textual content, and examples of these adaptively trained machine learning or artificial intelligence models includes a trained neural network process (e.g., a convolutional neural network, etc.) or a decision-tree process that ingests input datasets composed of all, or selected portions, of the textual content. The disclosed embodiments are, however, not limited to exemplary processes for detecting and extracting one or more of the additional, or alternate, elements of customer data 206, payment data 208, transaction data 210, or counterparty data 212 from the generated textual content, and in other instances, executed remittance analysis engine 240 may perform any additional, or alternate, process for identifying one or more of the additional, or alternate, elements of customer data 206, payment data 208, transaction data 210, or counterparty data 212 within the textual content derived from the processing of the elements of formatted invoice data 218 in PDF format.
Further, and as described herein, the elements of formatted invoice data 218 may be structured in HTML form, and may include metadata that identify and characterize user 101 (e.g., the customer name, etc.), merchant 111 (e.g., the name or other identifier, etc.), the requested payment (e.g., a payment amount, etc.), or the initiated purchase of the airline tickets. Executed remittance analysis engine 240 may perform operations that detect one or more of the elements of metadata within the elements of formatted invoice data 218, and that obtain, from the elements of metadata, additional, or alternate, elements of customer data 206, payment data 208, transaction data 210, or counterparty data 212, as described herein. The disclosed embodiments are, however, not limited to these exemplary processes for detecting and extracting the additional, or alternate, elements of customer data 206, payment data 208, transaction data 210, or counterparty data 212 from HTML-formatted invoice data 218, and in other instances, executed remittance analysis engine 240 may perform any additional, or alternate, process detecting and obtaining data from the elements of formatted invoice data 218 structured in HTML form, including, but not limited to, an application of one or more screen-scraping processes to elements of formatted invoice data 218 structured in HTML form.
In some instances, executed remittance analysis engine 240 may also perform any of the exemplary operations described herein to process the elements of formatted invoice data 218, structured in PDF or HTML form, and extract one or more of the additional elements of transaction data 210, or the elements of contextual data 246 that further characterize the $3,000.00 purchase of the hardwood flooring from Josh's Home and Lumber on May 30, 2022, at 10:30 a.m. By way of example, the additional elements of transaction data 210, or the elements of contextual data 246, may include, but are not limited to, one or more identifiers of the purchased hardwood flooring (e.g., the product name, the corresponding UPC or SKU, etc.), the 10:30 a.m. transaction time, the May 30, 2022, transaction date, the total transaction amount of $3,000.00, a subtotal of $2,600.00 for the hardwood flooring, $260.00 in imposed local sales tax, and $140.00 in imposed delivery fees. Executed remittance analysis engine 240 may perform operations that store the elements of contextual data 246 within a portion of remittance information 214.
In some instances, executed decomposition engine 146 may perform operations that store decomposed field data 204, which includes the element of customer data 206, payment data 208, transaction data 210, or counterparty data 212, and remittance information 214 (including URL 216 and contextual data 246), within a corresponding portion of data repository 134, for example, in conjunction with RFP message 202A within a portion of RFP queue 135. Further, and based on the elements of field mapping data 138A, executed decomposition engine 146 may also perform any of the exemplary processes described herein to operations that parse each of RFP messages 202A and 202B, and obtain, respectively, elements of decomposed field data 252 and decomposed field data 266 that identify and characterize the customer (e.g., user 101 of client device 102), a corresponding counterparty (e.g., the local lighting showroom, “Sam's Lighting,” and the local electronics store, “Woody's Electronics,” respectively), corresponding ones of the requested, real-time payments, and corresponding ones of the initiated purchase transactions.
By way of example, and based on the elements of field mapping data 138A, executed decomposition engine 146 may perform any of the exemplary processes described herein to parse the elements of RFP message 202B, and obtain the customer name, the postal address of user 101, and a name of the local lighting showroom (“Sam's Lighting”) and a postal address associated with the local lighting showroom (e.g., “1650 Benning Road NE, Washington, D.C., 20002”), and to package the name and postal address of user 101, and the name and postal address of the local lighting showroom, within respective portions of customer data 254 and counterparty data 260 of decomposed field data 25. Further, and based on the elements of field mapping data 138A, executed decomposition engine 146 may perform any of the exemplary processes described herein to obtain, from one or more additional message fields of RFP message 202B, the requested payment date (e.g., “May 30, 2022”), the requested payment amount (e.g., $2,000.00) and the requested payment currency (e.g., “USD”), an identifier of the payment instrument selected by user 101 to fund the initiated purchase transaction (e.g., the account number “XXXX-1234-5678-9012” of the deposit account), and an identifier of an account associated with the local lighting showroom and executed decomposition engine 146 available of receiving the requested payment. As described herein, executed decomposition engine 146 may perform operations that package the requested payment date, the requested payment amount (and the requested payment currency), and the identifiers of the payment instrument of user 101 and the account of the local lighting showroom within corresponding portions of payment data 256 of decomposed field data 252.
Executed decomposition engine 146 may also perform any of the exemplary processes described herein that, based on the elements of field mapping data 138A, obtain elements of transaction data that characterize the initiated purchase transaction (e.g., the $2,000.00 purchase of the lighting fixtures at 11:20 a.m. on May 30, 2022, from Sam's Lighting in Washington, D.C.), and that package the obtained elements of transaction data within corresponding portions of transaction data 258 of decomposed field data 252. Further, executed decomposition engine 146 may also determine, based on the elements of field mapping data 138A, that one or more message fields of RFP message 202B includes structured or unstructured elements of remittance data that further characterize the requested payment, the initiated transaction, user 101, or the local lighting showroom, and executed decomposition engine 146 may obtain the structured or unstructured elements of remittance data from the one or more message fields of RFP message 202B and package the obtained elements of remittance data into corresponding portions of remittance information 262 of decomposed field data 252.
By way of example, the structured or unstructured elements of remittance data maintained within the message fields of RFP message 202B may include a link (e.g., a shortened or tiny URL, a long-form URL, etc.) to formatted invoice data associated with the requested $2,000.00 payment and maintained by a corresponding computing system associated with the local lighting showroom, such as merchant system 114. In some instances, executed remittance analysis engine 240 may perform any of the exemplary processes described herein to programmatically access the elements of formatted invoice data associated with the requested $2,000.00 payment that are maintained at merchant system 114, to process the formatted invoice data (e.g., in PDF or HTML form), and to obtain one or more additional elements of customer data 254, payment data 256, transaction data 258, or counterparty data 260, or elements of contextual data maintained within remittance information 262 of decomposed field data 252. As described herein, the additional elements of transaction data 258, or the contextual data, may include, but is not limited to, one or more identifiers of the purchased lighting fixtures (e.g., a product name, a corresponding UPC or SKU, etc.), the 11:20 a.m. transaction time, the May 30, 2022, transaction date, the total transaction amount of $2,000.00, a subtotal of $1,700.00 for the lighting fixtures, $170.00 in imposed local sales tax, and $130.00 in imposed delivery fees.
Further, and based on the elements of field mapping data 138A, executed decomposition engine 146 may also perform any of the exemplary processes described herein to parse the elements of RFP message 202C, and obtain the customer name, the postal address of user 101, and a name of the local electronic store (“Woody's Electronics”) and a postal address associated with the local lighting showroom (e.g., “3102 14th St NW, Washington, D.C. 20010”), and to package the name and postal address of user 101, and the name and postal address of the local electronic store, within respective portions of customer data 268 and counterparty data 274 of decomposed field data 266. Further, and based on the elements of field mapping data 138A, executed decomposition engine 146 may perform any of the exemplary processes described herein to obtain, from one or more additional message fields of RFP message 202C, the requested payment date (e.g., “May 30, 2022”), the requested payment amount (e.g., $2,500.00) and the requested payment currency (e.g., “USD”), an identifier of the payment instrument selected by user 101 to fund the initiated purchase transaction (e.g., the account number “XXXX-1234-5678-9012” of the deposit account), and an identifier of an account associated with the local electronic store and executed decomposition engine 146 available to receive the requested payment. As described herein, executed decomposition engine 146 may perform operations that package the requested payment date, the requested payment amount (and the requested payment currency), and the identifiers of the payment instrument of user 101 and the account of the local lighting showroom within corresponding portions of payment data 270 of decomposed field data 252.
Executed decomposition engine 146 may also perform any of the exemplary processes described herein that, based on the elements of field mapping data 138A, obtain, from the message field of RFP message 202C, elements of transaction data that characterize the initiated purchase transaction (e.g., the $2,500.00 purchase of the home-theater system at 12:00 p.m. on May 30, 2022, from Woody's Electronics in Washington, D.C.), and that package the obtained elements of transaction data within corresponding portions of transaction data 272 of decomposed field data 266. Further, executed decomposition engine 146 may also determine, based on the elements of field mapping data 138A, that one or more message fields of RFP message 202C include structured or unstructured elements of remittance data that further characterize the requested payment, the initiated transaction, user 101, or the local electronics store, and executed decomposition engine 146 may obtain the structured or unstructured elements of remittance data from the one or more message fields of RFP message 202C and package the obtained elements of remittance data into corresponding portions of remittance information 276 of decomposed field data 266.
By way of example, the structured or unstructured elements of remittance data maintained within the message fields of RFP message 202B may include a link (e.g., a shortened or tiny URL, a long-form URL, etc.) to formatted invoice data associated with the requested $2,500.00 payment and maintained by a corresponding computing system associated with the local electronics store, such as merchant system 118. In some instances, executed remittance analysis engine 240 may perform any of the exemplary processes described herein to programmatically access the elements of formatted invoice data associated with the requested $2,500.00 payment that are maintained at merchant system 118, to process the formatted invoice data (e.g., in PDF or HTML form), and to obtain one or more additional elements of customer data 268, payment data 270, transaction data 272, or counterparty data 274, or elements of contextual data maintained within the remittance information 276 of decomposed field data 266. As described herein, the additional elements of transaction data 272, or the contextual data may include, but are not limited to, one or more identifiers of the purchased home theater system (e.g., a product name, a corresponding UPC or SKU, etc.), 12:00 p.m. transaction time, the May 30, 2022, transaction date, the total transaction amount of $2,500.00, a subtotal of $2,200.00 for the home theater system, $220.00 in imposed local sales tax, and $30.00 in imposed delivery fees.
In some instances, executed decomposition engine 146 may perform operations that store decomposed field data 252, which includes the element of customer data 254, payment data 256, transaction data 258, or counterparty data 260, and remittance information 262, within a corresponding portion of data repository 134, for example, in conjunction with RFP message 202B within a portion of RFP queue 135. Further, executed decomposition engine 146 may also perform operations that store decomposed field data 266, which includes the element of customer data 268, payment data 270, transaction data 272, or counterparty data 274, and remittance information 276 (including the elements of contextual data), within a corresponding portion of data repository 134, for example, in conjunction with RFP message 202C within a portion of RFP queue 135. Further, executed decomposition engine 146 may also perform any of the exemplary processes described herein, either alone or in conjunction with executed remittance analysis engine 240, to “decompose” one or more additional, or alternate, RFP messages maintained within RFP queue 135 into corresponding elements of decomposed field data that include corresponding elements of customer data, counterparty data, payment data, transaction data, and remittance information (including elements of contextual data derived from corresponding elements of formatted invoice data), and to store the corresponding elements of decomposed field data within a corresponding portion of data repository 134, such as within RTP data store 144.
Executed decomposition engine 146 may also perform operations that provide the elements of decomposed field data associated with one or more of the RFP messages maintained within RFP queue 135, including elements of decomposed field data 204, 252, and 266 associated with corresponding ones of RFP messages 202A, 202B, and 202C, as inputs to analytical engine 148 executed by the one or more processors of FI computing system 130. Upon execution by the one or more processors of FI computing system 130, executed analytical engine 148 may perform any of the exemplary processes described herein to determine a common intent or purpose that characterizes the initiated purchase transactions associated with the provisioned RFP messages (e.g., RFP messages 202A, 202B, and 202C) based on the elements of the decomposed field data (e.g., corresponding elements of decomposed field data 204, 252, and 266), to predict future occurrences of one or more additional purchase transactions that, if initiated by user 101 during a future temporal interval, would be consistent with the common intent or purpose. Further, executed analytical engine 148 may also perform any of the exemplary operations described herein to determine that one or more secured credit or loan products (e.g., a home-equity line-of-credit (HELOC), a refinancing product, etc.) are available for provisioning to user 101 and capable of funding the initiated purchase transaction associated with provisioned RFP messages (e.g., the purchase transactions characterized by provisioned RFP messages 202A, 202B, and 202C) and the one or more additional purchase transactions, and to perform operations that “pre-approve” user 101 for the one or more secured credit or loan products in accordance with an aggregate transaction amount associated with the initiated purchase transactions and the predicted future occurrences of one or more additional purchase transactions.
Referring to
By way of example, and as described herein, the elements of transaction data 210 may characterize a first purchase transaction initiated at Josh's Home and Lumber at 10:30 a.m. on May 20, 2022, the elements of transaction data 258 may characterize a second purchase transaction initiated at Sam's Lighting at 11:20 a.m. on May 20, 2022, and the elements of transaction data 272 may characterize a third purchase transaction initiated at Woody's Electronics at 12:00 p.m. on May 20, 2022. In some instances, executed aggregation module 302 may parse the elements of transaction data 210 and/or contextual data 246, the elements of transaction data 258, and the elements of transaction data 272 may determine that the purchase transactions characterized by RFP messages 202A, 202B, and 202C are associated with a ninety-minute temporal interval, and may package the ninety-minute temporal interval into temporal interval 304A of aggregated data 304.
Further, and based on the elements of transaction data 210 and/or contextual data 246, the elements of transaction data 258, and the elements of transaction data 272, executed aggregation module 302 may determine an aggregated transaction amount 304B of $7,500.00 across the first, second, and third purchase transactions, determine a transaction velocity 304C (e.g., one purchase transaction per thirty-minute interval), and generate aggregated product data 304D that includes the identifiers (e.g., product names, UPCs or SKUs, etc.) of the purchased hardwood flooring, light fixtures, and home theater system. Executed aggregation module 302 may package aggregated transaction amount 304B, transaction velocity 304C, and aggregated product data 304D into corresponding portions of aggregated data 304, which executed aggregation module 302 may store within a portion of a locally accessible data repository, such as, but not limited to, data repository 134 (not illustrated in
Executed intent determination module 306 may, for example, receive the aggregated data 304 (e.g., including temporal interval 304A, aggregated transaction amount 304B, transaction velocity 304C, and aggregated product data 304D), and may access the elements of decomposed field data 204, 252, and 266 associated with respective ones of RFP messages 202A, 202B, 202C, as maintained within RTP data store 144 (e.g., including the exemplary elements of customer, counterparty, payment, transaction and contextual data, as described herein). By way of example, executed intent determination module 306 may access the elements transaction data 210, 258, and 272 associated with corresponding ones of the first, second, and third purchase transaction, and obtain identifiers of corresponding ones of the counterparties to the first, second, and third purchase transactions (e.g., “Josh's Home and Lumber,” “Sam's Lighting,” and “Woody's Electronics,” respectively) and transaction amounts characterizing corresponding ones of the first, second, and third purchase transactions (e.g., $3,000.00, $2,000.00, and $2,500.00, respectively).
Executed intent determination module 306 may also access elements of additional data that characterize user 101, one or more assets held by user 101, one or more financial services accounts held by user 101, or the interactions between the user 101 and the financial institution (and with one or more unrelated financial institutions), such as, but not limited to, one or more elements of customer profile data 140A, account data 140B, transaction data 140C, and third-party data 140D (e.g., as maintained within customer data store 140 of data repository 134). By way of example, and based on the additional data elements, executed intent determination module 306 may establish that user 101 owns a townhome located at 2220 Eye Street, N.W., in the Foggy Bottom neighborhood of Washington, D.C., that user 101 repaid a fixed-rate, fifteen-year home mortgage product associated with the townhouse in 2015, and that the townhouse is subject to no further encumbrances or liens.
For instance, executed intent determination module 306 may perform operations that analyze those portions of decomposed field data 204, 252, and 256 that identify user 101 (e.g., elements of customer data 206, 254, and 268 that include customer name “John Q. Stone”), the identifier of corresponding ones of the counterparties to the first, second, and third purchase transactions (e.g., “Josh's Home and Lumber,” “Sam's Lighting,” and “Woody's Electronics,” respectively), the transaction amounts characterizing corresponding ones of the first, second, and third purchase transactions (e.g., $3,000.00, $2,000.00, and $2,500.00, respectively), and further, the additional elements that establish the user 101 owns a single family home without mortgage, lien or other encumbrance, and may determine that user 101 initiated the first, second, and third purchases transactions characterized by respective ones of RFP messages 202A, 202B, and 202C with an intention of renovating or improving a portion of the single family home (e.g., the townhouse in the Foggy Bottom neighborhood of Washington, D.C.). Executed intent determination module 306 may also perform operations that generate elements of intent data 308 that characterize the now-determined customer intent (e.g., the intended renovation or improvement of the single family home), and that store intent data 308 within a portion of a locally accessible data repository, such as, but not limited to, data repository 134.
By way of example, executed intent determination module 306 may perform operations that apply a trained machine learning or artificial intelligence process to an input dataset obtained, or extracted from, subsets of the elements of decomposed field data 204, 252, and 266 associated with corresponding ones of the first, second, and third purchase transactions initiated by user 101 during the prior ninety-minute period (e.g., as obtained from corresponding ones of RFP messages 202A, 202B, and 202C), elements of aggregated data 304 (e.g., including temporal interval 304A, aggregated transaction amount 304B, transaction velocity 304C, and aggregated product data 304D), and the additional elements of customer profile data 140A, account data 140B, transaction data 140C, and third-party data 140D associated with user 101 (e.g., as maintained within customer data store 140 of data repository 134). Based on the application of the trained machine learning or artificial intelligence process to the input dataset, executed intent determination module 306 may generate one or more of the elements of intent data 308, which characterize the customer intent associated with the initiated first, second, and third purchase transaction.
Examples of the trained machine-learning and artificial-intelligence processes may include, but are not limited to, a clustering process, an unsupervised learning process (e.g., a k-means algorithm, a mixture model, a hierarchical clustering algorithm, etc.), a semi-supervised learning process, a supervised learning process, or a statistical process (e.g., a multinomial logistic regression model, etc.). The trained machine-learning and artificial-intelligence processes may also include, among other things, a decision tree process (e.g., a boosted decision tree algorithm, etc.), a random decision forest, an artificial neural network, a deep neural network, or an association-rule process (e.g., an Apriori algorithm, an Eclat algorithm, or an FP-growth algorithm). Further, and as described herein, each of these exemplary machine-learning and artificial-intelligence processes may be trained against, and adaptively improved using, elements of training and validation data, and may be deemed successfully trained and ready for deployment when a value of one or more performance or accuracy metrics are consistent with one or more threshold training or validation criteria.
For instance, the trained machine learning or artificial intelligence process may include a trained decision-tree process, and executed intent determination module 306 may obtain, from one or more tangible, non-transitory memories, elements of process input data and process parameter data associated with the trained decision-tree process (not illustrated in
In some examples, not illustrated in
Further, as illustrated in
For example, executed product determination module 310 may receive the elements of intent data 308 from executed intent determination module 306 (e.g., that characterize the intended renovation or improvement of the single family home). Further, executed product determination module 310 may also access the elements of decomposed field data 204, 252, and 266 associated with corresponding ones of the first, second, and third purchase transactions initiated by user 101 during the prior ninety-minute period (e.g., as obtained from corresponding ones of RFP messages 202A, 202B, and 202C), elements of aggregated data 304 (e.g., including temporal interval 304A, aggregated transaction amount 304B, transaction velocity 304C, and aggregated product data 304D), and the additional elements of customer profile data 140A, account data 140B, transaction data 140C, and third-party data 140D associated with user 101 (e.g., as maintained within customer data store 140 of data repository 134). In some instances, executed product determination module 310 may perform operations that analyze the elements of intent data 308 in view of at least a subset of the elements of decomposed field data 204, 252, and 266 (e.g., portions of the customer, counterparty, payment, transaction, or contextual data described herein), the elements of aggregated data 304, and the additional elements of customer profile data 140A, account data 140B, transaction data 140C, and third-party data 140D associated with user 101. Based on the analysis, executed product determination module 310 may generate elements of predictive transaction data 312 that characterize one or more predicted occurrences of future purchase transactions during a future temporal interval (e.g., a temporal interval equivalent to temporal interval 304A, etc.) that would be consistent with the determined customer intent.
For example, executed product determination module 310 may perform operations that apply an additional, trained machine learning or artificial intelligence process to an input dataset obtained, or extracted from, elements of intent data 308, subsets of the elements of decomposed field data 204, 252, and 266, the elements of aggregated data 304, and the additional elements of customer profile data 140A, account data 140B, transaction data 140C, and third-party data 140D associated with user 101. Based on the application of the trained machine learning or artificial intelligence process to the input dataset, executed intent determination module 306 may generate output data that identifies a predicted amount of future spending on purchase transactions consistent with the determined customer intent (e.g., the intended renovation of improvement of the single-family home) during the future temporal interval (e.g., the ninety-minute interval associated with temporal interval 204A, an additional predetermined temporal interval, such a one-hour, twelve hours, twenty-four hours, etc.). In some instances, executed intent determination module 306 may package the predicted amount of future spending into a corresponding portion of predictive transaction data 312.
As described herein, examples of the trained machine-learning and artificial-intelligence processes may include, but are not limited to, a clustering process, an unsupervised learning process (e.g., a k-means algorithm, a mixture model, a hierarchical clustering algorithm, etc.), a semi-supervised learning process, a supervised learning process, or a statistical process (e.g., a multinomial logistic regression model, etc.). The trained machine-learning and artificial-intelligence processes may also include, among other things, a decision tree process (e.g., a boosted decision tree algorithm, etc.), a random decision forest, an artificial neural network, a deep neural network, or an association-rule process (e.g., an Apriori algorithm, an Eclat algorithm, or an FP-growth algorithm). Further, and as described herein, each of these exemplary machine-learning and artificial-intelligence processes may be trained against, and adaptively improved using, elements of training and validation data, and may be deemed successfully trained and ready for deployment when a value of one or more performance or accuracy metrics are consistent with one or more threshold training or validation criteria.
For instance, the additional trained machine learning or artificial intelligence process may include a trained decision-tree process, and executed intent determination module 306 may obtain, from one or more tangible, non-transitory memories, elements of process input data and process parameter data associated with the trained decision-tree process, such as those described herein (not illustrated in
By way of example, the aggregated transaction amount for the first, second, and third purchases transactions initiated by user 101 during the ninety minute period corresponds to $7,500.00 (e.g., as specified within aggregated transaction amount 304B), and executed product determination module 310 may predict that user 101 will spend an additional $10,500.00 to support and complete the renovation or improvement to the single-family home owned by user 101 (e.g., to purchase additional construction supplies to construction services, or to purchase additional furnishings for the renovated or improved space). Executed product determination module 310 may package data characterizing the predicted additional spending of $10,500.00 into a corresponding portion of predictive transaction data 312.
Executed product determination module 310 may also perform operations that access a candidate financial product data store 136 (e.g., as maintained within data repository 134 of
By way of example, based on the intended renovation or home improvement project (e.g., as specified within intent data 308), the unencumbered ownership of the single-family home by user 101 (e.g., as specified within elements of third-party data 140D associated with user 101), or an assessed value of the single-family home owned by user 101 (e.g., as specified within additional elements of third-party data 140D associated with user 101), executed product determination module 310 may determine that a home-equity line-of-credit (HELOC) product offered by the financial institution in an amount of $20,000.00 would be appropriate to fund the initiated first, second, and third purchase transactions (e.g., associated with a transaction amount of $7,500.00), and the predicted additional spending (e.g., associated with transaction amounts of $10,500.00). In some instances, executed product determination module 310 may obtain, from one or more elements of candidate financial product data store 136, a product identifier of the HELOC product (e.g., a product name, an identifier assigned by the financial institution, etc.) and one or more internal qualification or underwriting criteria that establish an availability of the HELOC product to user 101 and enable the financial institution to establish customer- or product-specific terms and conditions for the HELOC product. Executed product determination module 310 may, for example, package the product identifier of the HELOC product, the loan amount (e.g., $20,000.00), and the one or more internal qualification or underwriting criteria into corresponding elements of product data 314, which executed product determination module 310 may provide as an input to a pre-approval module 316 of executed analytical engine 148.
Executed pre-approval module 316 may, for example, receive product data 314, and may perform further operations that access customer data store 140, and based on a corresponding customer identifier of user 101, obtain elements of customer profile data 140A, account data 140B, transaction data 140C, or third-party data 140D associated with user 101. By way of example, the obtained elements of third-party data 140D may include, among other things, elements of credit-bureau data associated with user 101 (e.g., a credit score, a number of credit inquiries, etc.). Based on an application of the one or more internal qualification or underwriting criteria associated with the HELOC product (e.g., as specified within the elements of product data 314) to the elements of customer profile data 140A, account data 140B, transaction data 140C, or third-party data 140D associated with user 101 (including the credit-bureau data characterizing a credit score or a number of credit inquiries for user 101), executed pre-approval module 316 may establish that a $20,000 HELOC product is available to user 101 to fund the initiated, and the expected additional, purchase transaction subject to pre-qualified terms and conditions that include a fixed, 6.2% annual percentage rate (APR) and a five-year term (including a one-year draw period and a four-year repayment period). Executed pre-approval module 316 may perform operations that package the product identifier of the available HELOC product, the loan amount (e.g., $20,000.00), and the pre-qualified terms and conditions (e.g., the fixed, 6.2% and the five-year term, including the one-year draw period and the four-year repayment period) into corresponding elements of qualified product data 322, and executed pre-approval module 316 may provision qualified product data 322, which includes an identifier of the available HELOC product, a loan amount (e.g., $20,000), and the determined terms and conditions of the HELOC product offered to user 101 by the financial institution, as an input to a notification engine 150 executed by the one or more processors of FI computing system 130.
Upon execution by the one or more processors of FI computing system 130, executed notification engine 150 may perform any of the exemplary processes described herein to generate elements of notification data that identify, and characterize, the available HELOC product, the loan amount of $20,000.00, and the pre-qualified terms and conditions (e.g., the fixed, 6.2% and the five-year term, including the one-year draw period and the four-year repayment period), and to transmit the elements of notification data across network 120 to client device 102, e.g., for presentation within a corresponding digital interface. In some instances, executed notification engine 150 may generate and transmit the elements of notification data to client device 102, and client device 102 may perform operations that render the elements of notification data for presentation within the digital interface, in real-time and contemporaneously with the receipt of RFP messages 202A, 202B, and 202C, and prior to an execution of all, or at least one of, the real-time payments requested by corresponding ones of RFP messages 202A, 202B, and 202C. Certain of these exemplary processes, when implemented collectively by FI computing system 130 and client device 102, may present to user 101 a targeted offer of a directed loan product capable of funding not only the one or more purchase transactions initiated during the prior temporal interval, but also one or more predicted occurrences of purchase transactions consistent with a determined intent of the initiated purchase transactions, in real time while user 101 initiates the one or more expected purchase transactions during a future temporal interval (e.g., while user 101 is purchasing supplies or furnishings for the renovation or improvement of the single family home).
Referring to
In some instances, and based on portions of decomposed field data 204, 252, and 266, executed notification engine 150 may perform operations that generate payment notifications 324, 326, and 328 associated with, respectively, the $3,000.00 real-time payment requested by the local home improvement store, the $2,000.00 real-time payment requested by the local lighting showroom, and the $2,500.00 real-time payment requested by the local electronics store, and that package each of payment notifications 324, 326, and 328 into a corresponding portion of notification data 330. For example, and for the $3,000.00 real-time payment requested by the local home improvement store, executed notification engine 150 may parse payment data 208 to obtain payment information 332 that identifies the requested payment date of May 30, 2022 and the payment instrument selected by user 101 to fund the purchase transaction (e.g., the account number “XXXX-1234-5678-9012” of the deposit account held by user 101). Executed notification engine 150 may also parse transaction data 210 to obtain information 334 that identifies the requested $3,000.00 payment amount and payment currency of US dollars, and may parse counterparty data 212 to obtain a name 334 of the local home improvement store (e.g., a merchant name “Josh's Home and Lumber”).
In some examples, executed notification engine 150 may perform operations that package all, or selected portion of, information 332, information 334, and merchant name 336 into corresponding portions of payment notification 324, which may be incorporated within notification data 330. Further, although not illustrated in
Further, executed notification engine 150 may parse qualified product data 322, which includes an identifier of the available HELOC product, a loan amount (e.g., $20,000) and the determined terms and conditions of the HELOC product offered to user 101 by the financial institution, and executed notification engine 150 may package each, or a selected portion, of the elements of qualified product data 322, which identifies an identifier of the available HELOC product, a loan amount (e.g., $20,000) and the determined terms and conditions of the HELOC product offered to user 101 by the financial institution, into a product notification 338. Further, executed notification engine 150 may also obtain, from the elements of qualified product data 322, the product associated with the available HELOC product (e.g., product identifier 340), and may parse the structured or unstructured data records of incentive data store 142 to identify one or more data records, such as data record 342, that includes or references product identifier 340. In some instances, data record 342 may include one or more elements of digital content 344 that, when rendered for presentation within a digital interface by client device 102, offers the available HELOC product to user 101 in accordance with the terms and conditions, and prompts user 101 to accept, or alternatively, decline, the offer to fund not only the $7,500 real-time payments requested by “Josh's Home and Lumber,” “Sam's Lighting,” and “Woody's Electronics,” but also the predicted additional purchases of $10,500.00 associated with the completion of the renovation or improvement project involving user 101's home, through the pre-approved HELOC product subject to the determined terms and conditions. Executed notification engine 150 may obtain and package the elements of digital content 344 into product notification 338, which executed notification engine 150 may package into a corresponding portion of notification data 330. Executed notification engine 150 may perform additional operations that cause FI computing system 130 to transmit notification data 330 across network 120 to client device 102.
A programmatic interface associated with one or more application programs executed at client device 102, such as an application programming interface (API) 346 associated with mobile banking application 108, may receive notification data 330 and perform operations that cause client device 102 to execute mobile banking application 108 (e.g., through a generation of a programmatic command, etc.). Upon execution by the one or more processors of client device 102, executed mobile banking application 108 may receive notification data 330 from API 346, and a extraction module 348 of executed mobile banking application 108 may parse notification data 330 to obtain one or more of payment notifications 324, 326, and 328 and product notification 338, which includes qualified product data 322 (e.g., identifying the available HELOC loan, the loan amount, and the determined terms and conditions) and the elements of digital content 344.
In some instances, extraction module 348 may provide product notification 338 as input to an interface element generation module 350 of executed mobile banking application 108, which may perform operations that generate and route interface elements 352 to display unit 109A. In some instances, when rendered for presentation within a corresponding notification interface 354 by display unit 109A, interface elements 352 provide a graphical representation 356 to user 101 of the $7,500.00 in real-time payments requested by “Josh's Home and Lumber,” “Sam's Lighting,” and “Woody's Electronics” on May 30, 2022, the $10,500.00 in predicted additional purchases associated with the completion of the renovation or improvement project involving user's 101 home, and the $20,000.00 HELOC product available to fund both the initiated, and predicted future, purchase transactions subject to the determined terms or conditions, (e.g., within a single display screen or window, or across multiple display screens or windows, of notification interface 354). Further, interface elements 352 may, when presented within notification interface 354, prompt user 101 to accept, or reject, the offered HELOC product by providing further input to a respective one of an “ACCEPT” icon 358 and a “DECLINE” icon 360 presented within notification interface 354.
In some instances, user 101 may elect to accept the offered HELOC product in accordance with the corresponding terms and conditions (e.g., the loan amount of $20,000.00, the APR of 6.2%, and the five-year term, including the one-year draw period and the four-year repayment period, etc.) and to fund the $7,500.00 in real-time payments requested by “Josh's Home and Lumber,” “Sam's Lighting,” and “Woody's Electronics” on May 30, 2022 using funds provided by the HELOC product. User 101 may provide input to client device 102 (e.g., via input unit 109B) that selects the “ACCEPT” icon 358. Based on the input, executed mobile banking application 108 may perform operations (not illustrated in
In some instances, also not illustrated in
Further, FI computing system 130 may also perform operations that transmit one or more messages to merchant systems 110, 114, and 118 that confirm the real-time clearance and settlement of the payments requested by respective ones of the local home improvement store, the local lighting showroom, or the local electronics store, either directly across network 120 or through one or more of computing systems or devices associated with participants in the RTP ecosystem (e.g., additional ISO-20022-compliant messages, etc.). Based on the one or more messages, merchant systems 110, 114, and 118 may perform operations that enable the local home improvement store, the local lighting showroom, and the local electronics store to execute corresponding ones of the initiated purchase transaction and provision the purchased products or services, to user 101.
In other instances, user 101 may elect to decline the offered HELOC product and may provide additional input to client device 102 (e.g., via input unit 109B) that selects the “DECLINE” icon 360. Referring to
Further, when presented within notification interface 354 by display unit 109A, interface elements 364 may provide a graphical representation 374 of payment notification 326 that prompts user 101 to approve or reject the $2,000.00 payment requested by Sam's Lighting for the purchased lighting fixtures on May 30, 2022 (e.g., based on additional input provided to input unit 109B of client device 102 that selects a respective one of an “APPROVE” icon 378 and a “REJECT” icon 380). Additionally, when presented within notification interface 354 by display unit 109A, interface elements 366 may provide a graphical representation 382 of payment notification 328 that prompts user 101 to approve or reject the $2,500.00 payment requested by Woody's Electronics for the purchased home theater system on May 30, 2022 (e.g., based on additional input provided to input u 109B of client device 102 that selects a respective one of an “APPROVE” icon 384 and a “REJECT” icon 384).
User 101 may, for example, elect to approve one or more of the $3,000.00 payment requested by Josh's Home and Lumber, the $2,000.00 payment requested by Sam's Lighting, or the $2,500.00 payment requested by Woody's Electronics, and user 101 may provide input to client device 102 (e.g., via input unit 109B) that selects a corresponding one of “APPROVE” icon 370, 378, or 374. Based on the input, executed mobile banking application 108 may perform operations (not illustrated in
Further, FI computing system 130 may also perform operations that transmit one or more messages to one or more of merchant systems 110, 114, and 118 associated with the approved, real-time payments (e.g., to confirm the real-time clearance and settlement of the approved, real-time payments requested by respective ones of the local home improvement store, the local lighting showroom, or the local electronics store), either directly across network 120 or through one or more of computing systems or devices associated with participants in the RTP ecosystem (e.g., additional ISO-20022-compliant messages, etc.). Based on the one or more messages, merchant systems 110, 114, or 118 may perform operations that enable the local home improvement store, the local lighting showroom, or the local electronics store to execute corresponding ones of the initiated purchase transactions associated with the approved payments and provision the purchased products or services, to user 101.
In other instances, and based on confirmation data indicating a rejection by user 101 of one or more of the requested, real-time payment (e.g., based on additional input selecting corresponding ones of “REJECT” icon 372, 380, and 386), FI computing system 130 may perform operations that access RFP messages 202A, 202B, and 202C maintained within RFP queue 135 (along with corresponding elements of decomposed field data 204, 252, and 266), and delete from RFP queue 135 one or more of RFP messages 202A, 202B, and 202C, and the elements of decomposed field data 204, 252, and 266, that are associated with the rejected, real-time payment (or payments), and generate and transmit one or more messages to corresponding ones of merchant systems 110, 114, and 118 indicative of the rejected payment, either directly across network 120 or through one or more of computing systems or devices associated with participants in the RTP ecosystem (e.g., additional ISO-20022-compliant messages, etc.). Based on the indication of the rejection of the requested payment by user 101 (e.g., due to potential fraud, etc.), corresponding ones of merchant systems 110, 114, and 118 may perform operations that enable the local home improvement store, the local lighting showroom, or the local electronics store, respectively, to cancel the initiated purchase transaction in real-time and without delays and chargebacks characteristic of the transaction reconciliation, clearance, and settlement processes involving payment rails and transaction processing-messages.
Referring to
In some instances, FI computing system 130 may receive each of the RFP messages from a computing system of the corresponding second counterparty (e.g., a corresponding one of merchant systems 110, 114, and 118 of
FI computing system 130 may also perform operations, described herein, to access mapping data that identifies and characterizes each of the messages fields within the ISO-20022-compliant RFP messages (e.g., in step 406 of
In other instances, also in step 408, FI computing system 130 may perform any of the exemplary processes described herein to detect, within one or more of the message fields of a corresponding one of the RFP messages, a link to the remittance data associated with the requested, real-time payment or the corresponding initiated purchase (e.g., a link to a PDF or HTML invoice or receipt associated with the corresponding initiated purchase transaction). By way of example, the link may correspond to a long-form uniform resource locator (URL) into which certain elements of data may be embedded, such as, but not limited to, a unique identifier of the customer, and FI computing system 130 may perform operations, described herein, that parse the long URL to identify and extract the embedded data, which FI computing system 130 may store within one or more of the discrete elements of decomposed field data associated with the corresponding one of the RFP messages.
Additionally, or alternatively, in step 408, FI computing system 130 may perform any of the exemplary processes described herein that, based on the detected link (e.g., the long-form URL described above, or a shortened URL, such as a tiny URL), programmatically access the remittance data associated with the processed link (e.g., as maintained at a corresponding one of merchant systems 110, 114, or 118). The remittance data may include a PDF or HTML invoice or bill (e.g., formatted invoice data 218 of
In some instances, FI computing system may also perform any of the exemplary processes described herein to process the elements of decomposed field data associated with each of the RFP messages, and generate elements of aggregated data that, among other things, characterize a transactional behavior of the customer across a temporal interval associated with the RFP messages (e.g., in step 410 of
Further, based on the elements of aggregated data, based on corresponding one of the elements of decomposed field data associated with each of the RFP messages, and based on additional data that characterize the customer, one or more assets or financial services accounts held by the customer, or the interactions between the customer and the financial institution, FI computing system 130 may perform any of the exemplary processes described herein to determine a customer intent or purpose associated with the purchase transactions initiated during the temporal interval and characterized by corresponding one of the RFP messages and to generate elements of intent data that identify and characterize the determined customer intent or purpose (e.g., in step 412 of
Examples of the trained machine-learning and artificial-intelligence processes may include, but are not limited to, a clustering process, an unsupervised learning process (e.g., a k-means algorithm, a mixture model, a hierarchical clustering algorithm, etc.), a semi-supervised learning process, a supervised learning process, or a statistical process (e.g., a multinomial logistic regression model, etc.). The trained machine-learning and artificial-intelligence processes may also include, among other things, a decision tree process (e.g., a boosted decision tree algorithm, etc.), a random decision forest, an artificial neural network, a deep neural network, or an association-rule process (e.g., an Apriori algorithm, an Eclat algorithm, or an FP-growth algorithm). Further, and as described herein, each of these exemplary machine-learning and artificial-intelligence processes may be trained against, and adaptively improved using, elements of training and validation data, and may be deemed successfully trained and ready for deployment when a value of one or more performance or accuracy metrics are consistent with one or more threshold training or validation criteria.
Referring back to
By way of example, FI computing system 130 may perform operations, described herein, that predict the future occurrences of additional purchase transactions, and that generate the elements of predictive transaction data, based on an application of an additional, or alternate, trained machine-learning or artificial-intelligence process to elements (e.g., feature values) of an input data set obtained, or derived from one or more of the elements of intent data, one or more of the elements of aggregated data, one or more the elements of decomposed field data associated with each of the RFP messages, and/or one or more additional elements of customer profile, account, transaction, and reporting associated with the customer. As described herein, examples of the additional, or alternate, trained machine-learning and artificial-intelligence processes may include, but are not limited to, a clustering process, an unsupervised learning process (e.g., a k-means algorithm, a mixture model, a hierarchical clustering algorithm, etc.), a semi-supervised learning process, a supervised learning process, or a statistical process (e.g., a multinomial logistic regression model, etc.). The additional, or alternate, trained machine-learning and artificial-intelligence processes may also include, among other things, a decision tree process (e.g., a boosted decision tree algorithm, etc.), a random decision forest, an artificial neural network, a deep neural network, or an association-rule process (e.g., an Apriori algorithm, an Eclat algorithm, or an FP-growth algorithm). Further, and as described herein, one or more of the additional, or alternate, machine-learning and artificial-intelligence processes may be trained against, and adaptively improved using, elements of training and validation data, and may be deemed successfully trained and ready for deployment when a value of one or more performance or accuracy metrics are consistent with one or more threshold training or validation criteria.
Referring back to
In some instances, FI computing system 130 may perform any of the exemplary processes described herein to generate, for each of the received and queued RFP messages associated with purchase transactions initiated during the prior temporal interval, a payment notification based on corresponding elements of the decomposed field data extracted, obtained, or derived from a corresponding one of the received and queued RFP messages (e.g., in step 420 of
FI computing system 130 may perform operations, described herein, to package the product notification and each of the payment notifications into corresponding elements of notification data, and that transmit the elements of notification data across network 120 to a computing device or system associated with the customer, such as client device 102 (e.g., in step 424 of
Referring to
Further, client device 102 may also receive, via input unit 109B, elements of user input indicative of an acceptance, or alternatively, a decision to decline, the offer to fund the previously initiated purchase transactions and the predicted future occurrences of the additional purchase transactions using the pre-qualified financial product (e.g., in step 436 of
Alternatively, if client device 102 were to determine that user 101 declined the offer to fund the previously initiated purchase transactions and the predicted future occurrences of the additional purchase transactions using the pre-approved financial product (e.g., step 438; NO), client device 102 may perform any of the exemplary processes described herein to generate an additional product confirmation indicating the rejection of the offer by user 101 (e.g., in step 444 of
Referring to
If, for example, FI computing system 130 were to determine that user 101 accepted the offer to fund the previously initiated purchase transactions and the predicted future occurrences of the additional purchase transactions using the pre-approved financial product (e.g., step 466; YES), FI computing system 130 may perform any of the exemplary processes described herein to complete a qualification or underwriting process and issue the pre-qualified financial product to the customer (e.g., in step 468 of
Further, FI computing system 130 may also perform operations in step 468 that transmit one or more messages to a merchant computing system associated with each of the real-time payments funded using the issued financial product (e.g., merchant systems 110, 114, and 118) that confirms the real-time clearance and settlement of the a corresponding one of the requested, real-time payments, either directly across network 120 or through one or more of computing systems or devices associated with participants in the RTP ecosystem (e.g., additional ISO-20022-compliant messages, etc.). Based on the one or more messages, the merchant computing systems perform operations that enable the merchants to execute corresponding ones of the initiated purchase transaction and provision the purchased products or services, to user 101. Exemplary process 460 may then be complete in step 470.
Alternatively, if FI computing system 130 were to determine that user 101 declined the offer to fund the requested, real-time payment using the selected financial product (e.g., step 466; NO), FI computing system 130 may perform any of the exemplary processes described herein to obtain, from the elements of response data, one of the payment confirmations indicative of the approval, or alternatively, the rejection, of a corresponding one of the real-time payment requests (e.g., in step 472 of
If, for example, FI computing system 130 were to determine that user 101 approved the requested, real-time payment associated with the selected payment confirmation (e.g., step 474; YES), FI computing system 130 may perform any of the exemplary processes described herein to execute the now-approved, real-time payment based on the payment confirmation and in accordance with the corresponding elements of decomposed field data, and that delete the RFP message from the RFP message queue (e.g., in step 476 of
FI computing system 130 may parse the elements of response data and determine whether additional payment confirmations await processing (e.g., in step 478 of
Referring back to step 474, if FI computing system 130 were to determine that user 101 rejected the requested, real-time payment (e.g., step 474; NO), FI computing system 130 may perform any of the exemplary processes described herein to broadcast one or more additional ISO-20022-compliant RTP messages that confirm the rejection of the requested, real-time payment by user 101, and that delete the RFP message from the RFP queue (e.g., in step 480 of
In other examples, and based on a temporal pendency within RFP queue 135 of a particular one of the RFP messages associated with the requested, real-time payment subject to funding by the issued financial product (e.g., the temporal pendency exceeds a predetermined, threshold pendency), FI computing system 130 may perform any of the exemplary processes described herein to generate and provision a corresponding payment notification to client device 102 (e.g., for presentation within a corresponding digital interface, such as notification interface 354 of
By way of example, the presented payment notification may prompt user 101 to fund the $3,000.00 real-time payment requested by Josh's Home and Lumber on May 30, 2022, for the hardwood flooring purchased at 10:30 a.m. on May 30th (e.g., in step 444 of
In some instances, user 101 may elect the provisioned offer to fund the previously initiated purchase transactions, which include the $3,000.00 real-time payment requested by Josh's Home and Lumber on May 30, 2022, and the predicted future occurrences of the additional purchase transactions using the pre-qualified financial product subsequent to the approval of the requested, $3,000.00 real-time payment. Based on the prior approval of the requested, $3,000.00 real-time payment, FI computing system 130 may perform operations, in step 468 of
Embodiments of the subject matter and the functional operations described in this disclosure can be implemented in digital electronic circuitry, in tangibly-embodied computer software or firmware, in computer hardware, including the structures disclosed in this specification and their structural equivalents, or in combinations of one or more of them. Embodiments of the subject matter described in this disclosure, including application programming interfaces (APIs) 203 and 346, decomposition engine 146, analytical engine 148, notification engine 150, remittance analysis engine 240, aggregation module 302, intent determination module 306, product determination module 310, pre-approval module 316, extraction module 348, and interface element generation module 350, can be implemented as one or more computer programs, i.e., one or more modules of computer program instructions encoded on a tangible non-transitory program carrier for execution by, or to control the operation of, a data processing apparatus (or a computing system). Additionally, or alternatively, the program instructions can be encoded on an artificially-generated propagated signal, such as a machine-generated electrical, optical, or electromagnetic signal that is generated to encode information for transmission to suitable receiver apparatus for execution by a data processing apparatus. The computer storage medium can be a machine-readable storage device, a machine-readable storage substrate, a random or serial access memory device, or a combination of one or more of them
The terms “apparatus,” “device,” and “system” refer to data processing hardware and encompass all kinds of apparatus, devices, and machines for processing data, including by way of example a programmable processor, a computer, or multiple processors or computers. The apparatus, device, or system can also be or further include special purpose logic circuitry, such as an FPGA (field programmable gate array) or an ASIC (application-specific integrated circuit). The apparatus, device, or system can optionally include, in addition to hardware, code that creates an execution environment for computer programs, such as code that constitutes processor firmware, a protocol stack, a database management system, an operating system, or a combination of one or more of them.
A computer program, which may also be referred to or described as a program, software, a software application, a module, a software module, a script, or code, can be written in any form of programming language, including compiled or interpreted languages, or declarative or procedural languages, and it can be deployed in any form, including as a stand-alone program or as a module, component, subroutine, or other unit suitable for use in a computing environment. A computer program may, but need not, correspond to a file in a file system. A program can be stored in a portion of a file that holds other programs or data, such as one or more scripts stored in a markup language document, in a single file dedicated to the program in question, or in multiple coordinated files, such as files that store one or more modules, sub-programs, or portions of code. A computer program can be deployed to be executed on one computer or on multiple computers that are located at one site or distributed across multiple sites and interconnected by a communication network.
The processes and logic flows described in this specification can be performed by one or more programmable computers executing one or more computer programs to perform functions by operating on input data and generating output. The processes and logic flows can also be performed by, and apparatus can also be implemented as, special purpose logic circuitry, such as an FPGA (field programmable gate array) or an ASIC (application-specific integrated circuit).
Computers suitable for the execution of a computer program include, by way of example, general or special purpose microprocessors or both, or any other kind of central processing unit. Generally, a central processing unit will receive instructions and data from a read-only memory or a random-access memory or both. The essential elements of a computer are a central processing unit for performing or executing instructions and one or more memory devices for storing instructions and data. Generally, a computer will also include, or be operatively coupled to receive data from or transfer data to, or both, one or more mass storage devices for storing data, such as magnetic, magneto-optical disks, or optical disks. However, a computer need not have such devices. Moreover, a computer can be embedded in another device, such as a mobile telephone, a personal digital assistant (PDA), a mobile audio or video player, a game console, a Global Positioning System (GPS) or an assisted Global Positioning System (AGPS) receiver, or a portable storage device, such as a universal serial bus (USB) flash drive, to name just a few.
Computer-readable media suitable for storing computer program instructions and data include all forms of non-volatile memory, media and memory devices, including by way of example semiconductor memory devices, such as EPROM, EEPROM, and flash memory devices; magnetic disks, such as internal hard disks or removable disks; magneto-optical disks; and CD-ROM and DVD-ROM disks. The processor and the memory can be supplemented by, or incorporated in, special purpose logic circuitry.
To provide for interaction with a user, such as user 101, embodiments of the subject matter described in this specification can be implemented on a computer having a display device, such as a CRT (cathode ray tube) or LCD (liquid crystal display) monitor, for displaying information to the user and a keyboard and a pointing device, such as a mouse or a trackball, by which the user can provide input to the computer. Other kinds of devices can be used to provide for interaction with a user as well; for example, feedback provided to the user can be any form of sensory feedback, such as visual feedback, auditory feedback, or tactile feedback; and input from the user can be received in any form, including acoustic, speech, or tactile input. In addition, a computer can interact with a user by sending documents to and receiving documents from a device that is used by the user; for example, by sending web pages to a web browser on a user's device in response to requests received from the web browser.
Implementations of the subject matter described in this specification can be implemented in a computing system that includes a back-end component, such as a data server, or that includes a middleware component, such as an application server, or that includes a front-end component, such as a client computer having a graphical user interface or a Web browser through which a user can interact with an implementation of the subject matter described in this specification, or any combination of one or more such back-end, middleware, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication, such as a communication network. Examples of communication networks include a local area network (LAN) and a wide area network (WAN), such as the Internet.
The computing system can include clients and servers. A client and server are generally remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other. In some implementations, a server transmits data, such as an HTML page, to a user device, such as for purposes of displaying data to and receiving user input from a user interacting with the user device, which acts as a client. Data generated at the user device, such as a result of the user interaction, can be received from the user device at the server.
While this specification includes many specifics, these should not be construed as limitations on the scope of the disclosure or of what may be claimed, but rather as descriptions of features specific to particular embodiments of the disclosure. Certain features that are described in this specification in the context of separate embodiments may also be implemented in combination in a single embodiment. Conversely, various features that are described in the context of a single embodiment may also be implemented in multiple embodiments separately or in any suitable sub-combination. Moreover, although features may be described above as acting in certain combinations and even initially claimed as such, one or more features from a claimed combination may in some cases be excised from the combination, and the claimed combination may be directed to a sub-combination or variation of a sub-combination.
Similarly, while operations are depicted in the drawings in a particular order, this should not be understood as requiring that such operations be performed in the particular order shown or in sequential order, or that all illustrated operations be performed, to achieve desirable results. In certain circumstances, multitasking and parallel processing may be advantageous. Moreover, the separation of various system components in the embodiments described above should not be understood as requiring such separation in all embodiments, and it should be understood that the described program components and systems may generally be integrated together in a single software product or packaged into multiple software products.
In each instance where an HTML file is mentioned, other file types or formats may be substituted. For instance, an HTML file may be replaced by an XML, JSON, plain text, or other types of files. Moreover, where a table or hash table is mentioned, other data structures (such as spreadsheets, relational databases, or structured files) may be used.
Various embodiments have been described herein with reference to the accompanying drawings. It will, however, be evident that various modifications and changes may be made thereto, and additional embodiments may be implemented, without departing from the broader scope of the disclosed embodiments as set forth in the claims that follow.
Further, unless otherwise specifically defined herein, all terms are to be given their broadest possible interpretation including meanings implied from the specification as well as meanings understood by those skilled in the art and/or as defined in dictionaries, treatises, etc. It is also noted that, as used in the specification and the appended claims, the singular forms “a,” “an,” and “the” include plural referents unless otherwise specified, and that the terms “comprises” and/or “comprising,” when used in this specification, specify the presence or addition of one or more other features, aspects, steps, operations, elements, components, and/or groups thereof. Moreover, the terms “couple,” “coupled,” “operatively coupled,” “operatively connected,” and the like should be broadly understood to refer to connecting devices or components together either mechanically, electrically, wired, wirelessly, or otherwise, such that the connection allows the pertinent devices or components to operate (e.g., communicate) with each other as intended by virtue of that relationship. In this disclosure, the use of “or” means “and/or” unless stated otherwise. Furthermore, the use of the term “including,” as well as other forms such as “includes” and “included,” is not limiting. In addition, terms such as “element” or “component” encompass both elements and components comprising one unit, and elements and components that comprise more than one subunit, unless specifically stated otherwise. Additionally, the section headings used herein are for organizational purposes only and are not to be construed as limiting the described subject matter.
The foregoing is provided for purposes of illustrating, explaining, and describing embodiments of this disclosure. Modifications and adaptations to the embodiments will be apparent to those skilled in the art and may be made without departing from the scope or spirit of the disclosure.
This application claims the benefit of priority to U.S. Provisional Patent Application No. 63/194,751, filed on May 28, 2021, the entire disclosure of which is expressly incorporated herein by reference to its entirety.
Number | Date | Country | |
---|---|---|---|
63194751 | May 2021 | US |