Embodiments of the invention relate, generally, to promoting the offering of promotions by a provider to a consumer and providing analytics data.
Providers sell goods and services (collectively referred to herein as “goods”) to consumers. The providers can often control the form of their product offers, the timing of their product offers, and the price at which the goods will be offered. The provider may sell goods at a brick-and-mortar sales location, a virtual online site, or both.
Discounts have been used as part of some retail strategies. Discount techniques include providing coupons and rebates to potential consumers, but these techniques have several disadvantages. In this regard, a number of deficiencies and problems associated with the systems used to, among other things, provide discounts to consumers have been identified. Through applied effort, ingenuity, and innovation, many of these identified problems have been solved by developing solutions that are included in embodiments of the present invention, many examples of which are described in detail herein.
In general, embodiments of the present invention provide herein systems, methods and computer readable media for programmatically generating and/or revising promotion offers for a provider as well as generating and providing analytics data regarding currently offered promotions in real-time. In providing such functionality, the system can be configured to, for example, monitor and analyze various promotion offers, including current promotion offers and analytics data about promotion-related purchases, that enable the system to determine the relative successfulness of a promotion offer for a provider and/or category of provider. Upon determining what has been more successful or is expected to be a more successful promotion offer for a provider, the system can present the promotion offer to the provider for approval and/or make the promotion offer to consumers programmatically by a promotional system located remotely from the provider device and the consumer device. In some embodiments, the remotely located promotional system may be further configured to revise the promotion offer programmatically and/or upon receiving the provider's approval of the proposed edits to the promotion offer.
Having thus described embodiments of the invention in general terms, reference will now be made to the accompanying drawings, which are not necessarily drawn to scale, and wherein:
Embodiments of the present invention now will be described more fully hereinafter with reference to the accompanying drawings, in which some, but not all embodiments of the inventions are shown. Indeed, embodiments of the invention may be embodied in many different forms and should not be construed as limited to the embodiments set forth herein; rather, these embodiments are provided so that this disclosure will satisfy applicable legal requirements. Like numbers refer to like elements throughout.
As used herein, the terms “data,” “content,” “information” and similar terms may be used interchangeably to refer to data capable of being captured, transmitted, received, displayed and/or stored in accordance with various example embodiments. Thus, use of any such terms should not be taken to limit the spirit and scope of the disclosure. Further, where a computing device is described herein to receive data from another computing device, it will be appreciated that the data may be received directly from the another computing device or may be received indirectly via one or more intermediary computing devices, such as, for example, one or more servers, relays, routers, network access points, base stations, and/or the like. Similarly, where a computing device is described herein to send data to another computing device, it will be appreciated that the data may be sent directly to the another computing device or may be sent indirectly via one or more intermediary computing devices, such as, for example, one or more servers, relays, routers, network access points, base stations, and/or the like.
As used herein, the term “provider,” “merchant,” and similar terms may be used interchangeably to refer to, but not limited to, a merchant, business owner, consigner, shopkeeper, tradesperson, vender, operator, entrepreneur, agent, promotioner, organization or the like that is in the business of a providing a good, service or experience to a consumer, facilitating the provision of a good, service or experience to a consumer and/or otherwise operating in the stream of commerce. For example, a provider may be in the form of a restaurant that that provides food, beverages, and other consumables to a consumer.
In addition, as used herein, the term “promotion and marketing service” may include, but is not limited to, a service that is accessible via one or more computing devices and is operable to provide example promotion and/or marketing services on behalf of one or more providers that are offering one or more instruments that are redeemable by consumers for goods, services, experiences and/or the like. The promotion and marketing service is further configured to illustrate or otherwise inform one or more consumers of the availability of one or more instruments in the form of one or more impressions. In some examples, the promotion and marketing service may also take the form of a redemption authority, a payment processor, a rewards provider, an entity in a financial network, a promoter, an agent and/or the like. As such, the service is, in some example embodiments, configured to present one or more promotions via one or more impressions, accept payments for promotions from consumers, issue instruments upon acceptance of an offer, participate in redemption, generate rewards, provide a point of sale device or service, issue payments to providers and/or or otherwise participate in the exchange of goods, services or experiences for currency, value and/or the like.
As used herein, the term “instrument” may include, but is not limited to, any type of gift card, tender, electronic certificate, medium of exchange, voucher, or the like that embodies the terms of the promotion from which the instrument resulted and may be used toward at least a portion of the purchase, acquisition, procurement, consumption or the like of goods, services and/or experiences. In some examples, the instrument may take the form of tender that has a given value that is exchangeable for goods, services and/or experiences and/or a reduction in a purchase price of a particular good, service or experience. In some examples, the instrument may have multiple values, such as accepted value, a promotional value and/or a residual value. For example, using the aforementioned restaurant as the example provider, an instrument may include an electronic indication in a mobile application that shows $50 of value to spend at the restaurant. In some examples, the accepted value of the instrument is defined by the value exchanged for the instrument. In some examples, the promotional value is defined by the promotion from which the instrument resulted and is the value of the instrument beyond the accepted value. In some examples, the residual value is the value after redemption, the value after the expiry or other violation of a redemption parameter, the return or exchange value of the instrument and/or the like.
As used herein, the term “impressions” may include, but is not limited to, a communication, a display, or other perceived indication, such as a flyer, print media, e-mail, text message, application alert, mobile applications, other type of electronic interface or distribution channel and/or the like, of one or more promotions. For example, and using the aforementioned restaurant as the example provider, an impression may include an e-mail communication sent to consumers that indicates the availability of a $25 for $50 towards food, beverages and/or other consumables.
The displays of
The displays of an interface, as shown in
Display 100 may include other display elements in addition to or instead of button 102. For example, map portion 104 may be included in display 100, which may show the location of the provider device and/or brick-and-mortar retail store of the provider relative to potential consumers within a predetermined geographic region of the provider device and/or retail store.
Although the displays of
Returning to process 400 of
In response to determining at 410 that the provider has indicated a desire to go backwards in process 400 (e.g., in response to determining there was a selection of back now option 206 and, thus, a need to go back one or more steps), display 100 of
In response to determining at 410 that the provider would like to launch a promotion based on the programmatically generated promotion offer parameters (e.g., in response to determining there was a selection of launch option 208), a promotion in accordance with the promotion parameters shown in display 200 can be launched by the system. In this regard, launch option 208 can greatly improve the provider's user experience by providing a simple, one-button promotion creation option. As such, some embodiments discussed herein can be configured to provide proposed promotion parameters customized to the particular provider (based on, e.g., the algorithm discussed in connection with
At 412, the provider device can be configured to communicate the promotion parameters approved by the provider to a remote device, such as the promotional system (examples of which are discussed below), that may be configured to facilitate the providing of promotions to consumers. The promotional system can include, for example, one or more network servers, databases, and/or any other suitable machines configured to communicate with the provider device and/or consumer devices.
The promotional system can be configured to make the promotion available to consumers at 414. For example, the promotional system can be configured to compile the promotion into one or more different formats, market the promotion to consumers in those formats (e.g., email, push notifications, and/or otherwise present the promotion to consumers), receive and process payment from the consumers for the promotion, enable one or more systems to facilitate the redemption of the promotion, facilitate payment to the provider for the promotion, and/or perform any other functionality that may assist in facilitating the creation, marketing, selling, monitoring and archival of promotion-related data. At 416, process 400 ends.
Returning to the decision at 410 of process 400, in response to determining that the provider wants to edit the programmatically generated promotion parameters (e.g., in response to determining there was a selection of edit option 210), an editing interface can be displayed at 418. For example, at 418, the provider device can be configured to present display 300 of
Display 300 may include one or more user-interactive display elements (e.g., one or more of the other displays presented by the provider device). For example, slide bar 302 can be used by a provider to configure the promotion value. In some embodiments, the programmatically generated promotion value parameter and/or any other promotion parameters included in display 300 (which may have also been included in display 200 of
At 420, the processor of the provider device may monitor for provider inputs (e.g., the selection and/or manipulation of one or more options presented in display 300). As indications of provider inputs are received (e.g., data generated by an input/output component of the provider device), changes may be made at 422 to the proposed promotion by modifying or otherwise editing the promotion parameters, and the process may return to 418 to show an updated version of the display with the changes made. For example, as the provider slides a finger over the slide bar 302 to increase the promotion value, the input can be received at 420, changes to the promotion value parameter can be made at 422, and the updated promotion value parameter can be displayed at 418.
In response to determining the provider has finished making edits (e.g., receiving an indication of the provider selecting done button 310, the process timing-out, among other things), process 400 can return to 408 and present a display showing the modified promotion parameters. The display presented at 408 may be similar to or the same as that shown in
At 504, a system, such as one or more processors of a promotional system, can be configured to analyze promotion parameters associated with the provider's past promotion offerings. For example, times of day, quantities of instruments sold, oversell of the instruments, and/or any other data associated with an instrument's sale, or lack thereof, can be analyzed at 504. Each of the past promotion's parameters can be assigned a weighted value based upon trends that are determined in connection with the success (i.e., successfulness) and/or lack of success (i.e., unsuccessfulness) of the promotions for that particular provider.
At 506, the processor can be configured to analyze promotion parameters associated with the provider's current promotion offerings. The current promotion offerings relative successfulness or unsuccessfulness may enable the system to determine the trajectory of a trend. For example, process 500 can be configured to determine and adjust a lunchtime promotion that was determined at 504 to be historically successful on Wednesdays from 12:30-2:00, after it is determined at 506 that this promotion is not selling as well this current Wednesday (e.g., because a competitor has started offering an early bird special starting at 11:00 am on Wednesdays). How well a promotion is selling can be determined based on, e.g., the number of promotions sold at a time within the range of availability (e.g., at 1:00 pm when the range of availability is 12:30-2:00 pm). In this regard, any current promotion parameters can be assigned a weighted value based upon trends that are determined in connection with the successfulness and/or unsuccessfulness of the promotions for that particular provider.
At 508, the processor can be configured to analyze promotion parameters associated with other providers in the provider's category. For example, the promotional system can promote a plurality of providers that are categorized together by the promotional system. For example, the promotional system may offer promotions and/or otherwise promote businesses that provide spa treatments. Each of these businesses can be categorized by the promotional system as a spa. As another example, businesses that serve food and drink after payment is received can be categorized as a “Deli/Coffee Shop” by the promotional system. In some embodiments, there may be broader categories and/or sub-categories. For example, a “Spa” category may include a subcategory for a “Facial Specialist,” and itself may be a subcategory for the broader “Health and Beauty” category. As another example, a “Deli/Coffee Shop” category may be a subcategory of a “Restaurants” category, which may itself be a subcategory of a “Food and Drink” category. Promotion parameters for each category/subcategory of providers can be assigned a value related to how successful or unsuccessful they are (e.g., how well they sell and how much profit they make the respective provider), and can be used in determining proposed parameters for the provider benefiting from process 500.
At 510, the processor can be configured to analyze promotion parameters associated with other providers in the provider's geographic area. For example, certain neighborhoods may attract people willing to spend more money than other neighborhoods. The promotional system can be configured to take into consideration the provider's neighborhood when determining proposed promotion parameters. Additional examples of providing real-time promotion offers within a provider's vicinity are discussed in previously-incorporated, commonly-assigned U.S. Patent Application Publication No. 2011/0313840, filed Mar. 17, 2011, titled “SYSTEM AND METHODS FOR PROVIDING LOCATION BASED DISCOUNT RETAILING.”
At 512, the processor can be configured to analyze non-promotion analytics associated with the provider's past promotion offerings. For example, the provider's point-of-sale device can be configured to report some or all of the sales information (e.g., dollar amount received, time of day, profitability, etc.) to the promotional system, regardless of whether the sales information is related to a promotion. The non-promotion analytics can then be analyzed by the promotional system to determine how busy the provider is currently, when the provider's busiest/slowest times are historically, when the provider's most/least profitable times are historically, and/or any other sales-related information.
At 514, the processor can be configured to analyze the provider's available product inventory or service availability (e.g., how many open tables at a restaurant, how many open appointments, etc.). Similarly, the processor can be configured to analyze the provider's calendar and/or any other type of scheduler that is used to help the provider keep track of inventory and/or service availability and, thus, determine when a provider may be more likely to benefit from a promotion being offered.
At 516, consumer transactions that are reported to the promotional system can also be weighed in the algorithm of process 500 for generating proposed promotion parameters. For example, the promotional system can be configured to determine for which prices and on what types of goods consumers are purchasing in a geographic area of the provider (e.g., within one block, one mile, five miles, ten miles, and/or any other selected distance from the provider). As such, in response to the promotional system determining that consumers are purchasing umbrellas at a higher rate than historical norms (i.e., suggesting that it may be raining within a target region), discounts on taxicabs (which may encounter higher demand during rain periods) can be reduced or paused programmatically in response to a central promotional system determining a promotion offer should be paused in the absence of receiving a provider request to do so. As another example, in response to determining that consumers are purchasing golf clubs in a club house of a local golf club, promotion parameters may be generated for a practice round at the golf club whereby such newly purchased clubs may be used.
At 518, proposed promotion parameters (such as those shown in
A determination can be made at 520 whether or not the proposed promotion parameters should be previewed to the provider for approval before being used to generate a new promotion offer. For example, in some embodiments, a provider may configure the promotional system to conduct a promotional campaign that updates automatically without the provider's input based upon, for example, the analyses discussed in connection with 504-516. In such instances, the proposed promotion parameters can be used by the promotional system to programmatically revise the promotion offer and process 500 returns to 504 to continue analyzing the various data use to configure the promotion.
In response to determining at 520 that the proposed promotion parameters are to be previewed to the provider before being used to revise and/or otherwise generate a promotion offer, process 500 may proceed to 522 and display the proposed promotion parameters for the provider's approval. For example, display 200 may be presented at 522 when requested. Process 500 ends at 524.
At 604, a promotion is offered such that the promotion is active. For example, the promotional system publishes an advertisement on a website, sends an email, pushes a notification and/or otherwise notifies one or more potential consumers that a promotion is being offered. In some embodiments, prior to a promotion being activated, a provider may have provided an indication corresponding to an approval of promotion parameters. Further, a currently active promotion may cause a promotional system to publish an advertisement on a website, send an email, transmit a notification, and/or otherwise notify one or more potential consumers of the active promotion currently being offered. In some embodiments, a currently active promotion may provide an impression to one or more consumers that may allow a consumer to purchase an instrument that embodies the terms of the promotion and/or one or more redemption parameters. In some embodiments, a currently active promotion may also provide a plurality of instruments that are configured to be currently redeemed by a provider.
At 606, the promotional system and/or the provider system can be configured to receive and/or monitor sales and/or other analytics data associated with the promotion offer. For example, at 606, the promotional system can be configured to keep track how many promotions have sold, the promotion value, the discount value, how quickly the promotions sold, where the promotions are sold, what other promotions were bought by the same or similar consumers, and/or any other data that may be analyzed by, e.g., process 500.
At 608, a display can be presented showing the analytics data. For example, a provider device can be configured to present display 700 of
Returning to
At 612, a provider may indicate a desire to pause and/or edit a promotion offer. For example, in response to selecting analytics portion 702 of display 700, the system can be configured to provide an overlay (or other type of display) giving the provider the option to pause and/or edit the promotion offer. In some embodiments, rather than or in addition to providing the option to the provider, pausing or editing the promotion offer may be a default response to the provider touching analytics portion 702. At 612, the provider may also or instead indicate a desire to pause and/or edit an upcoming promotion offer by selecting an upcoming promotion offer included in future promotions portion 704.
In some embodiments, the determination at 612 can be performed automatically and without the provider's direct involvement (e.g., in the absence of the provider touching a button provided by a provider device). For example, in response to the system programmatically determining that a promotion offer is not selling at a rate that was expected (e.g., at least 5 per hour) or is selling at rate that is too high (e.g., 50 per minute), determining that an error may be occurring, determining that the promotion offer is too generous, determining that the promotion offer is not generous enough, and/or determining that any other issue may be occurring, the system can pause the promotion offer (e.g., remove it from the stream of commerce) and/or programmatically edit the promotion offer (or present options to the provider for editing the same) to assist the provider (e.g., increase the discount amount, decrease the discount amount, shorten the available time window, and/or perform any other function to the promotion offer).
In response to determining at 612 that a promotion offer (future and/or current) is to be paused, the promotional system can be configured to pause the promotion offer at 614. For example, in response to determining a provider indication to pause a future promotion offer, the provider device can be configured to generate and transmit a pause signal associated with the future promotion to the promotional system. In some embodiments, when the promotional system programmatically determines that a promotion offer should be paused, the promotional system can be configured to send the provider device a notification and/or other message indicating that the provider's promotion has been paused. Additionally and/or alternatively, when any other automatic function (e.g., promotion offer editing, reinstating, etc.) is performed by the promotional system, the promotional system can be configured to send the provider device a corresponding notification.
At 616, a determination can be made as to whether the promotion offer should be reinstated. If not, the process returns to 614. If a determination is made to reinstate the promotion offer, the process returns to 604.
In response to determining at 612 that a promotion offer (future and/or current) is to be edited by a provider (as opposed to or in addition to programmatically), the promotional system can be configured to provide the provider an editing display, such as display 300 of
Promotional system 802 can be coupled to one or more consumer devices 810A-810N and/or one or more provider devices 812A-812N via network 814. In this regard, network 814 may include any wired or wireless communication network including, for example, a wired or wireless local area network (LAN), personal area network (PAN), metropolitan area network (MAN), wide area network (WAN), or the like, as well as any hardware, software and/or firmware required to implement it (such as, e.g., network routers, etc.). For example, network 814 may include a cellular telephone, an 802.11, 802.16, 802.20, and/or WiMax network. Further, the network 814 may include a public network, such as the Internet, a private network, such as an intranet, or combinations thereof, and may utilize a variety of networking protocols now available or later developed including, but not limited to TCP/IP based networking protocols.
Consumer devices 810A-810N and/or provider devices 812A-812M may each be implemented as a personal computer and/or other networked device, such as a cellular phone, tablet computer, mobile device, etc., that may be used for any suitable purpose in addition to buying promotions and/or offering promotions for sale. The depiction in
Processor 902 may, for example, be embodied as various means including one or more microprocessors with accompanying digital signal processor(s), one or more processor(s) without an accompanying digital signal processor, one or more coprocessors, one or more multi-core processors, one or more controllers, processing circuitry, one or more computers, various other processing elements including integrated circuits such as, for example, an ASIC (application specific integrated circuit) or FPGA (field programmable gate array), or some combination thereof. Accordingly, although illustrated in
Whether configured by hardware, firmware/software methods, or by a combination thereof, processor 902 may comprise an entity capable of performing operations according to embodiments of the present invention while configured accordingly. Thus, for example, when processor 902 is embodied as an ASIC, FPGA or the like, processor 902 may comprise specifically configured hardware for conducting one or more operations described herein. Alternatively, as another example, when processor 902 is embodied as an executor of instructions, such as may be stored in memory 904, the instructions may specifically configure processor 902 to perform one or more algorithms and operations described herein, such as those discussed in connection with
Memory 904 may comprise, for example, volatile memory, non-volatile memory, or some combination thereof. Although illustrated in
Communications module 906 may be embodied as any device or means embodied in circuitry, hardware, a computer program product comprising computer readable program instructions stored on a computer readable medium (e.g., memory 904) and executed by a processing device (e.g., processor 902), or a combination thereof that is configured to receive and/or transmit data from/to another device, such as, for example, a second circuitry 900 and/or the like. In some embodiments, communications module 906 (like other components discussed herein) can be at least partially embodied as or otherwise controlled by processor 902. In this regard, communications module 906 may be in communication with processor 902, such as via a bus. Communications module 906 may include, for example, an antenna, a transmitter, a receiver, a transceiver, network interface card and/or supporting hardware and/or firmware/software for enabling communications with another computing device. Communications module 906 may be configured to receive and/or transmit any data that may be stored by memory 904 using any protocol that may be used for communications between computing devices. Communications module 906 may additionally or alternatively be in communication with the memory 904, input/output module 908 and/or any other component of circuitry 900, such as via a bus.
Input/output module 908 may be in communication with processor 902 to receive an indication of a user input and/or to provide an audible, visual, mechanical, or other output to a user (e.g., provider and/or consumer). Some example visual outputs that may be provided to a user by circuitry 900 are discussed in connection with
Promotion generating/editing module 910 may also or instead be included and configured to perform the functionality discussed herein related to generating and/or editing promotion offers discussed above. In some embodiments, some or all of the functionality of generating and/or editing promotion offers may be performed by processor 902. In this regard, the example processes and algorithms discussed herein can be performed by at least one processor 902 and/or promotion generating/editing module 910. For example, non-transitory computer readable media can be configured to store firmware, one or more application programs, and/or other software, which include instructions and other computer-readable program code portions that can be executed to control each processor (e.g., processor 902 and/or promotion generating/editing module 910) of the components of system 800 to implement various operations, including the examples shown above. As such, a series of computer-readable program code portions are embodied in one or more computer program goods and can be used, with a computing device, server, and/or other programmable apparatus, to produce machine-implemented processes.
For example, promotion generating/editing module 910 can be configured to analyze multiple potential promotion offers (e.g., including various combinations of days, times, goods, durations, etc.) in view of known provider needs (such as, e.g., needing to sell excess inventory, underutilized service appointments, and/or inventory about to expire) to recommend one (or a list) of potential promotion offers to present to a provider device. In this way, promotion generating/editing module 910 may support multiple ranking algorithms, such as those discussed above, so that the selected algorithm may be chosen at runtime. Further, the present configuration can enable flexibility in terms of configuring additional contexts.
In some embodiments, promotion generating/editing module 910 iteratively scores potential promotion offers and/or ranks a list of the potential promotion offers. The promotional system 802 may be configured to view one or more of the top potential promotion offers, and the respective provider device may be configured to display only the top potential promotion offer. In some embodiments, the promotional system may likewise display only one or no potential promotion offers and the provider device may display none or a plurality of promotion offers. Promotion generating/editing module 910 can be configured to access multiple promotion offers, and generate initial scores for the multiple promotion offers and/or an initial ranking of the multiple promotion offers. In some embodiments, the multiple promotion offers can be ranked in accordance with a promotional campaign strategy, wherein multiple promotions are prescheduled and coordinated for the future. Thereafter, promotion generating/editing module 910 can adjust the initial scores for the multiple promotions and/or the initial ranking of the multiple promotions at least once (and potentially multiple times). Promotion generating/editing module 910 may adjust the scores and/or the rankings of the promotions in one or multiple ways. For example, the promotion generating/editing module 910 may use one or more correction factors in order to alter the initial scores or subsequent scores for the multiple promotions and/or the initial ranking of the multiple promotions or subsequent ranking(s) of the multiple promotions. As another example, the promotion generating/editing module 910 may use one or more rules to adjust the initial scores, the subsequent scores, the initial ranking of the multiple promotion offers, or the subsequent ranking(s) of the multiple promotion offers (such as by excluding a promotion based on a business rule).
In adjusting the initial scores, the subsequent scores, the initial ranking and/or the subsequent ranking(s), the promotion generating/editing module 910 may analyze consumer data, provider data and/or promotion data. For example, the promotion generating/editing module 910 may analyze provider data during one scoring or one ranking of the multiple promotion offers and analyze provider data (or a different type of provider data) during a subsequent scoring or a subsequent ranking. For example, a plurality of promotions can be preconfigured over the course of days, weeks and/or some other time frame, wherein only one or a few variables (such as time, price, etc.) changes, and the other promotion variables remain the same as a control. This may help promotion generating/editing module 910 to conduct market research and/or otherwise determine what the best promotion offer is for a particular provider. The provider device may or may not include a user-configurable authorization feature to enable this and/or other features discussed herein.
The provider data analyzed by the promotion generating/editing module 910 may be the same type of provider data in the different scoring or ranking iterations. For example, the promotion generating/editing module 910 may analyze a first type of geographic data in order to generate scoring for the multiple promotion offers or one ranking of the multiple promotion offers, and may analyze a second type of geographic data in order to generate subsequent scoring or a subsequent ranking. In particular, the promotion generating/editing module 910 may use distance of the consumer(s) to a promotion location to generate the initial scores for the multiple promotion offers and/or an ranking(s) of the multiple promotion offers, and use the location of the consumer(s) in a city to determine whether to modify the initial scores and/or to adjust the initial ranking of the multiple promotions.
Alternatively and/or additionally, the promotion generating/editing module 910 may analyze different types of user data in the different scoring or ranking iterations. For example, the promotion generating/editing module 910 may analyze consumer and/or provider data that does not include user past purchase history to generate scoring for the multiple promotions and/or one ranking of the multiple promotions, and may analyze consumer and/or provider past purchase/sale history to generate subsequent scoring or a subsequent ranking (such as using past purchase history to modify the scores or to adjust an initial ranking of the promotion offers). As another example, the promotion generating/editing module 910 may analyze provider and/or consumer data that does not include provider and/or consumer promotion type preference(s) to generate scores for the multiple promotions or one ranking of the multiple promotions, and may analyze provider and/or consumer promotion type preference(s) to generate subsequent scoring or a subsequent ranking. As still another example, the promotion generating/editing module 910 may analyze provider and/or consumer data that does not include any aspect of the consumer interest to generate scores for the multiple promotions or one ranking of the multiple promotions, and may analyze consumer interest (such a user's open rate of previous e-mails and/or a consumer's click rate of links) to generate subsequent scoring or a subsequent ranking.
As will be appreciated, any such computer program instructions and/or other type of code may be loaded onto a computer, processor or other programmable apparatus's circuitry to produce a machine, such that the computer, processor other programmable circuitry that execute the code on the machine create the means for implementing various functions, including those described herein.
It is also noted that all or some of the information presented by the example displays discussed herein can be based on data that is received, generated and/or maintained by one or more components of system 800. In some embodiments, one or more external systems (such as a remote cloud computing and/or data storage system) may also be leveraged to provide at least some of the functionality discussed herein.
As described above and as will be appreciated based on this disclosure, embodiments of the present invention may be configured as methods, mobile devices, backend network devices, and the like. Accordingly, embodiments may comprise various means including entirely of hardware or any combination of software and hardware. Furthermore, embodiments may take the form of a computer program product on at least one non-transitory computer-readable storage medium having computer-readable program instructions (e.g., computer software) embodied in the storage medium. Any suitable computer-readable storage medium may be utilized including non-transitory hard disks, CD-ROMs, flash memory, optical storage devices, or magnetic storage devices.
Embodiments of the present invention have been described above with reference to block diagrams and flowchart illustrations of methods, apparatuses, systems and computer program goods. It will be understood that each block of the circuit diagrams and process flowcharts, and combinations of blocks in the circuit diagrams and process flowcharts, respectively, can be implemented by various means including computer program instructions. These computer program instructions may be loaded onto a general purpose computer, special purpose computer, or other programmable data processing apparatus, such as processor 902 and/or promotion generating/editing module 910 discussed above with reference to
These computer program instructions may also be stored in a computer-readable storage device (e.g., memory 904) that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable storage device produce an article of manufacture including computer-readable instructions for implementing the function discussed herein. The computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer-implemented process such that the instructions that execute on the computer or other programmable apparatus provide steps for implementing the functions discussed herein.
Accordingly, blocks of the block diagrams and flowchart illustrations support combinations of means for performing the specified functions, combinations of steps for performing the specified functions and program instruction means for performing the specified functions. It will also be understood that each block of the circuit diagrams and process flowcharts, and combinations of blocks in the circuit diagrams and process flowcharts, can be implemented by special purpose hardware-based computer systems that perform the specified functions or steps, or combinations of special purpose hardware and computer instructions.
Many modifications and other embodiments of the inventions set forth herein will come to mind to one skilled in the art to which these embodiments of the invention pertain having the benefit of the teachings presented in the foregoing descriptions and the associated drawings. Therefore, it is to be understood that the embodiments of the invention are not to be limited to the specific embodiments disclosed and that modifications and other embodiments are intended to be included within the scope of the appended claims. Although specific terms are employed herein, they are used in a generic and descriptive sense only and not for purposes of limitation.
This application is a divisional of U.S. application Ser. No. 16/844,055, filed Apr. 9, 2020, which is a divisional of U.S. application Ser. No. 13/833,548, filed Mar. 15, 2013, now U.S. Pat. No. 10/664,861, which claims the benefit of U.S. Provisional Patent Application No. 61/618,338, filed Mar. 30, 2012, the entire contents of which are incorporated herein by reference.
Number | Date | Country | |
---|---|---|---|
61618338 | Mar 2012 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 16844055 | Apr 2020 | US |
Child | 17873837 | US | |
Parent | 13833548 | Mar 2013 | US |
Child | 16844055 | US |