Prosecution Insights
Last updated: April 19, 2026
Application No. 18/869,659

Methods, Systems and Computer Program Products for Determining Models for Predicting Reoccurring Transactions

Non-Final OA §101§103
Filed
Nov 26, 2024
Examiner
KONERU, SUJAY
Art Unit
3624
Tech Center
3600 — Transportation & Electronic Commerce
Assignee
Xero Limited
OA Round
1 (Non-Final)
58%
Grant Probability
Moderate
1-2
OA Rounds
3y 2m
To Grant
95%
With Interview

Examiner Intelligence

Grants 58% of resolved cases
58%
Career Allow Rate
421 granted / 722 resolved
+6.3% vs TC avg
Strong +37% interview lift
Without
With
+37.0%
Interview Lift
resolved cases with interview
Typical timeline
3y 2m
Avg Prosecution
36 currently pending
Career history
758
Total Applications
across all art units

Statute-Specific Performance

§101
37.9%
-2.1% vs TC avg
§103
50.7%
+10.7% vs TC avg
§102
2.0%
-38.0% vs TC avg
§112
7.4%
-32.6% vs TC avg
Black line = Tech Center average estimate • Based on career data from 722 resolved cases

Office Action

§101 §103
DETAILED ACTION This Office Action is in response to Applicant's response to application filed on 26 November 2024. Currently, claims 1, 3-9, 13-14, 16-25 are pending. The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA . Information Disclosure Statement The information disclosure statements (IDS) submitted are in compliance with the provisions of 37 CFR 1.97. Accordingly, the information disclosure statement is being considered by the examiner. Claim Rejections - 35 USC § 101 35 U.S.C. 101 reads as follows: Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title. Claims 1, 3-9, 13-14, 16-25 are clearly drawn to at least one of the four categories of patent eligible subject matter recited in 35 U.S.C. 101 (system, method and non-transitory computer readable medium). Claims 1, 3-9, 13-14, 16-25 are rejected under 35 U.S.C. 101 because the claimed invention is directed to a judicial exception (i.e., a law of nature, a natural phenomenon, or an abstract idea) without significantly more. Claims 1, 19-20 recites the abstract idea of determining a dataset of transactions occurring during a first time period and determining a subset of related transactions from the dataset of transactions, where each transaction in the subset of related transactions shares at least one common attribute and selecting a first transaction interval pattern and selecting a first clustering criteria, wherein the first clustering criteria comprises a threshold deviation from the first transaction interval pattern and based on the first transaction interval pattern and the first clustering criteria, identifying a cluster of transactions from the subset of related transactions and wherein identifying the cluster of transactions from the subset of related transactions comprises: determining an interval difference between the dates of at least one pair of transactions in the subset of related transactions, and wherein each of the at least one pair of transactions comprises a first date having a first day and a first month, and a second date having a second day and a second month; and determining the cluster of transactions as the transactions of the subset of related transactions that comply with the first transaction interval pattern and the threshold deviation from first transaction interval pattern and wherein determining the interval difference between the dates of at least one pair of transactions comprises: determining a first interval difference value comprising a difference between the first day of the second month and the second day of the second month and determining a second interval difference value comprising a difference between the second day of the first month and the first day of the first month and determining a third interval difference value comprising a difference between the first day of the month following the first month and the second day of the second month and determining a fourth interval difference value comprising a difference between the first day of the first month and the second day of the month immediately preceding the second month and determining the interval difference based on the first interval difference value, the second interval difference value, the third interval difference value and the fourth interval difference value and generating a model of periodic transactions based on the cluster of transactions, the model including an interval related to the first transaction interval pattern, and a common model attribute based on the at least one common attribute. The claims are directed to a type of technique for predicting reoccurring transactions by comparing and clustering data an using a model. Under prong 1 of Step 2A, these claims are considered abstract because the claims are certain method of organizing human activity such as commercial interactions including business relations. Applicant’s claims are organizing human activity including commercial interactions because the transactions are human activity and the transactions are organized by being clustered and having determinations made on them. Under prong 2 of Step 2A, the judicial exception is not integrated into a practical application because the claims (the judicial exception and any additional elements individually or in combination such as computer-implemented, a system comprising one or more processors, memory comprising computer executable instructions which when executed by the one or more processors, cause the system to perform operations, and non-transitory machine-readable medium storing instructions which, when executed by one or more processors, cause a computing device to perform operations) are not an improvement to a computer or a technology, the claims do not apply the judicial exception with a particular machine, the claims do not effect a transformation or reduction of a particular article to a different state or thing nor do the claims apply the judicial exception in some other meaningful way beyond generally linking the use of the judicial exception to a particular technological environment such that the claims as a whole is more than a drafting effort designed to monopolize the exception. These limitations at best are merely implementing an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea - see MPEP 2106.05(f). Under Step 2B, the claims do not include additional elements that are sufficient to amount to significantly more than the judicial exception because the additional elements individually or in combination such as computer-implemented, a system comprising one or more processors, memory comprising computer executable instructions which when executed by the one or more processors, cause the system to perform operations, and non-transitory machine-readable medium storing instructions which, when executed by one or more processors, cause a computing device to perform operations (as evidenced by para [0140]-[0155] of applicant’s own specification) are well understood, routine and conventional in the field. Dependent claims 3-9, 13-14, 16-18, 21-25 also do not include additional elements that are sufficient to amount to significantly more than the judicial exception because the additional elements either individually or in combination are merely an extension of the abstract idea itself by further showing wherein the-weekend days are discounted from contributing to the interval difference and more specific ways of determining the interval between dates of a pair of transactions and wherein determining the interval difference comprises determining a minimum of the third interval and the fourth interval value as the interval difference and performing a viability check on the cluster; and in response to the cluster passing the viability check, generating the model of periodic transactions and marking the transactions of the cluster as used and selecting a second transaction interval pattern, the second transaction interval pattern being longer in duration than the first transaction interval pattern; based on the second transaction interval pattern and the first clustering criteria, identifying a further cluster of transactions from the subset of related transactions that are not marked as used; performing a viability check on the further cluster; and in response to the further cluster passing the viability check, generating a model of periodic transactions, the model including an interval related to the second transaction interval pattern, and a common attribute based on the at least one common attribute and using the model of periodic transactions to predict at least one future recurring transaction having an interval related to the second transaction interval pattern and a common attribute based on the at least one common attribute and wherein performing a viability check on the cluster comprises checking one or more of: the recency of the latest transaction in the cluster; and the extent to which the individual transaction intervals of the cluster match a determined pattern; and the number of unique transactions in the cluster. Claim Rejections - 35 USC § 103 The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action: A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made. In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status. This application currently names joint inventors. In considering patentability of the claims the examiner presumes that the subject matter of the various claims was commonly owned as of the effective filing date of the claimed invention(s) absent any evidence to the contrary. Applicant is advised of the obligation under 37 CFR 1.56 to point out the inventor and effective filing dates of each claim that was not commonly owned as of the effective filing date of the later invention in order for the examiner to consider the applicability of 35 U.S.C. 102(b)(2)(C) for any potential 35 U.S.C. 102(a)(2) prior art against the later invention. Claims 1, 3-8, 13-14, 17-25 are rejected under 35 U.S.C. 103 as being unpatentable over Jumper et al. (US 2021/0117851 A1) (hereinafter Jumper). Claims 1, 19-20: Jumper, as shown, discloses the following limitations of claims 1, 19-20: A computer-implemented method (and corresponding system and non-transitory computer readable medium – see para [0170]-[0179], showing corresponding computing processing and components) comprising: determining a dataset of transactions occurring during a first time period (see para [0014], "In some embodiments, the incremental time window method may analyze a dataset and generate one or more labels. These labels will be described more thoroughly below but may be used to train a machine learning model. To generate the labels, data points of the dataset may be analyzed to determine a recurrence period. The dataset may, for example, include data representing a series of transactions. The transactions may be analyzed to determine if and/or when a type of transaction recurs. For example, the dataset may represent a user's bank account or credit card. Analyzing the dataset via a cadence analysis may identify that a particular merchant periodically or semi-periodically performs a transaction for a particular amount. Similarly, other types of data and datasets may include periodicity in other ways such as a sequence. The periodicity of a dataset may indicate a recurrence period."); determining a subset of related transactions from the dataset of transactions where each transaction in the subset of related transactions shares at least one common attribute (see para [0035], "In accordance with some embodiments, during the preprocessing stage, raw transaction data from a set of transactional data may be preprocessed for merchant cleansing, which is described in detail below. The raw transaction data may be an initial input for training a model. The trained model may operate on sets of transactional data over time between individual account-merchant pairs. An account-merchant pair refers to a relationship between a customer and a particular merchant. The transactions in the sets of transactional data may be grouped or aggregated based on a set of columns specifying unique account-merchant pairs. These transaction groups may then form the basis of calculating input features including account-merchant aggregate features. Input features may also be known as input variables which are used as part of training a model." and see para [0048], "In accordance with some embodiments, the account-merchant input variables may be determined over two different levels of transaction aggregation. The first level of transaction aggregation may be over the set of transactions in the unique account and merchant pairs. The second level of transaction aggregation may be an aggregation of the results from the first aggregation, e.g., further aggregation at the merchant level over all accounts. In accordance with some embodiments, further aggregation at the merchant over all accounts may be based on common features among various customers, such as, geographic region, language, ethnicity, etc. Each merchant may be uniquely identified based on any combination of merchant's name; merchant's category code; merchant's postal code; merchant's country, state, and city; etc. Similarly, each customer may be uniquely identified based on the customer's account identifier; customer's first name; customer's last name; etc. Accordingly, any combination of fields uniquely identifying a customer and merchant may form a key to aggregate transactions for a unique account-merchant pair."); selecting a first transaction interval pattern (see para [0016], "To train a machine learning model, the analysis portion may be used to identify input features. As will be further explained below, the input features may include data related to patterns of transactions such as Δt (representing an average time difference between transaction), phase variable values (such as strength, coverage, and redundancy), standard deviation values, and/or other elements. The input features may represent a prediction that a recurring transaction will occur. For example, the input features may represent a prediction that a transaction will occur in thirty days. To generate a label, the holdout portion may be tested against this prediction and the set of input features determined from the analysis portion. In an embodiment, the label may represent a Boolean value indicating whether or not the holdout portion confirmed the prediction generated from the analysis portion." and see para [0022], "These input features and labels may be used to train a machine learning model to aid in identifying patterns. For example, after training, the machine learning model may be applied to other data to generate predictions based on the training provided by the input features and labels generated during the incremental time window process. The incremental time window process may also train the model to predict irregular patterns. For example, the incremental time window process may aid in detecting scenarios where recurring transactions are canceled or paused. In an embodiment, a user may be subscribed to a particular service that generates a transaction every recurrence period. For example, the recurrence period may be monthly. In some cases, the user may cancel this service and therefore cease the recurring transaction. By using the incremental time window process, the input features and labels may be generated that indicate the former presence of a recurring transaction but then also indicate that the recurrence has ended."); selecting a first clustering criteria, wherein the first clustering criteria comprises a threshold deviation from the first transaction interval pattern (see para [0061]-[0062], "In accordance with some embodiments, phase variables may be determined based on a mapping of transaction dates into phase space, which is a circular projection of a recurrence period or a billing cycle. The mapping of transactions into the phase space may be achieved by converting a transaction date of each transaction in the series of transactions into a transaction ordinal date (i.e., an integer value representing a number of days since an arbitrary “epoch” point). The phase space represents a cadence, which may also be considered a billing cycle, which may be, for example, weekly, biweekly, monthly, semi-monthly, quarterly, semi-annually, and/or yearly. Transaction ordinal dates may then be transformed into a phase angle in radians with respect to the chosen billing cycle. As the transaction ordinal dates are plotted on a circular projection representing the phase space, a tight cluster of transaction ordinal dates may indicate a close alignment of the series cadence with the chosen billing cycle or phase space. Three different phase variables may capture this qualitative indicator or alignment of the series cadence with the chosen billing cycle or phase space. These phase variables are a vector strength (or strength), a coverage, and a redundancy. The phase variable vector strength captures how strongly clustered a set of events or transaction ordinal dates are in specific phase space or billing cycle. For example, all transaction ordinal dates of total N number of transactions may first be plotted on a unite circle projection of the chosen phase space or billing cycle. Accordingly, each transaction ordinal date will have a phase angle θ. Various coordinate points associated with the transaction ordinal dates may then be averaged to determine a mean (x, y) coordinate of all the resulting points on the unit circle of the chosen phase space. A magnitude of a vector pointing from a point (0, 0) to the mean (x, y) coordinate is the vector strength.” and see para [0106]); based on the first transaction interval pattern and the first clustering criteria, identifying a cluster of transactions from the subset of related transactions (see para [0061]-[0062], "In accordance with some embodiments, phase variables may be determined based on a mapping of transaction dates into phase space, which is a circular projection of a recurrence period or a billing cycle. The mapping of transactions into the phase space may be achieved by converting a transaction date of each transaction in the series of transactions into a transaction ordinal date (i.e., an integer value representing a number of days since an arbitrary “epoch” point). The phase space represents a cadence, which may also be considered a billing cycle, which may be, for example, weekly, biweekly, monthly, semi-monthly, quarterly, semi-annually, and/or yearly. Transaction ordinal dates may then be transformed into a phase angle in radians with respect to the chosen billing cycle. As the transaction ordinal dates are plotted on a circular projection representing the phase space, a tight cluster of transaction ordinal dates may indicate a close alignment of the series cadence with the chosen billing cycle or phase space. Three different phase variables may capture this qualitative indicator or alignment of the series cadence with the chosen billing cycle or phase space. These phase variables are a vector strength (or strength), a coverage, and a redundancy. The phase variable vector strength captures how strongly clustered a set of events or transaction ordinal dates are in specific phase space or billing cycle. For example, all transaction ordinal dates of total N number of transactions may first be plotted on a unite circle projection of the chosen phase space or billing cycle. Accordingly, each transaction ordinal date will have a phase angle θ. Various coordinate points associated with the transaction ordinal dates may then be averaged to determine a mean (x, y) coordinate of all the resulting points on the unit circle of the chosen phase space. A magnitude of a vector pointing from a point (0, 0) to the mean (x, y) coordinate is the vector strength.” and see para [0106]); wherein identifying the cluster of transactions from the subset of related transactions comprises: determining an interval difference between the dates of at least one pair of transactions in the subset of related transactions, and wherein each of the at least one pair of transactions comprises a first date having a first day and a first month, and a second date having a second day and a second month (see para [0061], "In accordance with some embodiments, phase variables may be determined based on a mapping of transaction dates into phase space, which is a circular projection of a recurrence period or a billing cycle. The mapping of transactions into the phase space may be achieved by converting a transaction date of each transaction in the series of transactions into a transaction ordinal date (i.e., an integer value representing a number of days since an arbitrary “epoch” point). The phase space represents a cadence, which may also be considered a billing cycle, which may be, for example, weekly, biweekly, monthly, semi-monthly, quarterly, semi-annually, and/or yearly. Transaction ordinal dates may then be transformed into a phase angle in radians with respect to the chosen billing cycle. As the transaction ordinal dates are plotted on a circular projection representing the phase space, a tight cluster of transaction ordinal dates may indicate a close alignment of the series cadence with the chosen billing cycle or phase space. Three different phase variables may capture this qualitative indicator or alignment of the series cadence with the chosen billing cycle or phase space. These phase variables are a vector strength (or strength), a coverage, and a redundancy."); and determining the cluster of transactions as the transactions of the subset of related transactions that comply with the first transaction interval pattern and the threshold deviation from first transaction interval pattern (see para [0029], "In accordance with some embodiments, a procedure to identify a recurring relationship may include: first, analyzing a set of transactions to identify a cadence within the set; second, predicting a future transaction date(s) based on the identified cadence; and third, determining if actual transactions can be found at the predicted future transaction date(s), or within a specific threshold number of days of the predicted future transaction date(s). This procedure may be applied over a large set of transactional data without waiting for actual future transactions to evaluate predictions of future transaction date(s). This can be accomplished by using historical data, i.e., transactions that have already occurred between a customer and a merchant. The historical data may be split into two portions, an analysis portion, and a corresponding holdout portion. The analysis portion may include transactions between a customer and a merchant to identify the cadence. While the holdout portion may include transactions between the customer and the merchant to test the prediction of the future transaction date(s). The transactions in the analysis portion may be transactions between the customer and the merchant occurring earlier in time than the transactions in the corresponding holdout portion. For example, the set of transactional data may represent transactions between the customer and the merchant occurring over a one-year period of time. The set of transactional data may be split into an analysis portion that includes transactions from the first eight months and the holdout portion may include transactional data for the last four months. Alternatively, transactions may be split into multiple analysis portions and holdout portions. Because the set of transactions are accumulated at different points in time, a unique merchant-account pair may uncover different pattern that each may help to generate a target label different from the others, splitting transactions into multiple analysis and holdout portion enables training of supervised learning model with more accuracy. For example, transactions between a customer and a merchant for a period starting Jan. 1, 2018 through Dec. 31, 2018 may be split into a first analysis portion that may include transactions from Jan. 1, 2018 through Apr. 30, 2018 and a corresponding holdout portion that may include transactions from May 1, 2018 through Jun. 30, 2018. And, a second analysis portion may include transactions from Jul. 1, 2018 through Oct. 31, 2018 and a corresponding holdout portion may include transactions from Nov. 1, 2018 through Dec. 31, 2018." and see para [0042], " In accordance with some embodiments, transactions in the analysis portion may be labeled as transactions of a recurring series when a transaction(s) in the holdout portion can be found within a threshold number of days of the predicted future transaction date(s). For example, if a future transaction date is predicted in Apr. 10, 2019, and the threshold number of days is set to +/−3 days, then if a transaction with a transaction date between Apr. 7, 2019 through Apr. 13, 2019 can be found in the holdout portion, the transactions in the analysis portion may be labeled as transactions of a recurring series. Transactions in the analysis portion may be labeled as transactions of a recurring series when the prediction of future transaction dates above a specific threshold percentage comes true. By way of a non-limiting example, if the specific threshold percentage is set to 60%, then if transactions matching two of the three predicted future transactions dates are found in the holdout portion, then transactions in the analysis portion may be labeled as transactions of a recurring series. However, if only one of the three predicted future transactions dates is found in the holdout portion, then transactions in the analysis portion may not be labeled as transactions of a recurring series."); and wherein determining the interval difference between the dates of at least one pair of transactions comprises: determining a first interval difference value comprising a difference between the first day of the second month and the second day of the second month (see para [0029], "In accordance with some embodiments, a procedure to identify a recurring relationship may include: first, analyzing a set of transactions to identify a cadence within the set; second, predicting a future transaction date(s) based on the identified cadence; and third, determining if actual transactions can be found at the predicted future transaction date(s), or within a specific threshold number of days of the predicted future transaction date(s). This procedure may be applied over a large set of transactional data without waiting for actual future transactions to evaluate predictions of future transaction date(s). This can be accomplished by using historical data, i.e., transactions that have already occurred between a customer and a merchant. The historical data may be split into two portions, an analysis portion, and a corresponding holdout portion. The analysis portion may include transactions between a customer and a merchant to identify the cadence. While the holdout portion may include transactions between the customer and the merchant to test the prediction of the future transaction date(s). The transactions in the analysis portion may be transactions between the customer and the merchant occurring earlier in time than the transactions in the corresponding holdout portion. For example, the set of transactional data may represent transactions between the customer and the merchant occurring over a one-year period of time. The set of transactional data may be split into an analysis portion that includes transactions from the first eight months and the holdout portion may include transactional data for the last four months. Alternatively, transactions may be split into multiple analysis portions and holdout portions. Because the set of transactions are accumulated at different points in time, a unique merchant-account pair may uncover different pattern that each may help to generate a target label different from the others, splitting transactions into multiple analysis and holdout portion enables training of supervised learning model with more accuracy. For example, transactions between a customer and a merchant for a period starting Jan. 1, 2018 through Dec. 31, 2018 may be split into a first analysis portion that may include transactions from Jan. 1, 2018 through Apr. 30, 2018 and a corresponding holdout portion that may include transactions from May 1, 2018 through Jun. 30, 2018. And, a second analysis portion may include transactions from Jul. 1, 2018 through Oct. 31, 2018 and a corresponding holdout portion may include transactions from Nov. 1, 2018 through Dec. 31, 2018." and see para [0042], " In accordance with some embodiments, transactions in the analysis portion may be labeled as transactions of a recurring series when a transaction(s) in the holdout portion can be found within a threshold number of days of the predicted future transaction date(s). For example, if a future transaction date is predicted in Apr. 10, 2019, and the threshold number of days is set to +/−3 days, then if a transaction with a transaction date between Apr. 7, 2019 through Apr. 13, 2019 can be found in the holdout portion, the transactions in the analysis portion may be labeled as transactions of a recurring series. Transactions in the analysis portion may be labeled as transactions of a recurring series when the prediction of future transaction dates above a specific threshold percentage comes true. By way of a non-limiting example, if the specific threshold percentage is set to 60%, then if transactions matching two of the three predicted future transactions dates are found in the holdout portion, then transactions in the analysis portion may be labeled as transactions of a recurring series. However, if only one of the three predicted future transactions dates is found in the holdout portion, then transactions in the analysis portion may not be labeled as transactions of a recurring series." and see para [0051], "In accordance with some embodiments, input variables of a basic aggregation group may be determined based on the transactions aggregated for each unique account-merchant pair. Input variables in the basic aggregation group may include, for example, a count of the number of transactions in the transactions set (num_trxns), the number of days between the earliest and the latest transaction in the transaction set being analyzed (series_length_days), the mean of the transaction amounts (amt_mean), the standard deviation of the transaction amounts (amt_std), or the ratio of the standard deviation to the mean of the transaction amounts (amt_ratio)."); determining a second interval difference value comprising a difference between the second day of the first month and the first day of the first month (see para [0029], "In accordance with some embodiments, a procedure to identify a recurring relationship may include: first, analyzing a set of transactions to identify a cadence within the set; second, predicting a future transaction date(s) based on the identified cadence; and third, determining if actual transactions can be found at the predicted future transaction date(s), or within a specific threshold number of days of the predicted future transaction date(s). This procedure may be applied over a large set of transactional data without waiting for actual future transactions to evaluate predictions of future transaction date(s). This can be accomplished by using historical data, i.e., transactions that have already occurred between a customer and a merchant. The historical data may be split into two portions, an analysis portion, and a corresponding holdout portion. The analysis portion may include transactions between a customer and a merchant to identify the cadence. While the holdout portion may include transactions between the customer and the merchant to test the prediction of the future transaction date(s). The transactions in the analysis portion may be transactions between the customer and the merchant occurring earlier in time than the transactions in the corresponding holdout portion. For example, the set of transactional data may represent transactions between the customer and the merchant occurring over a one-year period of time. The set of transactional data may be split into an analysis portion that includes transactions from the first eight months and the holdout portion may include transactional data for the last four months. Alternatively, transactions may be split into multiple analysis portions and holdout portions. Because the set of transactions are accumulated at different points in time, a unique merchant-account pair may uncover different pattern that each may help to generate a target label different from the others, splitting transactions into multiple analysis and holdout portion enables training of supervised learning model with more accuracy. For example, transactions between a customer and a merchant for a period starting Jan. 1, 2018 through Dec. 31, 2018 may be split into a first analysis portion that may include transactions from Jan. 1, 2018 through Apr. 30, 2018 and a corresponding holdout portion that may include transactions from May 1, 2018 through Jun. 30, 2018. And, a second analysis portion may include transactions from Jul. 1, 2018 through Oct. 31, 2018 and a corresponding holdout portion may include transactions from Nov. 1, 2018 through Dec. 31, 2018." and see para [0042], " In accordance with some embodiments, transactions in the analysis portion may be labeled as transactions of a recurring series when a transaction(s) in the holdout portion can be found within a threshold number of days of the predicted future transaction date(s). For example, if a future transaction date is predicted in Apr. 10, 2019, and the threshold number of days is set to +/−3 days, then if a transaction with a transaction date between Apr. 7, 2019 through Apr. 13, 2019 can be found in the holdout portion, the transactions in the analysis portion may be labeled as transactions of a recurring series. Transactions in the analysis portion may be labeled as transactions of a recurring series when the prediction of future transaction dates above a specific threshold percentage comes true. By way of a non-limiting example, if the specific threshold percentage is set to 60%, then if transactions matching two of the three predicted future transactions dates are found in the holdout portion, then transactions in the analysis portion may be labeled as transactions of a recurring series. However, if only one of the three predicted future transactions dates is found in the holdout portion, then transactions in the analysis portion may not be labeled as transactions of a recurring series."); determining a third interval difference value comprising a difference between the first day of the month following the first month and the second day of the second month (see para [0029], "In accordance with some embodiments, a procedure to identify a recurring relationship may include: first, analyzing a set of transactions to identify a cadence within the set; second, predicting a future transaction date(s) based on the identified cadence; and third, determining if actual transactions can be found at the predicted future transaction date(s), or within a specific threshold number of days of the predicted future transaction date(s). This procedure may be applied over a large set of transactional data without waiting for actual future transactions to evaluate predictions of future transaction date(s). This can be accomplished by using historical data, i.e., transactions that have already occurred between a customer and a merchant. The historical data may be split into two portions, an analysis portion, and a corresponding holdout portion. The analysis portion may include transactions between a customer and a merchant to identify the cadence. While the holdout portion may include transactions between the customer and the merchant to test the prediction of the future transaction date(s). The transactions in the analysis portion may be transactions between the customer and the merchant occurring earlier in time than the transactions in the corresponding holdout portion. For example, the set of transactional data may represent transactions between the customer and the merchant occurring over a one-year period of time. The set of transactional data may be split into an analysis portion that includes transactions from the first eight months and the holdout portion may include transactional data for the last four months. Alternatively, transactions may be split into multiple analysis portions and holdout portions. Because the set of transactions are accumulated at different points in time, a unique merchant-account pair may uncover different pattern that each may help to generate a target label different from the others, splitting transactions into multiple analysis and holdout portion enables training of supervised learning model with more accuracy. For example, transactions between a customer and a merchant for a period starting Jan. 1, 2018 through Dec. 31, 2018 may be split into a first analysis portion that may include transactions from Jan. 1, 2018 through Apr. 30, 2018 and a corresponding holdout portion that may include transactions from May 1, 2018 through Jun. 30, 2018. And, a second analysis portion may include transactions from Jul. 1, 2018 through Oct. 31, 2018 and a corresponding holdout portion may include transactions from Nov. 1, 2018 through Dec. 31, 2018." and see para [0042], " In accordance with some embodiments, transactions in the analysis portion may be labeled as transactions of a recurring series when a transaction(s) in the holdout portion can be found within a threshold number of days of the predicted future transaction date(s). For example, if a future transaction date is predicted in Apr. 10, 2019, and the threshold number of days is set to +/−3 days, then if a transaction with a transaction date between Apr. 7, 2019 through Apr. 13, 2019 can be found in the holdout portion, the transactions in the analysis portion may be labeled as transactions of a recurring series. Transactions in the analysis portion may be labeled as transactions of a recurring series when the prediction of future transaction dates above a specific threshold percentage comes true. By way of a non-limiting example, if the specific threshold percentage is set to 60%, then if transactions matching two of the three predicted future transactions dates are found in the holdout portion, then transactions in the analysis portion may be labeled as transactions of a recurring series. However, if only one of the three predicted future transactions dates is found in the holdout portion, then transactions in the analysis portion may not be labeled as transactions of a recurring series." and see para [0032], "In accordance with some embodiments, the trained supervised learning model may not only be used for determining a cadence for predicting future transaction date(s). Rather, the supervised learning model may also determine a probability of whether a set of transactional data is one that is (or is not) likely to find a matching transaction in the future if a prediction is made based on the cadence. The cadence over which the set of transactional data may be likely recurring is based on a recurrence period, where the recurrence period may include, for example, weekly, biweekly, monthly, bimonthly, quarterly, semiannually, and/or yearly." and see para [0059], "In accordance with some embodiments, the trained supervised learning model may not only be used for determining a cadence for predicting future transaction date(s). Rather, the supervised learning model may also determine a probability of whether a set of transactional data is one that is (or is not) likely to find a matching transaction in the future if a prediction is made based on the cadence. The cadence over which the set of transactional data may be likely recurring is based on a recurrence period, where the recurrence period may include, for example, weekly, biweekly, monthly, bimonthly, quarterly, semiannually, and/or yearly."); determining a fourth interval difference value comprising difference between the first day of the first month and the second day of the month immediately preceding the second month (see para [0029], "In accordance with some embodiments, a procedure to identify a recurring relationship may include: first, analyzing a set of transactions to identify a cadence within the set; second, predicting a future transaction date(s) based on the identified cadence; and third, determining if actual transactions can be found at the predicted future transaction date(s), or within a specific threshold number of days of the predicted future transaction date(s). This procedure may be applied over a large set of transactional data without waiting for actual future transactions to evaluate predictions of future transaction date(s). This can be accomplished by using historical data, i.e., transactions that have already occurred between a customer and a merchant. The historical data may be split into two portions, an analysis portion, and a corresponding holdout portion. The analysis portion may include transactions between a customer and a merchant to identify the cadence. While the holdout portion may include transactions between the customer and the merchant to test the prediction of the future transaction date(s). The transactions in the analysis portion may be transactions between the customer and the merchant occurring earlier in time than the transactions in the corresponding holdout portion. For example, the set of transactional data may represent transactions between the customer and the merchant occurring over a one-year period of time. The set of transactional data may be split into an analysis portion that includes transactions from the first eight months and the holdout portion may include transactional data for the last four months. Alternatively, transactions may be split into multiple analysis portions and holdout portions. Because the set of transactions are accumulated at different points in time, a unique merchant-account pair may uncover different pattern that each may help to generate a target label different from the others, splitting transactions into multiple analysis and holdout portion enables training of supervised learning model with more accuracy. For example, transactions between a customer and a merchant for a period starting Jan. 1, 2018 through Dec. 31, 2018 may be split into a first analysis portion that may include transactions from Jan. 1, 2018 through Apr. 30, 2018 and a corresponding holdout portion that may include transactions from May 1, 2018 through Jun. 30, 2018. And, a second analysis portion may include transactions from Jul. 1, 2018 through Oct. 31, 2018 and a corresponding holdout portion may include transactions from Nov. 1, 2018 through Dec. 31, 2018." and see para [0042], " In accordance with some embodiments, transactions in the analysis portion may be labeled as transactions of a recurring series when a transaction(s) in the holdout portion can be found within a threshold number of days of the predicted future transaction date(s). For example, if a future transaction date is predicted in Apr. 10, 2019, and the threshold number of days is set to +/−3 days, then if a transaction with a transaction date between Apr. 7, 2019 through Apr. 13, 2019 can be found in the holdout portion, the transactions in the analysis portion may be labeled as transactions of a recurring series. Transactions in the analysis portion may be labeled as transactions of a recurring series when the prediction of future transaction dates above a specific threshold percentage comes true. By way of a non-limiting example, if the specific threshold percentage is set to 60%, then if transactions matching two of the three predicted future transactions dates are found in the holdout portion, then transactions in the analysis portion may be labeled as transactions of a recurring series. However, if only one of the three predicted future transactions dates is found in the holdout portion, then transactions in the analysis portion may not be labeled as transactions of a recurring series." and see para [0032], "In accordance with some embodiments, the trained supervised learning model may not only be used for determining a cadence for predicting future transaction date(s). Rather, the supervised learning model may also determine a probability of whether a set of transactional data is one that is (or is not) likely to find a matching transaction in the future if a prediction is made based on the cadence. The cadence over which the set of transactional data may be likely recurring is based on a recurrence period, where the recurrence period may include, for example, weekly, biweekly, monthly, bimonthly, quarterly, semiannually, and/or yearly." and see para [0059], "In accordance with some embodiments, the trained supervised learning model may not only be used for determining a cadence for predicting future transaction date(s). Rather, the supervised learning model may also determine a probability of whether a set of transactional data is one that is (or is not) likely to find a matching transaction in the future if a prediction is made based on the cadence. The cadence over which the set of transactional data may be likely recurring is based on a recurrence period, where the recurrence period may include, for example, weekly, biweekly, monthly, bimonthly, quarterly, semiannually, and/or yearly."); and determining the interval difference based on the first interval difference value, the second interval difference value, the third interval difference value and the fourth interval difference value (see para [0029], "In accordance with some embodiments, a procedure to identify a recurring relationship may include: first, analyzing a set of transactions to identify a cadence within the set; second, predicting a future transaction date(s) based on the identified cadence; and third, determining if actual transactions can be found at the predicted future transaction date(s), or within a specific threshold number of days of the predicted future transaction date(s). This procedure may be applied over a large set of transactional data without waiting for actual future transactions to evaluate predictions of future transaction date(s). This can be accomplished by using historical data, i.e., transactions that have already occurred between a customer and a merchant. The historical data may be split into two portions, an analysis portion, and a corresponding holdout portion. The analysis portion may include transactions between a customer and a merchant to identify the cadence. While the holdout portion may include transactions between the customer and the merchant to test the prediction of the future transaction date(s). The transactions in the analysis portion may be transactions between the customer and the merchant occurring earlier in time than the transactions in the corresponding holdout portion. For example, the set of transactional data may represent transactions between the customer and the merchant occurring over a one-year period of time. The set of transactional data may be split into an analysis portion that includes transactions from the first eight months and the holdout portion may include transactional data for the last four months. Alternatively, transactions may be split into multiple analysis portions and holdout portions. Because the set of transactions are accumulated at different points in time, a unique merchant-account pair may uncover different pattern that each may help to generate a target label different from the others, splitting transactions into multiple analysis and holdout portion enables training of supervised learning model with more accuracy. For example, transactions between a customer and a merchant for a period starting Jan. 1, 2018 through Dec. 31, 2018 may be split into a first analysis portion that may include transactions from Jan. 1, 2018 through Apr. 30, 2018 and a corresponding holdout portion that may include transactions from May 1, 2018 through Jun. 30, 2018. And, a second analysis portion may include transactions from Jul. 1, 2018 through Oct. 31, 2018 and a corresponding holdout portion may include transactions from Nov. 1, 2018 through Dec. 31, 2018." and see para [0042], " In accordance with some embodiments, transactions in the analysis portion may be labeled as transactions of a recurring series when a transaction(s) in the holdout portion can be found within a threshold number of days of the predicted future transaction date(s). For example, if a future transaction date is predicted in Apr. 10, 2019, and the threshold number of days is set to +/−3 days, then if a transaction with a transaction date between Apr. 7, 2019 through Apr. 13, 2019 can be found in the holdout portion, the transactions in the analysis portion may be labeled as transactions of a recurring series. Transactions in the analysis portion may be labeled as transactions of a recurring series when the prediction of future transaction dates above a specific threshold percentage comes true. By way of a non-limiting example, if the specific threshold percentage is set to 60%, then if transactions matching two of the three predicted future transactions dates are found in the holdout portion, then transactions in the analysis portion may be labeled as transactions of a recurring series. However, if only one of the three predicted future transactions dates is found in the holdout portion, then transactions in the analysis portion may not be labeled as transactions of a recurring series." and see para [0032], "In accordance with some embodiments, the trained supervised learning model may not only be used for determining a cadence for predicting future transaction date(s). Rather, the supervised learning model may also determine a probability of whether a set of transactional data is one that is (or is not) likely to find a matching transaction in the future if a prediction is made based on the cadence. The cadence over which the set of transactional data may be likely recurring is based on a recurrence period, where the recurrence period may include, for example, weekly, biweekly, monthly, bimonthly, quarterly, semiannually, and/or yearly." and see para [0059], "In accordance with some embodiments, the trained supervised learning model may not only be used for determining a cadence for predicting future transaction date(s). Rather, the supervised learning model may also determine a probability of whether a set of transactional data is one that is (or is not) likely to find a matching transaction in the future if a prediction is made based on the cadence. The cadence over which the set of transactional data may be likely recurring is based on a recurrence period, where the recurrence period may include, for example, weekly, biweekly, monthly, bimonthly, quarterly, semiannually, and/or yearly."); and generating a model of periodic transactions based on the cluster of transactions, the model including an interval related to the first transaction interval pattern, and a common model attribute based on the at least one common attribute (see para [0022]-[0023]," These input features and labels may be used to train a machine learning model to aid in identifying patterns. For example, after training, the machine learning model may be applied to other data to generate predictions based on the training provided by the input features and labels generated during the incremental time window process. The incremental time window process may also train the model to predict irregular patterns. For example, the incremental time window process may aid in detecting scenarios where recurring transactions are canceled or paused. In an embodiment, a user may be subscribed to a particular service that generates a transaction every recurrence period. For example, the recurrence period may be monthly. In some cases, the user may cancel this service and therefore cease the recurring transaction. By using the incremental time window process, the input features and labels may be generated that indicate the former presence of a recurring transaction but then also indicate that the recurrence has ended. Similarly, the time window process may identify pauses in recurrence. For example, a user may employ a lawn mowing service that will typically generate a monthly transaction. During the winter months, however, the lawn service may not be used, causing a pause in the transaction data. By using the incremental time window process, these pauses may be identified by generating multiple labels and sets of input features based on varying analysis data points. Similarly, a merchant may provide an introductory rate and include one or more transactions having a lower amount relative to future transactions. While the transactions may be recurring, the amounts may differ based on the introductory rate. The incremental time window process may identify input features and generate labels corresponding to this type of pattern based on the data points. Using this data, the machine learning model may better predict and categorize this type of recurrence in the data. Similarly, the machine learning model may predict that a recurring transaction may cease or when the termination will occur." and see para [0032], "In accordance with some embodiments, the trained supervised learning model may not only be used for determining a cadence for predicting future transaction date(s). Rather, the supervised learning model may also determine a probability of whether a set of transactional data is one that is (or is not) likely to find a matching transaction in the future if a prediction is made based on the cadence. The cadence over which the set of transactional data may be likely recurring is based on a recurrence period, where the recurrence period may include, for example, weekly, biweekly, monthly, bimonthly, quarterly, semiannually, and/or yearly." and see para [0035], " In accordance with some embodiments, during the preprocessing stage, raw transaction data from a set of transactional data may be preprocessed for merchant cleansing, which is described in detail below. The raw transaction data may be an initial input for training a model. The trained model may operate on sets of transactional data over time between individual account-merchant pairs. An account-merchant pair refers to a relationship between a customer and a particular merchant. The transactions in the sets of transactional data may be grouped or aggregated based on a set of columns specifying unique account-merchant pairs. These transaction groups may then form the basis of calculating input features including account-merchant aggregate features. Input features may also be known as input variables which are used as part of training a model.") It would have been obvious to one or ordinary skill in the art at the time of the invention that Jumper showing transactions may be split into multiple analysis portions and holdout portions shows it would be obvious that third, fourth or additional intervals could be determined in order to provide the specific desired analysis. Claims 3, 21 and 24: Further, Jumper discloses the following limitations: wherein the-weekend days are discounted from contributing to the interval difference (see para [0037], "In accordance with some embodiments, account-merchant aggregate features include basic aggregations based on count of transactions and value aggregations based on a mean and a standard deviation of transaction amounts. Other aggregations may be based on other calculated features that characterize different aspects of the magnitude and rate of a possible recurring trend based on the time pattern of transaction dates. Examples of the other aggregations are the mean and standard deviation of the time differences between each consecutive transaction date (Δt and σ.sub.Δt)." and see para [0059], " In accordance with some embodiments, delta t (Δt) variables may be determined based on the series of date differences between consecutive transactions. For example, in a series of transactions with transaction date d.sub.1, d.sub.2 , . . . d.sub.i, Δt may be calculated as Δt=[(d.sub.2−d.sub.1), (d.sub.3−d.sub.2 ), . . . (d.sub.i−d.sub.i−1)]). Other variables such as At mean (mean of the Δt series), Δt std (standard deviation of the Δt series), and the Δt ratio (the ratio of Δt std to Δt mean) may be calculated. Transactions from the beginning and end portion of the chronologically ordered transactions of the transaction series may be trimmed or discarded to reduce the influence of statistical outliers. Accordingly, when the transactions are trimmed, trimmed delta t (Δt) variables may be calculated as trimmed Δt mean (mean of the trimmed Δt series), trimmed Δt std (standard deviation of the trimmed Δt series), and the trimmed Δt ratio (the ratio of trimmed Δt std to trimmed Δt mean)." where it would be obvious to one of ordinary skill in the art that weekend dates are reflected on rate of recurring trend and trimming or discarding would be applied to weekend transactions that cannot be cleared until business days during the week) Claims 4, 22, 25: Further, Jumper discloses the following limitations: wherein determining the interval difference between the dates of at least one pair of transactions in the subset of related transactions comprises, for each pair of the at least one pair of transactions: determining a first date of a first transaction of the pair, the first date comprising a first day and a first month (see para [0019]-[0021], showing the split dates can be for specific dates and see para [0029]-[0032], [0042]-[0043], [0061]); determining a second date of a second transaction of the pair, the second date comprising a second day and a second month (see para [0019]-[0021], showing the split dates can be for specific dates and see para [0029]-[0032], [0042]-[0043], [0061], showing the transaction period can be monthly); and determining the interval difference based on the first date and the second date of the pair of transactions (see para [0019]-[0021], showing the split dates can be for specific dates and see para [0029]-[0032], [0042]-[0043], [0061], showing the transaction period can be monthly) Claims 5, 23: Further, Jumper discloses the following limitations: wherein determining the interval difference based on the first date and the second date of the pair of transactions comprises: determining a first interval difference value comprising a difference between the first day of the second month and the second day of the second month (see para [0029], [0042], [0051], where it would be obvious to one of ordinary skill in the art that where number days between are selected that one day may be selected); determining a second interval difference value comprising a difference between the second day of the first month and the first day of the first month (see para [0029], [0042], [0051], where it would be obvious to one of ordinary skill in the art that where number days between are selected that one day may be selected); and determining the interval difference based on the first interval difference value and the second interval difference value (see para [0029], "In accordance with some embodiments, a procedure to identify a recurring relationship may include: first, analyzing a set of transactions to identify a cadence within the set; second, predicting a future transaction date(s) based on the identified cadence; and third, determining if actual transactions can be found at the predicted future transaction date(s), or within a specific threshold number of days of the predicted future transaction date(s). This procedure may be applied over a large set of transactional data without waiting for actual future transactions to evaluate predictions of future transaction date(s). This can be accomplished by using historical data, i.e., transactions that have already occurred between a customer and a merchant. The historical data may be split into two portions, an analysis portion, and a corresponding holdout portion. The analysis portion may include transactions between a customer and a merchant to identify the cadence. While the holdout portion may include transactions between the customer and the merchant to test the prediction of the future transaction date(s). The transactions in the analysis portion may be transactions between the customer and the merchant occurring earlier in time than the transactions in the corresponding holdout portion. For example, the set of transactional data may represent transactions between the customer and the merchant occurring over a one-year period of time. The set of transactional data may be split into an analysis portion that includes transactions from the first eight months and the holdout portion may include transactional data for the last four months. Alternatively, transactions may be split into multiple analysis portions and holdout portions. Because the set of transactions are accumulated at different points in time, a unique merchant-account pair may uncover different pattern that each may help to generate a target label different from the others, splitting transactions into multiple analysis and holdout portion enables training of supervised learning model with more accuracy. For example, transactions between a customer and a merchant for a period starting Jan. 1, 2018 through Dec. 31, 2018 may be split into a first analysis portion that may include transactions from Jan. 1, 2018 through Apr. 30, 2018 and a corresponding holdout portion that may include transactions from May 1, 2018 through Jun. 30, 2018. And, a second analysis portion may include transactions from Jul. 1, 2018 through Oct. 31, 2018 and a corresponding holdout portion may include transactions from Nov. 1, 2018 through Dec. 31, 2018." and see para [0042], "In accordance with some embodiments, transactions in the analysis portion may be labeled as transactions of a recurring series when a transaction(s) in the holdout portion can be found within a threshold number of days of the predicted future transaction date(s). For example, if a future transaction date is predicted in Apr. 10, 2019, and the threshold number of days is set to +/−3 days, then if a transaction with a transaction date between Apr. 7, 2019 through Apr. 13, 2019 can be found in the holdout portion, the transactions in the analysis portion may be labeled as transactions of a recurring series. Transactions in the analysis portion may be labeled as transactions of a recurring series when the prediction of future transaction dates above a specific threshold percentage comes true. By way of a non-limiting example, if the specific threshold percentage is set to 60%, then if transactions matching two of the three predicted future transactions dates are found in the holdout portion, then transactions in the analysis portion may be labeled as transactions of a recurring series. However, if only one of the three predicted future transactions dates is found in the holdout portion, then transactions in the analysis portion may not be labeled as transactions of a recurring series." and see para [0051], showing input can be the number of days where it is obvious to one or ordinary skill in the art that one day can be selected) Claim 6: Further, Jumper discloses the following limitations: wherein determining the interval difference based on the first date and the second date of the pair of transactions comprises: determining a third interval difference value comprising a difference between the first day of the month following the first month and the second day of the second month; determining a fourth interval difference value comprising a difference between the first day of the first month and the second day of the month immediately preceding the second month; and determining the interval difference based on the third interval difference value and the fourth interval difference value (see para [0029], [0042], [0051], [0061], where it would be obvious to one of ordinary skill in the art that the specific types of intervals and dates such as the month preceding a second month could be selected for analysis to make specific determinations) Claim 7: Further, Jumper discloses the following limitations: wherein determining the interval difference comprises determining a minimum of the first interval difference value and the second interval difference value (see para [0025], "In some embodiments, ceasing label generation may occur with respect to a selected holdout date. For example, as an input to the incremental time window processes, a user or system may specify a particular minimum width of the holdout portion or a holdout date for testing against an analysis portion. This specified holdout portion width may be a particular amount of time and/or may be a multiple of a recurrence period. For example, a holdout portion may be specified as being at least three times the recurrence period. Specifying a holdout portion may indicate a threshold for the amount of data points desired to be tested against an analysis portion. In some embodiments, this holdout portion may be specified as a minimum amount of data points needed for testing to enable accuracy in label generation. In this manner, the specified holdout period or holdout date may cease label generation. In some embodiments, when a particular split date has exceeded and/or matched the holdout date, label generation may cease. The ceasing of label generation is further described with respect to FIG. 2.") Claim 8: Further, Jumper discloses the following limitations: wherein determining the interval difference comprises determining a minimum of the third interval difference value and the fourth interval difference value as the interval difference (see para [0025], "In some embodiments, ceasing label generation may occur with respect to a selected holdout date. For example, as an input to the incremental time window processes, a user or system may specify a particular minimum width of the holdout portion or a holdout date for testing against an analysis portion. This specified holdout portion width may be a particular amount of time and/or may be a multiple of a recurrence period. For example, a holdout portion may be specified as being at least three times the recurrence period. Specifying a holdout portion may indicate a threshold for the amount of data points desired to be tested against an analysis portion. In some embodiments, this holdout portion may be specified as a minimum amount of data points needed for testing to enable accuracy in label generation. In this manner, the specified holdout period or holdout date may cease label generation. In some embodiments, when a particular split date has exceeded and/or matched the holdout date, label generation may cease. The ceasing of label generation is further described with respect to FIG. 2.") Claim 13: Further, Jumper discloses the following limitations: performing a viability check on the cluster (see para [0026],"Defining ceasing points for label generation may aid in efficiently generating labels. Further, the ceasing points may aid with accuracy when training a model. For example, by setting a holdout period or holdout date as a threshold, a system may rely on generated labels that have sufficient data points for testing. Split dates that generate labels having too few data points in the holdout portion may be discarded as being potentially inaccurate or untrustworthy. In this manner, the incremental time window process also considers when to cease the process and avoid unnecessary processing steps." and see para [0101], "In accordance with some embodiments, the account-merchant analysis module 121 may discard certain transactions to avoid skewing the results of the analysis. For example, the account-merchant analysis module may discard transactions having transaction amounts within 5% of the highest and lowest transaction amounts before aggregating the transactions. As described above, the purpose for this trimmed calculation is to give more robustness against messy behavior such as missed/late payments, or stray out-of-time transactions not associated with the steady recurrence. Based on analysis of the trimmed transaction, the account-merchant analysis module 121 may generate the mean of the trimmed transaction amounts (trimmed_amt_mean), the standard deviation of the trimmed transaction amounts (trimmed_amt_std), and the ratio of the standard deviation to the mean of the trimmed transaction amounts (trimmed_amt_ratio)." and see para [0143]-[0144]); and in response to the cluster passing the viability check, generating the model of periodic transactions (see para [0026],"Defining ceasing points for label generation may aid in efficiently generating labels. Further, the ceasing points may aid with accuracy when training a model. For example, by setting a holdout period or holdout date as a threshold, a system may rely on generated labels that have sufficient data points for testing. Split dates that generate labels having too few data points in the holdout portion may be discarded as being potentially inaccurate or untrustworthy. In this manner, the incremental time window process also considers when to cease the process and avoid unnecessary processing steps." and see para [0101], "In accordance with some embodiments, the account-merchant analysis module 121 may discard certain transactions to avoid skewing the results of the analysis. For example, the account-merchant analysis module may discard transactions having transaction amounts within 5% of the highest and lowest transaction amounts before aggregating the transactions. As described above, the purpose for this trimmed calculation is to give more robustness against messy behavior such as missed/late payments, or stray out-of-time transactions not associated with the steady recurrence. Based on analysis of the trimmed transaction, the account-merchant analysis module 121 may generate the mean of the trimmed transaction amounts (trimmed_amt_mean), the standard deviation of the trimmed transaction amounts (trimmed_amt_std), and the ratio of the standard deviation to the mean of the trimmed transaction amounts (trimmed_amt_ratio)." and see para [0143]-[0144]) Claim 14: Further, Jumper discloses the following limitations: marking the transactions of the cluster as used (see para [0041], where storing historical transactions in a database can be considered a type of marking of scuh transactions that have been used and computed) Claim 17: Further, Jumper discloses the following limitations: using the model of periodic transactions to predict at least one future recurring transaction having an interval related to the second transaction interval pattern and a common attribute based on the at least one common attribute (see para [0028], "In accordance with some embodiments, transactions between a customer and a merchant, between two entities, or specific to a merchant will allow for predictions to be made regarding any future transaction(s) occurring on the next date(s) matching the identified cadence. Accordingly, a merchant's relationship with a customer (or customers) may be identified as recurring when a set of transactions that can be analyzed to identify a cadence, and future transaction(s) may be found occurring at the identified cadence. Based on the disclosure in this application, recurring relationship can be identified between any two entities, for example, an employer and employees, a contractor and subcontractors, etc. The disclosure does not limit its application to the customers and merchants only." and see para [0048], "In accordance with some embodiments, the account-merchant input variables may be determined over two different levels of transaction aggregation. The first level of transaction aggregation may be over the set of transactions in the unique account and merchant pairs. The second level of transaction aggregation may be an aggregation of the results from the first aggregation, e.g., further aggregation at the merchant level over all accounts. In accordance with some embodiments, further aggregation at the merchant over all accounts may be based on common features among various customers, such as, geographic region, language, ethnicity, etc. Each merchant may be uniquely identified based on any combination of merchant's name; merchant's category code; merchant's postal code; merchant's country, state, and city; etc. Similarly, each customer may be uniquely identified based on the customer's account identifier; customer's first name; customer's last name; etc. Accordingly, any combination of fields uniquely identifying a customer and merchant may form a key to aggregate transactions for a unique account-merchant pair." and see para [0074], "The closest period variable may be subsequently used as the basis for making future transaction predictions in the label generation process. The closest period variable may also be used to determine which phase variables will be used as an input in the final model. For example, if the Euclidean distance between the point representing a monthly strength variable, a monthly coverage variable, and a monthly redundancy variable from the ideal point (1,1,0) is the least, then the closest period's phase variables the monthly strength variable, the monthly coverage variable, and the monthly redundancy variable may be copied to new variables such as a closest strength variable, a closest coverage variable, and a closest redundancy variable. Further, the closest strength variable, the closest coverage variable, and the closest redundancy variable may be used as an input into training the model. Additionally, a time-length of the set of transactions in multiples of the period may be calculated based on the length in days of the set transactions and number of days of the period of the phase space. Thus, the closest period variable allows distinct decision boundaries on a per-period basis.") Claim 18: Further, Jumper discloses the following limitations: wherein performing a viability check on the cluster comprises checking one or more of: a recency of the latest transaction in the cluster; an extent to which the individual transaction intervals of the cluster match a determined pattern; and a number of unique transactions in the cluster (see para [0035], "In accordance with some embodiments, during the preprocessing stage, raw transaction data from a set of transactional data may be preprocessed for merchant cleansing, which is described in detail below. The raw transaction data may be an initial input for training a model. The trained model may operate on sets of transactional data over time between individual account-merchant pairs. An account-merchant pair refers to a relationship between a customer and a particular merchant. The transactions in the sets of transactional data may be grouped or aggregated based on a set of columns specifying unique account-merchant pairs. These transaction groups may then form the basis of calculating input features including account-merchant aggregate features. Input features may also be known as input variables which are used as part of training a model." and see para [0048]-[0051], [0095]) Allowable Subject Matter Claims 9 and 16 would be allowable if rewritten to overcome the rejection(s) under 35 U.S.C. 101, set forth in this Office action and to include all of the limitations of the base claim and any intervening claims. Conclusion The prior art made of record and not relied upon is considered pertinent to applicant's disclosure. Sharp et al. (US 2016/0180380 A1), a system for contextually targeted advertising using a regular periodicity of information derived from a user's messaging behavior that enables the prediction of future purchases based on a periodicity analysis of a user's purchase history, whereby advertisements can be targeted to the user based on the user's determined purchase habits Merg et al. (DE 112016005099 T5), a system for clustering based on conclusions that determines a particular computer-readable vehicle repair job (RA) (eg, including first and second RA sections) corresponds to an existing cluster of RAs because the particular RA contains an RA datum that is refers to a particular vehicle symptom "How to identify recurring patterns in this set of transactional data", a webpage showing how find recurrent transactions by mapping transactions per merchant in time series Any inquiry concerning this communication or earlier communications from the examiner should be directed to SUJAY KONERU whose telephone number is 571-270-3409. The examiner can normally be reached on Monday-Friday, 9 am to 5 pm. If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Patricia Munson can be reached on 571- 270-5396. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300. Information regarding the status of an application may be obtained from the Patent Application Information Retrieval (PAIR) system. Status information for published applications may be obtained from either Private PAIR or Public PAIR. Status information for unpublished applications is available through Private PAIR only. For more information about the PAIR system, see http://pair-direct.uspto.gov. Should you have questions on access to the Private PAIR system, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative or access to the automated information system, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000. /SUJAY KONERU/ Primary Examiner, Art Unit 3624
Read full office action

