Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
PAIRING COMPUTING DEVICES VIA AUDIO COMMUNICATION CHANNELS
Document Type and Number:
WIPO Patent Application WO/2018/200011
Kind Code:
A1
Abstract:
A second computing device operator initiates a service request. The second computing device transmits a request identifier and a displayed image to a processing system, which associates the received image and the request identifier. In an example, the second computing device broadcasts an audio token via an audio communication channel comprising the request identifier and displayed image. A user associated with a first computing device selects an option to initiate a service request and the first computing device receives the audio token via the audio communication channel. The first computing device displays at least the received image and the user selects the image on the first computing device among a group of displayed images to confirm the service request. In another example, the user selects a different image to cancel the service request. The processing system receives the selected image from the first computing device and processes the service request.

Inventors:
KHANNA HEMAN (IN)
Application Number:
PCT/US2017/033492
Publication Date:
November 01, 2018
Filing Date:
May 19, 2017
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
GOOGLE INC (US)
International Classes:
G06Q20/02; G06Q20/20; G06Q20/40; H04M1/215; H04M1/72412; H04M1/60
Foreign References:
US20100223145A12010-09-02
US20130185214A12013-07-18
US20160232518A12016-08-11
US20140279537A12014-09-18
Other References:
None
Attorney, Agent or Firm:
GORDY Bryan J.E. (US)
Download PDF:
Claims:
CLATMS

What is claimed is:

1. A computer-implemented method to process service requests based on information associated with computing devices that communicate via audio communication channels, comprising:

receiving, by a user computing device, an audio token via an audio communication channel comprising a first service request identifier and a first image identifier;

displaying, by the user computing device, a stored image corresponding to the first image identifier and one or more other images,

receiving, by the user computing device, a second input comprising a selection of the stored image corresponding to the image identifier;

transmitting, by the user computing device and to the one or more computing devices, the service request identifier, the first image identifier corresponding to the selected image, and a user account identifier associated with the user computing device; receiving, by the one or more computing devices and from a service computing device, a second service request identifier, a second service computing device identifier, and a second image identifier corresponding to a displayed second image;

receiving, by the one or more computing devices and from the user computing device, the service request identifier, the first image identifier corresponding to the stored image, and the user account identifier associated with the user computing device;

determining, by the one or more computing devices, that the second image identifier and the second service request identifier received from the service computing device matches the first image identifier and the first service request identifier received from the user computing device, respectively;

in response to determining that the second image identifier and second service request identifier received from the service computing device matches the first image identifier and first service request identifier received from the user computing device, retrieving user account information associated with the user account identifier received from the user computing device and service account information associated with the service computing device identifier received from the service computing device; and processing, by the one or more computing devices, the service request associated with the service request identifier based on the user account information and the service account information.

2. The method of claim 1, further comprising:

receiving, by the user computing device, an input of a selection of an application; and

activating, by the user computing device, a microphone component of the first user computing device in response to receiving the input of the selection of the application, wherein the user computing device receives the audio token transmitted from the service computing device via the activated microphone component.

3. The method of claim 1, wherein the service computing device transmits the audio token to the user computing device via an ultrasound communication channel.

4. The method of claim 1, wherein the service computing device transmits the audio token to the user computing device via an audible sound communication channel.

5. The method of claim 1, further comprising transmitting, by the service computing device, data to the one or more computing devices, wherein the one or more computing devices retransmits the data to the user computing device.

6. The method of claim 1, wherein the service request associated with the service request identifier comprise a merchant financial account identifier associated with a merchant system payment account, wherein the one or more computing devices extracts a user financial account identifier associated with a user payment account, and wherein processing the service request comprises communicating with an issuer system associated with the user financial account identifier to process a financial transaction between the user payment account and the merchant payment account.

7. The method of claim 1, further comprising:

receiving, by the service computing device, a first input;

in response to receiving the first input, generating, by the service computing device, the service request identifier and displaying an image;

transmitting, by the service computing device and to one or more computing devices, the service request identifier and the image identifier associated with the displayed image;

broadcasting, via an audio component of the service computing device, the audio token, the audio token comprising the service request identifier and the image identifier associated with the displayed image,

wherein receiving, by the user computing device, the audio token comprises receiving the audio token broadcast by the service computing device.

8. The method of claim 7, wherein the first input comprises an input of a selection of data stored on the service computing device, wherein the service request details comprise the selected data, wherein the one or more computing devices extracts a user financial account identifier associated with a user payment account, and wherein processing the service request comprises communicating the selected data to the user computing device.

9. A computer program product, comprising:

a non-transitory computer-readable medium having computer-executable program instructions embodied thereon that when executed by a computing device cause the computing device to process service requests based on information associated with computing devices that communicate via audio communication channels, the computer- executable program instructions comprising:

computer-executable program instructions to receive, by a first computing device, an audio token over an audio communication channel via an audio component of the first computing device comprising a service request identifier and an image identifier;

computer-executable program instructions to display, by the second computing device, one or more of the service request details, an image corresponding to the image identifier, and one or more other images;

computer-executable program instructions to receive, by the second computing device, a second input comprising a selection of the image corresponding to the image identifier; and

computer-executable program instructions to transmit, by the second computing device and to the one or more computing devices, the image identifier and a user account identifier, wherein the one or more computing devices processes a service request based on service request details received from a service computing device and user account information associated with the user account identifier.

10. The computer-program product of claim 9, further comprising:

computer-executable program instructions to receive, by the first computing device, a first input;

in response to receiving the input, computer-executable program instructions to generate, by the first computing device, the service request identifier and display, via the first computing device, the image;

computer-executable program instructions to transmit, by the first computing device and to one or more computing devices, the service request details, the service request identifier and the image identifier associated with the displayed image; and

computer-executable program instructions to broadcast, by a speaker component of the first computing device, the audio token comprising the service request identifier and the image identifier associated with the displayed image.

1 1. The computer-program product of claim 9, further comprising: computer-executable program instructions to receive, by the second computing device, an input of a selection of an application; and

computer-executable program instructions to activate, by the second computing device, a microphone component of the second computing device in response to receiving the input of the selection of the application; and

computer-executable program instructions to receive, by the second computing device, the audio token transmitted by the first computing device via the activated microphone component.

12. The computer program product of claim 9, wherein the first computing device transmits the audio token to the user computing device via ultrasound communi cati on .

13. The computer program product of claim 9, wherein the first computing device transmits the audio token to the user computing device via audible sound communi cati on .

14. The computer program product of claim 9, further comprising computer- executable program instructions to transmit, by the first computing device, data to the one or more computing devices, wherein the one or more computing devices retransmit the data to the second computing device.

15. The computer program product of claim 9, wherein the service request details comprise a merchant financial account identifier associated with a merchant system payment account, wherein the one or more computing devices extract a user financial account identifier associated with a user payment account, and wherein processing the service request comprises communicating with an issuer system associated with the .user financial account identifier to process a financial transaction between the user payment account and the merchant payment account.

16. The computer program product of claim 9, wherein the first input comprises an input of a selection of data stored on the first computing device, wherein the service request details comprise the selected data, wherein the one or more computing devices extract a user financial account identifier associated with a user payment account, and wherein processing the service request comprises communicating the selected data to the second computing device.

17. A system to process service requests based on information associated with computing devices that communicate via audio communication channels, comprising: a storage device;

and audio component; and

a processor communicatively coupled to the storage device, wherein the processor executes application code instructions that are stored in the storage device to cause the system to:

receive an audio token over an audio communication channel via the audio component comprising a service request identifier, service request details, and an image identifier;

display, by the second computing device, one or more service request details, an image corresponding to the image identifier, and one or more other images;

receive, by the second computing device, a second input comprising a selection of the displayed image corresponding to the image identifier; and

transmit, in response to receiving the second input, by the second computing device and to the one or more computing devices, the service request identifier, the image identifier, and a user account identifier, wherein the one or more computing devices processes a service request based on transaction details received from a service computing device that are associated with the service request identifier and based on user account information associated with the user account identifier.

18. The system of claim 17, wherein a the service computing device receives a first input, wherein in response to receiving the input, the service computing device generates a service request identifier and displays an image; wherein the service computing device transmits, to one or more computing devices, the transaction details, the service request identifier and an image identifier associated with the displayed image; and wherein the service computing device broadcasts the audio token via an audio component of the first computing device comprising the transaction identifier and the image identifier.

19. The system of claim 17, wherein the processor is further configured to execute application code instructions that are stored in the storage device to cause the system to:

receive an input of a selection of an application; and

activate a microphone component of the second computing device in response to receiving the input of the selection of the application; and

receive the audio token via the activated microphone component.

20. The system claim 17, wherein the audio token is received via ultrasound communication or audible sound communication.

Description:
PATRTNG COMPUTING DEVTCES VTA ATJDTO COMMUNICATION

CHANNELS

TECHNICAL FIELD

[0001] The present disclosure relates to pairing computing devices via audio communication channels between the computing devices.

BACKGROUND

[0002] Users in emerging markets need a convenient user experience to transmit data between user computing devices. In the developed world, the tap-and-pair gesture, enabled via near-field communication ("NFC") in user computing devices makes transmission of data to or from user computing devices seamless. In emerging markets, however, many user computing devices do not have NFC functionality, making them ineligible to benefit from this NFC tap-and-pair gesture. Many user computing devices without NFC functionality comprise a speaker component and microphone component that allow for output and input of sound communication.

[0003] Current technology, however, does not provide for pairing user computing devices via an audio communication channel between the devices.

SUMMARY

[0004] Techniques herein provide computer-implemented methods to pair a user computing device with a service provider computing device via audible sound or ultrasound communication to process a service request. In an example, a merchant device operator initiates a service request at a first user computing device. A second user computing device associated with a user is paired to the first user computing device via an audio communication channel and a data transfer is processed. The operator of the first user computing device selects an application on the first user computing device to initiate the data transfer, selects data to transfer, and selects an image from one or more selectable images. In another example, the application on the first user computing device randomly selects an image from the one or more selectable images. In an example, the first user computing device transmits the data, a first user computing device identifier, and an image identifier associated with the selected image to an account management system. In an example, the account management system associates the transmitted data and the image identifier associated with the selected image with the first user computing device identifier.

[0005] The first user computing device broadcasts an audio token comprising a service request identifier, the selected image, and the first user computing device identifier. A user associated with the second computing device selects an application on the second computing device and selects an option to initiate a service request. In this example, in response to receiving an input of a selection of the option to initiate the service request, the second user computing device activates a microphone component of the second user computing device and receives the audio token comprising the service request identifier, the image identifier associated with selected image, and the first user computing device identifier broadcast by the first user computing device.

