In one embodiment, tax preparation software that runs on a computing device operates on a construct in which tax rules and the calculations based thereon are established in declarative data-structures, namely, completeness graph(s) and tax calculation graph(s). Use of these declarative data-structures permits the user interface to be loosely connected or even divorced from the tax calculation engine and the data used in the tax calculations. For example, the user interface can be designed to minimize the number interview questions that are asked to the user during the interview gathering process. The user interface can also be designed to be tailored to the particular taxpayer utilizing the tax preparation software. For example, past or prior year tax data may be used by the tax preparation software to selectively present certain tax topics that are relevant to the tax payer. In a related aspect, the tax preparation software may also make educated guesses or conjecture about relevant tax topics based on one or more characteristics that pertain to the taxpayer. These may include, by way of example, occupation, marital status, geographic location, filing status, and the like.
In one embodiment, at least some of the tax data pertaining to a user of the tax preparation software is automatically acquired by a data capture utility executed by the computing device. The data capture utility connects to one or more remotely located data sources and captures and transfers at least some tax data to a data store configured to store user-specific tax data. The data capture utility is able to automatically gather and collect tax related information that is needed by the tax preparation software to compute a tax liability or refund and ultimately complete a fileable tax return. The data capture utility thus significantly reduces the amount of manually entered tax data that is required to be input into the tax preparation software. The data capture utility speeds the process of preparing a tax return by automatically collecting and then storing in a data store or repository tax data that is used by the tax preparation software.
In one aspect of the invention, the data capture utility selectively targets a subset of the total universe of remotely located data sources. For example, the data capture utility may select the top several remotely located data sources that are statistically relevant to one or more characteristics of the taxpayer. For example, statistical data of other taxpayers sharing a common characteristic may indicate that certain remotely located data sources are likely to contain relevant information. For example, if a taxpayer lists his or her occupation as a truck driver, there is a statistically significant likelihood that the taxpayer may operate the truck as an owner operator. The tax preparation software is able to then automatically select, for example, Department of Motor Vehicle database records (or other equivalent agency) to obtain information on the make/model, and purchase date of the vehicle.
For tax data that is not automatically collected by the data capture utility, a user interface manager associated with the tax preparation software prompts the user for entry of additional tax data. The additional tax data may include any remaining tax data items that were not already stored in the data store by the data capture utility. The additional tax data may also be other tax data that is associated with or typically entered by other different taxpayers sharing one or more characteristics with the user of the tax preparation software program. In another aspect, tax data may be estimated by the use of an estimation module that is executed by the tax preparation software. Estimated values may be arrived at using as inputs data obtained by the data capture utility.
Tax calculations can be dynamically calculated based on tax-related data that is collected from the data capture utility, input from a user, or estimated by the tax preparation software. A smart tax logic agent running on a set of rules can review current run time data and evaluate missing tax data necessary to prepare and complete a tax return. The tax logic agent proposes suggested questions (or declarative statements) to be asked to a user to fill in missing blanks. This process can be continued until completeness of all tax topics has occurred. A completed tax return (e.g., a printed tax return or an electronic tax return) can then be prepared and filed with respect to the relevant taxing jurisdictions.
In another embodiment, a computer-implemented method for capturing tax-related data for use with tax preparation software is described. The method includes a computing device connecting to one or more remotely located data sources and executing a data capture utility, the data capture utility capturing and transferring at least some tax data pertaining to the user to a data store associated with the tax preparation software, the data store configured to store user-specific tax data therein. The computing device executes a user interface manager associated with the tax preparation software to prompt the user for entry of user-specific tax data not already stored in the data store by the data capture utility. The computing device executes a tax calculation engine of the tax preparation software configured to read the user-specific tax data obtained from the one or more remotely located data sources and the interface manager and compute an intermediate or final tax liability or refund amount.
In one embodiment, the one or more remotely located data sources may comprise a data source associated with a financial management program. Examples of financial management software includes, for example products or systems that are available from Intuit Inc. (e.g., MINT, QUICKEN, QUICKBOOKS and FINANCEWORKS). Financial management software allow consumers or business owners to combine, process, and categorize financial data and present numerical data in various forms or summaries such as balances or values, charts, graphs and reports. MINT, QUICKEN, QUICKBOOKS and FINANCEWORKS are registered trademarks of Intuit Inc., Mountain View, Calif.
In another embodiment, the one or more remotely located data sources may include user accounts for online financial service account(s) or online accessible social media accounts. The one or more remotely located data sources may also include employers, credit reporting bureaus, government agencies (e.g., court records, real property databases, motor vehicle databases, medical databases, or taxing authorities).
In one aspect, the data capture utility may include a screen scraping utility or a web crawler program. The data capture utility may ask the user for his or her credentials to a financial management software program that is, in turn, liked to various financial services accounts. The data capture utility may also ask the user for his or her credentials to financial management software accounts, online financial service accounts, online accessible social media accounts, credit bureaus, government agencies, or third party data provider (e.g., LEXIS/NEXIS). Alternatively or in addition to, the data capture utility may attempt to contact one or more remotely data sources without using any user provided credentials. For example, there may be some publicly available information in various online resources that may contain personal or tax data that can be captured and transferred by the data capture utility to the data store. The data capture utility may also connect to one or more locally located data sources. Such locally located data sources may include files or data associated with financial management software that is running locally on a computing device. Locally locate data sources may also include locally stored documents or even images. For example, PDF or image files of tax forms W-2s, 1099s, prior year tax returns, and the like may be interrogated by the data capture utility with relevant personal financial information extracted therefrom. The data capture utility may perform optical character recognition (OCR) on the data prior to transfer to the data store.
In one aspect of the invention, the computer-implemented method first utilizes tax preparation software to identify one or more tax topics that may be relevant to the taxpayer utilizing the tax preparation software. The tax topic may be identified based on prior tax return history (e.g., frequently used tax topics) that is particularized for the taxpayer. Alternatively, the one or more tax topics may be identified from other tax return data from different taxpayers. These topics may be extracted based on one or more shared characteristics (or combination of characteristics) between the taxpayer utilizing the tax preparation software and characteristics of taxpayers having stored tax return data. Tax topics may also be identified based on transactions that are entered in a financial management program (running either locally or remotely) or transactions contained in financial related online resources (e.g., bank or brokerage accounts).
Once the need information is contained within the data store, the computing device may execute a services engine that is configured to prepare a tax return for filing with relevant tax authorities. The tax return may be an electronic tax return or it may be a conventional paper tax return that is printed out by the user.
In another embodiment, a computer-implemented system for capturing user-related tax data for use with tax preparation software is described. The system includes a computing device operably coupled to a data store configured to store user-specific tax data therein. In one aspect, the tax preparation software may first look for any prior tax return data. This prior return data may be stored locally or remotely. By analyzing prior tax return data, common or recurring tax topics can be identified and flagged by the tax preparation software. For example, the software may flag that the taxpayer files Schedule D (capital gains and losses) every year. This means that the taxpayer will either be asked questions (or presented with a declarative statement) on this topic or, alternatively, one or more remote databases will automatically be searched to obtain information needed for Schedule D. The user interface manager is executed and may identify, for example, this flag and present to the user on or more questions regarding investments.
Alternatively, or in addition to, a data capture utility is executed by the computing device and configured to connect to one or more remotely located data sources, the data capture utility capturing and transferring at least some tax data pertaining to the user to the data store (e.g., in this case investment information regarding, for example, the sale of securities). The user interface manager is executed by a computing device that prompts the user for entry of user-specific tax data not already stored in the data store by the data capture utility or prompts the user to confirm certain data that was found automatically.
The system includes a tax calculation engine executed by the computing device and configured to read the user-specific tax data obtained from the one or more remotely located data sources and the interface manager and compute an intermediate or final tax liability or refund amount. The computing device may include a local device that has its own user interface or the computing device may be a separate, remotely located computing device. In the later example, the tax preparation software may be run, at least partially, in a cloud environment or software as service model where the user interface is local but the computational and data capture and gathering functionality is run on another computing device.
In another embodiment, a computer-implemented method for gathering user-related tax data for use with tax preparation software includes a computing device executing a data capture utility configured to connect to one or more remotely located data sources that relate to a particular topic that has been identified by the tax preparation software, wherein the data capture utility captures user-specific tax data from the one or more remotely located data sources and stores the captured data in a data store. The one or more remotely located data sources may optionally include a mix of paid and non-paid data sources. Alternatively, the one or more remotely located data sources may include non-paid data sources, e.g., financial and social media accounts liked to a specific user. A user interface manager may be executed by the tax preparation software that presents to the user a user interface to confirm data that has been obtained from the one or more remotely located data sources. Alternatively, the user interface manager may display one or more interview screens to the user to supplement or fill in the blanks that was not already obtained by the data capture utility.
The computing device executes a tax calculation engine of the tax preparation software configured to read the user-specific tax data obtained from the one or more remotely located data sources and the interface manager and compute an intermediate or final tax liability or refund amount.
In another embodiment, a computer-implemented method for gathering user-related tax data for use with tax preparation software includes a computing device executing a user interface manager that asks the user of the tax preparation software one or more preliminary questions that establish a tax characteristic profile. This tax characteristic profile of the user is then compared with a database containing tax characteristic profiles of other users. The tax characteristic profile correlates particular tax topics for a particular user. For example, tax characteristic profile “A” may indicate that the user typically is self-employed and files a Schedule C and deducts an automobile and a home office. Based on this profile, the user interface manager may select interview topics from these high probability topics. In this case, the user interface manager may ask the user whether he or she is self-employed and additional details regarding their business. Likewise the user interface manager may further ask about the possible home office deduction and automobile deduction.
In one aspect, the computer executes a data capture utility configured to connect to one or more remotely located data sources that relate to the particular topic that has been identified tax characteristic profile, wherein the data capture utility captures user-specific tax data from the one or more remotely located data sources and stores the captured data in a data store. This data may be obtained instead of manually entered data or this data may be obtained to confirm and/or verify data.
Tax preparation is a time-consuming and laborious process. It is estimated that individuals and businesses spend around 7 billion hours per year complying with the filing requirements promulgated by the Internal Revenue Service in the United States. Tax preparation software has been commercially available to assist taxpayers in preparing their tax returns. Tax preparation software is typically run on a computing device such as a computer, laptop, tablet, mobile computing device such as a Smartphone, or remotely on another computer and accessed via a network.
Traditionally, a user has walked through a set of rigidly defined user interface interview screens that selectively ask questions that are relevant to a particular tax topic or data field needed to calculate a taxpayer's tax liability.
In contrast to the rigidly defined user interface screens used in prior iterations of tax preparation software, the current methods and systems provide tax preparation software 100 that runs on computing devices 102 that operates on a construct or platform in which tax rules and the calculations based thereon are established in declarative data-structures, namely, one or more completeness graph(s) 12 and one or more tax calculation graph(s) 14.
Completeness graphs 12 and tax calculation graphs 14 are data structures in the form of graphs having nodes and interconnecting arcs in which arcs are directed from one node to another. Completion graphs 12 identify when all conditions have been satisfied to complete a particular tax topic or, collectively, produce a fileable tax return. The tax calculation graph 14 semantically describes data depending tax operations that perform a tax calculation or operation in accordance with tax code or tax rules. Examples of these data structures may be found in U.S. patent application Ser. Nos. 14/097,057 and 14/448,886, both of which are incorporated by reference as if set forth fully herein.
Use of these data-structures permits the user experience to be loosely connected or even divorced from the tax calculation engine and the data used in the tax calculations. Tax calculations are dynamically calculated based in tax data derived from sourced data that is obtained from a data capture utility as described herein, estimates, user input, or a combination of the above. A smart tax logic agent running on a set of rules can review current run time data and evaluate missing data fields and propose suggested questions to be asked to a user to fill in missing blanks. This process can be continued until completeness of all tax topics has occurred. An electronic return can then be prepared and filed with respect to the relevant taxing jurisdictions.
According to one aspect of the invention, a computer-implemented for capturing user-related tax data for use with tax preparation software is provided. The computing device connects to one or more remotely located data sources and executes a data capture utility that captures and transfers at least some tax data to a data store configured to store user-specific tax data. The data capture utility is able to automatically gather and collect tax-related information that is needed by the tax preparation software to compute a tax liability or refund and ultimately complete a fileable tax return. The data capture utility thus significantly reduces the amount of manually entered tax data that is required to be input into the tax preparation software. The data capture utility speeds the process of preparing a tax return by automatically collecting and then storing in a data store or repository tax data that is used by the tax preparation software.
Note that in
The completeness graph 12 and the tax calculation graph 14 represent data structures that can be constructed in the form of tree.
As one can imagine given the complexities and nuances of the tax code, many tax topics may contain completeness graphs 12 that have many nodes with a large number of pathways to completion. However, by many branches or lines within the completeness graph 12 can be ignored, for example, when certain questions internal to the completeness graph 12 are answered that logically eliminate other nodes 20 and arcs 22 within the completeness graph 12. The dependent logic expressed by the completeness graph 12 allows one to minimize subsequent questions based on answers given to prior questions. This allows a minimum question set that can be generated that can be presented to a user as explained herein.
As explained herein, the directed graph or completion graph 12 that is illustrated in
Referring to
After in initial question has been presented and rows are eliminated as a result of the selection, next, a collection of candidate questions from the remaining available rows 32a and 32b is determined. From this universe of candidate questions from the remaining rows, a candidate question is selected. In this case, the candidate questions are questions QC and QG in columns 34c, 34g, respectively. One of these questions is selected and the process repeats until either the goal 34h is reached or there is an empty candidate list.
Additional third party information sources such as credit bureaus, government databases, and the like can also be used by the tax preparation software 100 to obtain information that can then be populated in to respective leaf nodes 24. In still other embodiments, values for leaf nodes 24 may be derived or otherwise calculated. For example, while the number of dependents may be manually entered by a taxpayer, those dependent may not all be “qualifying” dependents for tax purposes. In such instances, the actual number of “qualified” dependents may be derived or calculated by the tax preparation software 100. In some instances, the data capture utility 43 uses object character recognition (OCR) techniques or the like to extract useful information from files or documents. For example, tax documents (e.g., W-2s or 1099s) may be imaged or scanned with relevant data being automatically extracted. In other embodiments, prior tax returns may be used by the tax preparation software 100 to extract information (e.g., name, potential dependents, address, and social security number) which can then be used to populate the leaf nodes 24. In still other embodiments, values for leaf nodes 24 may be estimated as described herein. Leaf nodes 24 may also be populated with user inputs. That is to say the user taxpayer will enter this information from a user interface (described in more detail below). Of course, a main goal of the invention described herein is to minimize the amount of manual entry required on behalf of a user. Instead, it is preferable to automatically capture this relevant information by using the data capture utility 43 and manual input of information
Still other internal nodes 26 semantically represent a tax concept and may be calculated using a function 28. Some or all of these internal nodes 26 may be labelled as “tax concepts.” Interconnected nodes 26 containing tax concepts may be connected via “gist” functions that can be tagged and later be used or called upon to explain to the user the reasoning behind why a particular result was calculated or determined by the tax preparation software 100 program as explained in more detail below. For example, the internal nodes 26 and associated functions 28 may be used to generate explanations to the user regarding the reasons behind certain tax calculations. U.S. patent application Ser. No. 14/530,159, which is incorporated by reference herein, explains how such explanations are automatically generated. Gists are well-defined functions to capture domain specific patterns and semantic abstractions used in tax calculations. Gists can be de-coupled from a specific narrow definition and instead be associated with one or more explanation. Examples of common “gists” found in tax legislation/rules include the concepts of “caps” or “exceptions” that are found in various portions of the tax code. The function 28 may include any number of mathematical or other operations. Examples of functions 28 include summation, subtraction, multiplication, division, and look-ups of tables or values from a database 30 or library as is illustrated in
The schema 44 may be a modified version of the MeF schema used by the IRS. For example, the schema 44 may be an extended or expanded version of the MeF model established by government authorities. The schema 44 may have extra fields available for flags (explained herein) that can be utilized to optimize suggested questions that can be presented to user as part of an interview process. While the particular MeF schema 44 is discussed herein the invention is not so limited. There may be many different schemas 44 depending on the different tax jurisdiction. For example, Country A may have a tax schema 44 that varies from Country B. Different regions or states within a single country may even have different schemas 44. The systems and methods described herein are not limited to a particular schema 44 implementation. The schema 44 may contain all the data fields required to prepare and file a tax return with a government taxing authority. This may include, for example, all fields required for any tax forms, schedules, and the like. Data may include text, numbers, a response to a Boolean expression (e.g., True/False or Yes/No), and flags. As explained in more detail, the data store 42 may, at any one time, have a particular instance 46 of the MeF schema 44 stored therein at any particular time. For example,
As seen in
The data capture utility 43 may be executed contemporaneously with the execution and use of the tax preparation software 100. Alternatively, the data capture utility 43 may be run prior to actual use of the tax preparation software 100 for tax return preparation. In the later approach, relevant data may be captured and stored in the data store 42 for later use. For example, a user may invoke or execute the data capture utility 43 on February 15th of a tax year and then later work on preparing his or her taxes closer to the deadline of April 15th. The data capture utility 43 may be run again to capture any relevant data that was not already captured when run earlier (e.g., a tax form that was not available is now available for use).
The data capture utility 43 may operate in a number of different modes to gain access to different user accounts. In one mode, a user will provide his or her authentication information (e.g., login ID and password) to the data capture utility 43 for each different online account as seen in
There are a number of different types of data sources 48a-48g that may be accessed by the data capture utility 43. For example, a financial data source 48a may include an account held with a financial service provider such as a bank, credit union, brokerage, investment advisor, or the like may be accessed by the data capture utility 43. A financial data source 48a may also include a financial management software program, application, or service such as MINT, QUICKEN, QUICKBOOKS, and the like. Such accounts typically provide online access to account information via a website though the invention is not limited to website access. The data capture utility 43 may access data via the website or through another Application Programming Interface (API). Most financial service providers such as banks, credit unions, brokerages, investment advisors typically provide online access for their customers to view holdings, balances, transactions. Financial service providers also typically provide year-end tax documents to their customers such as, for instance, 1099-INT (interest income), 1099-DIV (dividend income), 1099-B (brokerage proceeds), 1098 (mortgage interest) forms. The data contained on these tax forms may be captured and transferred electronically to the data store 42 by the data capture utility.
Another example of an online resource that can be accessed by the data capture utility 43 includes social media data sources 48b. For example, many taxpayers may have social media or similar accounts. These include, by way of illustration and not limitation, FACEBOOK, LINKED-IN, TWITTER, and the like. User's may post or store personal information on these properties that may have tax implications. For example, a user's LINKED-IN account may indicate that he or she is married and has three children. The data capture utility 43 may capture this information and write to the data store 42 information regarding the family status of the particular user. For example, the data store 42 may be written with married, three dependents based on the information gathered by the data capture utility 43.
In still another example, a search of a user's social medial accounts may indicate that a person changed jobs during a tax year. Likewise, a posting on FACEBOOK about a new home may suggest that a person has purchased a home, moved to a new location, changed jobs; all of which may have possible tax ramifications. The identification of multiple jobs or residences during a tax year may be flagged by the data capture utility 43 or by the data store 42 after the information is transferred therein. This flagging may be used to drive or shape the interview process described herein. For instance, using the example above, a person may be asked a question whether or not she changed jobs during the year (e.g., “It looks like you changed jobs during the past year, is this correct?”). Additional follow-up questions can then be presented to the user such as asking for multiple W-2 forms for each job held during the year. Likewise, for the information that indicates that a person purchased a new home may prompt questions by the interface manager 82 that are directed to the user. For example, if the new residence was purchased, there may be tax deductible expenses such as loan origination points, moving expenses, and the like that may be deductible. By finding this personal financial information, the data capture utility 43 is able to more efficiently drive the remaining interview process to focus on relevant tax topics that are germane to events that occurred during the particular tax year of interest.
Still referring to
Another example of a data source 48 includes may include an employer data source 48e as illustrated in
Another example of a data source 48 may include third party data sources 48f that collect, aggregate or store data that pertain to a user (e.g., LEXIS/NEXIS). For example, people searching services are currently available to find the location or residence address of persons. Likewise, commercial databases are available for asset searches for particular individuals. These third party data sources 48f typically require payment and may not need permission from the user as the information is obtained from various publicly available sources. In one aspect of the invention, the data capture utility 43 may submit a payment in order to access and collect this information. Payment may be made by the user of the tax preparation software 100. Alternatively, payment may be made by another party such as the provider or seller of the tax preparation software 100. For example, some users may be particularly valued users of the products and services of the provider of the tax preparation software 100 (e.g., these users utilize a variety of products and services or may be likely to do so in the future). For such users, payment may be made to the providers of the third party data sources 48f on behalf of the user so that the user may not incur these expenses directly. Of course, this is just one example and various payment arrangements could be made to facilitate the capture and transfer of relevant data to the data store 42 so that manual entry of data is minimized and/or avoided entirely.
In another aspect of the invention, the third party data source 48f may include a free source of information. For example, many webpages or other Internet accessible content is indexed by various search engines such as GOOGLE, YAHOO, and BING. User-related tax data may be obtained from the data capture utility 43 searching one or more of these third party data sources 48f.
Another example of a data source 48 is a prior year tax return 48g. A prior year tax return that is stored electronically as prior year tax return data 48g can be searched and data is copied and transferred to the data store 42. The prior year tax return may be in a proprietary format (e.g., .txf, .pdf) or an open source format. The prior year tax return may also be in a paper or hardcopy format that can be scanned or imaged whereby data is extracted using, for example, OCR and transferred to the data store 42. In this sense the tax return may be considered user input 48h as described below. In another embodiment, prior year tax return data 48g may be obtained by accessing a government database (e.g., IRS records). For example, the IRS allows one to obtain transcripts of past tax returns in either an online or paper format. The data capture utility 43 can, for example, be provided with the user ID whereby this information is captured automatically. Alternatively, a paper copy may be sent to the taxpayer and an image is taken of the same, subject to OCR, with the relevant data fields captured and transferred to the data store 42.
While a main priority or goal of the invention is to avoid manual entry of tax related data into the tax preparation software 100, there will likely be some gapes or holes that will need to be filled by the manual entry of data. As seen in
User input 48h may also include some form of automatic data gathering. For example, a user may scan or take a photographic image of a tax document (e.g., W-2 or 1099) that is then processed by the tax preparation software 100 to extract relevant data fields that are then automatically transferred and stored within the data store 42. OCR techniques along with pre-stored templates of tax reporting forms may be called upon to extract relevant data from the scanned or photographic images whereupon the data is then transferred to the data store 42.
Still referring to
Still referring to
As seen in
The following pseudo code generally expresses how a rule engine 64 functions utilizing a fact cache based on the runtime canonical data 62 or the instantiated representation of the canonical tax schema 46 at runtime and generating non-binding suggestions 66 provided as an input a UI control 80. As described in U.S. application Ser. No. 14/097,057 previously incorporated herein by reference, data such as required inputs can be stored to a fact cache so that the needed inputs can be recalled at a later time, and to determine what is already known about variables, factors or requirements of various rules:
Rule engine (64)/Tax Logic Agent (TLA) (60)
// initialization process
Load_Tax_Knowledge_Base;
Create_Fact_Cache; While (new_data_from_application)
corresponding conditions
The TLA 60 may also receive or otherwise incorporate information from a statistical/life knowledge module 70. The statistical/life knowledge module 70 contains statistical or probabilistic data related to the taxpayer. For example, statistical/life knowledge module 70 may indicate that taxpayers residing within a particular zip code are more likely to be homeowners than renters. The TLA 60 may use this knowledge to weight particular topics or questions related to these topics. For example, in the example given above, questions about home mortgage interest may be promoted or otherwise given a higher weight. The statistical knowledge may apply in other ways as well. For example, tax forms often require a taxpayer to list his or her profession. These professions may be associated with transactions that may affect tax liability. For instance, a taxpayer may list his or her occupation as “teacher.” The statistic/life knowledge module 70 may contain data that shows that a large percentage of teachers have retirement accounts and in particular 403(b) retirement accounts. This information may then be used by the TLA 60 when generating its suggestions 66. For example, rather than asking generically about retirement accounts, the suggestion 66 can be tailored directly to a question about 403(b) retirement accounts.
The data that is contained within the statistic/life knowledge module 70 may be obtained by analyzing aggregate tax data of a large body of taxpayers. For example, entities having access to tax filings may be able to mine their own proprietary data to establish connections and links between various taxpayer characteristics and tax topics. This information may be contained in a database or other repository that is accessed by the statistic/life knowledge module 70. This information may be periodically refreshed or updated to reflect the most up-to-date relationships. Generally, the data contained in the statistic/life knowledge module 70 is not specific to a particular tax payer but is rather generalized to characteristics shared across a number of tax payers although in other embodiments, the data may be more specific to an individual taxpayer.
Still referring to
The user interface manager 82, as explained previously, receives non-binding suggestions from the TLA 60. The non-binding suggestions may include a single question or multiple questions that are suggested to be displayed to the taxpayer via the user interface presentation 84. The user interface manager 82, in one aspect of the invention, contains a suggestion resolution element 88, is responsible for resolving of how to respond to the incoming non-binding suggestions 66. For this purpose, the suggestion resolution element 88 may be programmed or configured internally. Alternatively, the suggestion resolution element 88 may access external interaction configuration files. Additional details regarding configuration files and their use may be found in U.S. patent application Ser. No. 14/206,834, which is incorporated by reference herein.
Configuration files specify whether, when and/or how non-binding suggestions are processed. For example, a configuration file may specify a particular priority or sequence of processing non-binding suggestions 66 such as now or immediate, in the current user interface presentation 84 (e.g., interview screen), in the next user interface presentation 84, in a subsequent user interface presentation 84, in a random sequence (e.g., as determined by a random number or sequence generator). As another example, this may involve classifying non-binding suggestions as being ignored. A configuration file may also specify content (e.g., text) of the user interface presentation 84 that is to be generated based at least in part upon a non-binding suggestion 66.
A user interface presentation 84 may be pre-programmed interview screens that can be selected and provided to the generator element 85 for providing the resulting user interface presentation 84 or content or sequence of user interface presentations 84 to the user. User interface presentations 84 may also include interview screen templates, which are blank or partially completed interview screens that can be utilized by the generation element 85 to construct a final user interface presentation 84 on-the-fly during runtime.
As seen in
Still referring to
The estimation module 110 may use other techniques to generate estimates. For example, the estimate module 110 may use pro-ration to arrive at an estimated number. For example, assume that the data capture utility 43 captures nine months of interest income for a taxpayer. The estimation module 110 may pro-rate this over a twelve month period to estimate a full year's worth of interest income. A similar technique may be used to estimate wage income by the estimation module 110. Execution of the estimation module 110, which may be a programmed subroutine as part of the tax preparation software 100 that is executed by a processor or controller as described herein.
Various data sources 48 may also be used by the estimation module 110 to provide estimated values. Data sources 48 may be used as inputs for the estimation module 110. Data that is obtained from the data sources 48 may be temporarily written or contained within the estimation module 110 or a storage area associated therewith prior to estimates being transferred to the data store 42. Data sources 48 include, for example, a financial data source 48a, social media data source 48b, credit data source 48c, governmental agency data source 48d, employer data source 48e, third party data source 48f, and user input 48h as explained herein. The data capture utility 43 may be used to retrieve data that is provided to the estimation module 110.
Estimates may include numerical data (e.g., dividend income) but it may also include non-numerical data. For example, the estimation module 110 may estimate a user's tax filing status (e.g., married filing jointly) based on data that is obtained from one or more remotely located data sources 48. For example, the estimation module may make an inference on filing status based on postings made to an online social media account and entries made in a credit reporting database that are searched by the data capture utility 43.
It should also be understood that the estimation module 110 may rely on one or more inputs to arrive at an estimated value. For example, the estimation module 110 may rely on a combination of prior tax return data 48g in addition to, for example, data obtained from a financial data source 48a, social media data source 48b, or the like to estimate a value or condition. This may result in more accurate estimations by relying on multiple, independent sources of information. The UI control 80 may be used in conjunction with the estimation module 110 to select those sources of data to be used by the estimation module 110. For example, user input 48h will require input by the user of data using a user interface presentation 84. The UI control 80 may also be used to identify and select prior tax returns from prior tax return data 48g. Likewise, user IDs and passwords may be needed for various data sources 48 in which case UI control 80 can be used in conjunction with the data capture utility 43 needed to obtain this information from the user.
In one embodiment of the invention, the estimated values or other estimated data provided by the estimation module 110 may be associated with one or more attributes 122 as illustrated in
The attributes 122 may also include a confidence level 126 associated with each estimated field. The confidence level 126 is indicative of the level of trustworthiness of the estimated user-specific tax data and may be expressed in a number of different ways. For example, confidence level 126 may be broken down to intervals (e.g., low, medium, high) with each estimated value given an associated label (e.g., L—low, M—medium, H, high). Alternatively, confidence levels 126 may be described along a continuum without specific ranges (e.g., range from 0.0 to 1.0 with 0.0 being no confidence and 1.0 with 100% confidence). The confidence level 126 may be assigned based on the source of the estimated user-specific tax data (e.g., source #1 is nearly always correct so estimated data obtained from this source will be automatically assigned a high confidence level).
In some embodiments, the estimation module 110 may acquire a plurality of estimates from different sources (e.g., user input 48h, prior year tax return data 48g, financial data sources 48a, social media data sources 48b) and only write the “best” estimate to the data store 42 (e.g., the source with the highest confidence level 126). Alternatively, the estimation module 110 may be configured to ignore data (e.g., sources) that have confidence levels 126 below a pre-determined threshold. For example, all “low” level data from a source may be ignored. Alternatively, all the data may be stored in the data store 42 including, for example, the attribute 122 of the confidence level 126 with each entry. The tax calculation engine 50 may ignore data entries having a confidence level below a pre-determined threshold. The estimation module 110 may generate a number of different estimates from a variety of different sources and then writes a composite estimate based on all the information from all the different sources. For example, sources having higher confidence levels 126 may be weighted more than other sources having lower confidence levels 126.
Still referring to
In one embodiment, the data store 42 may receive data from multiple sources. For example, the data capture utility 43 may capture data that is transferred to the data store 42 while the estimation module 110 provides estimates 112 to the data store 42 for other portions of the schema 44. User input 48h may also be transferred to the data store 42. The estimation module 110 may work in conjunction with the data capture utility 43 to capture relevant needed to populate the data store 42. For example, the data capture utility 43 may capture from a financial data source 48a a number of dividend transactions occurring in an investment account throughout all or a portion of the tax year. The completed 1099-DIV tax form may not be available yet from the particular financial service provider that has the financial data source 48a yet the estimation module 110 can be used to estimate the total dividend amount for the tax year and transfer the estimate 112 to the data store 42. As another example, the estimation module 110 may use prior tax return data 48g to estimate values to be transferred to the data store 42.
It should be understood that the estimation module 110 not only can estimate values (i.e., numerical amounts) but the estimation module 110 is also able to estimate various states or conditions that have tax implications. For example, the estimation module 110 may be able to estimate or predict your tax filing status based on data found, for example, in credit data obtained in the credit data source 48c or through analysis of a data contained within a social media data source 48b (e.g., online profile status indicates married and estimation module 110 indicates to data store 42 that tax payer is filing jointly with a spouse).
Referring back to
In some embodiments, each estimated value produced by the estimation module 110 will need to be confirmed by the user using the UI control 80. For example, the user interface manager 82 may present estimated data fields to the user for confirmation or verification using a user interface presentation 84. In other embodiments, however, the user may override data using the user interface presentation 84. Some estimated data, for example, data having a high confidence level 126 may not need to be confirmed but can be assumed as accurate.
The confidence level indicator 132 may take a number of different forms, however. For example, the confidence level indicator 132 may be in the form of a gauge or the like that such as that illustrated in
Still referring to
Referring back to
In one embodiment, the data capture utility 43 provides the user via the user presentation 84 with a listing or grouping of different user accounts that can be searched by the data capture utility 43. In one aspect of the invention, the user selects his or her accounts that are to be queried by the data capture utility 43. For instance, a series of pull down menus can be provided on the user presentation for various categories of data sources 48. For example, a user may be provided with a listing of financial service providers (e.g., financial data source 48a). These may include financial institutions where the user has a bank account, credit union account, investment account, and the like. The user can also select his or her social media accounts (e.g., social media data source 48b). Likewise, the user may be asked to provide or select from a list his or her employer. Once the relevant data sources 48 have been identified, the user will enter his or her authentication credentials. Typically this includes, for example, a user ID and password. In other instances, the user may be asked for other information such as name, employee number, or social security number.
A user may be given the opportunity to select which data sources 48 they want accessed and searched for relevant tax related data that will be imported into the data store 42. A user may be asked to submit his or her account and password information for some data sources 48 using the UI control 80. Other data sources 48 such as some third party data sources 48f or government agency data sources 48d may be accessed without such information. Prior tax return information (e.g., prior return data source 48g) may be found by the data capture utility 43 by, for example, searching a local storage device for designated file types. Of course, this search could also be performed on a remote or cloud based storage device that may have prior tax return data stored therein.
Still referring to
If there is not enough information in the data store 42 for fileable tax return, there is no “done” instruction and the process continues whereby the user interface manager 82 will then process the suggestion(s) 66 using the suggestion resolution element 88 for resolving of how to respond to the incoming non-binding suggestions 66 as seen in operation 1700. The user interface manager 82 then generate a user interface presentation 84 to the user as seen in operation 1800 whereby the user is presented with one or more prompts. The prompts may include questions, affirmations, confirmations, declaratory statements, and the like. The prompts are displayed on a screen 104 of the computing device 102 whereby the user can then respond to the same by using one or more input devices associated with the computing device 102 (e.g., keyboard, mouse, finger, stylus, voice recognition, etc.).
Still referring to
The user input 48h aspect may be minimized by first populating relevant fields using data obtained from the data capture utility 43 or estimates 112 provided by the estimate module 110. The user input 48h may be used to input missing data that was not otherwise obtained. User input 48h, however, may also be used to verify estimates or verify sourced data. For example, prior to being incorporated into tax calculations (e.g., stored within the data store 42), the user may be prompted to accept, reject, or alter the values of data obtained from the data capture utility 43 or estimates 112 generated by the estimate module 110. User 48h may also be used to resolve conflicts. For example, the data capture utility 43 may obtain sourced data 48 that may conflict with estimates 112 and user input 48h may be required to resolve the conflict. User input 48h may also be used to accept or reject sourced data from the data capture utility 43 or estimates 112. For example, a user may know that a particular estimate 112 is incorrect and plans to input this particular value manually.
As seen in
Still referring to
As one can see from this example, a wide variety of tax-related data is obtained from a number of disparate sources using the data capture utility 43. This data is now available within the data store 42 such that tax computations can be performed without need for the user to manually enter these entries into the tax software program 100. In addition, as seen in the example of
The data capture utility 43 may trigger the flag 220 which indicates that there may be one or more tax deductions or credits available to the user that relate to homeownership. In another example, the data capture utility 43 may search a credit data source 48c that indicates that the owner has a mortgage associate with her credit report. The flag 220 may be set because of this discovery by the data capture utility 43. The data capture utility 43 may trigger flags based on text comparisons or searching performed on obtained data from data sources 48. The data capture utility 43 may also trigger flags 218 based on numerical amounts, codes, and identifiers contained or associated with data in the data sources 48. For example, a high loan balance may be indicative of a mortgage even though there may be no text associated within the balance in a data source 48.
Still referring to
In this example, the process is streamlined in that the user does not have to enter the ID and password for each account as was done in the mode of
In this embodiment, a tax logic agent 280 operates on the stored data contained in the storage area 274 to determine a degree of completeness for a particular tax return as seen by operation 2600 in
Still referring to
As seen in
Note that in an alternative embodiment, the data capture utility 43 of the remote computer 103 that contains the tax preparation software 100 may be used in lieu of the secondary data capture utility 270. In such an alternative embodiment, the data obtained thereby may be stored in the data store 42. In this alternative embodiment, the computer 272 may be omitted entirely with the remote computer 103 and software contained therein running all operations. In this embodiment, the TLA 60 may be used to determine degree of completeness.
In this particular example, as seen in operation 3000, the software 100 scans either a local resource or a remote resource for user-specific tax history files. For example, the software 100 can scan a local storage device such as a hard drive or flash drive for tax history files. The tax history files may include electronically saved copies of actual tax files or electronic copies of data used for preparation of actual tax returns. For example, the software 100 can scan resources for a .PDF copy or even an image file (.JPEG, etc.) of a prior year tax return. The software 100 can also scan various proprietary file formats (e.g., .tax, .txx (numbers for xx), .ta and the like). There may be multiple years of tax history files that are found or there may be a single year. The software 100 is also able to scan a remote computing device 102, 103 for user-specific tax history files. For example, it is increasingly common for software 100 to be run via a browser or application with tax data of a user being stored remotely, for example, in a cloud environment. In this example, the software 100 is able to scan, for example, for prior tax return data that is stored in a cloud environment. This may be accomplished, for example, by providing the user ID and password for a particular tax filing service that has been used in the past. This may be the same or different tax preparation software 100 that is being used for the current year. For example, the software 100 may be able to access tax data from another provider of tax preparation software. The software 100 can access the saved files and/or data that are contained in such files. In one aspect, the data capture utility 43 that was described herein functions as the utility that scans local or remote files for tax history data.
Next, as seen in operation 3050, the software 100 identifies topics with high relevance for the user. The software 100 may identify topics with high relevance in a number of ways. For example, the software 100 may identify those areas or lines within tax forms where a user has entered text or non-zero numbers. For example, the software 100 may identify that capital gains/losses are a topic of high relevance for this user because in two of the past three years the user has filed a Schedule D and has had a capital gain that he includes on his 1040 tax form and/or line 13 of Form 1040 (for tax year 2014) includes a non-zero entry. Thus, relevancy can also take into account into the frequency in which a particular tax topic appears in prior tax reporting periods. The appearance of Schedule D losses in one out of the past seven years may mean that capital gains/losses may not be particularly relevant to this user because of the infrequency in which they appear on filed tax returns/forms. Conversely, if Schedule D income/losses appear with regularity then there is high probability that Schedule D will be needed in a current year tax return.
As an alternative to looking at data fields contained in actual tax forms or worksheets, the software 100 might also look to data contained within the electronically stored tax files. For example, proprietary tax files may contain a robust amount of information that includes identifying prior interview questions and responses beyond data that ultimately is presented in a filed tax return. The software 100 is able to extract this information to identify topics with high relevance to the user. For example, the tax file data may include question and answer responses about child care. This may indicate that the tax topics of tax credits or deductions pertaining to child care may be a particular priority to this user.
Highly relevant tax topics may also be identified by their impact on a particular tax return. Some tax topics may have large impact on the amount of any refund or tax liability of a taxpayer. For example, for some taxpayers the EITC may change what was otherwise a tax liability into a rather substantial tax refund. The EITC is thus highly relevant to this taxpayer and obtaining the tax data in order to determine whether this credit applies is a priority and interview questions or automatic downloading of data can be geared to quickly and efficiently determine whether the taxpayer is entitled to this credit.
Still referring to
Alternatively, or in addition to the interview questions described in operation 3100, the software 100 may also automatically obtain tax data from one or more remote data sources 48 using the data capture utility 43 as described herein. This is illustrated in operation 3150 in
Still referring to
Knowing the topics with high relevance to the user, the software 100 can then generate interview questions as illustrated in operation 4150 or automatically obtain this data in operation 4200. These operations are identical to those equivalent operations (3100, 3150) in
The user profile may act as a “fingerprint” that identifies a particular type of user. This fingerprint can then be used to identify those topics that are likely highly relevant to the user; either by way of a matching profile or directly analyzing the user profile and outputting tax topics that are relevant to the characteristics contained in the user profile.
Still referring to
With reference to
In one aspect of the invention, the software 100 will then generate 6100 interview questions on the topics with high relevance based on the review of the transactions. These can then be presented to the user to obtain additional information. Alternatively, the software 100 may import tax data directly from the financial management program as illustrated in operation 6150. Alternatively, for highly relevant topics, the software 100 may obtain tax data from one or more remote sources 48 as illustrated in operation 6200 and explained herein previously. For example, in the Example given herein where mortgage payments are made to “Bank A” the software 100 may obtain this data using a data capture utility 43.
As with prior embodiments, after the highly relevant tax topics have been addressed either through interviews, downloads, or transfers from another application, the other non-addressed tax topics are confirmed with the user as either applying or not applying as illustrated in operation 6250. If any of these topics apply, appropriate interview questions will be prepared or the data will be obtained automatically as illustrated in operation 6300. After these topics are complete or none applied, the software 100 can calculate the tax liability and generate the tax return as seen in operation 6350.
Method embodiments may also be embodied in, or readable from, a computer-readable medium or carrier, e.g., one or more of the fixed and/or removable data storage data devices and/or data communications devices connected to a computer. Carriers may be, for example, magnetic storage medium, optical storage medium and magneto-optical storage medium. Examples of carriers include, but are not limited to, a floppy diskette, a memory stick or a flash drive, CD-R, CD-RW, CD-ROM, DVD-R, DVD-RW, or other carrier now known or later developed capable of storing data. The processor 304 performs steps or executes program instructions 302 within memory 300 and/or embodied on the carrier to implement method embodiments.
Embodiments, however, are not so limited and implementation of embodiments may vary depending on the platform utilized. Accordingly, embodiments are intended to exemplify alternatives, modifications, and equivalents that may fall within the scope of the claims.
This application is a U.S. Continuation of U.S. application Ser. No. 14/673,646 filed Mar. 30, 2015. The entirety of all the above-listed applications are incorporated herein by reference.
Number | Name | Date | Kind |
---|---|---|---|
4213251 | Foundos | Jul 1980 | A |
4809219 | Ashford et al. | Feb 1989 | A |
5001006 | Saito et al. | Mar 1991 | A |
5006998 | Yasunobu | Apr 1991 | A |
5019664 | Del Rossi et al. | May 1991 | A |
5082144 | Sundstrom | Jan 1992 | A |
5417596 | Kusakabe | May 1995 | A |
5495607 | Pisello et al. | Feb 1996 | A |
5557761 | Chan et al. | Sep 1996 | A |
5601055 | Haines | Feb 1997 | A |
5607353 | Hutchings et al. | Mar 1997 | A |
5631361 | Tan et al. | May 1997 | A |
5673369 | Kim | Sep 1997 | A |
5690854 | Bruckner et al. | Nov 1997 | A |
5742836 | Turpin et al. | Apr 1998 | A |
5788412 | Jatkar | Aug 1998 | A |
5813178 | Edwards | Sep 1998 | A |
5819231 | Tremaine et al. | Oct 1998 | A |
5819249 | Dohanich | Oct 1998 | A |
6078898 | Davis | Jun 2000 | A |
6269355 | Grimse et al. | Jul 2001 | B1 |
6334110 | Walter et al. | Dec 2001 | B1 |
6473741 | Baker | Oct 2002 | B1 |
6535883 | Lee et al. | Mar 2003 | B1 |
6601055 | Roberts | Jul 2003 | B1 |
6631361 | D'Flaherty et al. | Oct 2003 | B1 |
6651217 | Kennedy | Nov 2003 | B1 |
6670969 | Halstead et al. | Dec 2003 | B1 |
6690854 | Helbing | Feb 2004 | B2 |
6697787 | Miller | Feb 2004 | B1 |
6850924 | Grimse et al. | Feb 2005 | B2 |
6898573 | Piehl | May 2005 | B1 |
6912508 | McCalden | Jun 2005 | B1 |
6925441 | Jones et al. | Aug 2005 | B1 |
7234103 | Regan | Jun 2007 | B1 |
7295998 | Kulkarni | Nov 2007 | B2 |
7331045 | Martin et al. | Feb 2008 | B2 |
7340679 | Botscheck et al. | Mar 2008 | B2 |
7448022 | Ram et al. | Nov 2008 | B1 |
7539635 | Peak et al. | May 2009 | B1 |
7565312 | Shaw | Jul 2009 | B1 |
7603301 | Regan | Oct 2009 | B1 |
7668763 | Albrecht | Feb 2010 | B1 |
7680756 | Quinn | Mar 2010 | B2 |
7685082 | Coletta | Mar 2010 | B1 |
7693760 | Fiteni | Apr 2010 | B1 |
7693769 | Burlison et al. | Apr 2010 | B1 |
7716094 | Sutter et al. | May 2010 | B1 |
7742958 | Leek | Jun 2010 | B1 |
7747484 | Stanley | Jun 2010 | B2 |
7761333 | Kapp | Jul 2010 | B2 |
7778895 | Baxter | Aug 2010 | B1 |
7805349 | Yu | Sep 2010 | B2 |
7818222 | kllanson et al. | Oct 2010 | B2 |
7849405 | Coletta | Dec 2010 | B1 |
7860763 | Quinn | Dec 2010 | B1 |
7865829 | Goldfield | Jan 2011 | B1 |
7895102 | Wilks et al. | Feb 2011 | B1 |
7899757 | Talan | Mar 2011 | B1 |
7900298 | Char et al. | Mar 2011 | B1 |
7908190 | Enenkiel | Mar 2011 | B2 |
7912767 | Cheatham et al. | Mar 2011 | B1 |
7912768 | Abeles | Mar 2011 | B2 |
7925553 | Banks | Apr 2011 | B2 |
8001006 | Yu et al. | Aug 2011 | B1 |
8019664 | Tifford | Sep 2011 | B1 |
8082144 | Brown et al. | Dec 2011 | B1 |
8086970 | Achtermann et al. | Dec 2011 | B2 |
8108258 | Slattery | Jan 2012 | B1 |
8109499 | Griese et al. | Feb 2012 | B2 |
8126820 | Talan | Feb 2012 | B1 |
8190499 | McVickar | May 2012 | B1 |
8204805 | Eftekhari et al. | Jun 2012 | B2 |
8224726 | Murray | Jul 2012 | B2 |
8234562 | Evans | Jul 2012 | B1 |
8244607 | Quinn | Aug 2012 | B1 |
8306885 | Brose | Nov 2012 | B2 |
8346635 | Olim | Jan 2013 | B1 |
8346680 | Castleman | Jan 2013 | B2 |
8370795 | Sage | Feb 2013 | B1 |
8386344 | Christina | Feb 2013 | B2 |
8407113 | Eftekhari | Mar 2013 | B1 |
8417597 | McVickar | Apr 2013 | B1 |
8447667 | Dinamani et al. | May 2013 | B1 |
8452676 | Talan | May 2013 | B1 |
8473880 | Bennett et al. | Jun 2013 | B1 |
8478671 | Tifford | Jul 2013 | B1 |
8510187 | Dinamani | Aug 2013 | B1 |
8527375 | Olim | Sep 2013 | B1 |
8560409 | Abeles | Oct 2013 | B2 |
8583516 | Pitt et al. | Nov 2013 | B1 |
8589262 | Gang | Nov 2013 | B1 |
8607353 | Rippert | Dec 2013 | B2 |
8635127 | Shaw | Jan 2014 | B1 |
8639616 | Rolenaitis | Jan 2014 | B1 |
8682756 | Tifford et al. | Mar 2014 | B1 |
8682829 | Barthel | Mar 2014 | B2 |
8694395 | Houseworth | Apr 2014 | B2 |
8706580 | Houseworth | Apr 2014 | B2 |
8732057 | Becker | May 2014 | B1 |
8812380 | Murray | Aug 2014 | B2 |
8813178 | Khanna | Aug 2014 | B1 |
8838492 | Baker | Sep 2014 | B1 |
8892467 | Ball | Nov 2014 | B1 |
8930253 | Ball | Jan 2015 | B1 |
8949270 | Newton et al. | Feb 2015 | B2 |
9372687 | Pai | Jun 2016 | B1 |
9406089 | Mori | Aug 2016 | B2 |
9690854 | Stent et al. | Jun 2017 | B2 |
9760953 | Wang et al. | Sep 2017 | B1 |
9916628 | Wang et al. | Mar 2018 | B1 |
9922376 | Wang et al. | Mar 2018 | B1 |
9990678 | Cabrera et al. | Jun 2018 | B1 |
10580089 | Mori | Mar 2020 | B2 |
10614526 | Mori | Apr 2020 | B2 |
20020023064 | Grimse et al. | Feb 2002 | A1 |
20020065831 | DePaolo | May 2002 | A1 |
20020107698 | Brown et al. | Aug 2002 | A1 |
20020107824 | Ahmed | Aug 2002 | A1 |
20020111888 | Stanley et al. | Aug 2002 | A1 |
20020174017 | Singh | Nov 2002 | A1 |
20020198832 | Agee | Dec 2002 | A1 |
20030101070 | Mahosky et al. | May 2003 | A1 |
20030126054 | Purcell | Jul 2003 | A1 |
20030139827 | Phelps | Jul 2003 | A1 |
20030174157 | Hellman | Sep 2003 | A1 |
20030182102 | Corston-Oliver et al. | Sep 2003 | A1 |
20040002906 | Von Drehnen et al. | Jan 2004 | A1 |
20040019540 | William | Jan 2004 | A1 |
20040019541 | William | Jan 2004 | A1 |
20040021678 | Ullah et al. | Feb 2004 | A1 |
20040078271 | Morano | Apr 2004 | A1 |
20040083164 | Schwartz et al. | Apr 2004 | A1 |
20040088233 | Brady | May 2004 | A1 |
20040117395 | Gong | Jun 2004 | A1 |
20040172347 | Barthel | Sep 2004 | A1 |
20040181543 | Wu et al. | Sep 2004 | A1 |
20040205008 | Haynie et al. | Oct 2004 | A1 |
20050171822 | Cagan | Aug 2005 | A1 |
20050192823 | Kuhn et al. | Sep 2005 | A1 |
20050216379 | Ozaki | Sep 2005 | A1 |
20050262191 | Mamou et al. | Nov 2005 | A1 |
20060112114 | Yu | May 2006 | A1 |
20060155618 | Wyle | Jul 2006 | A1 |
20060155632 | Cherkas et al. | Jul 2006 | A1 |
20060178961 | Stanley et al. | Aug 2006 | A1 |
20060245369 | Schimmelpfeng | Nov 2006 | A1 |
20060282354 | Varghese | Dec 2006 | A1 |
20060293990 | Schaub | Dec 2006 | A1 |
20070011036 | Lo | Jan 2007 | A1 |
20070033116 | Murray | Feb 2007 | A1 |
20070033117 | Murray | Feb 2007 | A1 |
20070033130 | Murray | Feb 2007 | A1 |
20070055571 | Fox et al. | Mar 2007 | A1 |
20070094207 | Yu et al. | Apr 2007 | A1 |
20070136157 | Neher et al. | Jun 2007 | A1 |
20070150387 | Seubert et al. | Jun 2007 | A1 |
20070156564 | Humphrey et al. | Jul 2007 | A1 |
20070179841 | Agassi | Aug 2007 | A1 |
20070192166 | Van Luchene | Aug 2007 | A1 |
20070250418 | Banks et al. | Oct 2007 | A1 |
20080059900 | Murray | Mar 2008 | A1 |
20080071673 | Howard | Mar 2008 | A1 |
20080097878 | Abeles | Apr 2008 | A1 |
20080126170 | Leck et al. | May 2008 | A1 |
20080141247 | Saravanan | Jun 2008 | A1 |
20080147494 | Larson | Jun 2008 | A1 |
20080162310 | Quinn | Jul 2008 | A1 |
20080177631 | William | Jul 2008 | A1 |
20080215392 | Rajan | Sep 2008 | A1 |
20080243531 | Ryder et al. | Oct 2008 | A1 |
20090024694 | Fong | Jan 2009 | A1 |
20090037305 | Sander | Feb 2009 | A1 |
20090037847 | Achtermann et al. | Feb 2009 | A1 |
20090048957 | Celano | Feb 2009 | A1 |
20090064851 | Morris et al. | Mar 2009 | A1 |
20090112807 | Bahn | Apr 2009 | A1 |
20090117529 | Goldstein | May 2009 | A1 |
20090125618 | Huff | May 2009 | A1 |
20090138389 | Barthel | May 2009 | A1 |
20090150169 | Kirkwood | Jun 2009 | A1 |
20090157572 | Chidlovskii | Jun 2009 | A1 |
20090193389 | Miller | Jul 2009 | A1 |
20090204881 | Murthy | Aug 2009 | A1 |
20090239650 | Alderucci et al. | Sep 2009 | A1 |
20090248594 | Castleman | Oct 2009 | A1 |
20090248603 | Kiersky | Oct 2009 | A1 |
20100036760 | Abeles | Feb 2010 | A1 |
20100057659 | Phelon et al. | Mar 2010 | A1 |
20100063981 | Thomsen | Mar 2010 | A1 |
20100088124 | Diefendori et al. | Apr 2010 | A1 |
20100131394 | Rutsch et al. | May 2010 | A1 |
20100153138 | Evans | Jun 2010 | A1 |
20100161379 | Bene et al. | Jun 2010 | A1 |
20100179916 | Johns et al. | Jul 2010 | A1 |
20110004537 | Allanson et al. | Jan 2011 | A1 |
20110078062 | Kleyman | Mar 2011 | A1 |
20110099063 | Clemmons | Apr 2011 | A1 |
20110145112 | Abeles | Jun 2011 | A1 |
20110173222 | Sayal et al. | Jul 2011 | A1 |
20110225220 | Huang et al. | Sep 2011 | A1 |
20110258195 | Welling | Oct 2011 | A1 |
20110258610 | Aaraj et al. | Oct 2011 | A1 |
20110264569 | Houseworth et al. | Oct 2011 | A1 |
20120005209 | Rinearson et al. | Jan 2012 | A1 |
20120016817 | Smith et al. | Jan 2012 | A1 |
20120027246 | Tifford et al. | Feb 2012 | A1 |
20120030076 | Checco et al. | Feb 2012 | A1 |
20120030577 | Akolkar et al. | Feb 2012 | A1 |
20120072321 | Christian et al. | Mar 2012 | A1 |
20120109792 | Eftekhari et al. | May 2012 | A1 |
20120109793 | Abeles | May 2012 | A1 |
20120136764 | Miller et al. | May 2012 | A1 |
20120173295 | Phelon et al. | Jul 2012 | A1 |
20120215669 | Lieberman et al. | Aug 2012 | A1 |
20120278365 | Labat et al. | Nov 2012 | A1 |
20120296768 | Fremont-Smith et al. | Nov 2012 | A1 |
20120323749 | Lapidus | Dec 2012 | A1 |
20130036347 | Eftekhari et al. | Feb 2013 | A1 |
20130046603 | Grigg et al. | Feb 2013 | A1 |
20130080302 | Allanson et al. | Mar 2013 | A1 |
20130097262 | Dandison | Apr 2013 | A1 |
20130111032 | Alapati et al. | May 2013 | A1 |
20130138586 | Jung et al. | May 2013 | A1 |
20130185347 | Romano | Jul 2013 | A1 |
20130187926 | Silverstein et al. | Jul 2013 | A1 |
20130198047 | Houseworth | Aug 2013 | A1 |
20130218735 | Murray | Aug 2013 | A1 |
20130262279 | Finley et al. | Oct 2013 | A1 |
20130282539 | Murray | Oct 2013 | A1 |
20130290169 | Bathula et al. | Oct 2013 | A1 |
20140108213 | Houseworth | Apr 2014 | A1 |
20140149303 | Band | May 2014 | A1 |
20140172656 | Shaw | Jun 2014 | A1 |
20140201045 | Pai et al. | Jul 2014 | A1 |
20140207633 | Aldrich et al. | Jul 2014 | A1 |
20140241631 | Huang | Aug 2014 | A1 |
20140244455 | Huang | Aug 2014 | A1 |
20140244457 | Howell et al. | Aug 2014 | A1 |
20140337189 | Barsade et al. | Nov 2014 | A1 |
20150142703 | Rajesh | May 2015 | A1 |
20150237205 | Waller et al. | Aug 2015 | A1 |
20150254623 | Velez et al. | Sep 2015 | A1 |
20150269491 | Tripathi et al. | Sep 2015 | A1 |
20160027127 | Chavarria et al. | Jan 2016 | A1 |
20160063645 | Houseworth et al. | Mar 2016 | A1 |
20160071112 | Unser | Mar 2016 | A1 |
20160078567 | Goldman et al. | Mar 2016 | A1 |
20160092993 | Ciaramitaro | Mar 2016 | A1 |
20160092994 | Roebuck et al. | Mar 2016 | A1 |
20160098804 | Mascaro et al. | Apr 2016 | A1 |
20160148321 | Ciaramitaro et al. | May 2016 | A1 |
20160275627 | Wang | Sep 2016 | A1 |
20170004583 | Wang | Jan 2017 | A1 |
20170004584 | Wang | Jan 2017 | A1 |
20170032468 | Wang et al. | Feb 2017 | A1 |
20180032855 | Wang et al. | Feb 2018 | A1 |
Number | Date | Country |
---|---|---|
2002117121 | Apr 2002 | JP |
2005190425 | Jul 2005 | JP |
2014206960 | Oct 2014 | JP |
WO 2017004094 | Jan 2017 | WO |
WO 2017004095 | Jan 2017 | WO |
WO 2017019233 | Feb 2017 | WO |
WO 2017116496 | Jul 2017 | WO |
WO 2017116497 | Jul 2017 | WO |
WO 2018022023 | Feb 2018 | WO |
WO 2018022128 | Feb 2018 | WO |
WO 2018080562 | May 2018 | WO |
WO 2018080563 | May 2018 | WO |
Entry |
---|
OECD (Using Third Party Information Reports to Assist Taxpayers Meet their Return Filing Obligations—Country Experiences With the Use of Pre-populated Personal Tax Returns; https://www.oecd.org/tax/administration/36280368.pdf, Mar. 2006) (Year: 2006). |
https://developers.facebook.com/docs/marketing-api/overview, printed Feb. 6, 2015, 5 pages. |
https://developers.facebook.com/docs/marketing-apis, printed Feb. 6, 2015, 3 pages. |
https://developers.facebook.com/docs/marketing-apis/using-the-api, printed Feb. 6, 2015, 2 pages. |
Cronin, Julie-Anne et al., Distributing the Corporate Income Tax: Revised U.S. Treasury Methodology, May 2012, Department of Treasury, web, 2-31 (2012), 34 pages. |
H.R. Gregg; Decision Tables for Documentation and System Analysis; Oct. 3, 1967; Union Carbide Corporation, Nuclear Division, Computing Technology Center: (Year: 1967), 25 pages. |
hittp://en.wikipedia.org/wiki/Dependency_grammar#Semantic_dependencies, printed Mar. 11, 2014, 15 pages. |
hittp://en.wikipedia.org/wiki/Loose_coupling, printed Mar. 11, 2014, 2 pages. |
hittp://www.webopedia.corniTERM/Uloose_coupling.html, printed Mar. 11, 2014, 4 pages. |
http://doc,jboss.org/drools/release/5.3.0.Final/drools-expert-docs/html/ch01.html, printed Mar. 11, 2014, 10 pages. |
http://en.wikipedia.org/wiki/Declarative_programming, printed Mar. 11, 2014, 4 pages. |
http://en.wikipedia.org/wiki/Drools, printed Mar. 11, 2014, 4 pages. |
http://quicken.intuit.com/support/help/income-and-expenses/how-to-assign-tax-form-line-items-to-a-category/GEN82142.html, updated Aug. 11, 2011, printed Jun. 24, 2014, 2 pages. |
http://quicken.intuit.com/support/help/reports--graphs-and-snapshots/track-the-earnings-taxes--deductions--or-deposits-from-paychecks/GEN82101.html, updated May 14, 2012, printed Jun. 24, 2014, 2 pages. |
http://quicken.intuit.com/support/help/tax-savings/simplify-tax-time/INF24047.html, updated Jul. 25, 2013, printed Jun. 24, 2014, 11 pages. |
http://www.wisegeek.com/what-is-declarative-programming.htm, printed Mar. 11, 2014, 2 pages. |
http://www.jboss.org/drools/drools-expert.html, printed Mar. 11, 2014, 5 pages. |
https://turbotax.intuit.com/snaptax/mobile/, printed Mar. 11, 2014, 2 pages. |
NY State Dep of Taxation, NY State Personal Income Tax MeF Guide for Software Developers, 2012, NY State, 30 pages. |
OpenRules, Preparing a Tax Return Using OpenRules Dialog, Aug. 2011, 25 pages. |
Solomon L. Pollack; Analysis of the Decision Rules in Decision Tables, May 1963; The Rand Corporation, 78 Pages. |
Wikipedia, https://en.wikipedia.org/wikaree_(data_structure), “Tree (data structure)”, May 15, 2005, 1 page. |
Wikipedia, https://en.wikipedia.org/wiki/Data_structure, “Data Structures”, Jan. 12, 2012, 1 page. |
U.S. Appl. No. 14/448,962, filed Jul. 31, 2014, |
U.S. Appl. No. 13/923,266, filed Jun. 20, 2013. |
U.S. Appl. No. 14/462,345, filed Aug. 18, 2014. |
U.S. Appl. No. 14/448,986, filed Jul. 31, 2014. |
U.S. Appl. No. 14/555,543, filed Nov. 26, 2014. |
U.S. Appl. No. 14/555,334, filed Nov. 26, 2014. |
U.S. Appl. No. 14/555,296, filed Nov. 26, 2014. |
U.S. Appl. No. 14/555,222, filed Nov. 26, 2014. |
U.S. Appl. No. 14/701,087, filed Apr. 30, 2015. |
U.S. Appl. No. 16/266,754, filed Feb. 4, 2019. |
U.S. Appl. No. 14/448,962, filed Jul. 13, 2014, Pending. |
U.S. Appl. No. 13/923,266, filed Jun. 20, 2013, Pending. |
U.S. Appl. No. 14/462,345, filed Aug. 18, 2014, Abandoned. |
U.S. Appl. No. 14/448,986, filed Jul. 31, 2014, Pending. |
U.S. Appl. No. 14/448,922, filed Jul. 31, 2014, Pending. |
U.S. Appl. No. 14/555,543, filed Nov. 26, 2014, Issued. |
U.S. Appl. No. 14/555,334, filed Nov. 26, 2014, Pending. |
U.S. Appl. No. 14/555,296, filed Nov. 26, 2014, Issued. |
U.S. Appl. No. 14/555,222, filed Nov. 26, 2014, Abandoned. |
U.S. Appl. No. 14/701,087, filed Apr. 30, 2015, Pending. |
U.S. Appl. No. 16/148,506, filed Oct. 1, 2018, Pending. |
U.S. Appl. No. 16/266,754, filed Feb. 4, 2019, Pending. |
U.S. Appl. No. 14/448,922, filed Jul. 31, 2014. |
U.S. Appl. No. 16/502,863, filed Jul. 3, 2019. |
U.S. Appl. No. 16/154,434, filed Oct. 8, 2018. |
U.S. Appl. No. 16/262,698, filed Jan. 30, 2019. |
Zhang, “Enabling Personalization Recommendation with Weighted FP for Text Information Retrieval Based on User-Focus”, Proceedings of the International Conference on Information Technology: Coding and Computing (ITCC'04), 2004, 5 pages. |
U.S. Appl. No. 16/148,506, filed Oct. 1, 2018. |
U.S. Appl. No. 16/154,434, filed Oct. 8, 2018 captured from PAIR dated May 3, 2022 (Mar. 15, 2022-present). |
Number | Date | Country | |
---|---|---|---|
Parent | 14673646 | Mar 2015 | US |
Child | 16188442 | US |