Prosecution Timeline

Nov 26, 2024
Application Filed
Mar 23, 2026
Non-Final Rejection — §101, §103 (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12596979
PERSONALIZED RISK AND REWARD CRITERIA FOR WORKFORCE MANAGEMENT
2y 5m to grant Granted Apr 07, 2026
Patent 12596972
CONVERSATION-BASED MESSAGING METHOD AND SYSTEM
2y 5m to grant Granted Apr 07, 2026
Patent 12585868
SYSTEM TO TRACE CHANGES IN A CONFIGURATION OF A SERVICE ORDER CODE FOR SERVICE FEATURES OF A TELECOMMUNICATIONS NETWORK
2y 5m to grant Granted Mar 24, 2026
Patent 12579553
REUSABLE DATA SCIENCE MODEL ARCHITECTURES FOR RETAIL MERCHANDISING
2y 5m to grant Granted Mar 17, 2026
Patent 12572990
METHODS AND IoT SYSTEMS FOR MONITORING WELDING OF SMART GAS PIPELINE BASED ON GOVERNMENT SUPERVISION
2y 5m to grant Granted Mar 10, 2026
Study what changed to get past this examiner. Based on 5 most recent grants.

AI Strategy Recommendation

Get an AI-powered prosecution strategy using examiner precedents, rejection analysis, and claim mapping.
Powered by AI — typically takes 5-10 seconds

Prosecution Projections

1-2
Expected OA Rounds
58%
Grant Probability
95%
With Interview (+37.0%)
3y 2m
Median Time to Grant
Low
PTA Risk
Based on 722 resolved cases by this examiner. Grant probability derived from career allow rate.

Sign in with your work email

Enter your email to receive a magic link. No password needed.

Personal email addresses (Gmail, Yahoo, etc.) are not accepted.

Free tier: 3 strategy analyses per month