[0006] In an example, the second user computing device displays the image associated with the received image identifier. In this example, the user of the second computing device views that the image displayed on both the first user computing device and the second user computing device to verify that the correct two computing devices are being paired. In this example, the user of the second computing device selects the image displayed on the second computing device among a group of displayed images comprising the image to confirm the service request. In another example, the user of the second user computing device selects an image other than the displayed image on the second user computing device to cancel the service request.

[0007] In an example, in response to receiving an input of a selection of the image, the second user computing device transmits, via the network, the image identifier associated with the selected image, the first user computing device identifier, and a second user computing device identifier to the account management system system. In an example, the first user computing device and the second computing device communicate via the account management system to process the service request and/or transfer data. In another example, the first user computing device and the second user computing device establish a wireless network connection, for example, a Wi-Fi network connection, a Bluetooth network connection, an NFC network connection, a Bluetooth low-energy network connection, or other wireless network connection and the first user computing device transmits data to the second user computing device via the established wireless network connection. [0008] Tn certain other exampl e aspects described herein, systems and computer program products to pair a user computing device with a service computing device via audible sound or ultrasound communication to process a service request are provided.

[0009] These and other aspects, obj ects, features, and advantages of the examples will become apparent to those having ordinary skill in the art upon consideration of the following detailed description of illustrated examples.

BRIEF DESCRIPTION OF THE DRAWINGS

[0010] Figure 1 is a block diagram depicting a system for pairing a user computing device with a service computing device via an audi o communication channel to process a service request, in accordance with certain examples.

[001 1 ] Figure 2 is a block flow diagram depicting a method for pairing a user computing device with a service computing device via an audio communication channel to process a service request, in accordance with certain examples.

[0012] Figure 3 is a block flow diagram depicting a method for registering, by a user, for an account with an processing system, in accordance with certain examples.

[0013] Figure 4 is a block flow diagram depicting a method for initiating, by a user, a service request at a service computing device, in accordance with certain exampl es.

[0014] Figure 5 is a block flow diagram depicting a method for pairing, by a processing system, a user computing device to a service computing device via transmission of an audio token, in accordance with certain examples.

[0015] Figure 6 is a block flow diagram depicting a method for processing a service request, in accordance with certain examples.

[0016] Figure 7 is a block diagram depicting a computing machine and module, in accordance with certain examples.

DETAILED DESCRIPTION OF EXAMPLES

Overview

[0017] The examples described herein provide computer-implemented techniques for pairing a user computing device with a service computing device via an audio communication channel to conduct a service request.

[0018] In an example, a service provider system registers with an account management system and installs an application on a service computing device. A user registers with the account management system and enters account information into the user account using the application. The user initiates a service request at the service computing device. The user computing device is paired to the service computing device and a service request is processed.

[0019] In other examples, the user initiates a request to share data between the user computing device and the service computing device and the user computing device is paired to the service computing device to share the requested data. For example, a first user computing device shares or receives data comprising files, images, text, or a combination thereof with a second user computing device. In another example, the second user computing device shares or receives data with the first user computing device.

[0020] In examples where the user initiates a service request at the service computing device, the service computing device operator selects the application on the service computing device to initiate the service request and selects a service request image from one or more service request images displayed by the service computing device. In another example, the application on the service computing device randomly selects a service request image from the one or more selectable service request images. In an example, the service computing device generates a service request identifier and transmits the service request identifier, the selected service request image, a service computing device identifier, and service request details to the account management system. In an example, the account management system associates the selected service request image, service computing device identifier, and service request details with the service request identifier.

[0021] In an example, the service computing device broadcasts an audio token via audible sound or ultrasound communication channel. An example audio token comprises the service request identifier, the selected service request image, the service computing device identifier, and/or one or more service request details such as the total amount of the service request. A user associated with the user computing device selects an application on the user computing device and selects an option to initiate a service request. In this example, in response to receiving an input of a selection of the option to initiate the service request, the user computing device activates a microphone component of the user computing device and receives the audio token broadcast by the service computing device via audible sound or ultrasound communication channel. [0022] Tn an example, the user computing device di splays one or more of the received service request details, for example, the total amount of the service request. In an example the user computing device displays one or more service request images comprising at least the received selected service request image transmitted by the service computing device to the user computing device. In an example, the user of the user computing device ensures that the service request image displayed on the service computing device matches the service request image displayed on the user computing device to verify that the correct two computing devices are being paired. In this example, the user of the user computing device selects the service request image displayed on the service computing device from among a group of di splayed images that compri se the service request image to confirm the service request. In another example, the user of the user computing device selects an image other than the displayed service request image on the user computing device to cancel the service request.

[0023] In an example, the user computing device communicates the service request identifier, the service computing device identifier, and the selected service request image to the account management system. The account management system communicates with the user computing device and processes a service request. For example, if the user selected the matching service request image, the account management system processes a service request using account information associated with the user. In another example, the user did not select the matching service request image and/or instead selected a different service request image and the account management system and/or the user computing device cancels the service request.

[0024] In another example, the user computing device and the service computing device both communicate with the account management system over the network to transfer and/or receive data. The user computing device transmits user account information to the service computing device via the network and the service computing device transmits the user account information to the account management system to process a service request. In another example, the user computing device transmits user account information to the account management system via the network. In yet another example, the user computing device communicates data to the service computing device comprising files, images, text, or other data via. In this example the account management system facilitates the communication of the data over the network by receiving the data from the user computing device and transmitting it to the service computing device. In another example, the account management system facilitates the communication of data over the network by receiving the data from the service computing device and transmitting it to the user computing device

[0025] The examples described herein provide computer-implemented techniques for pairing a user computing device with a service computing device via an audio communication channel to provide data to a account management system over a network to conduct a service request or to otherwise exchange data over the network between the user computing device and the service computing device via the account management system.

[0026] The examples described herein provide computer-implemented techniques for pairing a user computing device with a service computing device via an audio communication channel to provide data to a account management system over a network to conduct a service request.

[0027] A service provider system registers with an account management system and installs an application on a service computing device. A user registers with the account management system. For example, the user accesses the account management system website via a user computing device and registers with the account management system. The user downloads an application onto the user computing device. The user enters account information into a user account using the application. The user configures permissions and settings associated with the user account using the application.

[0028] A user initiates a service request at a service computing device. For example, the user arrives at the service computing device. The service computing device operator totals items of the user for purchase. The service computing device operator asks the user to select a service processing option. The user indicates a desire to process the service request via the application. In an example, the user computing device is paired to the service computing device and a service request is processed. The service computing device operator selects the application on the service computing device to initiate a service request.

[0029] The service computing device operator selects a service request image and the service computing device displays the service request image via a user interface of the service computing device. In another example, the service computing device operator does not select a service request image and the service computing device randomly selects or randomly generates a service request image and displays the service request image. The service computing device generates a service request identifier and transmits service request details, a service request identifier, an image identifier associated with the displayed service request image, and a service computing device identifier to an account management system. The account management system receives the service request details, the service request identifier, the service request image, and the service computing device identifier.

[0030] The service computing device broadcasts an audio token comprising the service request identifier, an image identifier associated with the displayed service request image, and a service computing device identifier associated with the service computing device via a speaker component of the service computing device. A user associated with the user computing device selects the application on the user computing device and selects an option to initiate a service request. Tn this example, in response to receiving an input of a selection of the option to initiate the service request, the user computing device activates a microphone component of the user computing device and receives the audio token comprising the service request identifier, the service request image identifier, and the service computing device identifier broadcast by the service computing device. In another example, while the application running on the user computing device, the user computing device microphone component of the user computing device is activated and able to receive the audio token comprising the service request identifier, the service request image identifier, and the service computing device identifier broadcast by the first user computing device. In an example, the user computing device displays the received service request image corresponding to the received service request image identifier. For example, the user computing device comprises one or more stored service request images corresponding to service request image identifiers and identifies the service request image corresponding to the received service request image identifier for display. In an example, the user of the user computing device views that the service request image is displayed on both the service computing device and the user computing device to verify that the correct two computing devices are being paired. In this example, the user of the user computing device selects the service request image displayed on the user computing device among a group of displayed images comprising at least the service request image to confirm the service request. In another example, the user of the user computing device selects an image other than the displayed service request image on the user computing device to cancel the service request. In an example, in response to receiving an input of a selection of the service request image, the user computing device transmits, via the network, the service request image identifier, the service computing device identifier, and a user computing device identifier to the account management system . In an example, the service computing device and the user computing device communicate via the account management system to process the service request and/or transfer data. The service computing device transmits a request for account information or other data to the user computing device via the account management system over the network. The service computing device receives account information or other data from the user computing device over the network via the account management system. In other examples, the user computing device and the service computing device establish a wireless network connection at the merchant location and transmit and/or receive data over the wireless network connection.

[003 1 ] Other examples are described herein for pairing a user computing device with a service computing device via a Bluetooth communication channel, a Bluetooth low-energy communication channel, or a Wi-Fi communication channel to provide data to a account management system over a network to conduct a service request.

[0032] The service computing device broadcasts the token comprising the service request identifier, an image identifier associated with the displayed service request image, and a service computing device identifier associated with the service computing device via a Bluetooth communication channel, a Bluetooth low-energy communication channel, or a Wi-Fi communicati on channel . A user associated with the user computing device selects the application on the user computing device and selects an option to initiate a service request. In this example, in response to receiving an input of a selection of the option to initiate the service request, the user computing device activates a microphone component of the user computing device and receives the token comprising the service request identifier, the service request image, and the service computing device identifier broadcast by the service computing device. In another example, while the application running on the user computing device, the user computing device is able to receive the audio token comprising the service request identifier, the service request image, and the service computing device identifier broadcast by the first user computing device via the Bluetooth communication channel, the Bluetooth low-energy communication channel, or Wi-Fi communication channel . For example, if the second user computing device broadcasted the token via a Bluetooth communication channel, the first user computing device receives the token via the Bluetooth communication channel. For example, if the second user computing device broadcasted the token via the Bluetooth low-energy communication channel, the first computing device receives the token via the Bluetooth low-energy communication channel. For example, if the second user computing device broadcasted the token via the Wi-Fi communication channel, the first user computing device receives the token via the Wi-Fi communication channel.

[0033] In certain examples, the user computing device pairs with another user computing device via transmitting an audio token via an audio communication channel and transmits data to the other user computing device via the account management system over the network.

