Patent ID: 9727877
Date: 2017-08-08
CPC Classifications: G06Q

Claim:
1. A method comprising: receiving a lookup request, the lookup request including a customer identifier of a customer; creating a compressed filter by hashing a list of customer identifiers into a data structure using a hash function and a hash table, the compressed filter representing the list of customer identifiers associated with the available offer compressed to a reduced storage size of at least sixty percent as compared to the list of customer identifiers that are uncompressed; tuning a filter matching system based on a tunable error rate introduced by the compressed filter, the error rate indicating an incorrect match between the customer identifier and the compressed filter, the error rate being between 0.1 and 0.0001 percent, and the error rate selected based on an amount of compression gained in creating the compressed filter; determining, in real-time using the filter matching system, a plurality of eligible campaigns for the customer, an eligible campaign of the plurality of eligible campaigns including an available offer for the customer, the determining of the plurality of eligible campaigns for the customer being based on a matching of the customer identifier with the compressed filter of the available offer of the plurality of eligible campaigns; selecting the available offer of a campaign from the determined plurality of eligible campaigns based on metadata of the plurality of eligible campaigns, campaign history data of the customer, and customer data of the customer, the customer data of the customer comprising at least one of information about items purchased by the customer, information about an amount paid by the customer, information about a web site with which the customer is associated, and product ownership information of the customer; and providing, subsequent to the selecting of the available offer, a message associated with the selected offer, the message being presented to the customer.