U.S. patent application number 14/990099 was filed with the patent office on 2021-01-21 for systems and methods for on demand and location-based offers.
The applicant listed for this patent is Wells Fargo Bank, N.A.. Invention is credited to Uma Meyyappan, Bipin Sahni.
Application Number | 20210019797 14/990099 |
Document ID | / |
Family ID | 1000001658801 |
Filed Date | 2021-01-21 |
![](/patent/app/20210019797/US20210019797A1-20210121-D00000.png)
![](/patent/app/20210019797/US20210019797A1-20210121-D00001.png)
![](/patent/app/20210019797/US20210019797A1-20210121-D00002.png)
![](/patent/app/20210019797/US20210019797A1-20210121-D00003.png)
![](/patent/app/20210019797/US20210019797A1-20210121-D00004.png)
![](/patent/app/20210019797/US20210019797A1-20210121-D00005.png)
![](/patent/app/20210019797/US20210019797A1-20210121-D00006.png)
![](/patent/app/20210019797/US20210019797A1-20210121-D00007.png)
![](/patent/app/20210019797/US20210019797A1-20210121-D00008.png)
![](/patent/app/20210019797/US20210019797A1-20210121-D00009.png)
![](/patent/app/20210019797/US20210019797A1-20210121-D00010.png)
View All Diagrams
United States Patent
Application |
20210019797 |
Kind Code |
A1 |
Meyyappan; Uma ; et
al. |
January 21, 2021 |
SYSTEMS AND METHODS FOR ON DEMAND AND LOCATION-BASED OFFERS
Abstract
A social media computing system is described. The social media
computing system provides a social media platform to a plurality of
users. Additionally, the social media computing system provides
merchants the ability to provide targeted offers to users of the
social media platform. As used herein, the word "merchants" also
includes service providers. The offers relate to goods or services
provided by the merchants. In some situations, the offers are
transmitted by the social media computing system to user devices
based on requests by the users. In other situations, the offers can
be transmitted directly from the merchants to the user devices
based on determined locations of the user devices.
Inventors: |
Meyyappan; Uma; (Fremont,
CA) ; Sahni; Bipin; (Pleasanton, CA) |
|
Applicant: |
Name |
City |
State |
Country |
Type |
Wells Fargo Bank, N.A. |
San Francisco |
CA |
US |
|
|
Family ID: |
1000001658801 |
Appl. No.: |
14/990099 |
Filed: |
January 7, 2016 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
62101790 |
Jan 9, 2015 |
|
|
|
Current U.S.
Class: |
1/1 |
Current CPC
Class: |
H04L 67/22 20130101;
H04L 51/32 20130101; H04L 67/18 20130101; G06Q 30/0611 20130101;
G06Q 50/01 20130101 |
International
Class: |
G06Q 30/06 20060101
G06Q030/06; G06Q 50/00 20060101 G06Q050/00; H04L 29/08 20060101
H04L029/08; H04L 12/58 20060101 H04L012/58 |
Claims
1. A method of providing on demand offers to a user via a platform,
the platform hosted by a computing system having a processor, the
method comprising: receiving, by the processor, an offer request
from a user device, wherein the offer request includes an
identification of a product or service; determining, by the
processor, a matching offer for the product or service among a
plurality of offers selected by a merchant computing system based
on the offer request; transmitting, by the processor, the matching
offer to the user device, the matching offer including a price
identification and a designated period of time after which the
matching offer expires; in response to receiving an indication that
the user accepted the matching offer, generating, by the processor,
a funds request to provide funds via the platform; display, by the
processor, on the user device, a message comprising a selectable
option to provide funds via the platform; receiving, by the
processor, payment funds from the user device via the platform, the
payment funds equal to the price identification; storing, by the
processor, the matching offer in a list of products or services,
each product or service in the list corresponding to a merchant
location; determining, by the processor, using a GPS signal from
the user device indicative of a current location of the user
device, a set of navigable routes using traffic data, each
navigable route having a corresponding total travel time that
includes travel to each merchant location; selecting, by the
processor, from among the set of navigable routes, a route
corresponding to a lowest total travel time; and routing, by the
processor, based on the selected route, the user device to each
merchant location.
2. The method of claim 1, further comprising determining, by the
processor and in response to receiving an indication of a rejection
of the matching offer, a next highest priority offer of the
plurality of offers and transmitting the next highest priority
offer to the user device.
3. The method of claim 1, wherein the determining the matching
offer includes identifying the matching offer as most likely
satisfying the offer request from the user based at least in part
on a shopping history of the user.
4. The method of claim 1, wherein the determining the matching
offer includes identifying the matching offer as most likely
satisfying the offer request based at least in part on a user
location and the merchant location, the merchant location
associated with the merchant computing system offering the matching
offer, wherein the merchant location is within a threshold distance
of the user location.
5. (canceled)
6. The method of claim 1, further comprising transmitting, by the
processor, a transaction code to the user device, wherein the
transaction code allows the user to claim the product or service
purchased from the merchant computing system.
7. The method of claim 6, wherein the transaction code is a barcode
scannable by a point of sale system associated with the merchant
computing system.
8. The method of claim 6, further comprising receiving, by the
processor, the transaction code from the merchant computing system
prior to transmitting the transaction code to the user device.
9. The method of claim 6, further comprising: generating, by the
processor, the transaction code; and transmitting, by the
processor, the transaction code to the merchant computing
system.
10. A method of temporarily permitting a merchant to send offers to
a user of a social media platform based on a location of the user,
the method comprising: receiving, by a processor of a social media
computing system, user location information from a user device,
wherein the user is a user of the social media platform;
determining, by the processor, that the user is in proximity to a
merchant; enabling, by the processor, a merchant computing system
associated with the merchant the ability to send messages to the
user via the social media platform; and transmitting, by the
processor, a message containing an offer from the merchant to the
user, the offer relating to a product or service of the
merchant.
11. The method of claim 10, further comprising receiving, by the
processor, updated user location information from the user
device.
12. The method of claim 11, further comprising determining, by the
processor that the user is no longer in proximity to the merchant
based on the updated user location information.
13. The method of claim 12, further comprising, disabling, by the
processor, the ability of the merchant to send messages to the user
via the social media platform in response to determining that the
user is no longer in proximity to the merchant.
14. The method of claim 10, wherein the user location information
is determined based on a received locator beacon identifier
positioned within or near the merchant.
15. The method of claim 10, further comprising generating a
transaction code that allows the user to claim a product or service
from the merchant associated with an accepted offer.
16. A merchant offers system comprising: a locator beacon network;
a network interface configured to communicate with a user device
associated with a user and a merchant computing system associated
with a merchant; memory; and a processor configured to: receive
user location information from the user device, wherein the user is
a user of a social media platform, wherein the user location
information is based on a determined position of the user device as
identified through the locator beacon network, determine that the
user is in proximity to the merchant, enable the merchant computing
system to send messages to the user via the social media platform,
and transmit a message containing an offer from the merchant
computing system to the user device, the offer relating to a
product or service of the merchant.
17. The merchant offers system of claim 16, wherein the processor
is further configured to receive updated user location information
from the user device.
18. The merchant offers system of claim 17, wherein the processor
is further configured to determine that the user is no longer in
proximity to the merchant based on the updated user location
information.
19. The merchant offers system of claim 18, wherein the processor
is further configured to disable the ability of the merchant
computing system to send messages to the user device via the social
media platform in response to determining that the user is no
longer in proximity to the merchant.
20. The merchant offers system of claim 16, wherein the processor
is further configured to generate a transaction code that allows
the user to claim a product or service from the merchant associated
with an accepted offer.
21. A computing system associated with a platform, the system
comprising: a network interface; memory; and a processor configured
to: receive an offer request from a user device, wherein the offer
request includes an identification of a product or service;
determine a matching offer for the product or service among a
plurality of offers selected by a merchant computing system based
on the offer request; transmit the matching offer to the user
device, the matching offer including a price identification and a
designated period of time after which the matching offer expires,
in response to receiving an indication that a user accepted the
matching offer, generate a funds request to provide funds via the
platform, receive payment funds via the platform, the payment funds
equal to the price identification, store the matching offer in a
list of products or services, each product or service in the list
corresponding to a merchant location; determine using a GPS signal
from the user device indicative of a current location of the user
device, a set of navigable routes using traffic data, each
navigable route having a corresponding total travel time that
includes travel to each merchant location; select, from among the
set of navigable routes, a route corresponding to a lowest total
travel time; and route based on the selected route, the user device
to each merchant location.
22. The system of claim 21, wherein the processor is further
configured to determine, in response to receiving an indication of
a rejection of the matching offer, a next highest priority offer of
the plurality of offers and transmit the next highest priority
offer to the user device.
23. The system of claim 21, wherein determining the matching offer
includes identifying the matching offer as most likely satisfying
the offer request from the user based at least in part on a
shopping history of the user.
24. The system of claim 21, wherein determining the matching offer
includes identifying the matching offer as most likely satisfying
the offer request based at least in part on a user location and the
merchant location, the merchant location associated with the
merchant computing system offering the matching offer, wherein the
merchant location is within a threshold distance of the user
location.
25. (canceled)
26. The system of claim 21, wherein the processor is further
configured to transmit a transaction code to the user device,
wherein the transaction code allows the user to claim the product
or service purchased from the merchant computing system.
27. The system of claim 26, wherein the transaction code is a
barcode scannable by a point of sale system associated with the
merchant computing system.
28. The system of claim 26, wherein the processor is further
configured to receive the transaction code from the merchant
computing system prior to transmitting the transaction code to the
user device.
29. The system of claim 26, wherein the processor is further
configured to generate the transaction code and transmit the
transaction code to the merchant computing system.
30. The method of claim 1, wherein the matching offer is
prioritized at least in part based on a bid placed by the merchant
computing system associated with the matching offer.
31. The system of claim 21, wherein the matching offer is
prioritized at least in part based on a bid placed by the merchant
computing system associated with the matching offer.
Description
CROSS-REFERENCE TO RELATED APPLICATIONS
[0001] This application claims priority to U.S. Provisional Patent
Application No. 62/101,790, entitled "SYSTEMS AND METHODS FOR ON
DEMAND AND LOCATION-BASED OFFERS," filed on Jan. 9, 2015, which is
herein incorporated by reference in its entirety and for all
purposes.
BACKGROUND
[0002] Social media platforms are becoming more and more popular.
Users of various social media platforms utilize the platforms to
message other users, to share pictures, to read the news, to play
games, to access media (e.g., photos, videos, music, etc.), and the
like. As the popularity of social media platforms continues to
grow, the use cases for the social media platforms continue to
increase. The social media platform also present new opportunities
for merchants to reach a large customer base.
SUMMARY
[0003] One embodiment relates to a method of providing on demand
offers to a user via a social media platform. The social media
platform hosted by a social media computing system having a
processor. The method includes receiving, by the processor, an
offer request from a user via a user device. The user is a
registered user of the social media platform. The offer request
includes an identification of a product or service. The method
further including querying, by the processor, an offer database of
the social media computing system for a first matching offer. The
method including transmitting, by the processor, the first matching
offer to the user device. The method including receiving, by the
processor, an indication that the user accepted the offer.
[0004] Another embodiment relates to a method of temporarily
permitting a merchant to send offers to a user of a social media
platform based on a location of the user. The method including
receiving, by a processor of a social media computing system, user
location information from a user device. The user is a user of the
social media platform. The method further including determining, by
the processor, that the user is in proximity to a merchant. The
method including enabling, by the processor, a merchant computing
system associated with the merchant the ability to send messages to
the user via the social media platform. The method including
transmitting, by the processor, a message containing an offer from
the merchant to the user, the offer relating to a product or
service of the merchant.
[0005] A further embodiment relates to a merchant offers system.
The system includes a locator beacon network. The system further
includes a network interface configured to communicate with a user
device associated with a user and a merchant computing system
associated with a merchant. The system includes memory and a
processor. The processor is configured to receive user location
information from the user device. The user is a user of a social
media platform. The user location information is based on a
determined position of the user device as identified through the
locator beacon network. The processor is further configured to
determine that the user is in proximity to the merchant. The
processor is configured to enable the merchant computing system to
send messages to the user via the social media platform. The
processor is further configured to transmit a message containing an
offer from the merchant computing system to the user device, the
offer relating to a product or service of the merchant.
[0006] Another embodiment relates to a social media system
associated with a social media platform. The system includes a
network interface, memory, and a processor. The processor is
configured to receive an offer request from a user via a user
device. The user is a registered user of the social media platform.
The offer request includes an identification of a product or
service. The processor is further configured to query an offer
database of the social media computing system for a first matching
offer. The processor is configured to transmit the first matching
offer to the user device. The processor is further configured to
receive an indication that the user accepted the offer.
[0007] These and other features, together with the organization and
manner of operation thereof, will become apparent from the
following detailed description when taken in conjunction with the
accompanying drawings, wherein like elements have like numerals
throughout the several drawings described below.
BRIEF DESCRIPTION OF THE FIGURES
[0008] FIG. 1 is a diagram of a computing system according to an
exemplary embodiment.
[0009] FIG. 2 is a flow diagram of a method of sending an offer to
a user of the social networking platform based on a user request is
shown according to an example embodiment
[0010] FIGS. 3 through 10 show example user interfaces of a social
media client during the method of FIG. 2.
[0011] FIG. 11 is a flow diagram of a method of permitting a
merchant to send an offer to a user of a social media platform
based on a location of the user according to an example
embodiment.
[0012] FIGS. 12 through 18 show example user interfaces of a social
media client during the method of FIG. 11.
DETAILED DESCRIPTION
[0013] Referring generally to the figures, a social media computing
system is described. The social media computing system provides a
social media platform to a plurality of users. Additionally, the
social media computing system provides merchants the ability to
provide targeted offers to users of the social media platform. As
used herein, the word "merchants" also includes service providers.
The offers relate to goods or services provided by the merchants.
In some situations, the offers are transmitted by the social media
computing system to user devices based on requests by the users. In
other situations, the offers can be transmitted directly from the
merchants to the user devices based on determined locations of the
user devices.
[0014] Referring to FIG. 1, a diagram of a computing system 100 is
shown according to an example embodiment. The computing system 100
includes a social media computing system 102. The social media
computing system 102 provides a plurality of users 104 a social
media platform. The users 104 access the social media platform via
user devices 106. The user devices may include mobile devices, such
as smartphones, tablet computers, PDAs, and the like. As described
in further detail below, the social media computing system 102 also
allows merchants 108 to send offers relating to goods and services
provided by the merchants to the users 104. The offers may be
selected and sent directly by the merchant 108 to the users 104 via
the social media platform. Alternatively, the offers may be
selected by the social media computing system 102 and sent to the
users 104 via the social networking platform.
[0015] The social media computing system 102 includes a processor
110 and memory 112. In some arrangements, the social media
computing system 102 includes a plurality of processors. The memory
112 stores programming modules that, when executed by the processor
110, control the operation of the social media computing system
102. The programming modules include social media logic that allows
the social media computing system 102 to provide the social media
platform to the plurality of users 104. The social media platform,
for example, allows the users 104 to send and receive messages with
contacts. For example, a first user of the social media platform
that is a registered contact with a second user of the social media
platform can send messages to the second user. The messages may
include text, pictures, videos, audio, hyperlinks, and other
content. In some arrangements, the social media platform prohibits
non-contact users from sending messages between each other. The
programming modules include offer logic. As described in further
detail below, the offer logic allows the social media computing
system 102 to store and distribute offers from merchants 108 to the
users 104. In further arrangements, the programming modules include
payment logic. The payment logic allows the users 104 to send
payments (e.g., via credit card, via bank account, via mobile
wallet, etc.) to other users and to the merchants 108.
[0016] The social media computing system 102 includes a network
interface 114 that allows the social media computing system 102 to
communicate data to and from other devices (e.g., user devices 106,
the merchant computing system 116, etc.) via the network 118.
[0017] The social media computing system 102 includes an account
database 120 and an offer database 122. The social media computing
system 102 maintains various information related to user accounts
in the account database 120. The account database 120 is where the
social media computing system 102 stores information relating to
usernames and passwords, user connections (e.g., which users are
allowed to send messages to a given user), user contact
information, user preference information, and the like. The account
database 120 may include payment information associated with
various user accounts. The payment information includes credit card
information or bank account information, which is used by the
social media computing system 102 to transfer funds between users
104 and from users 104 to merchants 108. In some arrangements, the
account database 120 is split into multiple account databases. The
offer database 122 is where the social media computing system 102
maintains current offers from the merchants 108. The offers include
an identification of a product or service and pricing information
about the product or service. The pricing information may be a
price, a discount (e.g., an amount of dollars off, a percentage
discount, etc.), a quantity limit, and the like. In some
arrangements, the pricing information also includes offer
expiration information. In some arrangements, the offers include
target demographics that should receive the offer (e.g., age, sex,
location, user preferences, income level, user purchase history,
user web browsing history, etc.).
[0018] The user device 106 may be used by an individual user (e.g.,
a business owner or employee, a consumer, and so on) to create and
interact with a social media platform. The user device 106 may, for
example be, handheld computer, a cellular phone, smartphone, mobile
handheld wireless e-mail device, a tablet computer, personal
digital assistant, portable gaming devices, or another suitable
device. The user device 106 includes a processor 124 and memory
126. The memory 126 includes programming modules and logic that,
when executed by the processor 124, control the operation of the
user device 106. In some arrangements, the memory 126 includes a
social media client 134 (e.g., a smartphone application that
includes the necessary programming and circuitry that allows the
user device 106 to interact with the social networking platform).
The user device 106 includes a network interface 128. The network
interface 128 may be a wireless network interface that communicates
with a wireless communication protocol (e.g., 802.11a/b/g/n,
Bluetooth.RTM., ZigBee.RTM., CDMA, GSM, LTE, WiMax, etc.). The user
device 106 includes a display 130 and an input 132. In some
arrangements, the display 130 and input 132 are integrated in a
touchscreen display. The user device 106 may receive and display
user interfaces including account information, transaction
instructions, and so on. In some arrangements, the user interfaces
may be used to initiate messages (i.e., the receiving of offers,
the acceptance of offers, etc.) payments from the user's social
media account.
[0019] The social media client 132 includes program logic
executable by the processor 124 to implement at least some or all
of the functions described herein. As will be appreciated, the
level of functionality that resides on the user device 106 as
opposed to the social media computing system 102 may vary depending
on the implementation. The social media client 132 may be a web
browser that is configured to receive and display mobile web pages
(e.g., web pages prompting the user to provide information to
create an account, web pages displaying account balance information
and past transactions, and so on) or an application executed by the
user device 106. As will be appreciated, the user may also use
other devices (e.g., laptop or desktop computer system, not shown)
to access the social networking platform.
[0020] The social media client 132 may include, among other
features, messaging logic 136 and account information 138. The
messaging logic 136 allows users 104 of the user devices 106 to
communicate with other users of the social networking platform. The
other users may include users 104 and the merchant 108. The
messaging function of the social media client 132 may also enable
the users 104 to send payment to other users via messages. As
described in further detail below, offers from the merchants 108
are communicated as messages. The account information 136 stores
associations between the user 104 and other users of the social
networking platform (e.g., friends or contacts).
[0021] Still referring to FIG. 1, the merchant 108 maintains a
merchant computing system 116. The merchant computing system 116
includes a processor 140 and memory 142. The memory 142 stores
programming modules and logic that, when executed by the processor
140, control the operation of the merchant computing system 116.
The merchant computing system 116 also includes a network interface
144. The network interface 144 allows the merchant computing system
116 to communicate data to and from the user devices 106 and the
social media computing system 102 via the network 118. The memory
142 includes offer logic that allows the merchant computing system
116 to send product or service offers to users 104 via the social
media platform. The offers may be first transmitted for storage in
the offer database 122 and for later distribution by the social
media computing system 102. Some merchants include locator beacons
146. The locator beacons 146 broadcast unique identifiers that,
when received by a user device 106, allow the user device 106 to
transmit its location as wi2151thin the merchant 108 (i.e., within
a brick and mortar location of the merchant 108). A further
description of the use of locator beacons 146 within merchants is
described in U.S. patent application Ser. No. 14/745,245, entitled
"BEACON MALL EXPERIENCE," filed on Jun. 19, 2015, which is hereby
incorporated by reference in its entirety and for all purposes.
[0022] Referring to FIG. 2, a flow diagram of a method 200 of
sending an offer to a user of the social networking platform based
on a user request is shown according to an example embodiment.
Method 200 is performed by the social media computing system 102
(e.g., by processor 110). Method 200 begins when an offer request
is received from a user at 202. The offer request is received by
the social media computing system 102 and from a user device 106
associated with the user. The request includes an identification of
a product or service that the user would like to receive an offer
on (i.e., the user would like to know if there are any special
deals or merchant offers relating to the identified product or
service). The product may be identified with a hashtag. For
example, the user 104 may send a message saying "#shoes". The
message may include multiple keywords, such as "#shoes #leather".
In the example, the hashtag serves as a trigger for the social
media computing system 102 to identify product offers related to
the hashtagged word or keywords. The request also includes an
identification of the user (e.g., a username associated with the
user). In some arrangements, location information relating to the
current location of the user device 106 being used by the user to
send the request is received along with the request at 202. The
location information may relate to GPS location information of the
user device 106 or location information based on a determined
position of the user device as identified through the locator
beacons 146 if a merchant 108.
[0023] The request may be transmitted as a chat message to a
contact that is an offer client of the social media computing
system 102. For example, as shown in FIG. 3, an example user
interface 300 of the offer feature as presented via the social
media client 134 running on the user device 106. The user can type
in a request into the "send a chat" bar 302 and click the send
button 304 to send an offer request to "Snapoffers." In the
arrangement shown in FIG. 3, the message receiving account
"Snapoffers" is an account with the social media service that can
receive messages from other users of the social media service. In
some arrangements, the "Snapoffers" account is bot account that is
automatically operated by the social media computing system 102
(e.g., all messages are received, analyzed, and automatically
replied to by the social media computing system 102). As shown in
FIG. 4, an example user interface 400 of the offer feature shows
that the user requested an offer for headphones by sending
"#headphones" as a message to Snapoffers.
[0024] Requestor information is determined at 204. The requestor
information is determined by the social media computing system 102.
In some arrangements, the requestor information is at least in part
determined based on user information stored in the account database
120. The requestor information may include user demographic
information (e.g., age, sex, shopping habits, browsing history,
income level, etc.). The requestor information may include prior
purchase data (e.g., shopping history, preferred stores, preferred
price ranges, etc.) and offer acceptance/rejection information. In
some arrangements, the requestor information includes identifying
the location of the user initiating the request based on the
received location information received at 202.
[0025] The offer database is cross referenced for appropriate
offers at 206. The social media computing system 102
cross-references the offers database 122 with the identification of
the product or the requested product type (i.e., the hashtagged
keyword or keywords as received at 202) and the requestor
information (as determined at 204) to identify appropriate offers
to send in response to the initial request. The offers in the offer
database are offers from the merchants 108. In some arrangements,
the social media computing system 102 queries the offers database
122 for offers that match the information received with the offer
request. In further arrangements, the social media computing system
102 limits offers to within a threshold distance of the
requestor.
[0026] A highest ranking offer is determined at 208. The social
media computing system 102 determines the best match, or highest
ranking, offer based on the request and the requestor information.
In some arrangements, more than one offer matches the request
criteria. In such arrangements, the requestor information is used
to identify the offer that most likely will satisfy the user's
request. For example, if the user request was for a purse (e.g.,
the user sent a message to Snapoffers with the text "#purse"), and
the user has a history of buying a first brand of purses and not a
second brand of purses, offers relating to the first brand of
purses may be ranked higher than offers relating to the second
brand of purses. The multiple matches may also be prioritized at
least in part based on a location of the merchant with respect to
the location of the user. In some embodiments, the multiple matches
may also be prioritized at least in part based on bids placed by
the merchants. For example, for #purse, merchant A may place a bid
of $0.10 and merchant B may place a bid of $0.12. The next time the
text "#purse" is received, an offer may be selected based at least
in part on which merchant placed the higher bid. For example, if
Merchant A's offer is displayed, then Merchant A may pay the $0.10
bid amount to the social media platform for displaying the offer.
The bid may be placed for simply displaying the offer to the user,
or may further require that the user actually accept the offer in
order for the bid amount to be paid. In embodiments where the bid
payment is contingent upon the user accepting the offer, the offer
may further be selected based on the probability of the user
accepting the offer. For example, if Merchant A places a bid that
is much higher than the bid from Merchant B, but Merchant A's bid
is contingent upon the user accepting the bid, and Merchant A's
offers have performed poorly in the past, then Merchant B may be
more likely to be selected.
[0027] The highest ranking offer is transmitted to the user at 210.
The social media computing system 102 generates and transmits the
offer to the user device 106. The offer includes an identification
of a product or service and a price of the product or service. In
some arrangements, the offer identifies the merchant 108 offering
the product or service. In further arrangements, the offer includes
a hyperlink to a product page containing more information about the
offered product or service (e.g., at a website of the merchant
108). The offer includes a request for the user to accept or reject
the offer. In some arrangements, the offer expires after a
designated period of time (e.g., 5 minutes, 10 minutes, 15 minutes,
etc.). For example, FIG. 5 shows an example user interface 500 in
which an offer 502 is sent to a user via the social media client
134. The offer 502 of FIG. 5 is for a pair of headphones in
response to the users initial offer request. The offer 502 includes
an identification of the merchant ("MERCH"), an identification of
the price ("$9.99), an indication of the offer's expiration ("15
minutes"), and an invitation for the user to accept or reject the
offer by replying to the message containing the offer. Referring
again to FIG. 2, after transmitting the offer at 210, the
transmitted offer is marked as sent at 212. The social media
computing system 102 marks the offer as sent to the user in the
offer database 122. Marking the offer as sent ensures that the
social media computing system 102 will not send that specific offer
to the user again within a set time period.
[0028] At 214, the social media computing system 102 determines
whether the offer was accepted or not. The offer is accepted if the
user responds with an acceptance via the user device 106 (e.g., by
sending a "yes" message as shown in user interface 600 of FIG. 6).
In such situations, the social media computing system 102 receives
the acceptance from the user device 106. The offer is rejected if
the user responds with a rejection via the user device 106 (e.g.,
by sending a "no" message) or by allowing the offer to expire. If
the offer expires, the computing system 102 determines whether to
send the next highest priority offer at 216. In some arrangements,
the next highest priority message is sent if there are more than
one possible offers matching the user's initial offer request and
if the user indicated that multiple offers are to be delivered
(e.g., by the user sending the request again, based on user
preferences, etc.) after the previously sent offer message is
rejected or expired. If the next offer is to be sent, method 200
returns to 206. If a next offer is not to be sent or no next offer
exists, method 200 ends.
[0029] If the offer was accepted at 214, payment approval must be
received prior to moving forward with the offer. The social media
computing system 102 receives payment approval from the user via
the user device 106. For example, as shown in FIGS. 7 through 9,
various user interfaces 700, 800, and 900 are shown that show the
back and forth between the social media computing system 102 and
the user 104 to provide payment approval. As shown in user
interface 700, the social media computing system 102 first sends a
request to provide funds. The user can provide funds by entering a
payment amount (e.g., $9.99) and clicking a send funds button 802
on user interface 800. The social media computing system 102 may
respond to the sent funds with an indication that the funds were
received, as shown in user interface 900. The source of the funding
may be a bank account or credit card account already associated
with the user's social media platform account, which may be stored
in the account database 120. In other arrangements, the user can
provide a new payment source (e.g., a bank account, a credit card
account, a gift card number, etc.) via a follow-up message from the
user device 106 to the social media computing system 102.
[0030] Payment is transmitted to merchant at 220. The social media
computing system 102 transmits payment to the merchant 108 to
indicate that the user 104 purchased the item or service in the
offer. Payment may be effectuated through a third party (e.g., a
credit card processor, a financial institution, etc.).
[0031] A transaction code is transmitted to the user at 222. The
social media computing system 102 generates and transmits the
transaction code to the user device 106. In some arrangements, the
transaction code is generated by the merchant computing system 116
and is sent to the social media computing system 102 where the
transaction code is forwarded to the user device 106. In other
arrangements, the transaction code is generated by the social media
computing system 102 and is sent to both the user device 106 and
the merchant computing system 116. An exemplary transaction code is
shown in user interface 1000 of FIG. 10. The transaction code
allows the user to claim the purchased product or services. The
transaction code may be redeemed at a brick-and-mortar location of
the merchant 108 or via the merchant's website. In arrangements
where the transaction code is redeemed online, the user may enter
the transaction code into a coupon code or discount code field of
the checkout screen on the merchant's website. In such
arrangements, the transmittal of the transaction code may include a
hyperlink to the merchant's website. In other arrangements, the
transaction code may be in the form of a barcode or a
two-dimensional barcode (e.g., a QR code) that can be presented by
the user (e.g., via the display 130 of the user device 106, by
printing the transaction code, etc.) such that the transaction code
can be scanned at a point of sale system of the merchant 108.
[0032] In some arrangements, the social media computing system 102
can allow users 104 to maintain a list of accepted offers. The list
may be called a shopping list. The social media computing system
102 can also create a shopping route and navigation instructions.
For example, if a user has accepted a first offer for shoes at a
first merchant, a second offer for pants at a second merchant, and
a third offer for a coat at a third merchant, the social media
computing system 102 can determine the optimal shopping route for
the user to pick up the accepted offers in the least amount of
time. The optimal route may be determined based on the user's
location, the locations of the merchants, and traffic data. The
optimal route is transmitted to the user device 106 associated with
the user, where it can be followed via a navigation or maps program
executed on or a navigation or maps website accessed by the user
device 106.
[0033] Referring to FIG. 11, a flow diagram of a method 1100 of
permitting a merchant to send an offer to a user of a social media
platform based on a location of the user according to an example
embodiment. Method 1100 is performed by the social media computing
system 102 (e.g., by processor 110). Method 1100 is similar to
method 200, however, method 1100 permits the merchant 108 to
directly reach out to the user with product or service offers via
the social media computing system 102. Method 1100 begins when user
location information is received at 1102. The social media
computing system 102 receives the location information from the
user device. The user location information may relate to at least
one beacon identifiers (e.g., from beacons 146), GPS coordinates,
cell tower location information, wireless network SSID information,
or the like.
[0034] The user is determined to be within a proximity of a
merchant at 1104. The social media computing system 102 determines
that the user is within proximity of the merchant 108. The
proximity may be predetermined to be within a set distance from a
location of the merchant 108 or within the location of the merchant
108. In some arrangements, the location information may indicate
that the user is in a certain area within a location of the
merchant 108 (e.g., within the men's department of a department
store).
[0035] Direct communication between the merchant and the user via
the social networking platform is temporarily enabled at 1106. The
social media computing system 102 enables the merchant 108 to send
messages with offers to the user 106. As described above, the
social media platform may place restrictions on the messages that
can be sent to the user 106. For example, the user 106 may only
receive messages from those other users that the user 106 has
approved to be a contact. Accordingly, by enabling direct
communication between the merchant 108 and the user 106, the social
media computing system 102 allows the merchant 108 to send messages
to the user 106 via the social media platform. The messages are
routed through the social media computing system 102. The messages
from the merchant 108 may include offers for products or services
provided by the merchant 108 (in a similar manner as described
above with respect to method 200). The primary difference between
method 200 and method 1100, however, is that the offers are
selected directly by the merchant 108 and are transmitted by the
merchant computing system 116 via the social media computing system
102, which facilitates the messaging of the social media
platform.
[0036] For example, a set of user interfaces (1200, 1300, 1400,
1500, 1600, 1700, and 1800) are shown in FIGS. 12 through 18, which
demonstrate a back and forth message session that occurs while the
merchant 108 is temporarily permitted to send offers to the user
104. User interface 1200 shows an initial message from the merchant
108 to the user 104. The message of interface 1200 lets the user
104 know that the user 104 can request offers directly from the
merchant 108. The user 104 responds in user interface 1300 with a
message indicating that the user 104 is interested in shoes. Based
on the request for offers for shoes, the merchant computing system
116 searches the offers of the merchant 108 for offers matching
shoes and transmits a first offer. As shown in user interface 1500,
the user 104 rejects the first offer. In response to the rejection,
the merchant computing system 116 transmits a second offer to the
user 104 for a second pair of shoes. The user accepts the second
offer in user interface 1700. The merchant computing system 116
transmits an offer code (e.g., ABC123) to the user 104 in user
interface 1800. The offer code is later used by the user 104 to
redeem the offer (e.g., in a similar manner as described above with
respect to the method 200).
[0037] Updated user location information is received at 1108. The
updated user location information is received by the social media
computing system 102 form the user device 106. The updated user
location information may be received on a regular bases (e.g.,
every set period of time, continuously, etc.). The updated user
location information may relate to updated beacon identifiers,
updated GPS coordinates, updated cell tower location information,
updated wireless network SSID information, or the like. Based on
the updated user location information, the social media computing
system 102 determines whether the user is still within the
designated proximity of the merchant at 1110. If the user is still
within the designated proximity, method 1100 returns to step 1108.
If the user is not with in the designated proximity, direct
communication between the merchant and the user is disabled at
1112. In some arrangements, a message is sent from the social media
computing system 102 to the merchant computing system 116
indicating that the user is no longer in or near the merchant's
location.
[0038] The embodiments of the present invention have been described
with reference to drawings. The drawings illustrate certain details
of specific embodiments that implement the systems and methods and
programs of the present invention. However, describing the
invention with drawings should not be construed as imposing on the
invention any limitations that may be present in the drawings. The
present invention contemplates methods, systems and program
products on any machine-readable media for accomplishing its
operations. The embodiments of the present invention may be
implemented using an existing computer processor, or by a special
purpose computer processor incorporated for this or another purpose
or by a hardwired system.
[0039] As noted above, embodiments within the scope of the present
invention include program products comprising machine-readable
media for carrying or having machine-executable instructions or
data structures stored thereon. Such machine-readable media can be
any available media that can be accessed by a general purpose or
special purpose computer or other machine with a processor. By way
of example, such machine-readable media can comprise RAM, ROM,
EPROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk
storage or other magnetic storage devices, or any other medium
which can be used to carry or store desired program code in the
form of machine-executable instructions or data structures and
which can be accessed by a general purpose or special purpose
computer or other machine with a processor. Combinations of the
above are also included within the scope of machine-readable media.
Machine-executable instructions comprise, for example, instructions
and data which cause a general purpose computer, special purpose
computer, or special purpose processing machines to perform a
certain function or group of functions.
[0040] Embodiments of the present invention have been described in
the general context of method steps which may be implemented in one
embodiment by a program product including machine-executable
instructions, such as program code, for example in the form of
program modules executed by machines in networked environments.
Generally, program modules include routines, programs, objects,
components, data structures, etc. that perform particular tasks or
implement particular abstract data types. Machine-executable
instructions, associated data structures, and program modules
represent examples of program code for executing steps of the
methods disclosed herein. The particular sequence of such
executable instructions or associated data structures represent
examples of corresponding acts for implementing the functions
described in such steps.
[0041] As previously indicated, embodiments of the present
invention may be practiced in a networked environment using logical
connections to one or more remote computers having processors.
Those skilled in the art will appreciate that such network
computing environments may encompass many types of computers,
including personal computers, hand-held devices, multi-processor
systems, microprocessor-based or programmable consumer electronics,
network PCs, minicomputers, mainframe computers, and so on.
Embodiments of the invention may also be practiced in distributed
computing environments where tasks are performed by local and
remote processing devices that are linked (either by hardwired
links, wireless links, or by a combination of hardwired or wireless
links) through a communications network. In a distributed computing
environment, program modules may be located in both local and
remote memory storage devices.
[0042] An example system for implementing the overall system or
portions of the invention might include a general purpose computing
computers in the form of computers, including a processing unit, a
system memory, and a system bus that couples various system
components including the system memory to the processing unit. The
system memory may include read only memory (ROM) and random access
memory (RAM). The computer may also include a magnetic hard disk
drive for reading from and writing to a magnetic hard disk, a
magnetic disk drive for reading from or writing to a removable
magnetic disk, and an optical disk drive for reading from or
writing to a removable optical disk such as a CD ROM or other
optical media. The drives and their associated machine-readable
media provide nonvolatile storage of machine-executable
instructions, data structures, program modules and other data for
the computer. It should also be noted that the word "terminal" as
used herein is intended to encompass computer input and output
devices. Input devices, as described herein, include a keyboard, a
keypad, a mouse, joystick or other input devices performing a
similar function. The output devices, as described herein, include
a computer monitor, printer, facsimile machine, or other output
devices performing a similar function.
[0043] Any foregoing references to currency or funds are intended
to include fiat currencies, non-fiat currencies (e.g., precious
metals), and math-based currencies (often referred to as
cryptocurrencies). Examples of math-based currencies include
Bitcoin, Litecoin, Dogecoin, and the like.
[0044] It should be noted that although the diagrams herein may
show a specific order and composition of method steps, it is
understood that the order of these steps may differ from what is
depicted. For example, two or more steps may be performed
concurrently or with partial concurrence. Also, some method steps
that are performed as discrete steps may be combined, steps being
performed as a combined step may be separated into discrete steps,
the sequence of certain processes may be reversed or otherwise
varied, and the nature or number of discrete processes may be
altered or varied. The order or sequence of any element or
apparatus may be varied or substituted according to alternative
embodiments. Accordingly, all such modifications are intended to be
included within the scope of the present invention as defined in
the appended claims. Such variations will depend on the software
and hardware systems chosen and on designer choice. It is
understood that all such variations are within the scope of the
invention. Likewise, software and web implementations of the
present invention could be accomplished with standard programming
techniques with rule based logic and other logic to accomplish the
various database searching steps, correlation steps, comparison
steps and decision steps.
[0045] The foregoing description of embodiments of the invention
has been presented for purposes of illustration and description. It
is not intended to be exhaustive or to limit the invention to the
precise form disclosed, and modifications and variations are
possible in light of the above teachings or may be acquired from
practice of the invention. The embodiments were chosen and
described in order to explain the principals of the invention and
its practical application to enable one skilled in the art to
utilize the invention in various embodiments and with various
modifications as are suited to the particular use contemplated.
Other substitutions, modifications, changes and omissions may be
made in the design, operating conditions and arrangement of the
embodiments without departing from the scope of the present
invention as expressed in the appended claims.
* * * * *