[0034] A first user computing device is paired to a second user computing device and data is transferred and/or shared between the first user computing device and the second user computing device over the network via the account management system. An operator of the second user computing device selects an application on the second user computing device to initiate a transfer of data. For example, the operator of the second user computing device desires to send data to or receive data from the first user computing device. The data comprise files, images, text, applications, and/or any other transferrable data. In an example, the user of the second user computing device inputs a selection, via the user interface of the second user computing device, of one or more images, text, videos, or other files to transfer to the first user computing device. The second user computing device broadcasts an audio token via ultrasound communication or audible sound communication, comprising a second user computing device identifier and a service request image identifier. In this example, a service request image corresponding to the service request image identifier is also displayed on the second user device.

[0035] The second computing device transmits data transfer request details, a data transfer request identifier, the service request image identifier associated with the displayed service request image, and a second computing device identifier to an account management system. The data transfer request details comprise the selection, by the user of the second computing device, of the one or more images, text, videos, or other files the user desires to transfer to the first user computing device. The account management system receives the data transfer request details, the data transfer request identifier, the service request image identifier, and the second computing device identifier. An operator of the first user computing device selects an application on the first user computing device and an option to initiate a data transfer.

[0036] In an example, in response to receiving an input of a selection of the option to initiate a data transfer, the application on the first user computing device activates a microphone of the first user computing device. In an example, the first user computing device receives the audio token broadcast by the second user computing device via the microphone of the first user computing device. In an example, the first user computing device displays the service request image corresponding to the service request image identifier received in the audio token. For example, the first user computing device comprises one or more stored service request images identified by service request image identifiers and identifies the service request image for display corresponding to the received service request image identifier. In this example, the user of the first user computing device views that the service request image is displayed on both the second user computing device and the first user computing device to verify that the correct two user computing devices are being paired. In this example, the user of the first user computing device selects the service request image displayed on the second user computing device among a group of displayed images comprising at least the service request image to confirm the service request. In another example, the user of the of the first user computing device selects an image other than the displayed service request image on the first user computing device to cancel the service request. In an example, in response to receiving an input of a selection of the service request image, the first user computing device transmits, via the network, the service request image identifier associated with the service request image, the second computing device identifier, and a first user computing device identifier to an account management system.

[0037] In an example, the first computing device and the second computing device communicate via the account management system to transfer data from the first user computing device to the second user computing device or from the second user computing device to the first user computing device. In an example, the first user computing device receives data via the account management system from the second user computing device. In another example, the user of the first user computing device inputs a selection, via the user interface of the first user computing device, of one or more images, text, videos, or other files stored on the first user computing device to transfer to the second user computing device via the account management system. In this example, in response to receiving the input, the first user computing device transmits the selected files via the network to the account management system, which retransmits the selected files to the second user computing device via the network. In other examples, the first user computing device and the second user computing device establish a wireless network connection at the merchant location and transmit and/or receive data over the wireless network connection.

[0038] In certain examples, the second user computing device broadcasts a token via a Bluetooth communication channel, a Bluetooth low-energy communication channel, or a Wi-Fi communication channel, comprising a second user computing device identifier and a service request image. In this example, the service request image is also displayed on the second user device. The second computing device generates an identifier and transmits data transfer request details, a data transfer request identifier, the displayed service request image, and a second computing device identifier to an account management system. The data transfer request details comprise the selection, by the user of the second computing device, of the one or more images, text, videos, or other files the user desires to transfer to the first user computing device. The account management system receives the data transfer request details, the data transfer request identifier, the service request image, and the second computing device identifier.

[0039] An operator of the first user computing device selects an application on the first user computing device and an option to initiate a data transfer. In an example, in response to receiving an input of a selection of the option to initiate a data transfer, the application on the first user computing device activates a module of the first user computing device capable of receiving the token broadcast via Bluetooth communication channel, a Bluetooth low-energy communication channel, or a Wi-Fi communication channel. In an example, the first user computing device receives the token broadcast by the second user computing device via a Bluetooth communication channel, a Bluetooth low-energy communication channel, or a Wi-Fi communication channel. For example, if the second user computing device broadcasted the token via a Bluetooth communication channel, the first user computing device receives the token via the Bluetooth communication channel. For example, if the second user computing device broadcasted the token via the Bluetooth low-energy communication channel, the first computing device receives the token via the Bluetooth low-energy communication channel. For example, if the second user computing device broadcasted the token via the Wi-Fi communication channel, the first user computing device receives the token via the Wi-Fi communication channel.

[0040] By using and relying on the methods and systems described herein, the user computing device and the service computing device provide the capability to pair via an audio communication channel without the necessity of using NFC. Further, the user computing device, the service computing device, the account management system, and the issuer system enable the user to conduct a service request at the service computing device by pairing the user computing device to the service computing device via an audio communication channel. As such, the systems and methods described herein enable pairing via an audio communication channel of computing devices not comprising conventional NFC functionality or in an environment in which NFC is unavailable. Further, the systems and methods described herein enable pairing via an audio communication channel of computing devices comprising conventional NFC functionality at longer distances than available via NFC pairing.

Example System Architecture

[0041] Turning now to the drawings, in which like numerals indicate like (but not necessarily identical) elements throughout the figures, examples are described in detail.

[0042] Figure 1 is a block diagram depicting a system 100 for pairing a user computing device 1 10 with a merchant computing device 130 via an audio communication channel to conduct a payment transaction or process a service request, in accordance with certain examples. As depicted in Figure 1, the system 100 includes network computing devices 1 10, 130, 140, and 150 that are configured to communicate with one another via one or more networks 120. In some embodiments, a user associated with a device must install an application and/or make a feature selection to obtain the benefits of the techniques described herein.

[0043] In examples, the network 120 can include a local area network ("LAN"), a wide area network ("WAN"), an intranet, an Internet, storage area network ("SAN"), personal area network ("PAN"), a metropolitan area network ("MAN"), a wireless local area network ("WLAN"), a virtual private network ("VPN"), a cellular or other mobile communication network, Bluetooth, Bluetooth low energy ("BLE"), near field communication ("NFC"), or any combination thereof or any other appropriate architecture or system that facilitates the communication of signals, data, and/or messages. Throughout the discussion of examples, it should be understood that the terms "data" and "information" are used interchangeably herein to refer to text, images, audio, video, or any other form of information that can exist in a computer-based environment.

[0044] Each network computing device 1 10, 130, 140, and 150 includes a device having a communication module capable of transmitting and receiving data over the network 120. For example, each network computing device 1 10, 130, 140, and 150 can include a server, desktop computer, laptop computer, tablet computer, a television with one or more processors embedded therein and / or coupled thereto, smart phone, handheld computer, personal digital assistant ("PDA"), or any other wired or wireless, processor-driven device. In the example depicted in Figure 1, the network computing devices 110, 130, 140, and 150 are operated by users 101, merchant computing device operators 102, payment processing system 140 operators, and issuer system 150 operators, respectively.

[0045] In certain embodiments, two computing devices comprising a user computing device 1 10 and a merchant computing device 130 are paired via an audio communication channel. However, in other examples, a first user computing device 110 and a second user computing device 1 10 are paired via the audio communication channel. One or more functions described herein as being performed by the user computing device 110 are performed by a first user computing device 110 and one or more functions described herein as being performed by the merchant computing device 130 are performed by a second user computing device 110. One or more functions described herein as being performed by a first computing device 1 10 are performed by a second computing device 1 10 and one or more functions herein described as being performed by the second computing device 110 are performed by the first computing device 1 10. One or more functions described herein as being performed by the user computing device 110 are performed by the merchant computing device 130 and one or more functions described herein as being performed by the merchant computing device 130 are performed by the user computing device 1 10.

[0046] An example user computing device 110, or first user computing device, comprises a user interface 1 11, a payment application 113, a data storage unit 115, a Wi- Fi controller 1 16, an antenna 117, an audio component 1 18, and a microphone component 1 19. The user computing device 1 10 communicates with a payment processing system 140 via the network 120 and with the merchant computing device 130 via an audio communication channel.

[0047] In an example, the user interface 11 1 enables the user 101 to interact with the user computing device 110. For example, the user interface 11 1 comprises a touch screen, a voice-based interface, or any other interface that allows the user 101 to provide input and receive output from an application on the user computing device 1 10. In an example, the user 101 interacts via the user interface 1 11 with the payment application 113. [0048] Tn an example, the payment application 1 13 is a program, function, routine, applet, or similar entity that exists on and performs its operations on the user computing device 110. In certain examples, the user 101 must install the payment application 113 and/or make a feature selection on the user computing device 110 to obtain the benefits of the techniques described herein. In an example, the user 101 accesses the payment application 113 on the user computing device 110 via the user interface 1 11. In an example, the payment application 113 is associated with the payment processing system 140.

[0049] In an example, the data storage unit 115 comprises a local or remote data storage structure accessible to the user computing device 1 10 suitable for storing information. In an example, the data storage unit 115 stores encrypted information, such as HTML 5 local storage.

[0050] In an example, the Wi-Fi controller 116 is capable of sending and receiving data, performing authentication and ciphering functions, and directing how the user computing device 110 will listen for transmissions from the merchant computing device 130 or configuring the user computing device 1 10 into various power-save modes according to Wi-Fi-specified procedures. In another example, the user computing device 110 comprises a Bluetooth controller, Bluetooth low energy ("BLE") controller, or an NFC controller capable of performing similar functions. An example Wi-Fi controller 116 communicates with the payment application 113 and is capable of sending and receiving data over a wireless, Wi-Fi communication channel. In another example, a Bluetooth controller, BLE controller, or NFC controller performs similar functions as the Wi-Fi controller 116 using Bluetooth, BLE, or NFC protocols. In an example, the Wi-Fi controller 116 activates the antenna 117 to create a wireless communication channel between the user computing device 1 10 and the merchant computing device 130. For example, the user computing device 110 communicates with the merchant computing device 130 via the antenna 117. In an example, when the user computing device 1 10 has been activated, the Wi-Fi controller 116 polls through the antenna 1 17 a radio signal, or listens for radio signals from the merchant computing device 130.

[0051] In an example, the antenna 1 17 is a means of communication between the user computing device 1 10 and a merchant computing device 130. In an example, a Wi- Fi controller 116 outputs through the antenna 117 a radio signal, or listens for radio signals from the merchant computing device 130. In another example a Bluetooth controller or a near field communication ("NFC") controller is used. [0052] Tn an example, the audio component 1 18 comprises a speaker device or other device capable of producing an ultrasound output. In an example, the audio component 118 can communicate with the payment application 113 to receive an instruction to broadcast an ultrasound output. In an example, the audio component 1 18 is a component of the user computing device 110. In another example, the audio component 118 is communicatively coupled to the user computing device 110.

