EP2884443A1 - Digital loyalty program system - Google Patents

Digital loyalty program system Download PDF

Info

Publication number
EP2884443A1
EP2884443A1 EP13005762.3A EP13005762A EP2884443A1 EP 2884443 A1 EP2884443 A1 EP 2884443A1 EP 13005762 A EP13005762 A EP 13005762A EP 2884443 A1 EP2884443 A1 EP 2884443A1
Authority
EP
European Patent Office
Prior art keywords
loyalty
user
stamp
transfer
stamps
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
EP13005762.3A
Other languages
German (de)
French (fr)
Inventor
Lex Koetzler
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Triple IT BV
Original Assignee
Triple IT BV
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Triple IT BV filed Critical Triple IT BV
Priority to EP13005762.3A priority Critical patent/EP2884443A1/en
Publication of EP2884443A1 publication Critical patent/EP2884443A1/en
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce

Definitions

  • the invention relates to a digital loyalty program and, in particular, though not exclusively, to a software-implemented method for a digital interactive loyalty program and a computing system for a digital interactive loyalty program, a client and server for use in such system and a computer program product for using such method.
  • loyalty programs are a very important marketing tool to tie customers to a particular brand or product.
  • loyalty programs such as Airmiles or the like rely on the collection of a number of "points" or “credits” that can be used to get a special offer or a discount. These credits may be collected when buying a product in a shop or online. Credits may be physical credits tied to a physical product, e.g. stamps that are printed on the product that need to be cut out before they can be exchanged.
  • credits may be collected by customers via scanning an QR code that is printed on a product using a mobile app.
  • the QR code may contain loyalty information, e.g. credits and one or more links URLs to the website of the retailer. These credits may be electronically collected in a user account and the URLs may be used to obtain further information about the sold product or to access related products or offers.
  • the mobile app may be configured to produce user behaviour information that can be collected and analysed by a back-end server.
  • aspects of the present invention may be embodied as a system, method or computer program product. Accordingly, aspects of the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, micro-code, etc.) or an embodiment combining software and hardware aspects that may all generally be referred to herein as a "circuit,” “module” or “system.” Functions described in this disclosure may be implemented as an algorithm executed by a microprocessor of a computer. Furthermore, aspects of the present invention may take the form of a computer program product embodied in one or more computer readable medium(s) having computer readable program code embodied, e.g., stored, thereon.
  • the computer readable medium may be a computer readable signal medium or a computer readable storage medium.
  • a computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing.
  • a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device.
  • a computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave, Such a propagated signal may take any of a variety of forms, including, but not limited to, electromagnetic, optical, or any suitable combination thereof.
  • a computer readable signal medium may be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.
  • Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber, cable, RF, etc., or any suitable combination of the foregoing.
  • Computer program code for carrying out operations for aspects of the present invention may be written in any combination of one or more programming languages, including an object oriented programming language such as Java(TM), Smalltalk, C++ or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages.
  • the program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer, or entirely on the remote computer or server.
  • the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider).
  • LAN local area network
  • WAN wide area network
  • Internet Service Provider an Internet Service Provider
  • These computer program instructions may also be stored in a computer readable medium that can direct a computer, other programmable data processing apparatus, or other devices to function in a particular manner, such that the instructions stored in the computer readable medium produce an article of manufacture including instructions which implement the function/act specified in the flowchart and/or block diagram block or blocks.
  • the computer program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other devices to cause a series of operational steps to be performed on the computer, other programmable apparatus or other devices to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide processes for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.
  • each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s).
  • the functions noted in the blocks may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved.
  • the invention may relate to a computer-implemented method enabling the transfer of one or more digital loyalty stamps from a first user device to a second user device, wherein said first and second user device are in communication with at least one server and a user database configured for storing loyalty stamps that are collected by said first and second user device.
  • a loyalty stamp may be associated with a loyalty stamp identifier, a digital image part and a transfer indicator for indicating whether the loyalty stamp is in a transferable or a non-transferable state.
  • the method may comprise: a first user device, comprising at least one first processor, a first memory and a touch-sensitive display, executing computer readable program code for: rendering a (transfer offer) GUI comprising a first area for displaying one or more first loyalty stamps that are selected for transfer to a second user device and a third touch-sensitive area; and, in response to receiving a user input via said touch-sensitive area, sending at least one transfer offer message comprising one or more first loyalty stamp identifiers associated with said one or more first loyalty stamps and a first user identifier for identifying said first user and/or first user device to said server, wherein said transfer offer message may instruct said server to set the state of said one or more first loyalty stamps of said first user that are stored in said user database and identified in said transfer offer message to transferable.
  • a first user device comprising at least one first processor, a first memory and a touch-sensitive display, executing computer readable program code for: rendering a (transfer offer) GUI comprising a first area for displaying
  • the method may comprise: a first user device, comprising at least one first processor, a first memory and a touch-sensitive display, executing computer readable program code for: rendering a first (loyalty program) GUI comprising a first touch-sensitive area for displaying one or more loyalty stamps that are collected by said first user device, said one or more displayed loyalty stamps being associated with one or more loyalty stamp identifiers that are stored in said first memory; receiving a user input via said first touch-sensitive area for selecting one or more first loyalty stamps for transfer to a second user device; in response to said selection, rendering a second (transfer offer) GUI comprising a second touch-sensitive area for displaying said one or more first loyalty stamps that are selected for transfer and a third touch-sensitive area; and, in response to receiving a user input via said third touch-sensitive area, sending at least one transfer offer message comprising one or more first loyalty stamp identifiers associated with said one or more first loyalty stamps and a first user identifier for identifying said first user and/
  • the invention allows simple and efficient transfer of digital loyalty stamps from a first to a second user device, e.g. a smart phone or an electronic table, wherein the transfer includes offering the stamps to another user wherein during offering the status of the offered stamps are changes from non-transferable to transferable so that only during the time that the loyalty stamps are offered a transaction can be established.
  • a second user device e.g. a smart phone or an electronic table
  • the transfer includes offering the stamps to another user wherein during offering the status of the offered stamps are changes from non-transferable to transferable so that only during the time that the loyalty stamps are offered a transaction can be established.
  • the offered stamps are in the transferable state, they may be accepted by a second user device that is capable of receiving the offer.
  • said user input via said third touch-sensitive area may comprise the first user touching said third touch-sensitive area and wherein the one or more loyalty stamps in said user database may be kept in said transferable state as long as said first user keeps contact with said third touch-sensitive area.
  • an area of the GUI may be used to keep the status of the stamps during the offering into the transferable state.
  • the transferable state is maintained if the user keeps in touch with the third touch-sensitive area (e.g. a transfer offer button).
  • said method may further comprise: in response to said user releasing contact with said third touch-sensitive area, sending a transfer stop message comprising the one or more first loyalty stamp identifiers to said server, said transfer stop message instructing said server to set the state of the loyalty stamps identified in said transfer stop message (back) to non-transferable.
  • a client in the first user device may notify the server that state of the first loyalty stamps should be reversed back to non-transferable.
  • said third touch-sensitive area may be configured as a slidable transfer offer button, wherein said user input is activated when said button is slided from a first (default) position to a second (target) position.
  • said second (transfer offer) GUI may render an indicator for showing the user that the one or more first loyalty stamps that are selected for transfer to a second user device are in a transferable state.
  • a slidable button may be used that is moved from a first to a second position before the user input activates the transmission of a transfer offer message to the server in order to set the offered loyalty stamps into the transferable state.
  • said method may further comprise: said first user device executing computer readable program code for: generating one or more electronically readable pick-up codes that can be picked-up by said second user device on the basis of said one or more first loyalty stamp identifiers associated with said one or more loyalty stamp that are selected for transfer.
  • the loyalty stamp identifiers may be used to generate electronically readable pick-up code, e.g. an QR code on the display of the user device, a NFC message that can be transmitted to a second user device that is in the vicinity of the first user device or an audio signal that can be transmitted and recorded by to a second user device that is in the vicinity of the first user device.
  • said method may further comprise: a second user device, comprising at least one processor, preferably a microprocessor, executing computer readable program code for: detecting at least part of said one or more electronically readable pick-up codes generated by said first user device; decoding said one or more electronically readable pick-up codes into one or more second loyalty stamp identifiers; sending said one or more second loyalty stamp identifiers and a second user identifier for identifying said second user and/or second user device in at least one transfer acceptance message to said server, wherein said transfer acceptance message may instruct said user database to match said one or more second loyalty stamp identifiers with one or more loyalty stamp identifiers in said user database that are in the transferable state.
  • a second user device comprising at least one processor, preferably a microprocessor, executing computer readable program code for: detecting at least part of said one or more electronically readable pick-up codes generated by said first user device; decoding said one or more electronically readable pick-up codes into one or more second loyalty stamp identifiers;
  • said method may further comprise: receiving a notification message from said server, said notification message notifying said first user device that said one or more first loyalty stamps are transferred.
  • said first user device in response to said notification message, may remove at least part of the one or more loyalty stamp identifiers from said first memory.
  • said one or more loyalty stamps that are collected by said first user are stored in a user account of said first user.
  • the invention may relate to a user device configured for enabling the transfer of one or more digital loyalty stamps to another user device, wherein said user devices are in communication with at least one server and a user database configured for storing loyalty stamps that are collected by said user devices, a loyalty stamp being associated with a loyalty stamp identifier, a digital image part and a transfer indicator for indicating whether the loyalty stamp is in a transferable or a non-transferable state, and wherein said user device may comprise a microprocessor coupled to a touch-sensitive display, a communication module, and a computer-readable first memory having computer readable program code embodied therewith, wherein responsive to executing the computer readable program code.
  • said microprocessor may be configured to perform executable operations for: rendering a first (loyalty program) GUI on said touch-sensitive display, said first GUI comprising a first touch-sensitive area for displaying one or more loyalty stamps that are collected by said first user device, said one or more displayed loyalty stamps being associated with one or more loyalty stamp identifiers that are stored in said first memory; receiving a user input via said first touch-sensitive area for selecting one or more first loyalty stamps for transfer to a second user device; in response to said selection, rendering a second (transfer offer) GUI on said touch-sensitive display, said second GUI comprising a second touch-sensitive area for displaying said one or more first loyalty stamps that are selected for transfer and a third touch-sensitive area; and, in response to receiving a user input via said third touch-sensitive area, sending at least one transfer offer message comprising one or more first loyalty stamp identifiers associated with said one or more first loyalty stamps and a first user identifier for identifying said first user and/or first user device via said
  • said user input received via said third touch-sensitive area may comprise a user touching said third touch-sensitive area and wherein the one or more loyalty stamps in said user database are kept in said transferable state as long as said user keeps contact with said third touch-sensitive area.
  • said executable operations may further comprise: in response to said user releasing contact with said third touch-sensitive area, sending a transfer stop message comprising the one or more first loyalty stamp identifiers to said server, said transfer stop message instructing said server to set the state of the loyalty stamps identified in said transfer stop message (back) to non-transferable.
  • said third touch-sensitive area may be configured as a slidable tranfer offer button, wherein said user input is activated when said button is slided from a first (default) position to a second (target) position; preferably said second (transfer offer) GUI rendering an indicator for showing the user that the one or more first loyalty stamps that are selected for transfer to a second user device are in a transferable state.
  • said executable operations may further comprise: generating one or more electronically readable pick-up codes that can be picked-up by said second user device on the basis of said one or more first loyalty stamp identifiers associated with said one or more loyalty stamp that are selected for transfer.
  • the invention may further relate to a computer program product comprising software code portions configured for, when run in the memory of a computer, executing the method steps as described above.
  • Fig. 1 schematically depicts a digital loyalty program system according an embodiment of the invention.
  • the loyalty program system may comprise one or more servers 102 that are configured to execute a loyalty server application 104 (a server application).
  • the server application may be configured to communicate with one or more loyalty client applications 106 1,2 (clients) that are installed on (mobile) user devices 108 1,2 .
  • the system may be configured to publish and distribute loyalty stamps, e.g. a piece of content representing a digital collectable, in particular a digital image part representing pictures (e.g. players of a soccer team, celebrities, products, etc.) that can be electronically distributed and published.
  • the server application and the client application may be configured for collecting published loyalty stamps and for exchanging loyalty stamps between clients.
  • a loyalty stamp may be linked to one or more (unique) identifiers (a loyalty stamp identifier).
  • the process of collecting and transferring loyalty stamps will be discussed hereunder in more detail.
  • the digital image parts may be stored in a content database 128 that is connected to the server hosting the server application.
  • a predetermined set of loyalty stamps may form a loyalty stamp collection, which may be linked to a certain marketing campaign.
  • a client in a user device may be configured to collect published digital loyalty stamps using for example a sensor input of the user device (e.g. a camera), to connect to the server application and send a collected loyalty stamp to the server application.
  • the server application may store the collected stamps 140 as a set of loyalty stamp identifiers in a user database 120 that is connected to the server application.
  • the loyalty stamp identifiers are linked to the digital imaging parts in the content database.
  • the user database and the content database may be part of a single (distributed) database platform.
  • the loyalty stamp that is collected by a user may be stored in a user account 138 of the user database. Collected stamps in a user account may be referred to as a user collection.
  • the user may collect the missing pieces 142 of a loyalty stamp collection until the user collection is complete.
  • the user collection may also be stored (in the form of loyalty stamp identifiers and associated image parts) in the memory of the user device so that the client is able to render a graphical user interface (GUI) for displaying and manipulating (part of) the user collection, e.g. the collected digital image parts.
  • GUI graphical user interface
  • the GUI may be further configured for displaying the loyalty stamps that still need to be collected in order to get a complete loyalty collection.
  • the loyalty program system may further comprise one or more loyalty stamp dispenser modules 118 1-3 that are configured for publication of collectable loyalty stamps directly via a web application or for enabling third parties to publish collectable loyalty stamps.
  • a dispenser module may comprise an encoding function 122 1-3 for encoding a loyalty stamp identifier associated with the loyalty stamp into an electronically readable pick-up code 124.
  • an electronically readable pick-up code may be a graphically readable pick-up code such as a QR code, a bar code, a logo, photo, fingerprint, etc. that can be scanned by a suitable image sensor in the user device.
  • the electronically readable pick-up code may be implemented as an audio signal that may be picked up and sampled by a microphone in the user device.
  • the electronically readable pick-up code may be implemented an radiofrequency (RF) signal, e.g. a near field communication signal or an RFID signal, that can be picked-up by a suitable receiver in the user device.
  • RF radiofrequency
  • the electronically readable pick-up code may be picked-up by the user device and decoded into a loyalty stamp identifier.
  • the client may be configured to control sensor electronics (e.g. a digital camera, audio receiver and/or an RF receiver) in the mobile user device.
  • the client may be configured to control the camera for scanning the electronically readable pick-up code by e.g. taking one or more samples (e.g. images or audio samples) of at least part of the pick-up code.
  • the client may comprise a digital signal-processing (DSP) module (e.g. a QR code scanner module or an image and/or audio recognition module) and a decoding function that is configured for decoding the pick-up code into (at least part of) a loyalty stamp identifier or a reference (e.g. an URL or an IP address) to a loyalty stamp identifier.
  • DSP digital signal-processing
  • the loyalty stamp identifier and a user ID associated with the client or user may be sent to the loyalty application that may correlate the scanned loyalty stamp identifier with a loyalty stamp in the user database. It may further associate the user ID with a user account and store the scanned loyalty stamp identifier in the user account. If needed, the server application may use the loyalty stamp identifier to look in the content database for the digital image part that is linked to the loyalty stamp identifier. The digital image part may be sent to the user device so that the client may store the collected loyalty stamp, i.e. the image part and the loyalty stamp identifier, in the memory so that the GUI may display the collected loyalty stamp to the user. This way, a user may collect and add loyalty stamps to his or her collection (a user collection). Once a user has collected all the loyalty stamps that belong to a certain loyalty stamp collection, the user may exchange the set of loyalty stamps for a reward or a discount.
  • a dispenser module may be a static dispenser that is configured to provide or publish predetermined loyalty stamp identifiers (or associated pick-up codes) that may be generated by a code server 110.
  • a loyalty stamp identifier may be static in the sense that they are valid for a relatively long period, e.g. during the entire marketing campaign.
  • the server application may send (static) loyalty stamp identifiers to the dispenser modules, which use the encoding function for transforming the identifier into an electronically readable format, e.g. a graphically readable QR code, that can be picked-up by the clients.
  • Dispenser modules may be part of an larger entity, e.g. a control system of an production entity such as a production facility, a printing facility, a functional network e.g. a multimedia platform or a content delivery network (CDN), or a software application or platform, e.g. a web application that is hosted on a loyalty server.
  • LS_IDs loyalty stamp identifiers
  • associated digital image parts may be provided (e.g. electronically sent) to a controlling system of a production facility 118 1 so that during the production pick-up codes and, in some embodiments, associated digital image parts may be printed onto products 120 or printables 122 such as magazines or posters.
  • loyalty stamp identifiers may be electronically sent to a multimedia platform 123, e.g. a broadcast system and/or streaming system 118 2 , which may transmit the loyalty stamp identifiers in an electronic signal 124, e.g. a television signal such as a broadcast or multicast signal, a media streaming signal or an out-of-band signal to one or more media processing devices 126 1 .
  • a media processing device may be for example relate to a digital television, an electronic tables, a set-top box or a computer.
  • the loyalty stamp identifiers may be embedded as an optically readable code 128 (e.g. a QR code) or an audio signal 130 in the content that is sent to the media processing devices, so that during rendering of the content the pick-up code is published, e.g. displayed to the user or exposed to the user via an audio signal.
  • the loyalty stamp identifier may be sent as metadata to the media processing device, which may use an encoding function for encoding the identifier into an electronically readable pick-up code so that it can be published to the user.
  • an application in an HbbTV may use the encoding function for generating a graphically readable pick-up code or an audio pick-up code.
  • the graphically readable pick-up code may be displayed as a graphical overlay over the displayed content of the television or media-streaming signal.
  • a reference to a pick-up code may be sent to the media-processing device.
  • An application in the media-processing device may present the pick-up code reference as a selectable item to the user.
  • the pick-up code reference may point to a location of a loyalty server 118 3 that may be accessible via a web-browser on a media-processing device 126 2 .
  • the media device may display the graphically readable pick-up code and, optionally, associated image parts to the user.
  • the pick-up code may be presented to the user as a wireless signal, e.g. a near field communication (NFC) signal or a Bluetooth signal.
  • NFC near field communication
  • a dispenser module may (also) be configured as a dynamic dispenser module that is dynamically generating loyalty stamp identifiers in time.
  • a dynamically generated loyalty stamp identifier is only valid for a short time period so that it can only be published once or a few times.
  • a loyalty stamp may be linked to a set of loyalty stamp identifiers wherein each loyalty stamp identifier is linked to time information, e.g. a certain time period in which the loyalty stamp identifier is valid.
  • the dispenser module will sequentially published loyalty stamp identifiers in accordance with the time information, so that when a loyalty stamp identifier is published (in the form of a electronically readable pick-up code), a user has a limited time to collect a loyalty stamp. This way, the effects of unauthorized copying and publication of loyalty stamps can be eliminated or at least substantially reduced.
  • Fig. 2 depicts a flow diagram of a process for collecting loyalty stamps according to an embodiment of the invention.
  • the process may start with a user activating the client, e.g. by activating a collection button of a GUI that is rendered by the client on the screen of the user device.
  • a sensor e.g. an image sensor or a RF sensor
  • detect e.g. scan or pick-up
  • an electronically readable pick-up code e.g. displayed on the television, printed on a product or transmitted via an RF signal to the user device (step 202).
  • the client may decode the pick-up code into a loyalty stamp identifier (step 204) and send the loyalty stamp identifier and a user ID associated with the client to the server application (step 206), which may forward the identifiers to the user database.
  • other information associated with the pick-up code may also be sent with the identifiers to the user database.
  • a timestamp associated with the scanning or pick-up of the electronically readable pick-up code may be sent with the loyalty stamp to the server application.
  • location information e.g. the GPS location, of the client may be sent along with the loyalty stamp identifier to the server application.
  • the user database may then identify the loyalty stamp identifier in order to determine to which loyalty stamp collection it belongs to (step 208) and use the user ID to check whether the user has the right to collect the loyalty stamp (step 210).
  • a user may only collect one copy of a predetermined loyalty stamp.
  • the loyalty stamp may only be valid within a certain time period. For example, if a dynamic dispenser publishes the collected loyalty stamp, the stamp may only be collected within a predetermined time period.
  • the client scans the loyalty stamp and decodes it into a loyalty stamp identifier, it may generate a timestamp associated with the scanning of the loyalty stamp.
  • the time stamp may be used by the user database to determine whether the loyalty stamp was collected in time.
  • the user database may notify the server application whether the user has the right to collect the loyalty stamp (step 212). If it is determined that the user has the right to collect the loyalty stamp, the server application may trigger the collection of the loyalty stamp (step 214) by instructing the user database to add the loyalty stamp to the user collection (step 216,218). The user database may then notify the server application that the stamp was successfully collected (step 220).
  • the notification message may comprise the loyalty stamp identifier of the collected loyalty stamp. In another embodiment, the notification message may further comprise the image part associated with the loyalty stamp identifier.
  • the server application may forward the notification message (which may include the loyalty stamp identifier and the image part of the collected loyalty stamp) to the client (step 222). In response, the client may update the user collection that is stored in the memory of the user device (step 224) and render an updated GUI displaying the loyalty stamps of the user collection, including the newly collected loyalty stamp, to the user.
  • Fig . 3 depicts a data model for a digital loyalty program system according an embodiment of the invention.
  • the data model may represent a data format that may be used by the user database for storing information that is needed to set-up and execute a loyalty service by the loyalty program system as described in this application.
  • the loyalty program system in particular the server application, may be configured to set-up a service account 302 for a company or organization (e.g. a media company, a retail chain or an online shop) that would like to use digital loyalty services.
  • a service account may have one or more loyalty program projects 304 1-3 .
  • Such project may e.g. relate to a television program that is produced by a media company or a marketing campaign for a retail chain or a certain brand or product.
  • a loyalty program project may be linked to one or more loyalty stamp collections 306 1-3 .
  • a loyalty stamp collection 306 3 may define a predetermined set of different loyalty stamps (e.g. images of players of a soccer team, digital bingo card, a digital scratch card, etc.) that belong together, wherein each loyalty stamp may be identified by one or more loyalty stamp identifiers 316.
  • a loyalty stamp identifier may be linked to digital part reference 317 that points to a digital image part that that is stored in a content database and that may be used by the client to display collected digital loyalty stamps from the user collection to the user.
  • a dispenser module may be linked to a project or a collection.
  • a dispenser may publish loyalty stamps (loyalty stamp identifiers and/or electronically readable pick-up codes associated with such identifiers) on the basis of publication information that may be stored in the loyalty project and/or loyalty collection data field.
  • Publication information for publishing loyalty stamps may include at least one of:
  • a loyalty stamp identifier may be linked to a publication time, i.e. the time in which a loyalty stamp should be published and a collection period 318, i.e. the time period after publication in which the published loyalty stamp can be collected), the type of pick-up code 318 (e.g. QR code or the like) and/or the publication frequency, i.e. the number of times in a time period that a loyalty stamp identifier may be published by a dispenser module.
  • a publication time i.e. the time in which a loyalty stamp should be published and a collection period 318, i.e. the time period after publication in which the published loyalty stamp can be collected
  • the type of pick-up code 318 e.g. QR code or the like
  • publication frequency i.e. the number of times in a time period that a loyalty stamp identifier may be published by a dispenser module.
  • the publication information for publishing loyalty stamps may dynamically modified by the server application on the basis of the number of loyalty stamps that are collected by clients and/or transferred between clients. This way, the collecting and/or transfer behavior of participants of a loyalty program may be influenced.
  • a user may subscribe to one or more loyalty projects using an online subscription procedure, which will create a new user account 308.
  • a user account may be identified using a unique user ID, e.g. a telephone number, a SIM card number, an IP number, chipset ID, or another suitable ID that may uniquely link the account to the user device. Further, the user account may identify one or more loyalty program projects in which the user is participating. After having obtained a user account for a particular loyalty program project, a user may install a client in one or more user devices.
  • the connection information associated with mobile user devices e.g. an IP address, may be stored in an installation data field of the user account. The connection information may be used to push notifications to a mobile user device on which a client is installed.
  • Loyalty stamps i.e. loyalty stamp identifiers and associated image parts
  • Loyalty stamps that are collected by a user may be stored in the user account as user collections 310 1-3 .
  • a user collection 310 3 may comprise loyalty stamp identifiers 315 of loyalty stamps that are collected ("owned") by the user.
  • Each loyalty stamp identifier may comprise status information.
  • the status information may comprise a transfer flag 312 for indicating the transfer status of a loyalty flag. For example, if the transfer flag is set, the loyalty stamp associated with a loyalty stamp identifier or associated with set of loyalty stamp identifiers may be transferred to another user that participates in the same loyalty project.
  • the loyalty program system may use dispensing modules that publish loyalty stamps of the same project via different communication channels.
  • it may allow the publication of one part of the loyalty stamps of a loyalty collection via one communication channel (e.g. television or the website) and another part via another, different communication channel (e.g. magazine or product).
  • the loyalty program may be compatible with a multi-channel marketing strategy.
  • the dispenser modules may be dynamically controlled and adjusted on the basis of the behavior of the clients, e.g. the number of loyalty stamps that are collected by users (or a part thereof) of a loyalty project via publication via a particular dispenser, the publication frequency of one or more of the dispenser modules may be adjusted, etc.
  • loyalty stamps one or more communication channels.
  • publication of loyalty stamps of a loyalty collection via dispensing modules may be controlled such that in order to collect a complete collection, a user has to access each of the communication channels that is used for publishing the loyalty stamps.
  • Fig. 4 schematically depicts a user device comprising a client for collecting and transferring loyalty stamps according to an embodiment of information.
  • Fig . 4 depicts a user device, e.g. a smart phone or an electronic table or the like, a memory module 436, one or more sensors module 428, a (touch-sensitive) display module 426, a user interface module 432, a collection/transfer module 434 and a communication interface module 438 connected via a databus to a microprocessor 430.
  • the microprocessor may run client software that is stored in the memory module for controlling the processes that are executed by and between the different modules and that enable collection of digital loyalty stamps and the transfer of loyalty stamps to other user devices.
  • the collection/transfer module 434 may be configured to control collection of loyalty stamps by triggering a sensor in the sensor module for scanning or pick-up an electronically readable pick-up code 422 and for decoding the pick-up code into a loyalty stamp identifier.
  • the communication interface module may be used to access the server application in order to execute a process for collecting and storing the loyalty stamp in the user account of the user as e.g. described with reference to Fig. 2 .
  • the user collection 404 in the memory of the user device comprising the collected loyalty stamps (i.e. loyalty stamp identifiers LS2, LS4, LS6-LS12 and their associated image parts) may be updated.
  • the collected loyalty stamps i.e. loyalty stamp identifiers LS2, LS4, LS6-LS12 and their associated image parts
  • the user collection may be used by the user interface (UI) module in order to render a GUI 410 on the screen of the user device.
  • the UI module may render a GUI that allows intuitive control and handling of a user collection.
  • the GUI may comprise a first graphical area 412 comprising the collected loyalty stamps 414 in a predetermined order.
  • the first graphical area may display the collected loyalty stamps in a predetermined arrangement wherein each loyalty stamp may be configured as a touch-screen selectable item.
  • the image parts of the user collection may be arranged such that it is clear which loyalty stamps 416 1-3 still need to be collected in order to complete the collection.
  • the GUI may be configured to be touch-sensitive for selecting a loyalty stamp of the user selection.
  • the graphical user interface may further comprise a second graphical area that may be configured as a collection and/or transfer button 420.
  • the second graphical are configured such that a collection or a transfer may be confirmed a decision by the user (e.g. the collection of a loyalty stamp or the transfer of a loyalty stamp to another user).
  • the interactions of a user with the GUIs rendered by the loyalty program during the process of transferring a loyalty stamp from a first to a second user device are described in more detail with reference to Fig. 5 , 6 , 8 and 9 .
  • the loyalty program system may allow a user to collect loyalty stamps by receiving a loyalty stamp from another user that participates in the loyalty program.
  • Fig. 5A and 5B schematically depict the transfer of a loyalty stamp from a first user device 502 to another second user device 504 according to an embodiment of the invention.
  • Fig. 5A(i) depicts a first phase of the transfer process wherein the first user desires to transfer a loyalty stamp 510 from the first user collection 506 to the second user collection of the second user (e.g. because the selectable loyalty stamp in the first user collection is missing in the second user collection).
  • the first user may instruct the first user device 502, in particular the first client in the first user device, to render a loyalty program GUI 504 for selecting the loyalty stamp 510 from the first user collection 506 for transfer.
  • the first client may render a loyalty program GUI 504 on the screen comprising a first graphical area 506 depicting the selectable loyalty stamps in the first user collection, including the selectable loyalty stamp 510 that needs to be transferred.
  • the second client in the second user device may render a loyalty program GUI 512 depicting the second user collection, including the loyalty stamp 516 that is missing.
  • Fig. 5A(ii) depicts a second phase of the transfer process wherein, in response to the selection of the loyalty stamp that needs to be transferred (e.g. by touching the area displaying the selectable loyalty stamp in the loyalty program GUI), the client may render a transfer offer GUI 518 for offering the transfer of at least one selected loyalty stamp to another user device.
  • the transfer offer GUI may comprise a transfer offer button 522 which may activate the offer of a transfer of the selected loyalty stamp.
  • the first client may be triggered to encode the first loyalty stamp identifier of the selected loyalty stamp into an electronically readable pick-up code 520 (e.g. a QR code, an RF signal such as an NFC or Bluetooth signal).
  • an electronically readable pick-up code 520 e.g. a QR code, an RF signal such as an NFC or Bluetooth signal.
  • the transfer offer GUI may render the code 520 on the screen of the first mobile user device.
  • the client may send a transfer offer message comprising the first loyalty stamp identifier and a first user ID to the server application in order to inform the server application that the first user wants to offer the selected loyalty stamp for transfer (the communication between the clients and the server application is described in more detail with reference to Fig. 6 ).
  • the server application may instruct the user database to set the transfer flag associated with the selected loyalty stamp in the first user account (e.g. from “0" to "1"). For example, setting the transfer flag from “0" to "1” may be interpreted by the server application that the loyalty stamp is in the transfer state (i.e. a state wherein the loyalty stamp may be transferred).
  • the user database may keep a list of transferable loyalty stamps (i.e. loyalty stamps identified by a loyalty stamp identifier and a transfer flag indicating that the loyalty stamp is in the transfer state) in a cache memory.
  • the selected loyalty stamp may be held in the transfer state as long as the first user presses and/or holds down the transfer offer button 522 of the transfer offer GUI of the first user device. If the first user prematurely releases the transfer offer button 522, the client may send a notification (comprising the loyalty stamp identifier and the user ID) to the server application for setting the transfer flag of the loyalty stamp back to the non-transfer state. In that case, the server application may instruct the user database to set the transfer flag from "1" to "0". Further, the server application may instruct removal of the loyalty stamp from the list in the cache memory. Hence, in that case acceptance of the transfer offer is no longer possible.
  • the second client of a second mobile user device 504 may activate the second client to render a transfer acceptance GUI 524 for accepting a transfer offer of a loyalty stamp from another user device.
  • the transfer acceptance GUI may comprise a transfer acceptance button 526. Pressing and/holding down the transfer acceptance button 526 may scan the electronically readable pick-up code and decode the pick-up code in to a second loyalty stamp identifier.
  • the second client may scan the QR code 520 displayed by the first mobile user device and decode the scanned QR code into a second loyalty stamp identifier.
  • the transfer acceptance GUI may comprise a display area 528 for displaying the scanned QR code.
  • the second client may send a transfer accept message comprising the second loyalty stamp identifier and a second user ID to the server application.
  • the server application (or the user database) may look in the list of transferable loyalty stamps for a loyalty stamp identifier that matches the second loyalty stamp identifier. When a match is found, the server application may transfer the loyalty stamp from the first user collection to the second user collection.
  • the server application will determine that the loyalty stamp is in the non-transfer state (transfer flag is "0"). In that case, the second user may receive a message that the requested loyalty stamp is not available for transfer.
  • Transferring the loyalty stamp may include: removing the loyalty stamp entry of the transferred loyalty stamp from the first user collection in the user database; adding the loyalty stamp entry of the transferred loyalty stamp to the second user collection in the user database; setting the loyalty stamp in the non-transfer state (e.g. by setting the transfer flag to "0").
  • Fig. 5A(iii) depicts a third phase of the transfer process wherein the server application has notified the clients that the transfer has been successfully completed.
  • the GUIs of the first and second user device may be switched back to the loyalty program GUI 528, 536.
  • the notification message of the server application that is sent to the first client may trigger the first client to update the loyalty program GUI showing that the transferred loyalty stamp 534 has been removed from the first user collection 532.
  • the notification message of the server application that is sent to the second client may comprise the image part of the transferred loyalty stamp so that the second client may render an updated loyalty program GUI 540 showing that the transferred loyalty stamp 542 has been added to the second user collection.
  • Fig. 5B depicts an exemplary graphical user interface of clients during the process of transferring a loyalty stamp from a first mobile user device 502 to a second mobile user device 504.
  • the first client renders a transfer offer GUI on the screen of the first user device 520 comprising an image of a graphically readable pick-up code 508 of the loyalty sample that is selected for transfer and the second clients renders a transfer acceptance GUI on the screen comprising an image of the scanned graphically readable pick-up code that is displayed by the first user device.
  • first and second user may activate a transfer button offer button and a transfer acceptance button respectively in order to control the transfer.
  • Fig. 5A and 5B illustrate the transfer of one loyalty stamp on the basis of a graphical QR pick-up code
  • the same scheme may be easily expanded to a scheme wherein more than one loyalty stamp may be transferred in one go on the basis of different pick-up code.
  • multiple loyalty stamps may be selected for transfer, multiple electronically readable pick-up codes in the form of NFC messages may be generated for pick-up by a second user device.
  • the process of transferring a loyalty stamp on the basis of the transfer offer and transfer acceptance GUIs provide a simple and intuitive way of executing the transfer of a loyalty stamp. This way, participants to a loyalty project may transfer a loyalty stamp thereby allowing interaction between the participants.
  • Fig. 6 schematically depicts a flow diagram of a process for the transfer of a loyalty stamp from a first user device to a second user device according to an embodiment of the invention.
  • Fig. 6 depicts an exemplary flow diagram of the communication between the clients and the server application and the user database during the transfer of a loyalty stamp.
  • the process may start with a first user of a first (mobile) user device selecting a loyalty stamp for transfer to another second mobile user device.
  • the first user may interact with a GUI that is rendered on a touch-sensitive screen for selecting a loyalty stamp from the user collection that is displayed to the user (step 602 ).
  • the loyalty stamps of the user collection that are displayed on the screen may have corresponding loyalty stamp identifiers that are stored in the memory of the user device.
  • the client may render a transfer offer GUI comprising a transfer offer button for activating the transfer process.
  • the first client may send the first loyalty stamp identifier and the first user ID associated with the first client in a transfer offer message (step 606) to the server application, which may forward the identifiers to the user database.
  • the user database may determine the user account on the basis of the first user ID and uses the first loyalty stamp identifier in order to identify a corresponding loyalty stamp in a user collection of the identified user account (step 608).
  • the status of the loyalty stamp in the user collection may be set to the transfer state (step 610 ).
  • the status of the loyalty stamp remains in the transfer state as long as the first user keeps the transfer offer button of the transfer offer GUI activated.
  • the client may generate an electronically selectable pick-up code of the selected loyalty stamp identifier (step 612).
  • the rendered transfer offer GUI may display the pick-up code to the user indicating that the loyalty stamp that is offered for transfer may be accepted by the second user.
  • the second user may activate the second client in the second user device render a transfer acceptance GUI comprising a transfer acceptance button.
  • a sensor e.g. an image sensor or an RF or audio receiver
  • the second user device may be activated to detect the pick-up code (step 614) and to decode the pick-up code in a second loyalty stamp identifier (step 616).
  • the client may send the second loyalty stamp identifier and a second user ID associated with the second client in a transfer accept message to the server application, which may forward the identifiers to the user database (step 618).
  • the user database may be configured to maintain a list of transferable loyalty stamps (i.e. loyalty stamps that are in the transfer state) in a cache memory.
  • the user database may look in the list of transferable loyalty stamps for a loyalty stamp that matches the second loyalty stamp identifier (step 620). When a match is found, the database may use the second user ID to identify the second user account and to add the loyalty stamp identifier to the second user collection (step 622). Further, the user database may remove the loyalty stamp identifier from the first user collection (step 624) in order to complete the transfer.
  • the first client may instruct the server application to set the loyalty stamp into the non-transfer state (i.e. a state in which the loyalty stamp cannot be transferred).
  • the server application may determine that the loyalty stamp associated with the second loyalty stamp identifier is not available for transfer.
  • the server application may send a message to the first client to notify that the transfer was successful (step 626).
  • the first client may render an updated loyalty stamp GUI showing that the selected stamp is removed from the first user collection (step 628).
  • the server application may send a message to the second client notifying that the transfer was successful (step 630) and in response the client may render an updated loyalty stamp GUI which displays the loyalty stamps of the second user collection, including the loyalty stamp that has been transferred to the second user collection (step 632).
  • the system allows a user to collect loyalty stamps by transfer of a stamp from a first user to a second user. This way, interaction between the users that participate in the same loyalty program may be enhanced.
  • a timestamp associated with the scanning or pick-up of the electronically readable pick-up code may be sent with the loyalty stamp to the server application.
  • location information e.g. the GPS location, of the client may be sent along with the loyalty stamp identifier to the server application.
  • Fig. 7 schematically depicts the transfer of a loyalty stamp from one user to another user according to another embodiment of the invention.
  • first and second user devices 704, 706 comprising first and second clients respectively are in communication with a server application 702 and a user database 708 in a similar way as described with reference to Fig. 6 .
  • the user devices may be configured to set-up a local communication connection between the two devices using e.g. Bluetooth, NFC or WiFi.
  • the loyalty stamp identifier may be sent from the first to the second user device over the local communication connection 710 between the two devices.
  • Fig. 8 schematically depicts the process of a user interacting with an exemplary graphical user interface (GUI) for transferring a loyalty stamp to another user device according to an embodiment of the invention.
  • GUIs may be rendered by the user interaction module on a touch-sensitive screen of a user device. Graphical areas may define touch-sensitive areas that are associated with a certain function that executed when the user interacts with those areas in a predetermined way.
  • the user interaction module in the user device may render a loyalty program GUI 802 comprising a first area displaying the user collection of the user comprising collected loyalty stamps 810 and loyalty stamps (in this case blank spaces) that are still missing 812 (that still need to be collected).
  • the loyalty program GUI may further comprise a button 808 that may be activated by the user.
  • the button is a slidable button and may be used for collecting a loyalty stamp that is published by a dispenser (as e.g. described with reference to Fig. 2 ) or for accepting a transfer offer from another user (as e.g. described with reference to Fig. 6 ).
  • the button may be configured as a slidable button that has a first default position and that may be activated by touching the button and sliding the button downwards (i.e. towards the user) to a second position. The downwards movement towards the user may provide a user experience of physically accepting the loyalty stamp that is collected or that is accepted from another user.
  • the button is a slidable button and may be used for offering a loyalty stamp to another user (as e.g. described with reference to Fig. 6 ).
  • the button may be configured as configured as a slidable button that has a first default position and that may be activated by touching the button and sliding the button upwards (i.e. away from the user) to a second position. The upwards moment away from the user may provide a user experience of physically offering the loyalty stamp to another user.
  • the button may comprise an indication for the sliding direction (e.g. an arrow or the like) towards the second position. Further, when releasing the button, the button may automatically move back towards the first default position. Hence, in order to keep the button activated in the second position, the user has to keep the button in the second position.
  • an indication for the sliding direction e.g. an arrow or the like
  • the loyalty stamp GUI 802 in Fig. 8 may allow a user to select a loyalty stamp 810 from the displayed loyalty stamps of the user collection. Selection may be realized by touching the area in which the loyalty stamp that needs to be transferred is displayed.
  • the client may be triggered to render a transfer offer GUI 804 comprising a first graphical area 820 displaying the selected loyalty stamp.
  • the first graphical area 820 may be part of an image carousel comprising the loyalty stamps.
  • a sliding movement over the first graphical area may allow a user to browse through the loyalty stamps. Further information may be displayed along with the displayed loyalty stamp in the first graphical area in order to navigate through the user collection.
  • a small schematic representation of the loyalty stamp collection may indicate: the loyalty stamp that is currently displayed 814, the one or more loyalty stamps 816 that are collected (the user collection) and the loyalty stamps that are still missing from the user collection.
  • the user may activate the slidable button 822 by sliding it (in the direction of the indicator) from the first default position to a second position. Keeping the slidable button in the second position, will trigger the client to decode the loyalty stamp identifier associated with the selected loyalty stamp into an electronically readable pick-up code.
  • the client may render the electronically readable pick-up code on screen.
  • the electronically readable pick-up code is a graphical code, e.g. a barcode, a QR code, a symbol and/or predetermined picture
  • the client may also instruct the server application to set the selected loyalty stamp into the transfer state.
  • the GUI may comprise an indicator that may inform the user that the loyalty stamp is transferable.
  • the indicator may be integrated or associated with the button 826.
  • the color and/or shape of the button may change when the loyalty stamp is set in the transferable state.
  • Fig. 9 schematically depicts the process of a user interacting with an exemplary graphical user interface for accepting a loyalty stamp from another user device according to an embodiment of the invention.
  • the user interaction module in the user device may render a loyalty program GUI comprising a first area displaying the user collection of the user comprising collected loyalty stamps 910 and loyalty stamps (in this case blank spaces) that are still missing 912 (that still need to be collected) in a similar way as described with reference to Fig. 8 .
  • the user may select a "missing" loyalty stamp 912 (in this case an empty space).
  • the client may be triggered to render a first transfer acceptance GUI 904 comprising a first graphical area 920 displaying a first graphical area and a slidable button 918.
  • the client may render a transfer acceptance GUI 904 comprising a first graphical area and a slidable (transfer acceptance) button 918.
  • the slidable button may configured to be moved from a first (default) position to a second (target) position. Once the button is in the second position, the client may be triggered to detect an electronically readable pick-up code.
  • the transfer acceptance button may be moved downwards (i.e. towards the user) thereby providing the user the experience of physically "accepting" the loyalty stamp that is collected or that is accepted from another user.
  • a loyalty stamp is rendered as graphically readable pick-up code on the screen of a first user device (e.g. as a graphical code, e.g. a barcode, a QR code, a symbol and/or predetermined picture)
  • moving the button into the second position may activate an image sensor in the second user device.
  • Images that are captured by the image sensor may be displayed in the first graphical area 920 of the GUI 906. If the image sensor captures the graphically readable pick-up code of the first user device (e.g. part of the GUI 806 of Fig. 8 ), it may process the captured image and decode the pick-up code into a loyalty program identifier that may be sent to the server for a match with loyalty stamps in the user database that are in the transfer state.
  • the GUI may comprise an indicator for signaling to the user that the pick-up code is successfully decoded into a loyalty stamp identifier.
  • the indicator may be integrated or associated with the button 826.
  • the color and/or shape of the button may change when the pick-up code is successfully decoded into a loyalty stamp identifier.
  • Fig. 10 is a block diagram illustrating an exemplary data processing system that may be used in as described in this disclosure.
  • Data processing system 1000 may include at least one processor 1002 coupled to memory elements 1004 through a system bus 806. As such, the data processing system may store program code within memory elements 1004. Further, processor 1002 may execute the program code accessed from memory elements 1004 via system bus 1006.
  • data processing system may be implemented as a computer that is suitable for storing and/or executing program code. It should be appreciated, however, that data processing system 1000 may be implemented in the form of any system including a processor and memory that is capable of performing the functions described within this specification.
  • Memory elements 1004 may include one or more physical memory devices such as, for example, local memory 1008 and one or more bulk storage devices 1010.
  • Local memory may refer to random access memory or other non-persistent memory device(s) generally used during actual execution of the program code.
  • a bulk storage device may be implemented as a hard drive or other persistent data storage device.
  • the processing system 1000 may also include one or more cache memories (not shown) that provide temporary storage of at least some program code in order to reduce the number of times program code must be retrieved from bulk storage device 1010 during execution.
  • I/O devices depicted as input device 1012 and output device 1014 optionally can be coupled to the data processing system.
  • input device may include, but are not limited to, for example, a keyboard, a pointing device such as a mouse, or the like.
  • output device may include, but are not limited to, for example, a monitor or display, speakers, or the like.
  • Input device and/or output device may be coupled to data processing system either directly or through intervening I/O controllers.
  • a network adapter 1016 may also be coupled to data processing system to enable it to become coupled to other systems, computer systems, remote network devices, and/or remote storage devices through intervening private or public networks.
  • the network adapter may comprise a data receiver for receiving data that is transmitted by said systems, devices and/or networks to said data and a data transmitter for transmitting data to said systems, devices and/or networks.
  • Modems, cable modems, and Ethernet cards are examples of different types of network adapter that may be used with data processing system.
  • memory elements 1004 may store an application 1018. It should be appreciated that data processing system 1000 may further execute an operating system (not shown) that can facilitate execution of the application. Application, being implemented in the form of executable program code, can be executed by data processing system 1000, e.g., by processor 1002. Responsive to executing application, data processing system may be configured to perform one or more operations to be described herein in further detail.
  • data processing system 1000 may represent a client data processing system.
  • application 1018 may represent a client application that, when executed, configures data processing system 1000 to perform the various functions described herein with reference to a "client".
  • client can include, but are not limited to, a personal computer, a portable computer, a mobile phone, or the like.
  • data processing system may represent a server.
  • data processing system may represent an (HTTP) server in which case application 1018, when executed, may configure data processing system to perform (HTTP) server operations.
  • data processing system may represent a module, unit or function as referred to in this specification.

Landscapes

  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Finance (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • User Interface Of Digital Computer (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

Methods and systems are described for enabling the transfer of one or more digital loyalty stamps from a first user device to a second user device, wherein said first and second user device are in communication with at least one server and a user database configured for storing loyalty stamps that are collected by said first and second user device, a loyalty stamp being associated with a loyalty stamp identifier, a digital image part and a transfer indicator for indicating whether the loyalty stamp is in a transferable or a non-transferable state. The method may comprise receiving a user input via a first touch-sensitive area of a first GUI for selecting one or more first loyalty stamps for transfer to a second user device; rendering a second GUI comprising a second touch-sensitive area for displaying said one or more first loyalty stamps that are selected for transfer and a third touch-sensitive area; and, sending at least one message comprising first loyalty stamp identifiers associated with said first loyalty stamps to said server, wherein said transfer offer message instructs said server to set the state of said loyalty stamps in said user database to transferable.

Description

    Field of the invention
  • The invention relates to a digital loyalty program and, in particular, though not exclusively, to a software-implemented method for a digital interactive loyalty program and a computing system for a digital interactive loyalty program, a client and server for use in such system and a computer program product for using such method.
  • Background of the invention
  • In retail loyalty programs are a very important marketing tool to tie customers to a particular brand or product. Typically, loyalty programs such as Airmiles or the like rely on the collection of a number of "points" or "credits" that can be used to get a special offer or a discount. These credits may be collected when buying a product in a shop or online. Credits may be physical credits tied to a physical product, e.g. stamps that are printed on the product that need to be cut out before they can be exchanged.
  • Currently, electronic loyalty programs are developed that allow collection of the collection of credits in an electronic way. For example credits may be collected by customers via scanning an QR code that is printed on a product using a mobile app. The QR code may contain loyalty information, e.g. credits and one or more links URLs to the website of the retailer. These credits may be electronically collected in a user account and the URLs may be used to obtain further information about the sold product or to access related products or offers. The mobile app may be configured to produce user behaviour information that can be collected and analysed by a back-end server.
  • These known electronic loyalty programs only have limited capabilities with regard to maintaining customers tied to a brand or particular products via different marketing or communication channels. Further, these programs offer little or no possibilities for creating a loyalty program that is compatible with a multi-channel marketing strategy, that allows simple integration with media platforms and television broadcasts and that allows dynamic adjustment of the loyalty program during a campaign. Furthermore, these programs offer participants little of no possibilities for interacting with each other or to create a community of people that are all tied to the same program.
  • Hence, from the above it follows that there is a need in the art for improved loyalty program, in particular digital loyalty program for use in a multi-channel marketing platform that allows participants to collect digital loyalty stamps and to transfer digital loyalty stamps from a first to a second participant.
  • Summary of the invention
  • As will be appreciated by one skilled in the art, aspects of the present invention may be embodied as a system, method or computer program product. Accordingly, aspects of the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, micro-code, etc.) or an embodiment combining software and hardware aspects that may all generally be referred to herein as a "circuit," "module" or "system." Functions described in this disclosure may be implemented as an algorithm executed by a microprocessor of a computer. Furthermore, aspects of the present invention may take the form of a computer program product embodied in one or more computer readable medium(s) having computer readable program code embodied, e.g., stored, thereon.
  • Any combination of one or more computer readable medium(s) may be utilized. The computer readable medium may be a computer readable signal medium or a computer readable storage medium. A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples (a non- exhaustive list) of the computer readable storage medium would include the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the context of this document, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device.
  • A computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave, Such a propagated signal may take any of a variety of forms, including, but not limited to, electromagnetic, optical, or any suitable combination thereof. A computer readable signal medium may be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.
  • Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber, cable, RF, etc., or any suitable combination of the foregoing. Computer program code for carrying out operations for aspects of the present invention may be written in any combination of one or more programming languages, including an object oriented programming language such as Java(TM), Smalltalk, C++ or the like and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer, or entirely on the remote computer or server. In the latter scenario, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider).
  • Aspects of the present invention are described below with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor, in particular a microprocessor or central processing unit (CPU), of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer, other programmable data processing apparatus, or other devices create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.
  • These computer program instructions may also be stored in a computer readable medium that can direct a computer, other programmable data processing apparatus, or other devices to function in a particular manner, such that the instructions stored in the computer readable medium produce an article of manufacture including instructions which implement the function/act specified in the flowchart and/or block diagram block or blocks.
  • The computer program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other devices to cause a series of operational steps to be performed on the computer, other programmable apparatus or other devices to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide processes for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.
  • The flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present invention. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the blocks may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustrations, and combinations of blocks in the block diagrams and/or flowchart illustrations, can be implemented by special purpose hardware-based systems that perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
  • It is an objective of the invention to reduce or eliminate at least one of the drawbacks known in the prior art. In an aspect the invention may relate to a computer-implemented method enabling the transfer of one or more digital loyalty stamps from a first user device to a second user device, wherein said first and second user device are in communication with at least one server and a user database configured for storing loyalty stamps that are collected by said first and second user device. In an embodiment, a loyalty stamp may be associated with a loyalty stamp identifier, a digital image part and a transfer indicator for indicating whether the loyalty stamp is in a transferable or a non-transferable state.
  • In an embodiment, the method may comprise: a first user device, comprising at least one first processor, a first memory and a touch-sensitive display, executing computer readable program code for: rendering a (transfer offer) GUI comprising a first area for displaying one or more first loyalty stamps that are selected for transfer to a second user device and a third touch-sensitive area; and, in response to receiving a user input via said touch-sensitive area, sending at least one transfer offer message comprising one or more first loyalty stamp identifiers associated with said one or more first loyalty stamps and a first user identifier for identifying said first user and/or first user device to said server, wherein said transfer offer message may instruct said server to set the state of said one or more first loyalty stamps of said first user that are stored in said user database and identified in said transfer offer message to transferable.
  • In another embodiment, the method may comprise: a first user device, comprising at least one first processor, a first memory and a touch-sensitive display, executing computer readable program code for: rendering a first (loyalty program) GUI comprising a first touch-sensitive area for displaying one or more loyalty stamps that are collected by said first user device, said one or more displayed loyalty stamps being associated with one or more loyalty stamp identifiers that are stored in said first memory; receiving a user input via said first touch-sensitive area for selecting one or more first loyalty stamps for transfer to a second user device; in response to said selection, rendering a second (transfer offer) GUI comprising a second touch-sensitive area for displaying said one or more first loyalty stamps that are selected for transfer and a third touch-sensitive area; and, in response to receiving a user input via said third touch-sensitive area, sending at least one transfer offer message comprising one or more first loyalty stamp identifiers associated with said one or more first loyalty stamps and a first user identifier for identifying said first user and/or first user device to said server, wherein said transfer offer message instructs said server to set the state of said one or more first loyalty stamps of said first user that are stored in said user database and identified in said transfer offer message to transferable.
  • Hence, the invention allows simple and efficient transfer of digital loyalty stamps from a first to a second user device, e.g. a smart phone or an electronic table, wherein the transfer includes offering the stamps to another user wherein during offering the status of the offered stamps are changes from non-transferable to transferable so that only during the time that the loyalty stamps are offered a transaction can be established. As long as the offered stamps are in the transferable state, they may be accepted by a second user device that is capable of receiving the offer.
  • In an embodiment, said user input via said third touch-sensitive area may comprise the first user touching said third touch-sensitive area and wherein the one or more loyalty stamps in said user database may be kept in said transferable state as long as said first user keeps contact with said third touch-sensitive area. Hence, an area of the GUI may be used to keep the status of the stamps during the offering into the transferable state. In this embodiment, the transferable state is maintained if the user keeps in touch with the third touch-sensitive area (e.g. a transfer offer button).
  • In an embodiment said method may further comprise: in response to said user releasing contact with said third touch-sensitive area, sending a transfer stop message comprising the one or more first loyalty stamp identifiers to said server, said transfer stop message instructing said server to set the state of the loyalty stamps identified in said transfer stop message (back) to non-transferable. Hence, as soon as the user releases the third touch-sensitive area, a client in the first user device may notify the server that state of the first loyalty stamps should be reversed back to non-transferable.
  • In an embodiment said third touch-sensitive area may be configured as a slidable transfer offer button, wherein said user input is activated when said button is slided from a first (default) position to a second (target) position. In another embodiment, said second (transfer offer) GUI may render an indicator for showing the user that the one or more first loyalty stamps that are selected for transfer to a second user device are in a transferable state. In this embodiment, a slidable button may be used that is moved from a first to a second position before the user input activates the transmission of a transfer offer message to the server in order to set the offered loyalty stamps into the transferable state.
  • In a further embodiment said method may further comprise: said first user device executing computer readable program code for: generating one or more electronically readable pick-up codes that can be picked-up by said second user device on the basis of said one or more first loyalty stamp identifiers associated with said one or more loyalty stamp that are selected for transfer. Hence, the loyalty stamp identifiers may be used to generate electronically readable pick-up code, e.g. an QR code on the display of the user device, a NFC message that can be transmitted to a second user device that is in the vicinity of the first user device or an audio signal that can be transmitted and recorded by to a second user device that is in the vicinity of the first user device.
  • In another embodiment, said method may further comprise: a second user device, comprising at least one processor, preferably a microprocessor, executing computer readable program code for: detecting at least part of said one or more electronically readable pick-up codes generated by said first user device; decoding said one or more electronically readable pick-up codes into one or more second loyalty stamp identifiers; sending said one or more second loyalty stamp identifiers and a second user identifier for identifying said second user and/or second user device in at least one transfer acceptance message to said server, wherein said transfer acceptance message may instruct said user database to match said one or more second loyalty stamp identifiers with one or more loyalty stamp identifiers in said user database that are in the transferable state.
  • In an embodiment, said method may further comprise: receiving a notification message from said server, said notification message notifying said first user device that said one or more first loyalty stamps are transferred. In another embodiment, in response to said notification message, said first user device may remove at least part of the one or more loyalty stamp identifiers from said first memory.
  • In an embodiment said one or more loyalty stamps that are collected by said first user are stored in a user account of said first user.
  • In another aspect, the invention may relate to a user device configured for enabling the transfer of one or more digital loyalty stamps to another user device, wherein said user devices are in communication with at least one server and a user database configured for storing loyalty stamps that are collected by said user devices, a loyalty stamp being associated with a loyalty stamp identifier, a digital image part and a transfer indicator for indicating whether the loyalty stamp is in a transferable or a non-transferable state, and wherein said user device may comprise a microprocessor coupled to a touch-sensitive display, a communication module, and a computer-readable first memory having computer readable program code embodied therewith, wherein responsive to executing the computer readable program code.
  • In an embodiment, said microprocessor may be configured to perform executable operations for: rendering a first (loyalty program) GUI on said touch-sensitive display, said first GUI comprising a first touch-sensitive area for displaying one or more loyalty stamps that are collected by said first user device, said one or more displayed loyalty stamps being associated with one or more loyalty stamp identifiers that are stored in said first memory; receiving a user input via said first touch-sensitive area for selecting one or more first loyalty stamps for transfer to a second user device; in response to said selection, rendering a second (transfer offer) GUI on said touch-sensitive display, said second GUI comprising a second touch-sensitive area for displaying said one or more first loyalty stamps that are selected for transfer and a third touch-sensitive area; and, in response to receiving a user input via said third touch-sensitive area, sending at least one transfer offer message comprising one or more first loyalty stamp identifiers associated with said one or more first loyalty stamps and a first user identifier for identifying said first user and/or first user device via said communication module to said server, wherein said transfer offer message instructs said server to set the state of said one or more first loyalty stamps of said first user that are stored in said user database and identified in said transfer offer message to transferable.
  • In an embodiment, said user input received via said third touch-sensitive area may comprise a user touching said third touch-sensitive area and wherein the one or more loyalty stamps in said user database are kept in said transferable state as long as said user keeps contact with said third touch-sensitive area.
  • In an embodiment, said executable operations may further comprise: in response to said user releasing contact with said third touch-sensitive area, sending a transfer stop message comprising the one or more first loyalty stamp identifiers to said server, said transfer stop message instructing said server to set the state of the loyalty stamps identified in said transfer stop message (back) to non-transferable.
  • In an embodiment, said third touch-sensitive area may be configured as a slidable tranfer offer button, wherein said user input is activated when said button is slided from a first (default) position to a second (target) position; preferably said second (transfer offer) GUI rendering an indicator for showing the user that the one or more first loyalty stamps that are selected for transfer to a second user device are in a transferable state.
  • In an embodiment, said executable operations may further comprise: generating one or more electronically readable pick-up codes that can be picked-up by said second user device on the basis of said one or more first loyalty stamp identifiers associated with said one or more loyalty stamp that are selected for transfer.
  • The invention may further relate to a computer program product comprising software code portions configured for, when run in the memory of a computer, executing the method steps as described above.
  • The invention will be further illustrated with reference to the attached drawings, which schematically will show embodiments according to the invention. It will be understood that the invention is not in any way restricted to these specific embodiments.
  • Brief description of the drawings
    • Fig. 1 schematically depicts a digital loyalty program system according an embodiment of the invention.
    • Fig. 2 depicts a flow diagram of a process for collecting loyalty stamps according to an embodiment of the invention.
    • Fig. 3 depicts a data model for a digital loyalty program system according an embodiment of the invention.
    • Fig. 4 schematically depicts part of a data model and a graphical user interface for a digital loyalty program system according an embodiment of the invention.
    • Fig. 5A and 5B schematically depict the transfer of a loyalty stamp from one user to another user according to an embodiment of the invention.
    • Fig. 6 schematically depicts a flow diagram of a process for the transfer of a loyalty stamp from one user to another user according to an embodiment of the invention.
    • Fig. 7 schematically depicts the transfer of a loyalty stamp from one user to another user according to another embodiment of the invention.
    • Fig. 8 schematically depicts a graphical user interface for transferring a loyalty stamp to another user device according to an embodiment of the invention.
    • Fig. 9 schematically depicts an exemplary graphical user interface for accepting a loyalty stamp from another user device according to an embodiment of the invention.
    • Fig. 10 depicts a schematic of a client or server system for use in a system according to the invention.
    Detailed description
  • Fig. 1 schematically depicts a digital loyalty program system according an embodiment of the invention. The loyalty program system may comprise one or more servers 102 that are configured to execute a loyalty server application 104 (a server application). The server application may be configured to communicate with one or more loyalty client applications 1061,2 (clients) that are installed on (mobile) user devices 1081,2. The system may be configured to publish and distribute loyalty stamps, e.g. a piece of content representing a digital collectable, in particular a digital image part representing pictures (e.g. players of a soccer team, celebrities, products, etc.) that can be electronically distributed and published. As will be explained hereunder in more detail, the server application and the client application may be configured for collecting published loyalty stamps and for exchanging loyalty stamps between clients. To that end, a loyalty stamp may be linked to one or more (unique) identifiers (a loyalty stamp identifier). The process of collecting and transferring loyalty stamps will be discussed hereunder in more detail. The digital image parts may be stored in a content database 128 that is connected to the server hosting the server application. A predetermined set of loyalty stamps may form a loyalty stamp collection, which may be linked to a certain marketing campaign.
  • A client in a user device may be configured to collect published digital loyalty stamps using for example a sensor input of the user device (e.g. a camera), to connect to the server application and send a collected loyalty stamp to the server application. The server application may store the collected stamps 140 as a set of loyalty stamp identifiers in a user database 120 that is connected to the server application. The loyalty stamp identifiers are linked to the digital imaging parts in the content database. In an embodiment, the user database and the content database may be part of a single (distributed) database platform. The loyalty stamp that is collected by a user may be stored in a user account 138 of the user database. Collected stamps in a user account may be referred to as a user collection. The user may collect the missing pieces 142 of a loyalty stamp collection until the user collection is complete.
  • The user collection may also be stored (in the form of loyalty stamp identifiers and associated image parts) in the memory of the user device so that the client is able to render a graphical user interface (GUI) for displaying and manipulating (part of) the user collection, e.g. the collected digital image parts. The GUI may be further configured for displaying the loyalty stamps that still need to be collected in order to get a complete loyalty collection.
  • The loyalty program system may further comprise one or more loyalty stamp dispenser modules 1181-3 that are configured for publication of collectable loyalty stamps directly via a web application or for enabling third parties to publish collectable loyalty stamps. A dispenser module may comprise an encoding function 1221-3 for encoding a loyalty stamp identifier associated with the loyalty stamp into an electronically readable pick-up code 124. In an embodiment, an electronically readable pick-up code may be a graphically readable pick-up code such as a QR code, a bar code, a logo, photo, fingerprint, etc. that can be scanned by a suitable image sensor in the user device. In another embodiment, the electronically readable pick-up code may be implemented as an audio signal that may be picked up and sampled by a microphone in the user device. In yet another embodiment, the electronically readable pick-up code may be implemented an radiofrequency (RF) signal, e.g. a near field communication signal or an RFID signal, that can be picked-up by a suitable receiver in the user device. The electronically readable pick-up code may be picked-up by the user device and decoded into a loyalty stamp identifier.
  • In order to pick-up and decode an electronically readable pick-up code, the client may configured to control sensor electronics (e.g. a digital camera, audio receiver and/or an RF receiver) in the mobile user device. For example, the client may be configured to control the camera for scanning the electronically readable pick-up code by e.g. taking one or more samples (e.g. images or audio samples) of at least part of the pick-up code. The client may comprise a digital signal-processing (DSP) module (e.g. a QR code scanner module or an image and/or audio recognition module) and a decoding function that is configured for decoding the pick-up code into (at least part of) a loyalty stamp identifier or a reference (e.g. an URL or an IP address) to a loyalty stamp identifier.
  • If the scanned pick-up code is decoded by the client into a loyalty stamp identifier, the loyalty stamp identifier and a user ID associated with the client or user may be sent to the loyalty application that may correlate the scanned loyalty stamp identifier with a loyalty stamp in the user database. It may further associate the user ID with a user account and store the scanned loyalty stamp identifier in the user account. If needed, the server application may use the loyalty stamp identifier to look in the content database for the digital image part that is linked to the loyalty stamp identifier. The digital image part may be sent to the user device so that the client may store the collected loyalty stamp, i.e. the image part and the loyalty stamp identifier, in the memory so that the GUI may display the collected loyalty stamp to the user. This way, a user may collect and add loyalty stamps to his or her collection (a user collection). Once a user has collected all the loyalty stamps that belong to a certain loyalty stamp collection, the user may exchange the set of loyalty stamps for a reward or a discount.
  • A dispenser module may be a static dispenser that is configured to provide or publish predetermined loyalty stamp identifiers (or associated pick-up codes) that may be generated by a code server 110. A loyalty stamp identifier may be static in the sense that they are valid for a relatively long period, e.g. during the entire marketing campaign. In an embodiment, the server application may send (static) loyalty stamp identifiers to the dispenser modules, which use the encoding function for transforming the identifier into an electronically readable format, e.g. a graphically readable QR code, that can be picked-up by the clients.
  • Dispenser modules may be part of an larger entity, e.g. a control system of an production entity such as a production facility, a printing facility, a functional network e.g. a multimedia platform or a content delivery network (CDN), or a software application or platform, e.g. a web application that is hosted on a loyalty server. For example, loyalty stamp identifiers (LS_IDs) and associated digital image parts may be provided (e.g. electronically sent) to a controlling system of a production facility 1181 so that during the production pick-up codes and, in some embodiments, associated digital image parts may be printed onto products 120 or printables 122 such as magazines or posters.
  • Similarly, loyalty stamp identifiers may be electronically sent to a multimedia platform 123, e.g. a broadcast system and/or streaming system 1182, which may transmit the loyalty stamp identifiers in an electronic signal 124, e.g. a television signal such as a broadcast or multicast signal, a media streaming signal or an out-of-band signal to one or more media processing devices 1261. A media processing device may be for example relate to a digital television, an electronic tables, a set-top box or a computer. The loyalty stamp identifiers may be embedded as an optically readable code 128 (e.g. a QR code) or an audio signal 130 in the content that is sent to the media processing devices, so that during rendering of the content the pick-up code is published, e.g. displayed to the user or exposed to the user via an audio signal.
  • In another embodiment, the loyalty stamp identifier may be sent as metadata to the media processing device, which may use an encoding function for encoding the identifier into an electronically readable pick-up code so that it can be published to the user. For example, an application in an HbbTV may use the encoding function for generating a graphically readable pick-up code or an audio pick-up code. The graphically readable pick-up code may be displayed as a graphical overlay over the displayed content of the television or media-streaming signal.
  • In yet another embodiment, a reference to a pick-up code, e.g. an URL, an IP address or an equivalent thereof, may be sent to the media-processing device. An application in the media-processing device may present the pick-up code reference as a selectable item to the user. The pick-up code reference may point to a location of a loyalty server 1183 that may be accessible via a web-browser on a media-processing device 1262. The media device may display the graphically readable pick-up code and, optionally, associated image parts to the user. Alternatively, the pick-up code may be presented to the user as a wireless signal, e.g. a near field communication (NFC) signal or a Bluetooth signal.
  • As loyalty stamp identifiers of a static dispenser module may be re-used during a relatively long period of time they can be relatively easy copied (photographed) and published on the Internet by an unauthorized user. Therefore, in another embodiment, a dispenser module may (also) be configured as a dynamic dispenser module that is dynamically generating loyalty stamp identifiers in time.
  • A dynamically generated loyalty stamp identifier is only valid for a short time period so that it can only be published once or a few times. Hence, in that case, a loyalty stamp may be linked to a set of loyalty stamp identifiers wherein each loyalty stamp identifier is linked to time information, e.g. a certain time period in which the loyalty stamp identifier is valid. The dispenser module will sequentially published loyalty stamp identifiers in accordance with the time information, so that when a loyalty stamp identifier is published (in the form of a electronically readable pick-up code), a user has a limited time to collect a loyalty stamp. This way, the effects of unauthorized copying and publication of loyalty stamps can be eliminated or at least substantially reduced.
  • Fig. 2 depicts a flow diagram of a process for collecting loyalty stamps according to an embodiment of the invention. The process may start with a user activating the client, e.g. by activating a collection button of a GUI that is rendered by the client on the screen of the user device. By activating the collection button, a sensor (e.g. an image sensor or a RF sensor) may be trigger to detect (e.g. scan or pick-up) an electronically readable pick-up code that is e.g. displayed on the television, printed on a product or transmitted via an RF signal to the user device (step 202). Then the client may decode the pick-up code into a loyalty stamp identifier (step 204) and send the loyalty stamp identifier and a user ID associated with the client to the server application (step 206), which may forward the identifiers to the user database. In an embodiment, other information associated with the pick-up code may also be sent with the identifiers to the user database. For example, in an embodiment, a timestamp associated with the scanning or pick-up of the electronically readable pick-up code may be sent with the loyalty stamp to the server application. Alternatively and/or in addition, location information, e.g. the GPS location, of the client may be sent along with the loyalty stamp identifier to the server application.
  • The user database may then identify the loyalty stamp identifier in order to determine to which loyalty stamp collection it belongs to (step 208) and use the user ID to check whether the user has the right to collect the loyalty stamp (step 210). For example, in certain embodiments, a user may only collect one copy of a predetermined loyalty stamp. In another embodiment, the loyalty stamp may only be valid within a certain time period. For example, if a dynamic dispenser publishes the collected loyalty stamp, the stamp may only be collected within a predetermined time period. Hence, when the client scans the loyalty stamp and decodes it into a loyalty stamp identifier, it may generate a timestamp associated with the scanning of the loyalty stamp. The time stamp may be used by the user database to determine whether the loyalty stamp was collected in time.
  • The user database may notify the server application whether the user has the right to collect the loyalty stamp (step 212). If it is determined that the user has the right to collect the loyalty stamp, the server application may trigger the collection of the loyalty stamp (step 214) by instructing the user database to add the loyalty stamp to the user collection (step 216,218). The user database may then notify the server application that the stamp was successfully collected (step 220). In an embodiment, the notification message may comprise the loyalty stamp identifier of the collected loyalty stamp. In another embodiment, the notification message may further comprise the image part associated with the loyalty stamp identifier. Further, the server application may forward the notification message (which may include the loyalty stamp identifier and the image part of the collected loyalty stamp) to the client (step 222). In response, the client may update the user collection that is stored in the memory of the user device (step 224) and render an updated GUI displaying the loyalty stamps of the user collection, including the newly collected loyalty stamp, to the user.
  • Fig. 3 depicts a data model for a digital loyalty program system according an embodiment of the invention. The data model may represent a data format that may be used by the user database for storing information that is needed to set-up and execute a loyalty service by the loyalty program system as described in this application. The loyalty program system, in particular the server application, may be configured to set-up a service account 302 for a company or organization (e.g. a media company, a retail chain or an online shop) that would like to use digital loyalty services. In an embodiment, a service account may have one or more loyalty program projects 3041-3 . Such project may e.g. relate to a television program that is produced by a media company or a marketing campaign for a retail chain or a certain brand or product. A loyalty program project may be linked to one or more loyalty stamp collections 3061-3. A loyalty stamp collection 3063 may define a predetermined set of different loyalty stamps (e.g. images of players of a soccer team, digital bingo card, a digital scratch card, etc.) that belong together, wherein each loyalty stamp may be identified by one or more loyalty stamp identifiers 316. A loyalty stamp identifier may be linked to digital part reference 317 that points to a digital image part that that is stored in a content database and that may be used by the client to display collected digital loyalty stamps from the user collection to the user.
  • A dispenser module may be linked to a project or a collection. In that case, a dispenser may publish loyalty stamps (loyalty stamp identifiers and/or electronically readable pick-up codes associated with such identifiers) on the basis of publication information that may be stored in the loyalty project and/or loyalty collection data field. Publication information for publishing loyalty stamps may include at least one of:
    • A weight parameter associated with a loyalty stamp (a weight parameter may determine whether a loyalty stamp is rare or not (e.g. a small weight parameter may be associated with a rare loyalty stamp thereby instructing a dispenser module to published the loyalty stamp at a low frequency);
    • Allowance of the publication of a predetermined number of the same loyalty stamp;
    • The time period in which a loyalty stamp may be validly collected (the collection period).
  • For example, in case a loyalty stamp is linked to a plurality of loyalty stamp identifiers (e.g. for use in a dynamic dispenser module), a loyalty stamp identifier may be linked to a publication time, i.e. the time in which a loyalty stamp should be published and a collection period 318, i.e. the time period after publication in which the published loyalty stamp can be collected), the type of pick-up code 318 (e.g. QR code or the like) and/or the publication frequency, i.e. the number of times in a time period that a loyalty stamp identifier may be published by a dispenser module. In an embodiment, the publication information for publishing loyalty stamps may dynamically modified by the server application on the basis of the number of loyalty stamps that are collected by clients and/or transferred between clients. This way, the collecting and/or transfer behavior of participants of a loyalty program may be influenced.
  • A user may subscribe to one or more loyalty projects using an online subscription procedure, which will create a new user account 308. A user account may be identified using a unique user ID, e.g. a telephone number, a SIM card number, an IP number, chipset ID, or another suitable ID that may uniquely link the account to the user device. Further, the user account may identify one or more loyalty program projects in which the user is participating. After having obtained a user account for a particular loyalty program project, a user may install a client in one or more user devices. The connection information associated with mobile user devices, e.g. an IP address, may be stored in an installation data field of the user account. The connection information may be used to push notifications to a mobile user device on which a client is installed.
  • Loyalty stamps (i.e. loyalty stamp identifiers and associated image parts) that are collected by a user may be stored in the user account as user collections 3101-3 . A user collection 3103 may comprise loyalty stamp identifiers 315 of loyalty stamps that are collected ("owned") by the user. Each loyalty stamp identifier may comprise status information. In an embodiment, the status information may comprise a transfer flag 312 for indicating the transfer status of a loyalty flag. For example, if the transfer flag is set, the loyalty stamp associated with a loyalty stamp identifier or associated with set of loyalty stamp identifiers may be transferred to another user that participates in the same loyalty project.
  • As is shown in Fig. 1 and 3 , the loyalty program system may use dispensing modules that publish loyalty stamps of the same project via different communication channels. In particular, it may allow the publication of one part of the loyalty stamps of a loyalty collection via one communication channel (e.g. television or the website) and another part via another, different communication channel (e.g. magazine or product). This way, the loyalty program may be compatible with a multi-channel marketing strategy. Furthermore, as the dispenser modules may be dynamically controlled and adjusted on the basis of the behavior of the clients, e.g. the number of loyalty stamps that are collected by users (or a part thereof) of a loyalty project via publication via a particular dispenser, the publication frequency of one or more of the dispenser modules may be adjusted, etc. This way, users may be stimulated to access loyalty stamps one or more communication channels. For example, the publication of loyalty stamps of a loyalty collection via dispensing modules may be controlled such that in order to collect a complete collection, a user has to access each of the communication channels that is used for publishing the loyalty stamps.
  • Fig. 4 schematically depicts a user device comprising a client for collecting and transferring loyalty stamps according to an embodiment of information. In particular, Fig. 4 depicts a user device, e.g. a smart phone or an electronic table or the like, a memory module 436, one or more sensors module 428, a (touch-sensitive) display module 426, a user interface module 432, a collection/transfer module 434 and a communication interface module 438 connected via a databus to a microprocessor 430. The microprocessor may run client software that is stored in the memory module for controlling the processes that are executed by and between the different modules and that enable collection of digital loyalty stamps and the transfer of loyalty stamps to other user devices.
  • In particular, the collection/transfer module 434 may be configured to control collection of loyalty stamps by triggering a sensor in the sensor module for scanning or pick-up an electronically readable pick-up code 422 and for decoding the pick-up code into a loyalty stamp identifier. Further, the communication interface module may be used to access the server application in order to execute a process for collecting and storing the loyalty stamp in the user account of the user as e.g. described with reference to Fig. 2 .
  • After the collection process, the user collection 404 in the memory of the user device comprising the collected loyalty stamps (i.e. loyalty stamp identifiers LS2, LS4, LS6-LS12 and their associated image parts) may be updated.
  • The user collection, including the loyalty stamp identifiers and their image parts, may be used by the user interface (UI) module in order to render a GUI 410 on the screen of the user device. The UI module may render a GUI that allows intuitive control and handling of a user collection. For example, in an embodiment, the GUI may comprise a first graphical area 412 comprising the collected loyalty stamps 414 in a predetermined order. In an embodiment, the first graphical area may display the collected loyalty stamps in a predetermined arrangement wherein each loyalty stamp may be configured as a touch-screen selectable item. The image parts of the user collection may be arranged such that it is clear which loyalty stamps 4161-3 still need to be collected in order to complete the collection. The GUI may be configured to be touch-sensitive for selecting a loyalty stamp of the user selection. The graphical user interface may further comprise a second graphical area that may be configured as a collection and/or transfer button 420. The second graphical are configured such that a collection or a transfer may be confirmed a decision by the user (e.g. the collection of a loyalty stamp or the transfer of a loyalty stamp to another user). The interactions of a user with the GUIs rendered by the loyalty program during the process of transferring a loyalty stamp from a first to a second user device are described in more detail with reference to Fig. 5 , 6 , 8 and 9 . The loyalty program system may allow a user to collect loyalty stamps by receiving a loyalty stamp from another user that participates in the loyalty program. Fig. 5A and 5B schematically depict the transfer of a loyalty stamp from a first user device 502 to another second user device 504 according to an embodiment of the invention.
  • Fig. 5A(i) depicts a first phase of the transfer process wherein the first user desires to transfer a loyalty stamp 510 from the first user collection 506 to the second user collection of the second user (e.g. because the selectable loyalty stamp in the first user collection is missing in the second user collection). In that case, the first user may instruct the first user device 502, in particular the first client in the first user device, to render a loyalty program GUI 504 for selecting the loyalty stamp 510 from the first user collection 506 for transfer. For example, the first client may render a loyalty program GUI 504 on the screen comprising a first graphical area 506 depicting the selectable loyalty stamps in the first user collection, including the selectable loyalty stamp 510 that needs to be transferred. The second client in the second user device may render a loyalty program GUI 512 depicting the second user collection, including the loyalty stamp 516 that is missing.
  • Fig. 5A(ii) depicts a second phase of the transfer process wherein, in response to the selection of the loyalty stamp that needs to be transferred (e.g. by touching the area displaying the selectable loyalty stamp in the loyalty program GUI), the client may render a transfer offer GUI 518 for offering the transfer of at least one selected loyalty stamp to another user device. In an embodiment, the transfer offer GUI may comprise a transfer offer button 522 which may activate the offer of a transfer of the selected loyalty stamp. When activating the transfer offer button 522, the first client may be triggered to encode the first loyalty stamp identifier of the selected loyalty stamp into an electronically readable pick-up code 520 (e.g. a QR code, an RF signal such as an NFC or Bluetooth signal). In case of a graphically readable pick-up code, the transfer offer GUI may render the code 520 on the screen of the first mobile user device.
  • Upon activation of the transfer offer button, the client may send a transfer offer message comprising the first loyalty stamp identifier and a first user ID to the server application in order to inform the server application that the first user wants to offer the selected loyalty stamp for transfer (the communication between the clients and the server application is described in more detail with reference to Fig. 6 ). To that end, the server application may instruct the user database to set the transfer flag associated with the selected loyalty stamp in the first user account (e.g. from "0" to "1"). For example, setting the transfer flag from "0" to "1" may be interpreted by the server application that the loyalty stamp is in the transfer state (i.e. a state wherein the loyalty stamp may be transferred). The user database may keep a list of transferable loyalty stamps (i.e. loyalty stamps identified by a loyalty stamp identifier and a transfer flag indicating that the loyalty stamp is in the transfer state) in a cache memory.
  • In an embodiment, the selected loyalty stamp may be held in the transfer state as long as the first user presses and/or holds down the transfer offer button 522 of the transfer offer GUI of the first user device. If the first user prematurely releases the transfer offer button 522, the client may send a notification (comprising the loyalty stamp identifier and the user ID) to the server application for setting the transfer flag of the loyalty stamp back to the non-transfer state. In that case, the server application may instruct the user database to set the transfer flag from "1" to "0". Further, the server application may instruct removal of the loyalty stamp from the list in the cache memory. Hence, in that case acceptance of the transfer offer is no longer possible.
  • If the second user would like to accept the offer of the first user, the second client of a second mobile user device 504 may activate the second client to render a transfer acceptance GUI 524 for accepting a transfer offer of a loyalty stamp from another user device. The transfer acceptance GUI may comprise a transfer acceptance button 526. Pressing and/holding down the transfer acceptance button 526 may scan the electronically readable pick-up code and decode the pick-up code in to a second loyalty stamp identifier. For example, in Fig. 5A and 5B , the second client may scan the QR code 520 displayed by the first mobile user device and decode the scanned QR code into a second loyalty stamp identifier. In an embodiment, the transfer acceptance GUI may comprise a display area 528 for displaying the scanned QR code.
  • The second client may send a transfer accept message comprising the second loyalty stamp identifier and a second user ID to the server application. When receiving the second loyalty stamp identifier, the server application (or the user database) may look in the list of transferable loyalty stamps for a loyalty stamp identifier that matches the second loyalty stamp identifier. When a match is found, the server application may transfer the loyalty stamp from the first user collection to the second user collection.
  • In case the first user has released the transfer offer button before the second user pressed the transfer acceptance button, no transfer will take place. In that case, the server application will determine that the loyalty stamp is in the non-transfer state (transfer flag is "0"). In that case, the second user may receive a message that the requested loyalty stamp is not available for transfer.
  • Transferring the loyalty stamp may include: removing the loyalty stamp entry of the transferred loyalty stamp from the first user collection in the user database; adding the loyalty stamp entry of the transferred loyalty stamp to the second user collection in the user database; setting the loyalty stamp in the non-transfer state (e.g. by setting the transfer flag to "0").
  • Fig. 5A(iii) depicts a third phase of the transfer process wherein the server application has notified the clients that the transfer has been successfully completed. After the transfer, the GUIs of the first and second user device may be switched back to the loyalty program GUI 528, 536. The notification message of the server application that is sent to the first client may trigger the first client to update the loyalty program GUI showing that the transferred loyalty stamp 534 has been removed from the first user collection 532. The notification message of the server application that is sent to the second client may comprise the image part of the transferred loyalty stamp so that the second client may render an updated loyalty program GUI 540 showing that the transferred loyalty stamp 542 has been added to the second user collection.
  • Fig. 5B depicts an exemplary graphical user interface of clients during the process of transferring a loyalty stamp from a first mobile user device 502 to a second mobile user device 504. In this particular example, the first client renders a transfer offer GUI on the screen of the first user device 520 comprising an image of a graphically readable pick-up code 508 of the loyalty sample that is selected for transfer and the second clients renders a transfer acceptance GUI on the screen comprising an image of the scanned graphically readable pick-up code that is displayed by the first user device. During the transfer first and second user may activate a transfer button offer button and a transfer acceptance button respectively in order to control the transfer.
  • Although the examples in Fig. 5A and 5B illustrate the transfer of one loyalty stamp on the basis of a graphical QR pick-up code, it is submitted that the same scheme may be easily expanded to a scheme wherein more than one loyalty stamp may be transferred in one go on the basis of different pick-up code. For example, multiple loyalty stamps may be selected for transfer, multiple electronically readable pick-up codes in the form of NFC messages may be generated for pick-up by a second user device.
  • The process of transferring a loyalty stamp on the basis of the transfer offer and transfer acceptance GUIs provide a simple and intuitive way of executing the transfer of a loyalty stamp. This way, participants to a loyalty project may transfer a loyalty stamp thereby allowing interaction between the participants.
  • Fig. 6 schematically depicts a flow diagram of a process for the transfer of a loyalty stamp from a first user device to a second user device according to an embodiment of the invention. In particular, Fig. 6 depicts an exemplary flow diagram of the communication between the clients and the server application and the user database during the transfer of a loyalty stamp. The process may start with a first user of a first (mobile) user device selecting a loyalty stamp for transfer to another second mobile user device. The first user may interact with a GUI that is rendered on a touch-sensitive screen for selecting a loyalty stamp from the user collection that is displayed to the user (step 602). The loyalty stamps of the user collection that are displayed on the screen may have corresponding loyalty stamp identifiers that are stored in the memory of the user device. After selecting a loyalty stamp from the user collection, the client may render a transfer offer GUI comprising a transfer offer button for activating the transfer process. When activating the transfer offer button (step 604), the first client may send the first loyalty stamp identifier and the first user ID associated with the first client in a transfer offer message (step 606) to the server application, which may forward the identifiers to the user database.
  • The user database may determine the user account on the basis of the first user ID and uses the first loyalty stamp identifier in order to identify a corresponding loyalty stamp in a user collection of the identified user account (step 608). When the loyalty stamp in the user account is successfully identified, the status of the loyalty stamp in the user collection may be set to the transfer state (step 610). In an embodiment, the status of the loyalty stamp remains in the transfer state as long as the first user keeps the transfer offer button of the transfer offer GUI activated.
  • At the client side, the client may generate an electronically selectable pick-up code of the selected loyalty stamp identifier (step 612). In an embodiment, the rendered transfer offer GUI may display the pick-up code to the user indicating that the loyalty stamp that is offered for transfer may be accepted by the second user. The second user may activate the second client in the second user device render a transfer acceptance GUI comprising a transfer acceptance button. When activating the transfer acceptance button, a sensor (e.g. an image sensor or an RF or audio receiver) in the second user device may be activated to detect the pick-up code (step 614) and to decode the pick-up code in a second loyalty stamp identifier (step 616). The client may send the second loyalty stamp identifier and a second user ID associated with the second client in a transfer accept message to the server application, which may forward the identifiers to the user database (step 618). The user database may be configured to maintain a list of transferable loyalty stamps (i.e. loyalty stamps that are in the transfer state) in a cache memory. The user database may look in the list of transferable loyalty stamps for a loyalty stamp that matches the second loyalty stamp identifier (step 620). When a match is found, the database may use the second user ID to identify the second user account and to add the loyalty stamp identifier to the second user collection (step 622). Further, the user database may remove the loyalty stamp identifier from the first user collection (step 624) in order to complete the transfer.
  • As already described with reference to Fig. 5 , in case the first user releases the transfer offer button before the second user activates the transfer acceptance button, the first client may instruct the server application to set the loyalty stamp into the non-transfer state (i.e. a state in which the loyalty stamp cannot be transferred). Hence, in that case the server application may determine that the loyalty stamp associated with the second loyalty stamp identifier is not available for transfer.
  • After updating the user collections in the user database, the server application may send a message to the first client to notify that the transfer was successful (step 626). In response, the first client may render an updated loyalty stamp GUI showing that the selected stamp is removed from the first user collection (step 628). Similarly, the server application may send a message to the second client notifying that the transfer was successful (step 630) and in response the client may render an updated loyalty stamp GUI which displays the loyalty stamps of the second user collection, including the loyalty stamp that has been transferred to the second user collection (step 632). Hence, the system allows a user to collect loyalty stamps by transfer of a stamp from a first user to a second user. This way, interaction between the users that participate in the same loyalty program may be enhanced.
  • It is submitted that the sequence of messages in the flow diagram of Fig. 6 may be altered without changing the advantageous effects of the invention. Further, other information associated with the pick-up code may be sent with the identifiers (the loyalty stamp identifier and user ID) to the user database. For example, in an embodiment, a timestamp associated with the scanning or pick-up of the electronically readable pick-up code may be sent with the loyalty stamp to the server application. Alternatively and/or in addition, location information, e.g. the GPS location, of the client may be sent along with the loyalty stamp identifier to the server application.
  • Fig. 7 schematically depicts the transfer of a loyalty stamp from one user to another user according to another embodiment of the invention. In this particular embodiment, first and second user devices 704, 706 comprising first and second clients respectively are in communication with a server application 702 and a user database 708 in a similar way as described with reference to Fig. 6 . In this case however, the user devices may be configured to set-up a local communication connection between the two devices using e.g. Bluetooth, NFC or WiFi. In that case, instead of using an electronically readable pick-up code, the loyalty stamp identifier may be sent from the first to the second user device over the local communication connection 710 between the two devices. Hence, in this embodiment there is no need for a scan of a graphically and/or audio pick-up code, when transferring a loyalty sample from a first to a second user device.
  • Fig. 8 schematically depicts the process of a user interacting with an exemplary graphical user interface (GUI) for transferring a loyalty stamp to another user device according to an embodiment of the invention. The GUIs may be rendered by the user interaction module on a touch-sensitive screen of a user device. Graphical areas may define touch-sensitive areas that are associated with a certain function that executed when the user interacts with those areas in a predetermined way. In an embodiment, the user interaction module in the user device may render a loyalty program GUI 802 comprising a first area displaying the user collection of the user comprising collected loyalty stamps 810 and loyalty stamps (in this case blank spaces) that are still missing 812 (that still need to be collected). The loyalty program GUI may further comprise a button 808 that may be activated by the user.
  • In an embodiment, the button is a slidable button and may be used for collecting a loyalty stamp that is published by a dispenser (as e.g. described with reference to Fig. 2 ) or for accepting a transfer offer from another user (as e.g. described with reference to Fig. 6 ). In that case, the button may be configured as a slidable button that has a first default position and that may be activated by touching the button and sliding the button downwards (i.e. towards the user) to a second position. The downwards movement towards the user may provide a user experience of physically accepting the loyalty stamp that is collected or that is accepted from another user.
  • In an embodiment, the button is a slidable button and may be used for offering a loyalty stamp to another user (as e.g. described with reference to Fig. 6 ). In that case, the button may be configured as configured as a slidable button that has a first default position and that may be activated by touching the button and sliding the button upwards (i.e. away from the user) to a second position. The upwards moment away from the user may provide a user experience of physically offering the loyalty stamp to another user.
  • The button may comprise an indication for the sliding direction (e.g. an arrow or the like) towards the second position. Further, when releasing the button, the button may automatically move back towards the first default position. Hence, in order to keep the button activated in the second position, the user has to keep the button in the second position.
  • The loyalty stamp GUI 802 in Fig. 8 may allow a user to select a loyalty stamp 810 from the displayed loyalty stamps of the user collection. Selection may be realized by touching the area in which the loyalty stamp that needs to be transferred is displayed. In response to the selection, the client may be triggered to render a transfer offer GUI 804 comprising a first graphical area 820 displaying the selected loyalty stamp. The first graphical area 820 may be part of an image carousel comprising the loyalty stamps. A sliding movement over the first graphical area may allow a user to browse through the loyalty stamps. Further information may be displayed along with the displayed loyalty stamp in the first graphical area in order to navigate through the user collection. For example, a small schematic representation of the loyalty stamp collection may indicate: the loyalty stamp that is currently displayed 814, the one or more loyalty stamps 816 that are collected (the user collection) and the loyalty stamps that are still missing from the user collection.
  • When the first graphical area depicts the loyalty stamp that the user wants to transfer, the user may activate the slidable button 822 by sliding it (in the direction of the indicator) from the first default position to a second position. Keeping the slidable button in the second position, will trigger the client to decode the loyalty stamp identifier associated with the selected loyalty stamp into an electronically readable pick-up code.
  • In certain embodiments, the client may render the electronically readable pick-up code on screen. For example, if the electronically readable pick-up code is a graphical code, e.g. a barcode, a QR code, a symbol and/or predetermined picture, it may be displayed in the first graphical area 824. The client may also instruct the server application to set the selected loyalty stamp into the transfer state. In an embodiment, the GUI may comprise an indicator that may inform the user that the loyalty stamp is transferable. In an embodiment, the indicator may be integrated or associated with the button 826. In an embodiment, the color and/or shape of the button may change when the loyalty stamp is set in the transferable state.
  • Fig. 9 schematically depicts the process of a user interacting with an exemplary graphical user interface for accepting a loyalty stamp from another user device according to an embodiment of the invention. In this figure, the user interaction module in the user device may render a loyalty program GUI comprising a first area displaying the user collection of the user comprising collected loyalty stamps 910 and loyalty stamps (in this case blank spaces) that are still missing 912 (that still need to be collected) in a similar way as described with reference to Fig. 8 .
  • Now, instead of a loyalty stamp, the user may select a "missing" loyalty stamp 912 (in this case an empty space). In response to the selection, the client may be triggered to render a first transfer acceptance GUI 904 comprising a first graphical area 920 displaying a first graphical area and a slidable button 918. Upon selecting the missing loyalty stamp, the client may render a transfer acceptance GUI 904 comprising a first graphical area and a slidable (transfer acceptance) button 918. The slidable button may configured to be moved from a first (default) position to a second (target) position. Once the button is in the second position, the client may be triggered to detect an electronically readable pick-up code. In an embodiment, the transfer acceptance button may be moved downwards (i.e. towards the user) thereby providing the user the experience of physically "accepting" the loyalty stamp that is collected or that is accepted from another user.
  • In case a loyalty stamp is rendered as graphically readable pick-up code on the screen of a first user device (e.g. as a graphical code, e.g. a barcode, a QR code, a symbol and/or predetermined picture), moving the button into the second position may activate an image sensor in the second user device. Images that are captured by the image sensor may be displayed in the first graphical area 920 of the GUI 906. If the image sensor captures the graphically readable pick-up code of the first user device (e.g. part of the GUI 806 of Fig. 8 ), it may process the captured image and decode the pick-up code into a loyalty program identifier that may be sent to the server for a match with loyalty stamps in the user database that are in the transfer state. The GUI may comprise an indicator for signaling to the user that the pick-up code is successfully decoded into a loyalty stamp identifier. In an embodiment, the indicator may be integrated or associated with the button 826. In an embodiment, the color and/or shape of the button may change when the pick-up code is successfully decoded into a loyalty stamp identifier.
  • Fig. 10 is a block diagram illustrating an exemplary data processing system that may be used in as described in this disclosure. Data processing system 1000 may include at least one processor 1002 coupled to memory elements 1004 through a system bus 806. As such, the data processing system may store program code within memory elements 1004. Further, processor 1002 may execute the program code accessed from memory elements 1004 via system bus 1006. In one aspect, data processing system may be implemented as a computer that is suitable for storing and/or executing program code. It should be appreciated, however, that data processing system 1000 may be implemented in the form of any system including a processor and memory that is capable of performing the functions described within this specification.
  • Memory elements 1004 may include one or more physical memory devices such as, for example, local memory 1008 and one or more bulk storage devices 1010. Local memory may refer to random access memory or other non-persistent memory device(s) generally used during actual execution of the program code. A bulk storage device may be implemented as a hard drive or other persistent data storage device. The processing system 1000 may also include one or more cache memories (not shown) that provide temporary storage of at least some program code in order to reduce the number of times program code must be retrieved from bulk storage device 1010 during execution.
  • Input/output (I/O) devices depicted as input device 1012 and output device 1014 optionally can be coupled to the data processing system. Examples of input device may include, but are not limited to, for example, a keyboard, a pointing device such as a mouse, or the like. Examples of output device may include, but are not limited to, for example, a monitor or display, speakers, or the like. Input device and/or output device may be coupled to data processing system either directly or through intervening I/O controllers. A network adapter 1016 may also be coupled to data processing system to enable it to become coupled to other systems, computer systems, remote network devices, and/or remote storage devices through intervening private or public networks. The network adapter may comprise a data receiver for receiving data that is transmitted by said systems, devices and/or networks to said data and a data transmitter for transmitting data to said systems, devices and/or networks. Modems, cable modems, and Ethernet cards are examples of different types of network adapter that may be used with data processing system.
  • As pictured in FIG. 10 , memory elements 1004 may store an application 1018. It should be appreciated that data processing system 1000 may further execute an operating system (not shown) that can facilitate execution of the application. Application, being implemented in the form of executable program code, can be executed by data processing system 1000, e.g., by processor 1002. Responsive to executing application, data processing system may be configured to perform one or more operations to be described herein in further detail.
  • In one aspect, for example, data processing system 1000 may represent a client data processing system. In that case, application 1018 may represent a client application that, when executed, configures data processing system 1000 to perform the various functions described herein with reference to a "client". Examples of a client can include, but are not limited to, a personal computer, a portable computer, a mobile phone, or the like.
  • In another aspect, data processing system may represent a server. For example, data processing system may represent an (HTTP) server in which case application 1018, when executed, may configure data processing system to perform (HTTP) server operations. In another aspect, data processing system may represent a module, unit or function as referred to in this specification.
  • The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. As used herein, the singular forms "a," "an," and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms "comprises" and/or "comprising," when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.
  • The corresponding structures, materials, acts, and equivalents of all means or step plus function elements in the claims below are intended to include any structure, material, or act for performing the function in combination with other claimed elements as specifically claimed. The description of the present invention has been presented for purposes of illustration and description, but is not intended to be exhaustive or limited to the invention in the form disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the invention. The embodiment was chosen and described in order to best explain the principles of the invention and the practical application, and to enable others of ordinary skill in the art to understand the invention for various embodiments with various modifications as are suited to the particular use contemplated.

Claims (15)

  1. Method for enabling the transfer of one or more digital loyalty stamps from a first user device to a second user device, wherein said first and second user device are in communication with at least one server and a user database configured for storing loyalty stamps that are collected by said first and second user device, a loyalty stamp being associated with a loyalty stamp identifier, a digital image part and a transfer indicator for indicating whether the loyalty stamp is in a transferable or a non-transferable state, said method comprising:
    a first user device, comprising at least one first processor, a first memory and a touch-sensitive display, executing computer readable program code for:
    rendering a first (loyalty program) GUI comprising a first touch-sensitive area for displaying one or more loyalty stamps that are collected by said first user device, said one or more displayed loyalty stamps being associated with one or more loyalty stamp identifiers that are stored in said first memory;
    receiving a user input via said first touch-sensitive area for selecting one or more first loyalty stamps for transfer to a second user device;
    in response to said selection, rendering a second (transfer offer) GUI comprising a second touch-sensitive area for displaying said one or more first loyalty stamps that are selected for transfer and a third touch-sensitive area; and,
    in response to receiving a user input via said third touch-sensitive area, sending at least one transfer offer message comprising one or more first loyalty stamp identifiers associated with said one or more first loyalty stamps and a first user identifier for identifying said first user and/or first user device to said server, wherein said transfer offer message instructs said server to set the state of said one or more first loyalty stamps of said first user that are stored in said user database and identified in said transfer offer message to transferable.
  2. Method according to claim 1 wherein said user input via said third touch-sensitive area comprises a user touching said third touch-sensitive area and wherein the one or more loyalty stamps in said user database are kept in said transferable state as long as said user keeps contact with said third touch-sensitive area.
  3. Method according to claim 2 comprising:
    in response to said user releasing contact with said third touch-sensitive area, sending a transfer stop message comprising the one or more first loyalty stamp identifiers to said server, said transfer stop message instructing said server to set the state of the loyalty stamps identified in said transfer stop message (back) to non-transferable.
  4. Method according to any of claims 1-3 wherein said third touch-sensitive area is configured as a slidable tranfer offer button, wherein said user input is activated when said button is slided from a first (default) position to a second (target) position; preferably said second (transfer offer) GUI rendering an indicator for showing the user that the one or more first loyalty stamps that are selected for transfer to a second user device are in a transferable state.
  5. Method according to any of claims 1-4 wherein said method further comprises:
    said first user device executing computer readable program code for:
    generating one or more electronically readable pick-up codes that can be picked-up by said second user device on the basis of said one or more first loyalty stamp identifiers associated with said one or more loyalty stamp that are selected for transfer.
  6. Method according to claim 5 wherein said one or more electronically readable pick-up codes include one of: a graphical code, preferably a bar code or a QR code, a code embedded in an electrical signal, preferably a wireless RF signal or in an audio signal.
  7. Method according to claims 5 or 6 wherein said method further comprises:
    a second user device, comprising at least one processor, preferably a microprocessor, executing computer readable program code for:
    detecting said one or more electronically readable pick-up codes generated by said first user device;
    decoding said one or more electronically readable pick-up codes into one or more second loyalty stamp identifiers;
    sending said one or more second loyalty stamp identifiers and a second user identifier for identifying said second user and/or second user device in at least one transfer acceptance message to said server, said transfer acceptance message instructing said user database to match said one or more second loyalty stamp identifiers with one or more loyalty stamp identifiers in said user database that are in the transferable state.
  8. Method according to claim 7 wherein said method further comprises:
    receiving a notification message from said server, said notification message notifying said first user device that said one or more first loyalty stamps are transferred; preferably in response to said notification message said first user device removing the one or more loyalty stamp identifiers from said first memory.
  9. Method according to any of claims 1-8 wherein the one or more loyalty stamps that are collected by said first user are stored in a user account of said first user.
  10. User device configured for enabling the transfer of one or more digital loyalty stamps to another user device, wherein said user devices are in communication with at least one server and a user database configured for storing loyalty stamps that are collected by said user devices, a loyalty stamp being associated with a loyalty stamp identifier, a digital image part and a transfer indicator for indicating whether the loyalty stamp is in a transferable or a non-transferable state,
    said user device comprising a microprocessor coupled to a touch-sensitive display, a communication module, and a computer-readable first memory having computer readable program code embodied therewith, wherein responsive to executing the computer readable program code, the microprocessor is configured to perform executable operations for:
    rendering a first (loyalty program) GUI on said touch-sensitive display, said first GUI comprising a first touch-sensitive area for displaying one or more loyalty stamps that are collected by said first user device, said one or more displayed loyalty stamps being associated with one or more loyalty stamp identifiers that are stored in said first memory;
    receiving a user input via said first touch-sensitive area for selecting one or more first loyalty stamps for transfer to a second user device;
    in response to said selection, rendering a second (transfer offer) GUI on said touch-sensitive display, said second GUI comprising a second touch-sensitive area for displaying said one or more first loyalty stamps that are selected for transfer and a third touch-sensitive area; and,
    in response to receiving a user input via said third touch-sensitive area, sending at least one transfer offer message comprising one or more first loyalty stamp identifiers associated with said one or more first loyalty stamps and a first user identifier for identifying said first user and/or first user device via said communication module to said server, wherein said transfer offer message instructs said server to set the state of said one or more first loyalty stamps of said first user that are stored in said user database and identified in said transfer offer message to transferable.
  11. User device according to claim 10 wherein said user input via said third touch-sensitive area comprises a user touching said third touch-sensitive area and wherein the one or more loyalty stamps in said user database are kept in said transferable state as long as said user keeps contact with said third touch-sensitive area.
  12. User device according to claim 12 wherein said executable operations further comprise:
    in response to said user releasing contact with said third touch-sensitive area, sending a transfer stop message comprising the one or more first loyalty stamp identifiers to said server, said transfer stop message instructing said server to set the state of the loyalty stamps identified in said transfer stop message (back) to non-transferable.
  13. User device according to any of claims 10-12 wherein said third touch-sensitive area is configured as a slidable tranfer offer button, wherein said user input is activated when said button is slided from a first (default) position to a second (target) position; preferably said second (transfer offer) GUI rendering an indicator for showing the user that the one or more first loyalty stamps that are selected for transfer to a second user device are in a transferable state.
  14. User device according to any of claims 10-13 wherein said executable operations further comprise:
    generating one or more electronically readable pick-up codes that can be picked-up by said second user device on the basis of said one or more first loyalty stamp identifiers associated with said one or more loyalty stamp that are selected for transfer.
  15. Computer program product comprising software code portions configured for, when run in the memory of a computer, executing the method steps according to any of claims 1-9.
EP13005762.3A 2013-12-11 2013-12-11 Digital loyalty program system Withdrawn EP2884443A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
EP13005762.3A EP2884443A1 (en) 2013-12-11 2013-12-11 Digital loyalty program system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
EP13005762.3A EP2884443A1 (en) 2013-12-11 2013-12-11 Digital loyalty program system

Publications (1)

Publication Number Publication Date
EP2884443A1 true EP2884443A1 (en) 2015-06-17

Family

ID=49765262

Family Applications (1)

Application Number Title Priority Date Filing Date
EP13005762.3A Withdrawn EP2884443A1 (en) 2013-12-11 2013-12-11 Digital loyalty program system

Country Status (1)

Country Link
EP (1) EP2884443A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110543527A (en) * 2018-05-28 2019-12-06 伊芙儿童公司 System and method for pedigree mapping

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006018856A2 (en) * 2004-08-16 2006-02-23 Sanjiv Agarwal Computerized process for differential incentives based on payment modes
WO2013039457A2 (en) * 2011-09-15 2013-03-21 Hive Mind Private Limited Loyalty rewards system on social mobile platform

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006018856A2 (en) * 2004-08-16 2006-02-23 Sanjiv Agarwal Computerized process for differential incentives based on payment modes
WO2013039457A2 (en) * 2011-09-15 2013-03-21 Hive Mind Private Limited Loyalty rewards system on social mobile platform

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110543527A (en) * 2018-05-28 2019-12-06 伊芙儿童公司 System and method for pedigree mapping

Similar Documents

Publication Publication Date Title
CN103155521B (en) For changing the method and system of media output between two or more equipment
US9559992B2 (en) System and method for updating information in an instant messaging application
US20120054014A1 (en) Apparatus and method for providing coupon service in mobile communication system
US20150244878A1 (en) Distributed Printing Social Network
US20150049900A1 (en) Information provision system
US10349234B1 (en) Bi-directional integration and control of managed and unmanaged devices
KR101828889B1 (en) Cooperative provision of personalized user functions using shared and personal devices
CN104639424B (en) Data transmission method and related equipment and system
US20190052925A1 (en) Method and System for Recognizing, Analyzing, and Reporting on Subjects in Videos without Interrupting Video Play
WO2009145902A1 (en) System and method for interfacing interactive systems with social networks and media playback devices
US10726194B2 (en) Content linking
CN108696489B (en) Media information playing method and device
WO2015079818A1 (en) Terminal device, screen sharing method, and screen sharing system
CN111582961B (en) Information processing method and device
CN109688362B (en) Code scanning method and device in video call
CN104349221A (en) Communication apparatus that performs streaming distribution, information processing apparatus, and controlling method thereof
WO2014176896A1 (en) System and method for updating information in an instant messaging application
JP2014092934A (en) Information communication device and information communication method, information communication system, and computer program
US10075485B2 (en) Animated snapshots
WO2011085161A2 (en) System for mobile rewards
EP2884443A1 (en) Digital loyalty program system
CN104954421B (en) WEB systems, WEB server, data distributing method
KR101584304B1 (en) Apparatus and method for requesting contents
JP2019023788A (en) Image display system, material providing support device, material acquisition device, material providing support method, and computer program
US8520018B1 (en) Media distribution system

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20131211

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

AX Request for extension of the european patent

Extension state: BA ME

R17P Request for examination filed (corrected)

Effective date: 20151217

RBV Designated contracting states (corrected)

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 20151218