Predictive and customizable round up platform
Disclosed are various embodiments for predicting and customizing round-ups for various types of transaction. First, a computing device can access adjustment criteria for a user profile. The computing device can then generate an event listener configured to monitor events made in association with the user profile. When events are accessible by the event listener, the events are filtered or otherwise analyzed to identify a subset of the events that comply with the adjustment criteria. Individual ones of the events in the subset are adjusted by performing a round-up operation. The round-up operation can include adjusting a transaction amount by a predetermined amount and depositing the predetermined amount into the destination account.
1 . A system, comprising:
a computing device comprising a processor and a memory;
an enrolled user database; and
machine-readable instructions stored in the memory that, when executed by the processor, cause the computing device to perform operations comprising:
receive a specification comprising an instrument, a predetermined amount, a transaction type category, and a destination account from at least one client device associated with a user profile;
generate adjustment criteria based at least in part on the transaction type category and the instrument;
add, from a user database, the user profile to a set of enrolled user profiles of the enrolled user database;
access, from the enrolled user database, adjustment criteria for the user profile;
generate an event listener, the event listener comprising a virtual computing process configured to monitor a plurality of events associated with the user profile;
subscribe to the event listener for the user profile;
receive at least an event of the plurality of events from the event listener, the event being made in association with the user profile;
in response to receiving at least the event of the plurality of events from the event listener, filter the plurality of events to identify a subset of the plurality of events that comply with the adjustment criteria; and
adjust individual ones of the events in the subset by performing a round-up operation, the round-up operation comprising adjusting an event amount by the predetermined amount and depositing the predetermined amount into the destination account.
2 . The system of claim 1 ,
wherein the specification further comprises a round-up value; and
wherein the adjustment criteria comprises the round-up value event amount being adjusted to the round-up value.
3 . The system of claim 2 , wherein the machine-readable instructions further cause the computing device to perform operations comprising:
access historical transaction data for the instrument; and
prior to the adjustment criteria being generated, determine an estimated savings over a predetermined time interval based at least in part on the historical transaction data.
4 . The system of claim 1 , wherein:
each of the events in one of a plurality of transactions; and
individual ones of the transactions in the subset are adjusted by performing the round-up operation by:
determining that a first one of the transactions is associated with a first transaction type category;
determining a first round-up value associated with the first transaction type category;
adjusting the first one of the transactions to the first round-up value;
determining that a second one of the transactions is associated with a second transaction type category;
determining a second round-up value associated with the second transaction type category; and
adjusting the second one of the transactions to the second round-up value.
5 . The system of claim 4 , wherein the machine-readable instructions further cause the computing device to perform operations comprising:
determine a first adjustment amount that is a difference between an amount of the first one of the transactions and the first round-up value;
determine a second adjustment amount that is a difference between an amount of the second one of the transactions and the second round-up value; and
deposit the first adjustment amount and the second adjustment amount in the destination account.
6 . The system of claim 1 , wherein the destination account is one of a checking account, a savings account, a carbon offset account, a cryptocurrency account, a brokerage account, and a charity account.
7 . A method, comprising:
accessing, by a computing device, a specification of an instrument, a round-up value, a category, and a destination account from at least one user interface of a client application associated with a user profile;
generating, by the computing device, adjustment criteria based at least in part on the category, the round-up value, and the instrument;
adding, by the computing device and from a user database, the user profile to a set of enrolled user profiles of an enrolled user database;
generating, by the computing device, an event listener, the event listener comprising a virtual computing process configured to monitor a plurality of events;
subscribing, by the computing device, to the event listener to receive notifications in association with the user profile;
receiving, by the computing device and in response to the event listener identifying the plurality of events being approved by a remote service, a notification from the event listener;
accessing, by the computing device and from the enrolled user database, the adjustment criteria associated with the user profile;
in response to the plurality of events being approved by the remote service, filtering, by the computing device, the plurality of events to identify a subset of the plurality of events that comply with the adjustment criteria that are associated with the instrument;
adjusting, by the computing device, individual ones of the events in the subset by performing a round-up operation on the individual ones of the events, the round-up operation comprising adjusting a transaction amount of the individual ones of the events based at least in part on the round-up value; and
depositing, by the computing device, an adjustment amount into the destination account, the adjustment amount being a difference between the transaction amount and the round-up value.
8 . The method of claim 7 , further comprising:
identifying, by the computing device, the subset of the events based at least in part on a filtering of a plurality of authorized events using the enrolled user database.
9 . The method of claim 8 , wherein:
the category is a transaction type category;
the events are transactions; and
the authorized events are authorized transactions; and
the filtering of the authorized events comprises:
determining, by the computing device, whether individual ones of the authorized transactions are associated with a particular user identifier associated with the instrument; and
determining, by the computing device, that the individual ones of the authorized transactions are associated with the transaction type category based at least in part on a categorization of the individual ones of the authorized transactions.
10 . The method of claim 8 , further comprising:
accessing, by the computing device, user transaction history data for the user profile;
based on the specification of the instrument, the round-up value, and the category, predicting, by the computing device, a savings amount over a predefined time interval; and
displaying, by the computing device, the savings amount as predicted in the at least one user interface.
11 . The method of claim 10 , wherein predicting the savings amount over the predefined time interval comprises training, by the computing device, a machine learning routine and providing, by the computing device, the machine learning routine with the instrument, the round-up value, and the category, the machine learning routine being configured to output the savings amount as predicted.
12 . The method of claim 8 , further comprising:
subscribing, by the computing device, the event listener with the remote service such that, when authorized events associated with the user profile are detected, the remote service notifies the event listener.
13 . The method of claim 8 , wherein:
the instrument is one of a plurality of instruments specified in the at least one user interface;
the round-up value is one of a plurality of round-up values specified in the at least one user interface; and
the category is one of a plurality of transaction type categories specified in the at least one user interface, wherein individual ones of the round-up values correspond to individual ones of the transaction type categories.
14 . The method of claim 8 , further comprising:
prior to receiving the specification of the instrument, the round-up value, and the category from the at least one user interface of a client application, receiving, by the computing device, a specification of a savings goal in the at least one user interface; and
generating, by the computing device, at least one suggestion for the instrument, the round-up value, and the category that, if selected, satisfy the savings goal.
15 . A non-transitory, computer-readable medium comprising machine-readable instructions that, when executed by a processor of a computing device, cause the computing device to perform operations comprising:
access a specification of an instrument, a first round-up value, a first transaction type category, a second round-up value, a second transaction type category, and a destination account from at least one user interface of a client application associated with a user profile;
generate a first adjustment criteria based at least in part on the first round-up value and the first transaction type category;
generate a second adjustment criteria based at least in part on the second round-up value and the second transaction type category;
add, from a user database, the user profile to a set of enrolled user profiles of an enrolled user database;
generate an event listener, the event listener comprising a virtual computing process configured to monitor ones of a plurality of transactions made in association to the instrument;
subscribe to the event listener to receive notifications when a remote service approves ones of a plurality of transactions made in association to the instrument;
receive a notification from the event listener, the notification being sent by the event listener in response to identifying the plurality of transactions being approved by a remote service and in response to associated with the user profile and in response to a remote service approving the transaction;
access, from the enrolled user database and in association with the user profile, the first adjustment criteria and the second adjustment criteria;
in response to a plurality of transactions being approved by a transaction service, filter the plurality of transactions to identify a first subset of the plurality of transactions that are associated with the first transaction type category;
in response to a plurality of transactions being approved by a transaction service, filter the plurality of transactions to identify a second subset of the plurality of transactions that are associated with the second transaction type category;
adjust individual ones of the plurality of transactions in the first subset by to the first round-up value and deposit a first adjustment amount into the destination account, the first adjustment amount being a difference between a transaction amount of the transactions in the first subset and the first round-up value; and
adjust individual ones of the plurality of transactions in the second subset by to the second round-up value and deposit a second adjustment amount into the destination account, the second adjustment amount being a difference between a transaction amount of the transactions in the second subset and the second round-up value.
16 . The non-transitory computer-readable medium of claim 15 , wherein the machine-readable instructions further cause the computing device to perform operations comprising:
identify the first subset and the second subset of the transactions based at least in part on a filtering of a plurality of authorized transactions using the enrolled user database.
17 . The non-transitory computer-readable medium of claim 16 , wherein the machine-readable instructions further cause the computing device to perform operations comprising filtering the authorized transactions by:
determining whether individual ones of the authorized transactions are associated with a particular user identifier associated with the instrument; and
determining that the individual ones of the authorized transactions are associated with the first transaction type category and the second transaction type category based at least in part on a categorization of the individual ones of the authorized transactions.
18 . The non-transitory computer-readable medium of claim 15 , wherein the destination account is one of a checking account, a savings account, a carbon offset account, a cryptocurrency account, a brokerage account, and a charity account.
19 . The non-transitory computer-readable medium of claim 15 , wherein the machine-readable instructions further cause the computing device to perform operations comprising:
subscribing the event listener with a transaction service such that, when authorized transactions associated with the user profile are detected, the transaction service notifies the event listener.
20 . The system of claim 1 , wherein the virtual computing process of the event listener is a process that remains dormant without expending additional computing resources until the process wakes at predefined time intervals to check for new transactions made by the user profile in the set of enrolled user profiles of the enrolled user database.