[0053] In an example, the microphone component 119 comprises a microphone device that is capable of receiving ultrasound inputs from an environment of the user computing device 110. In an example, the microphone component 119 communicates with the payment application 1 13 to receive an instruction to transition from a passive mode to an active mode and listen for ultrasound inputs. In an example, the microphone component 119 receives ultrasound inputs while in the active mode and transmits the received ultrasound inputs to the payment application 113.

[0054] An example merchant computing device 130, or second user computing device, comprises a user interface 131, a payment application 133, a data storage unit 135, a Wi-Fi controller 136, an antenna 137, an audio component 138, and a microphone component 139. In an example, the merchant computing device 130 comprises a mobile computing device such as a smartphone device, tablet device, or other mobile computing device. In another example, the merchant computing device 130 comprises a point of sale terminal. The merchant computing device 130 communicates with a payment processing system 140 via the network 120 and with the user computing device 110 via an audio communication channel. In an example, the merchant computing device 130 communicates with an issuer system 150 via the network 120. In an example, the merchant computing device 130 comprises a service computing device that communicates with the payment processing system 140 via the network 120 and with the user computing device 110 via the audio communication channel.

[0055] In an example, the user interface 131 enables the merchant computing device operator 102 to interact with the merchant computing device 130. For example, the user interface 131 comprises a touch screen, a voice-based interface, or any other interface that allows the merchant computing device operator 102 to provide input and receive output from an application on the merchant computing device 130. In an example, the merchant computing device operator 102 interacts via the user interface 131 with the payment application 133. [0056] Tn an example, the payment application 133 is a program, function, routine, applet, or similar entity that exists on and performs its operations on the merchant computing device 130. In certain examples, the merchant computing device operator 102 must install the payment application 133 and/or make a feature selection on the merchant computing device 130 to obtain the benefits of the techniques described herein. In an example, the merchant computing device operator 102 accesses the payment application 133 on the merchant computing device 130 via the user interface 131. In an example, the payment application 133 is associated with the payment processing system 140.

[0057] In an example, the data storage unit 135 comprises a local or remote data storage structure accessible to the merchant computing device 130 suitable for storing information. In an example, the data storage unit 135 stores encrypted information, such as HTML 5 local storage.

[0058] In an example, the Wi-Fi controller 136 is capable of sending and receiving data, performing authentication and ciphering functions, and directing how the merchant computing device 130 will listen for transmissions from the user computing device 1 10 or configuring the merchant computing device 130 into various power-save modes according to Wi-Fi-specified procedures. In another example, the merchant computing device 130 comprises a Bluetooth controller, Bluetooth low energy ("BLE") controller, or an NFC controller capable of performing similar functions. An example Wi-Fi controller 136 communicates with the payment application 133 and is capable of sending and receiving data over a wireless, Wi-Fi communication channel. In another example, a Bluetooth controller, BLE controller, or NFC controller performs similar functions as the Wi-Fi controller 136 using Bluetooth, BLE, or NFC protocols. In an example, the Wi-Fi controller 136 activates the antenna 137 to create a wireless communication channel between the merchant computing device 130 and the user computing device 110. For example, the merchant computing device 130 communicates with the user computing device 110 via the antenna 137. In an example, when the merchant computing device 130 has been activated, the Wi-Fi controller 136 polls through the antenna 137 a radio signal, or listens for radio signals from the merchant computing device 130.

[0059] In an example, the antenna 137 is a means of communication between the merchant computing device 130 and the user computing device 110. In an example, a Wi-Fi controller 136 outputs through the antenna 137 a radio signal, or listens for radio signals from the user computing device 1 10. Tn another example a Bluetooth controller or a near field communication ("NFC") controller is used.

[0060] In an example, the audio component 138 comprises a speaker device or other device capable of producing an ultrasound output. In an example, the audio component 138 can communicate with the payment application 133 to receive an instruction to broadcast an ultrasound output. In an example, the audio component 138 is a component of the merchant computing device 130. In another example, the audio component 138 is communicatively coupled to the merchant computing device 130.

[0061] In an example, the microphone component 139 comprises a microphone device that is capable of receiving ultrasound inputs from an environment of the merchant computing device 130. In an example, the microphone component 139 communicates with the payment application 133 to receive an instruction to transition from a passive mode to an active mode and listen for ultrasound inputs. In an example, the microphone component 139 receives ultrasound inputs while in the active mode and transmits the received ultrasound inputs to the payment application 133.

[0062] An example payment processing system 140, or account management system, comprises an account management component 141, a data storage unit 145, and a transaction processing component 149. In an example, the payment processing system communicates with the user computing device 1 10 and the merchant computing device 130 via the network 120. In an example, the payment processing system 140 communicates with an issuer system 150 via the network 120.

[0063] In an example, the account management component 141 manages user 101 accounts and merchant system accounts associated with users 101 and merchant systems, respectively. In other examples, the account management component 141 manages service provider system accounts associated with service provider systems. The account management component 141 receives requests to add, edit, delete, or otherwise modify payment account information for a user 101 account or a merchant system account.

[0064] In an example, the data storage unit 145 comprises a local or remote data storage structure accessible to the payment processing system 140 suitable for storing information. In an example, the data storage unit 145 stores encrypted information, such as HTML 5 local storage.

[0065] In an example, the transaction processing component 149 receives transaction details from a merchant computing device 130 and payment information associated with a user 101 payment account. In another example, the transaction processing component 149 receives service request details from a service computing device 130 and account information associated with a user 101 account. In an example, the transaction processing component 149 transmits a payment authorization request to an issuer system 150 or other appropriate financial institution associated with the user 101 payment account information. An example payment authorization request comprises merchant system payment account information, user 101 payment account information, and a total amount of the transaction. In other examples, the transaction processing component 149 transmits a service request authorization request to the issuer system 150 or other appropriate institution associated with the user 101 account information. An example, service request comprises service provider system account information, user account information, and a description of the service request. In an example, after the issuer system 150 processes the payment authorization request, the transaction processing component 149 receives an approval or denial of the payment authorization request from the issuer system 150 over the network 120. In an example, the transaction processing component 149 transmits a receipt to the merchant computing device 130 and/or the user computing device 1 10 comprising a summary of the payment transaction.

[0066] In another example, the transaction processing component 149 receives a transaction identifier generated by the merchant computing device 130, a merchant computing device 130 identifier, and transaction details from the merchant computing device 130. For example, the transaction details comprise the total amount of the transaction and a transaction image. In an example, the transaction processing component identifies a merchant system account based on the merchant computing device 130 identifier and identifies a merchant system payment account associated with the merchant system account for use in the transaction. In an example, the transaction processing component 149 associates the received transaction details, transaction identifier and merchant system payment account information and stores the associated transaction details, transaction identifier, and merchant system payment account information in a data storage unit 145 or other memory accessible by the payment processing system 140. In an example, the transaction processing component receives the transaction identifier from the user computing device 1 10 and the transaction image. In this example, the transaction processing component 149 extracts the stored transaction details and merchant system payment account information associated with the transaction identifier. In an example, the transaction processing component 149 receives a user 101 payment account identifier based on a selection of the user 101 of the payment account via the user interface 1 1 1 of the user computing device 130. Tn this example, the transaction processing component 149 extracts the user 101 payment account information associated with the payment account identifier. In another example, the payment processing system 140 receives data from the user computing device 1 10 via the network 120 and transmits the data via the network 120 to the merchant computing device 130. In yet another example, the payment processing system 140 receives data from the merchant computing device 130 via the network 120 and transmits the data via the network 120 to the user computing device 1 10.

[0067] An example issuer system 150 approves or denies a payment authorization request received from the merchant computing system 130 or from the payment processing system 140. In an example, the issuer system 150 communicates with the merchant computing device 130 and/or payment processing system 140 over the network 120. In an example, the issuer system 130 communicates with an acquirer system to approve a credit authorization and to make payment to the payment processing system 140 and/or merchant system. For example, the acquirer system is a third party payment processing company..

[0068] In examples, the network computing devices and any other computing machines associated with the technology presented herein may be any type of computing machine such as, but not limited to, those discussed in more detail with respect to Figure 7. Furthermore, any functions, applications, or components associated with any of these computing machines, such as those described herein or any others (for example, scripts, web content, software, firmware, hardware, or modules) associated with the technology presented herein may by any of the components discussed in more detail with respect to Figure 7. The computing machines discussed herein may communicate with one another, as well as with other computing machines or communication systems over one or more networks, such as network 120. The network 120 may include any type of data or communications network, including any of the network technology discussed with respect to Figure 7.

Example Processes

[0069] The example methods illustrated in Figures 2-6 are described hereinafter with respect to the components of the example operating environment 100. The example methods of Figures 2-6 may also be performed with other systems and in other environments. The operations described with respect to any of the Figures 2-6 can be implemented as executable code stored on a computer or machine readable non -transitory tangible storage medium (e.g., floppy disk, hard disk, ROM, EEPROM, nonvolatile RAM, CD-ROM, etc.) that are completed based on execution of the code by a processor circuit implemented using one or more integrated circuits; the operations described herein also can be implemented as executable logic that is encoded in one or more non- transitory tangible media for execution (e.g., programmable logic arrays or devices, field programmable gate arrays, programmable array logic, application specific integrated circuits, etc.).

[0070] Figure 2 is a block diagram depicting a method 200 for pairing a user computing device 1 10 with a service computing device 120 via an audio communication channel to process a service request, in accordance with certain examples. The method 200 is described with reference to the components illustrated in Figure 1.

[0071] In block 210, the merchant system registers with the payment processing system 140 and installs a payment application 133 on a merchant computing device 130. In an example, an agent of the merchant system registers for a merchant account with the payment processing system 140 via a website of the payment processing system 140. In an example, a merchant computing device operator 102 installs the payment application 133 on the merchant computing device 130. In another example, the merchant computing device operator 102 purchases a merchant computing device 130 from the payment processing system 140 or otherwise obtains the merchant computing device 130 with the payment application 133 pre-installed on the merchant computing device 130. In an example, the merchant computing device 130 is able to communicate with one or more user computing devices 110, the payment processing system 140, one or more issuer systems 150, and one or more acquirer systems over a network 120. In an example, the merchant computing device 130 communicates with the payment processing system 140 via the payment application 1 13 over the network 120. In certain examples, the merchant computing device 130 transmits transaction details and a merchant computing device 130 identifier to the payment processing system 140 via the payment application 113 to enable the payment processing system 140 to process a transaction. In an example, the merchant computing device 130 receives receipts from the payment processing system 140 that comprise a notification indicating whether a transaction was successful. In an example, the merchant computing device 130 comprises a mobile device, for example, a mobile phone device, a tablet device, or a laptop computing device. Tn another example, the merchant computing device 1 30 compri ses a point of sale terminal.

[0072] In block 220, the user 101 registers with the payment processing system

140. The method for registering, by a user 101 , for an account with a processing system 140 is described in more detail hereinafter with reference to the method described in Figure 3.

[0073] Figure 3 is a block diagram depicting a method 220 for registering, by a user 101 , for an account with a processing system 140, in accordance with certain examples. The method 220 is described with reference to the components illustrated in Figure 1 .

[0074] In block 3 10, the user accesses a payment processing system 140 via the user computing device 1 10. For example, the user 101 accesses payment processing system 140 website via a web browser of the user computing device 1 10. The web browser communicates with the payment processing system 140 via the network 120. In another example, the user 101 accesses the payment processing system 140 via an application or otherwise contacts the payment processing system 140 to register for a user 101 account.

[0001 ] In block 320, the user 101 registers with the payment processing system

140. The user 1 01 obtains a user 1 01 account number, receives the appropriate applications and software to install on the user computing device 1 10 or perform an action provided by the payment processing system 140. The user 101 utilizes the functions of the user computing device 1 10, such as the user interface 1 1 1 and the web browser, to register and configure a user 101 account with the payment processing system 140 via the network 120.

[0002] In block 330, the user 101 downloads a payment application 1 13 onto the user computing device 1 10. For example, the user 101 downloads a payment application 1 13 onto the user computing device 1 10 via the network 120. In an example, the payment application 1 13 operating on the user computing device 1 10 is able to communicate with the payment processing system 140 over the network 120.

[0003] In block 340, the user 101 enters payment account information that is saved in or associated with the user 101 account. In an example, the user 101 enters the payment information using the payment application 1 13. In an example, the user 101 enters payment account information associated with one or more user 101 accounts, for example, one or more credit accounts, one or more bank accounts, one or more stored value accounts, and/or other appropriate accounts into the user 1 01 account maintained by the payment processing system 140. In an example, the payment application 1 13 communicates information entered by the user 101 via the user computing device 1 10 to the payment processing system 140 via the network 120. The payment processing system 140 saves the data or otherwise associates the data with the user 101 account.

[0075] In block 350, the user 101 configures permissions and/or settings associated with the user 101 account using the payment application 1 13. In an example, the user 101 may configure user 101 account settings, configure permissions, add, delete, or edit payment account information via the payment application 1 13. In an example, the user 1 01 selects an option via the user interface 1 1 1 to enable or di sable permi ssion authorizing the payment processing system 140 to process transactions.

[0076] From block 350, the method 220 proceeds to block 230 in Figure 2.

[0077] Returning to Figure 2, in block 230, the user 101 initiates a payment transaction at the merchant computing device 130. The method for initiating, by a user 101 , a payment transaction at a merchant computing device 130 is described in more detail hereinafter with reference to the method described in Figure 4.

[0078] Figure 4 is a block diagram depicting a method 230 for initiating, by a user 101 , a payment transaction at a merchant computing device 130, in accordance with certain examples. The method 230 i s described with reference to the components illustrated in Figure 1 .

[0004] In block 410, the user 101 arrives at the merchant computing device 130.

In an example, at a time prior to approaching the merchant computing device 130, the user 101 browses the merchant system location and selects one or more items to purchase. In this example, the user 101 may collect the one or more items and carry, or otherwise transport via physical basket or shopping cart, the one or more items to the merchant computing device 130. In this example, the user 101 carries or otherwise has in his possession the user computing device 1 10.

[0079] In block 420, the merchant computing device operator 102 totals items of the user 101 for purchase. In an example, the merchant computing device operator 102 scans barcodes associated with the one or more items of the user 101 or otherwise enters information associated with the items into the merchant computing device 130.

[0005] In block 430, the merchant computing device operator 102 asks the user

101 to select a payment option. In an example, the merchant computing device 130 displays one or more payment options that the user 101 may select to process a payment transaction. Example payment options comprise payment via a payment application 133 associated with the payment processing system 140 with which both the user 101 and the merchant system have created an account, payment by cash, payment by check, payment by credit card, payment by debit card, and/or any other acceptable means of payment. In an example, the one or more payment options are displayed as objects on the user interface 131. In an example, the one or more payment options are selectable by the merchant computing device operator 102 in response to the user's 101 direction. In an example, the merchant computing device operator 102 asks the user 101 if the user 101 wishes to conduct a transaction using the account of the user 101 associated with the payment processing system 140.

[0006] In block 440, the user 101 indicates a desire to pay via the payment application 133. For example, the user 101 directs the merchant computing device operator 102 to initiate a transaction via the payment application 133 by selecting the payment option displayed on the user interface 131 associated with payment via the payment processing system 140.

[0080] From block 440, the method 230 proceeds to block 240 in Figure 2.

[0081] Returning to Figure 2, in block 240, the user computing device 110 is paired to the merchant computing device 130 and the transaction is processed. Methods for pairing a user computing device 1 10 to a service computing device 130 are described in more detail hereinafter with reference to the methods described in Figure 5.

[0082] Figure 5 is a block diagram depicting a method 240 for pairing a user computing device 110 to a service computing device 130, in accordance with certain examples. The method 240 is described with reference to the components illustrated in Figure 1.

[0083] In block 505, the merchant computing device operator 102 selects the payment application 133 on the merchant computing device 130 to initiate a transaction. In an example, in response to receiving a verbal request from the user 101 to select the payment application 133 as a payment option, the merchant computing device operator 102 actuates an object on the user interface 131 of the merchant computing device 130 corresponding to the payment application 133 as a payment option.

[0084] In block 510, the merchant computing device 102 selects a transaction image. In an example, the merchant computing device 102 randomly selects the transaction image from one or more stored transaction images. In another example, in response to receiving an input of the selection of the payment application 133 as the selected payment option for the transaction, the merchant computing device 130 displays one or more transaction images on the user interface 131 for selection by the merchant computing device operator 102. For example, the transaction images comprise one or more images, for example, an image of a tree, an image of a baseball, an image of a cat, an image of a clock, among other images. In another example, the merchant computing device 130 displays a default transaction image. In this example, the user interface 131 displays the default transaction image and the merchant computing device operator 102 does not need to select the default transaction image. In another example, instead of displaying one or more images for selection by the merchant computing device operator 102, the merchant computing device 130 displays a predetermined or randomly generated string of alphanumeric and/or symbolic characters, for example, the merchant computing device 130 displays the alphanumeric and symbolic characters "AM34#T" on the user interface 131 of the merchant computing device 130. For example, the merchant computing device 130 generates the sequence alphanumeric and/or symbolic characters and displays the alphanumeric and displays the sequence on the user interface 131.

[0085] In block 515, the merchant computing device displays the transaction image. In an example, the merchant computing device 130 displays the selected transaction image. For example, in response to receiving the input of the selection of the transaction image from the one or more displayed transaction images, the merchant computing device 130 displays the selected transaction image on the user interface 131. In an example, the merchant computing device 130 displays the transaction image for a predetermined period of time, for example, the merchant computing device 130 displays the transaction image for 30 seconds, for a minute, for 3 minutes, or for another appropriate predetermined period of time.

[0086] In block 520, the merchant computing device 130 generates a transaction identifier. The merchant computing device 130 transmits a transaction image identifier that corresponds to the transaction image, transaction details, the transaction identifier, and a merchant computing device 130 identifier to the payment processing system 140. In an example, the merchant computing device 130 generates the transaction identifier via a random number generator of the payment application 133. In an example, the transaction identifier comprises a string of alphanumeric and/or symbolic characters. In an example, transaction details comprise a total amount for the transaction and/or a listing of the one or more items being purchased by the user 101. In an example, the merchant computing device 130 identifier comprises a media access control ("MAC") address, hardware identifier, or other identifier associated with the merchant computing device 130. In this example, the payment processing system 140 can identify the merchant system account based on the merchant computing device 130 identifier. In an example, the merchant computing device 130 transmits the transaction details, the transaction identifier, the transaction image identifier, and the merchant computing device 130 identifier to the payment processing system 140 via the network 120. In an example, the merchant computing device 130 transmits the transaction identifier corresponding to the transaction image displayed on the merchant computing device 130 to the payment processing system 140 via the network 120. In another example, the merchant computing device 130 transmits a transaction image identifier associated with the transaction image displayed on the merchant computing device 130 to the payment processing system 140 via the network 120

[0087] In block 530, the payment processing system 140 receives the transaction image identifier, the transaction details, the transaction identifier, and the merchant computing device 130 identifier. For example, the payment processing system 140 receives the transaction image identifier corresponding to the transaction image selected by the user 101 or the default transaction image displayed on the merchant computing device 130, the transaction details, the transaction identifier, and the merchant computing device 130 identifier via the network 120. In an example, the payment processing system 140 receives the transaction image instead of the transaction image identifier corresponding to the transaction image. For example, the transaction identifier is a random number generated by the merchant computing device 130 and transmitted along with the transaction image identifier, the merchant computing device 130 identifier and transaction details comprising the total amount of the transaction for the one or more items being purchased by the user 101. In an example, the payment processing system 140 identifies a merchant system account identifier associated with the merchant system based on the merchant computing device 130 identifier. For example, the payment processing system 140, at the time the merchant system creates an account with the payment processing system 140, associates the merchant computing device 130 identifier with an account identifier associated with the merchant system account and stores the information in a database or data storage unit 145 accessible to the payment processing system 140. In this example, upon receiving the transaction image identifier, the merchant computing device 130 identifier, the transaction details, and the transaction identifier, the payment processing system 140 identifies the merchant system account identifier by accessing the database and extracting the merchant system account identifier associated with the merchant computing device 130 identifier. In an example, the payment processing system 140 stores the transaction image identifier, the transaction identifier, the merchant system account identifier, and the transaction details in a database or in the data storage unit 146 accessible to the payment processing system 140. In this example, the payment processing system 140 may associate the transaction identifier with the transaction image identifier, the merchant system account identifier, and the transaction details, for example, by storing the data in a table or other format in a data storage unit 145 accessible to the payment processing system 140.

[0088] In block 540, the merchant computing device 130 broadcasts an audio token comprising the transaction identifier and a transaction image identifier. In an example, in response to receiving an input of a selection of a transaction image, the merchant computing device 130 displays the selected transaction image and transmits the audio token for a predetermined period of time. For example, the merchant computing device 130 displays the transaction image and transmits the audio token comprising the transaction identifier and the transaction image identifier for a predetermined period of time, for example, for 30 seconds, one minute, 3 minutes, or other appropriate predetermined period of time. In another example, the merchant computing device 130 transmits a transaction image instead of the transaction image identifier. For example, the merchant computing device 130 previously transmitted the transaction image and the transaction identifier along with transaction details to the payment processing system 140 via the network 120. In an example, the merchant computing device 130 broadcasts the audio token via an ultrasound communication or audible sound communication.

[0089] In an example, the audio token does not comprise a transaction identifier but instead comprises other data such as files, images, text, applications, or other data. In an example, where the merchant computing device 130 operator does not select a transaction image and the merchant computing device 130 displays a default transaction image, the merchant computing device 130 or second computing device broadcasts the audio token in response to receiving an input via the user interface 131. For example, the input comprises a selection, via the user interface 131 by the operator of the merchant computing device 130 of an option to initiate a transaction or to initiate a transfer of data. In certain examples, the merchant computing device 130 does not transmit the transaction image or transaction image identifier to the user computing device 110. [0090] Tn block 550, the user 101 selects an option to initiate the transaction via the user computing device 110. In an example, the user 101 selects an option to initiate the transaction at the same time as, prior to, or subsequent to a time at which the merchant computing device operator 102 selects the transaction image on the merchant computing device 130. For example, the user 101 selects an object on the user interface 111 displayed by the payment application 113 that reads "initiate transaction."

[0091] In block 560, the user computing device 1 10 activates a microphone component 119 and receives the audio token broadcast by the merchant computing device 130. An example audio toke comprises the transaction identifier and the transaction image identifier. In an example, in response to receiving an input of a selection of the option to initiate a transaction via the user interface 111 of the user computing device 110, the user computing device 110 activates the microphone component 119 to listen for audio tokens broadcast by nearby computing devices. In an example, the user computing device 110 logs a timestamp, activates the microphone component 119, and instructs the microphone component 119 to listen for audio tokens until a predefined threshold length of time from the time indicated on the second timestamp passes. For example, the predetermined threshold length of time for listening for audio tokens comprises thirty seconds, one minute, three minutes, or another appropriate predetermined length of time. Tn an example, after the threshold length of time passes, the user computing device 1 10 deactivates the microphone component 1 19 or otherwise instructs the microphone component 119 to cease listening for audio tokens broadcast by nearby computing devices. In an example, the user computing device 110 receives the audio token broadcast by the merchant computing device 130 via ultrasound or audible sound communication at the merchant system location via the microphone component 1 19.

[0092] In an example, the user computing device 1 10 receives the audio token comprising the transaction identifier. For example, the microphone component 119 receives the audio token broadcast by the merchant computing device 130 via ultrasound communication or audible sound communication and transmits the received audio token to the payment application 1 13 of the user computing device 110. For example, the received audio token comprises the transaction image identifier and transaction identifier previously transmitted by the merchant computing device 130 to the payment processing system 140. In an example, the payment application 113 extracts the transaction identifier and the transaction image identifier from the received audio token. In another example, the payment application 1 13 extracts the transaction image. [0093] From block 560, the method 240 proceeds to block 250 in Figure 2.

[0094] Returning to Figure 2, in block 250, the payment processing system 140 processes a service request. Methods for processing, by a processing system 140, a service request are described in more detail hereinafter with reference to the methods described in Figure 6.

[0095] Figure 6 is a block diagram depicting a method 250 for processing, by a processing system 140, a service request, in accordance with certain examples. The method 250 is described with reference to the components illustrated in Figure 1.

[0096] In block 610, the user computing device 110 displays the transaction details, the transaction image, and one or more randomly selected images with a request for the user 101 to select a displayed transaction image corresponding to the computing device with which the user 101 wishes to pair to proceed with the transaction. For example, the user computing device 110 comprises two or more stored transaction images including at least the transaction image or transaction image identified by a transaction image identifier received from the merchant computing device 130 in the audio token. In an example, the user computing device 1 10 displays on the user interface 111 the transaction image corresponding to the received transaction image identifier and the one or more other transaction images. In an example, the user computing device 110 receives a transaction image identifier in the audio token received from the merchant computing device 130, extracts the transaction image corresponding to the transaction image identifier, and displays the transaction image along with the one or more other transaction images stored on the user computing device 1 10. In another example, the user computing device 110 displays a default set of transaction images comprising at least the transaction image displayed on the merchant computing device 130. In an example, the user computing device 1 10 displays transaction details so that the user 101 may decide whether to proceed with or cancel the transaction. For example, transaction details comprise the total amount for the transaction and/or a listing of the one or more items being purchased by the user 101. For example, the user computing device 110 displays transaction details reading "Regular coffee $3.50, Doughnut $1.10, Sales tax $.50, transaction total = $5.10." In another example, the transaction details displayed by the user computing device 1 10 read "transaction total = $5.10."

[0097] In block 620, the user 101 either selects, via the user computing device

110, the transaction image that is displayed by the merchant computing device 130 and received from the merchant computing device 130 in the audio token or selects a different transaction image.

[0098] If the user 101 does not select the transaction image displayed on the user computing device 1 10 that matches the transaction image being displayed on the merchant computing device 130, the method 250 proceeds to block 640. In an example, the merchant computing device 130 displays a selected transaction image comprising an image of a house and the user computing device 110 displays a set of images comprising the image of the house, an image of a piano, and an image of a fish. In this example, the user 101 observes that the merchant computing device 130 displays the image of the house and selects, via the user interface 1 1 1 of the user computing device 1 10, the image of the fish or the image of the piano to indicate a desire not to proceed with the transaction.

[0099] In block 640, the user computing device 1 10 communicates a transaction image identifier not associated with the transaction identifier to the payment processing system 140. For example, the payment processing system 140 previously received the transaction identifier along with the transaction image identifier selected via the merchant computing device 130 (or the default transaction image identifier) from the merchant computing device 130 and associated the received transaction identifier with the transaction image identifier. In this example, the payment processing system 140 previously associated the received transaction identifier with the transaction image identifier received from the merchant computing device 130.

[00100] In an example, in response to receiving an input of the selection of the transaction image, the user computing device 110 communicates the transaction image identifier associated with the selected transaction image and received transaction identifier to the payment processing system 140 via the network 120. In an example, the user computing device 1 10 transmits a user computing device 110 identifier or user 101 account identifier along with the transaction image identifier associated with the selected transaction image and the transaction identifier. In an example, the payment processing system 140 receives the transaction image identifier corresponding to the transaction image selected by the user 101, the transaction identifier, the user computing device 110 identifier, and/or the user 101 account identifier from the user computing device 110 via the network 120.

[00101] In another example, the user computing device displays a sequence of alphanumeric and/or symbolic characters and the user 101 observes the merchant computing device 1 30 to determine whether it di splays the same sequence of alphanumeric and/or symbolic characters that matches the sequence of alphanumeric and/or symbolic characters displayed on the user computing device 1 10. The user 101 does not desire to proceed with the transaction initiated at that merchant computing device 130. In this example, the user computing device 1 10 displays at least two obj ects on the user interface 1 1 1 , a first interface obj ect and a second interface obj ect. For example, the first interface obj ect reads "confirm transaction" and the second interface obj ect reads "cancel transaction." In an example, the user 101 selects an obj ect on the user interface 1 1 1 to indicate a desire not to proceed with the transaction. For example, the user 1 01 selects an interface obj ect reading "cancel transaction" and the user computing device 1 10 receives an input of the selection of the user 101 of an interface obj ect that indicates a desire by the user 101 to cancel the transaction. In another example, the user computing device 1 10 displays the sequence of alphanumeric and/or symbolic characters and the user 101 does not see the merchant computing device 130 or sees a different sequence of alphanumeric and/or symbolic characters displayed on the merchant computing device 130. The user indicates a desire not to proceed with the transaction by selecting the obj ect on the user interface 1 1 1 indicating a desire not to proceed with the transaction. In an example, the user computing device 1 10 communicates the input representing the desire of the user 1 01 not to continue with the transaction to the payment processing system 140 via the network 120.

[00102] From block 640, the method 250 proceeds to block 650.

[00103 ] Returning to block 620, if the user 101 selects, via the user interface 1 1 1 , the transaction image displayed on the user computing device 1 10 that matches the transaction image being displayed by the merchant computing device 130, the method 250 proceeds to block 630.

[00104] In block 630, the user computing device 1 10 communicates the transaction image identifier to the payment processing system 140. For example, the user 101 wishes to proceed with the transaction. In an example, the merchant computing device 130 displays a selected transaction image comprising an image of a house. The user computing device 1 10 displays a set of images comprising the image of the house, an image of a piano, and an image of a fish. In this example, the user 101 observes that the merchant computing device 130 displays the image of the house and selects, via the user interface 1 1 1 of the user computing device 1 10, the image of the house corresponding to the image of the house displayed by the merchant computing device 130 to indicate a desire to proceed with the transaction. Tn an example, the user computing device 1 10 transmits a user computing device 110 identifier or user 101 account identifier along with the transaction image identifier corresponding to the selected transaction image and the transaction identifier to the payment processing system 140 via the network 120. In an example, the payment processing system 140 receives the transaction image selected by the user 101, the transaction identifier, the user computing device 110 identifier, and/or the user 101 account identifier from the user computing device 110 via the network 120.

[00105] In another example, the user computing device 110 displays a sequence of alphanumeric and/or symbolic characters and the user 101 observes the merchant computing device 130 displays the same sequence of alphanumeric and/or symbolic characters that matches the sequence of alphanumeric and/or symbolic characters displayed on the user computing device 110. The user 101 desires to proceed with the transaction initiated at that merchant computing device 130. In this example, the user computing device 110 displays at least two objects on the user interface 1 11, a first interface object and a second interface object. For example, the first interface object reads "confirm transaction" and the second interface object reads "cancel transaction." In an example, the user 101 selects an object on the user interface 111 to indicate a desire to proceed with the transaction. For example, the user 101 selects an interface object reading "confirm transaction" and the user computing device 1 10 receives an input of the selection of the user 101 of an interface object that indicates a desire by the user 101 to proceed with the transaction. In an example, the user computing device 110 communicates the input representing the desire of the user 101 to continue with the transaction to the payment processing system 140 via the network 120.

[00106] In block 650, the payment processing system 140 receives, from the user computing device 1 10, the transaction identifier and the transaction image identifier corresponding to the transaction image selected on the user computing device 1 10. For example, the payment processing system 140 receives, from the user computing device 110 via the network 120, the transaction identifier and the transaction image identifier corresponding to the transaction image selected on the user computing device 110. In an example, the payment processing system 140 also receives, via the network 120 from the user computing device 110, a user computing device 110 identifier or user 101 account identifier associated with the user 101 account managed by the payment processing system 140. In an example, the payment processing system 140 receives a transaction image identifier corresponding to the transaction image selected on the user computing device 1 1 0 that also corresponds to a transaction image i dentifier received previously from the merchant computing device 130 associated with the transaction identifier. In another example, the payment processing system 140 receives a transaction image identifier corresponding to a transaction image selected on the user computing device 1 10 not corresponding to a transaction image identifier received previously from the merchant computing device 130 associated with the transaction identifier. In yet another example, the payment processing system 140 receives, from the user computing device 1 10 via the network 120, an indication that the user 101 desires to proceed with the transaction or an indication that the user 101 desires to cancel the transaction.

[001 07] In bl ock 660, the payment processing system 1 40 extracts transaction data associated with transaction identifier and compares received transaction identifier associated with the selected transaction image against a stored transaction image identifier associated with transaction identifier. In an example, the received transaction image identifier received from the user computing device 1 10 and associated with the transaction image corresponds with the transaction image displayed on the merchant computing device 130, transmitted in the audio token, and selected by the user 101 on the user computing device 1 10. For example, the payment processing system 140 receives the transaction identifier and transaction image or transaction image identifier corresponding to the transaction image sel ected by the user 1 01 on the user interface 1 1 1 of the user computing device 1 10. In an example, the payment processing system 140. The payment processing system 140 extracts the transaction image or transaction image identifier corresponding to the transaction identifier and compares the extracted transaction image or extracted transaction image identifier to the received transaction image or received transaction image identifier.

[00108] In block 670, the payment processing system 140 determines whether the transaction image or transaction image identifier received from the user computing device 1 10 matches the transaction image or transaction image identifier associated with the transaction identifier previously received from the merchant computing device 130.

[00109] If the transaction image or transaction image identifier received from the user computing device 1 10 does not match the transaction image or transaction image identifier associated with the transaction identifier previously received from the merchant computing device 130, the method 250 proceeds to block 690.

[001 10] In block 690, the payment processing system 140 cancels the transaction.

For example, the payment processing system 140 transmits a notice to the merchant computing device 1 30 and/or user computing device 1 1 0 via the network 1 20 advi sing that the payment processing system 140 canceled the transaction. In an example, the user computing device 1 10 and/or merchant computing device 130 that receives the notice displays the notice. For example, the merchant computing device 130 and/or user computing device 1 10 displays the notice reading "transaction canceled."

[001 1 1 ] Returning to block 670, if the transaction image or transaction image identifier received from the user computing device 1 10 via the network 120 matches the transaction image or transaction image identifier associated with the transaction identifier previously received from the merchant computing device 130 via the network 120, the method 250 proceeds to block 680.

[001 12] In block 680, the payment processing system 140 processes the transaction. For example, the payment processing system 140 uses information received from the user computing device 1 10, received from the merchant computing device 130, and/or stored information associated with a user 101 account and/or merchant system account to process the transaction. For example, the payment processing system 140 communicates with the user computing device 1 10 via the network 120. In an example, the payment processing system 140 identifies the user 101 account based on the received user computing device 1 10 identifier or the received user 101 account identifier. In an exampl e, the payment processing system 1 40 identifi es transaction detail s associated with the received transaction identifier and a merchant system account associated with the received transaction identifier. In an example, the payment processing system 140 extracts the merchant system account identifier and the transaction details associated with the transaction identifier from a database or in the data storage unit 146 accessible to the payment processing system 140. In an example, the payment processing system 140 identifies the total amount of transaction from the transaction details and identifies a merchant system payment account associated with the merchant system account. In an example, the payment processing system 140 identifies a user 101 payment account from the user 101 account associated with the received user 101 account identifier or received user computing device 1 10 identifier. For example, the user 101 preconfigured a payment account to be used in transactions. In another example, the payment processing system 140 identifies two or more user 101 payment accounts from the user 101 account. The payment processing system 140 transmits payment account information associated with the two or more user 101 payment accounts to the user computing device 1 10 via the network 120, along with a request for the user 101 to select a payment account for use in the transacti on. In thi s example, the user computing devi ce 1 1 0 receives the payment account information and the request to select a payment account. The user computing device 1 10 displays information associated with the two or more payment accounts and provides two or more objects on the user interface 1 1 1 enabling the user 101 to select a payment account for use in the transaction. In an example, each payment account is associated with a respective user interface 1 1 1 obj ect. In this example, the user 101 selects a user interface 1 1 1 obj ect associated with a payment account of the user 101. The user computing device 1 10 transmits an indication via the network 120 of the user' s 101 selection of the user interface 1 1 1 obj ect. In this example, the payment processing system 140 receives the indicati on of the user' s 1 01 sel ection of the payment account.

[001 13 ] In an example, the payment processing system 140 generates a transaction authorization request and transmits, via the network 120, the transaction authorization request to an issuer system 150 associated with the payment account selected by the user 101 or the payment account extracted from the user 101 account and preconfigured for use in transactions by the user 101 . In an example, the transaction authorization request comprises the total amount of the transaction associated with the transaction identifier, the merchant system payment account identifier associated with the transaction identifier, and a user 101 payment account identifier associated with the user 101 payment account selected by the user 1 01 or preconfigured for use by the user 1 01 in transactions. In an example, the issuer system 150 receives the transaction authorization request via the network 120 and either approves or denies the transaction authorization request. In an example, the issuer system 150 approves the transaction authorization request and transmits a notice of approval of the transaction authorization request to the payment processing system 140 in accordance with approving the transaction authorization request. In an example, the payment processing system 140 receives a notice of approval of the transaction authorization request from the issuer system 150 and transmits a receipt, via the network 120, to the user computing device 1 10 and/or the merchant computing device 130 indicating that the transaction was successfully completed and comprising the transaction details, information associated with the merchant system payment account used in the transaction, and/or information associated with the user 101 payment account used in the transaction. In another example, the payment processing system 140 receives a notice of denial of the transaction authorization request from the issuer system 150 and transmits a receipt, via the network 120, to the user computing device and/or to the merchant computing device 130 indicating that the transaction authorization was denied. Tn an example, the user computing device 1 10 receives, via the network 120, the receipt information indicating a transaction authorization request approval or a transaction authorization request denial and displays all or part of the receipt information via the user interface 1 1 1 of the user computing device. In an example, the merchant computing device 130 receives, via the network 120, the receipt information indicating a transaction authorization request approval or a transaction authorization request denial and displays all or part of the receipt information via the user interface 13 1 of the merchant computing device 130.

Additional Examples

[001 14] Tn an example, a first user computing device 1 10-1 i s paired to a second user computing device 1 10-2 and data is transferred and/or shared between the first user computing device 1 10-1 and the second user computing device 1 10-2 over the network 120 via the payment processing system 140. For example, an operator 102 of the second user computing device 1 10-2 selects an application 133 on the second user computing device 1 10-2 to initiate a transfer of data. For example, the operator of the second user computing device 1 10-2 desires to send data to or receive data from the first user computing device 1 10-1. The data may comprise files, images, text, applications, and/or any other transferrable data. In an example, the user of the second user computing device 1 10-2 inputs a selection, via the user interface of the second user computing device 1 10- 2, of one or more images, text, videos, or other files to transfer to the first user computing device 1 10-1.

[001 15] The second user computing device 1 10-2 broadcasts an audio token via ultrasound communication or audible sound communication, comprising a second user computing device 1 10-2 identifier and a transaction image. In this example, the transaction image is also displayed on the second user computing device 1 10-2. The second user computing device 1 10-2 generates an identifier and transmits data transfer request details, a data transfer request identifier, the displayed transaction image, and a second computing device 1 10-2 identifier to a processing system 140. The data transfer request details may comprise the selection, by the user of the second computing device 1 10-2, of the one or more images, text, videos, or other files the user desires to transfer to the first user computing device. The processing system 140 receives the data transfer request details, the data transfer request identifier, the transaction image, and the second computing device identifier. [001 16] An operator 101 of the first user computing device 1 10-1 selects an application on the first user computing device 110-1 and an option to initiate a data transfer. In an example, in response to receiving an input of a selection of the option to initiate a data transfer, the application on the first user computing device 110-1 activates a microphone component 119 of the first user computing device 110-1. In an example, the first user computing device 110-1 receives the audio token broadcast by the audio component of the second user computing device 110-2 via the microphone component 119 of the first user computing device 1 10-1. In an example, the first user computing device 110-1 displays the received transaction image received in the audio token. In this example, the user 101 of the first user computing device 1 10-1 views that the transaction image is displayed on both the second user computing device 110-2 and the first user computing device 110-1 to verify that the correct two user computing devices are being paired. In this example, the user 101 of the first user computing device 1 10-1 selects the transaction image displayed on the second user computing device 1 10-2 among a group of displayed images comprising at least the transaction image to confirm the transaction. In another example, the user 101 of the of the first user computing device 1 10-1 selects an image other than the displayed transaction image on the first user computing device 110-1 to cancel the transaction. In an example, in response to receiving an input of a selection a transaction image, the first user computing device 1 10-1 transmits, via the network, the transaction image, the second computing device 1 10-2 identifier, and a first user computing device 110-1 identifier to a processing system 140. In an example, the first computing device 1 10-1 and the second computing device 1 10-2 communicate via the processing system 140 to transfer data from the first user computing device 110-1 to the second user computing device 110-2 or from the second user computing device 110-2 to the first user computing device 1 10- 1.

[00117] In an example the payment processing system 140 determines whether the transaction image received from the first user computing device 110-1 corresponds to the transaction image received from the second user computing device 110-2. In an example, if the transaction images do not match, the payment processing system 140 transmits a notice of cancellation of data transfer to the first user computing device 1 10-1 and/or the second user computing device 1 10-2 and the first user computing device 1 10-1 and/or the second user computing device 110-2 displays the received notice of cancellation of the data transfer. [001 1 8] Tn an example, if the transaction images match, the payment processing system 140 facilitates the transfer of data from the first user computing device 1 10-1 to the second user computing device 1 10-2 via the network 120 or from the second computing device 1 10-2 to the first user computing device 1 10-1 via the network 120. In an example, the first user computing device 1 10-1 receives data via the payment processing system 140 from the second user computing device 1 10-2. In another example, the user 101 of the first user computing device 1 10-1 inputs a selection, via the user interface 1 1 1 of the first user computing device 1 10- 1, of one or more images, text, videos, or other files stored on the first user computing device 1 10-1 to transfer to the second user computing device 1 1 0-2 via the processing system 140. In thi s example, in response to receiving the input, the first user computing device 1 10-1 transmits the selected files via the network 120 to the payment processing system 140, which retransmits the selected files to the second user computing device 1 10-2 via the network 120. In other examples, the first user computing device 1 10-1 and the second user computing device 1 10-2 establish a wireless network connection at the merchant location and transmit and/or receive data over the wireless network connection.

Other Examples

[001 19] Figure 7 depicts a computing machine 2000 and a module 2050 in accordance with certain examples. The computing machine 2000 may correspond to any of the various computers, servers, mobile devices, embedded systems, or computing systems presented herein. The module 2050 may comprise one or more hardware or software elements configured to facilitate the computing machine 2000 in performing the various methods and processing functions presented herein. The computing machine 2000 may include various internal or attached components such as a processor 2010, system bus 2020, system memory 2030, storage media 2040, input/output interface 2060, and a network interface 2070 for communicating with a network 2080.

[00120] The computing machine 2000 may be implemented as a conventional computer system, an embedded controller, a laptop, a server, a mobile device, a smartphone, a set-top box, a kiosk, a router or other network node, a vehicular information system, one more processors associated with a television, a customized machine, any other hardware platform, or any combination or multiplicity thereof. The computing machine 2000 may be a distributed system configured to function using multiple computing machines interconnected via a data network or bus system. [00121 ] The processor 2010 may be configured to execute code or instructions to perform the operations and functionality described herein, manage request flow and address mappings, and to perform calculations and generate commands. The processor 2010 may be configured to monitor and control the operation of the components in the computing machine 2000. The processor 2010 may be a general purpose processor, a processor core, a multiprocessor, a reconfigurable processor, a microcontroller, a digital signal processor ("DSP"), an application specific integrated circuit ("ASIC"), a graphics processing unit ("GPU"), a field programmable gate array ("FPGA"), a programmable logic device ("PLD"), a controller, a state machine, gated logic, discrete hardware components, any other processing unit, or any combination or multiplicity thereof The processor 2010 may be a single processing unit, multiple processing units, a single processing core, multiple processing cores, special purpose processing cores, coprocessors, or any combination thereof. According to certain embodiments, the processor 2010 along with other components of the computing machine 2000 may be a virtualized computing machine executing within one or more other computing machines.

[00122] The system memory 2030 may include non-volatile memories such as read-only memory ("ROM"), programmable read-only memory ("PROM"), erasable programmable read-only memory ("EPROM"), flash memory, or any other device capable of storing program instructions or data with or without applied power. The system memory 2030 may also include volatile memories such as random access memory ("RAM"), static random access memory ("SRAM"), dynamic random access memory ("DRAM"), and synchronous dynamic random access memory ("SDRAM"). Other types of RAM also may be used to implement the system memory 2030. The system memory 2030 may be implemented using a single memory module or multiple memory modules. While the system memory 2030 is depicted as being part of the computing machine 2000, one skilled in the art will recognize that the system memory 2030 may be separate from the computing machine 2000 without departing from the scope of the subject technology. It should also be appreciated that the system memory 2030 may include, or operate in conjunction with, a non-volatile storage device such as the storage media 2040.

[00123] The storage media 2040 may include a hard disk, a floppy disk, a compact disc read only memory ("CD-ROM"), a digital versatile disc ("DVD"), a Blu-ray disc, a magnetic tape, a flash memory, other non-volatile memory device, a solid state drive ("SSD"), any magnetic storage device, any optical storage device, any electrical storage device, any semiconductor storage device, any physical -based storage device, any other data storage device, or any combination or multiplicity thereof. The storage media 2040 may store one or more operating systems, application programs and program modules such as module 2050, data, or any other information. The storage media 2040 may be part of, or connected to, the computing machine 2000. The storage media 2040 may also be part of one or more other computing machines that are in communication with the computing machine 2000 such as servers, database servers, cloud storage, network attached storage, and so forth.

[00124] The module 2050 may comprise one or more hardware or software elements configured to facilitate the computing machine 2000 with performing the various methods and processing functions presented herein. The module 2050 may include one or more sequences of instructions stored as software or firmware in association with the system memory 2030, the storage media 2040, or both. The storage media 2040 may therefore represent examples of machine or computer readable media on which instructions or code may be stored for execution by the processor 2010. Machine or computer readable media may generally refer to any medium or media used to provide instructions to the processor 2010. Such machine or computer readable media associated with the module 2050 may comprise a computer software product. It should be appreciated that a computer software product comprising the module 2050 may also be associated with one or more processes or methods for delivering the module 2050 to the computing machine 2000 via the network 2080, any signal-bearing medium, or any other communication or delivery technology. The module 2050 may also comprise hardware circuits or information for configuring hardware circuits such as microcode or configuration information for an FPGA or other PLD.

[00125] The input/output ("I/O") interface 2060 may be configured to couple to one or more external devices, to receive data from the one or more external devices, and to send data to the one or more external devices. Such external devices along with the various internal devices may also be known as peripheral devices. The I/O interface 2060 may include both electrical and physical connections for operably coupling the various peripheral devices to the computing machine 2000 or the processor 2010. The I/O interface 2060 may be configured to communicate data, addresses, and control signals between the peripheral devices, the computing machine 2000, or the processor 2010. The I/O interface 2060 may be configured to implement any standard interface, such as small computer system interface ("SCSI"), serial-attached SCSI ("SAS"), fiber channel, peripheral component interconnect ("PCI"), PCI express (PCIe), serial bus, parallel bus, advanced technology attached ("ATA"), serial ATA ("SAT A"), universal serial bus ("USB"), Thunderbolt, FireWire, various video buses, and the like. The I/O interface 2060 may be configured to implement only one interface or bus technology. Alternatively, the I/O interface 2060 may be configured to implement multiple interfaces or bus technologies. The I/O interface 2060 may be configured as part of, all of, or to operate in conjunction with, the system bus 2020. The I O interface 2060 may include one or more buffers for buffering transmissions between one or more external devices, internal devices, the computing machine 2000, or the processor 2010.

[00126] The I/O interface 2060 may couple the computing machine 2000 to various input devices including mice, touch-screens, scanners, electronic digitizers, sensors, receivers, touchpads, trackballs, cameras, microphones, keyboards, any other pointing devices, or any combinations thereof. The I/O interface 2060 may couple the computing machine 2000 to various output devices including video displays, speakers, printers, projectors, tactile feedback devices, automation control, robotic components, actuators, motors, fans, solenoids, valves, pumps, transmitters, signal emitters, lights, and so forth.

[00127] The computing machine 2000 may operate in a networked environment using logical connections through the network interface 2070 to one or more other systems or computing machines across the network 2080. The network 2080 may include wide area networks (WAN), local area networks (LAN), intranets, the Internet, wireless access networks, wired networks, mobile networks, telephone networks, optical networks, or combinations thereof. The network 2080 may be packet switched, circuit switched, of any topology, and may use any communication protocol. Communication links within the network 2080 may involve various digital or an analog communication media such as fiber optic cables, free-space optics, waveguides, electrical conductors, wireless links, antennas, radio-frequency communications, and so forth.

[00128] The processor 2010 may be connected to the other elements of the computing machine 2000 or the various peripherals discussed herein through the system bus 2020. It should be appreciated that the system bus 2020 may be within the processor 2010, outside the processor 2010, or both. According to certain examples, any of the processor 2010, the other elements of the computing machine 2000, or the various peripherals discussed herein may be integrated into a single device such as a system on chip ("SOC"), system on package ("SOP"), or ASIC device. [00129] Tn situations in which the systems discussed here collect personal information about users, or may make use of personal information, the users may be provided with an opportunity or option to control whether programs or features collect user information (e.g., information about a user's social network, social actions or activities, profession, a user' s preferences, or a user's current location), or to control whether and/or how to receive content from the content server that may be more relevant to the user. In addition, certain data may be treated in one or more ways before it is stored or used, so that personally identifiable information is removed. For example, a user's identity may be treated so that no personally identifiable information can be determined for the user, or a user' s geographic location may be generalized where location information is obtained (such as to a city, ZIP code, or state level), so that a location of a user cannot be determined. Thus, the user may have control over how information is collected about the user and used by a content server.

[00130] Embodiments may comprise a computer program that embodies the functions described and illustrated herein, wherein the computer program is implemented in a computer system that comprises instructions stored in a machine-readable medium and a processor that executes the instructions. However, it should be apparent that there could be many different ways of implementing embodiments in computer programming, and the embodiments should not be construed as limited to any one set of computer program instructions. Further, a skilled programmer would be able to write such a computer program to implement an embodiment of the disclosed embodiments based on the appended flow charts and associated description in the application text. Therefore, disclosure of a particular set of program code instructions is not considered necessary for an adequate understanding of how to make and use embodiments. Further, those skilled in the art will appreciate that one or more aspects of embodiments described herein may be performed by hardware, software, or a combination thereof, as may be embodied in one or more computing systems. Moreover, any reference to an act being performed by a computer should not be construed as being performed by a single computer as more than one computer may perform the act.

[00131] The examples described herein can be used with computer hardware and software that perform the methods and processing functions described herein. The systems, methods, and procedures described herein can be embodied in a programmable computer, computer-executable software, or digital circuitry. The software can be stored on computer-readable media. For example, computer-readable media can include a floppy disk, RAM, ROM, hard disk, removable media, flash memory, memory stick, optical media, magneto-optical media, CD-ROM, etc. Digital circuitry can include integrated circuits, gate arrays, building block logic, field programmable gate arrays (FPGA), etc.

[00132] The example systems, methods, and acts described in the embodiments presented previously are illustrative, and, in alternative embodiments, certain acts can be performed in a different order, in parallel with one another, omitted entirely, and/or combined between different examples, and/or certain additional acts can be performed, without departing from the scope and spirit of various embodiments. Accordingly, such alternative embodiments are included in the scope of the following claims, which are to be accorded the broadest interpretation so as to encompass such alternate embodiments.

[00133] Although specific embodiments have been described above in detail, the description is merely for purposes of illustration. It should be appreciated, therefore, that many aspects described above are not intended as required or essential elements unless explicitly stated otherwise. Modifications of, and equivalent components or acts corresponding to, the disclosed aspects of the examples, in addition to those described above, can be made by a person of ordinary skill in the art, having the benefit of the present disclosure, without departing from the spirit and scope of embodiments defined in the following claims, the scope of which is to be accorded the broadest interpretation so as to encompass such modifications and equivalent structures.