Systems and methods for device tracking and contactless order delivery and pickup
A temporary access key in a transaction code facilitates contactless product delivery and pickup by enabling secure, efficient access to vehicles or lockboxes, addressing safety and efficiency issues in existing systems.
Patent Information
- Application Number
- JP2021168952
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2021-10-08
- Filing Date
- 2021-10-14
- Publication Date
- 2025-12-18
- Estimated Expiration
- 2041-10-14
AI Technical Summary
Existing product delivery and pickup systems require direct contact between customers and merchants, compromising safety and efficiency.
A temporary access key embedded in a transaction code is generated for a purchased item, allowing contactless delivery by enabling access to a vehicle or lockbox, with real-time arrival alerts and key disabling upon delivery confirmation.
Enhances safety and efficiency by eliminating direct contact between customers and merchants during product pickup and delivery, ensuring timely and secure transaction completion.
Smart Images

Figure 0007788250000001 
Figure 0007788250000002 
Figure 0007788250000003
Abstract
Description
[Technical Field]
[0001] The subject matter of this disclosure relates generally to the field of device tracking technologies, and more particularly to a method, non-transitory computer-readable medium, and system for granting temporary access to a tracked device at a specific point of interest.
[0002] [CROSS-REFERENCE TO RELATED APPLICATIONS] This application claims priority to U.S. Provisional Patent Application No. 63 / 116,975, filed November 23, 2020, the entire contents of which are incorporated herein by reference. [Background technology]
[0003] To facilitate the purchase of goods, various technological tools have emerged that aim to simplify various aspects of advertising, ordering, purchasing, and / or delivery of goods, and technological tools related to product pickup and / or delivery have been developed in the purchasing cycle of such goods. Summary of the Invention
[0004] Exemplary embodiments relate to improving existing systems that provide arrival alerts. More specifically, exemplary embodiments described herein enhance the safety and security of such systems by including a temporary access key in a transaction code that is generated for a purchased item at the time the item is ordered and used to provide arrival alerts to a merchant and / or user. When the system notifies the merchant that a customer has arrived to pick up the purchase, the temporary access key embedded in the code can be used to access the customer's vehicle and place the purchased item inside, without requiring contact between the customer and the merchant to exchange the purchase.
[0005] In one aspect, the method includes generating a transaction code for a transaction, the transaction code including a temporary key that allows access to a vehicle at a delivery location; transmitting the transaction code to a merchant device; transmitting an alert to the merchant device that the vehicle has arrived at the delivery location, the temporary key being used to access the vehicle to place an item inside the vehicle; receiving notification that the item has been placed inside the vehicle; and disabling the temporary key.
[0006] In another aspect, the method includes receiving the temporary key from at least one of the vehicle or a user's mobile device associated with the vehicle.
[0007] In another aspect of the method, the temporary key is received at the time of receiving information about the transaction.
[0008] In another aspect of the method, the temporary key is received when the vehicle is within a reference distance from the delivery location.
[0009] In another aspect of the method, the transaction code is one of a Quick Response (QR) code and a barcode.
[0010] In another aspect, the method includes tracking movement of the vehicle once the transaction code is generated; and transmitting a plurality of updates to the merchant device regarding an estimated time of arrival of the vehicle at the delivery location, the latest of the plurality of updates being an alert that the vehicle has arrived at the delivery location.
[0011] In another aspect of the method, the transaction code includes a transaction identifier, a user identifier corresponding to the user, a merchant identifier corresponding to the merchant, and a product identifier corresponding to the product.
[0012] In one aspect, one or more non-transitory computer-readable storage media include stored computer-readable instructions that, when executed by one or more processors, cause the one or more processors to: generate a transaction code for a transaction, the transaction code including a temporary key that grants access to a vehicle at a delivery location; send the transaction code to a merchant device; send an alert to the merchant device that the vehicle has arrived at the delivery location, the temporary key being used to access the vehicle to place an item in the vehicle; receive notification that the item has been placed in the vehicle; and disable the temporary key.
[0013] In one aspect, the device comprises one or more memories containing stored computer-readable instructions and one or more processors that execute the computer-readable instructions to generate, for a transaction, a transaction code, the transaction code including a temporary key that grants access to a vehicle at a delivery location; send the transaction code to a merchant device; send an alert to the merchant device that the vehicle has arrived at the delivery location, the temporary key being used to access the vehicle to place an item in the vehicle; receive notification that the item has been placed in the vehicle; and disable the temporary key.
[0014] To explain how the above-enumerated and other advantages and features of the present disclosure are obtained, a more particular description of the principles briefly described above will be made by reference to specific embodiments that are illustrated in the accompanying drawings. The principles herein will be described and explained with additional specificity and detail through the use of the accompanying drawings, bearing in mind that these drawings depict only exemplary embodiments of the disclosure and therefore should not be considered as limiting the scope of the disclosure. [Brief explanation of the drawings]
[0015] [Figure 1A] FIG. 1 illustrates an example of a system according to an aspect of the present disclosure. [Figure 1B] FIG. 1 illustrates an example of a system according to an aspect of the present disclosure. [Figure 2A] FIG. 1 illustrates an example method according to an aspect of the present disclosure. [Figure 2B] FIG. 1 illustrates an example method according to an aspect of the present disclosure. [Figure 3A] FIG. 1 illustrates an example method according to an aspect of the present disclosure. [Figure 3B] FIG. 1 illustrates an example method according to an aspect of the present disclosure. [Figure 4] FIG. 1 illustrates an example of a network device in accordance with an aspect of the present technology. [Figure 5] FIG. 1 illustrates an example of a computing device architecture in accordance with an aspect of the present technology. DETAILED DESCRIPTION OF THE INVENTION
[0016] Various embodiments of the present disclosure are described in detail below. While specific embodiments are described, it should be understood that this is done for illustrative purposes only. Those skilled in the art will recognize that alternative components and configurations can be used without departing from the spirit and scope of the present disclosure. Therefore, the following description and drawings are illustrative and should not be construed as limiting. Numerous specific details are set forth to provide a thorough understanding of the present disclosure. However, in certain instances, well-known or conventional details are not described to avoid obscuring the description. Reference to one embodiment in the present disclosure can be a reference to the same embodiment or any embodiment, and such reference means at least one of multiple embodiments.
[0017] A reference to "one embodiment" or "an embodiment" means that a particular feature, structure, or characteristic described in connection with that embodiment is included in at least one embodiment of the present disclosure. The appearances of the phrase "in one embodiment" in various places throughout this specification are not necessarily all referring to the same embodiment, nor are separate or alternative embodiments mutually exclusive of other embodiments. Moreover, various features are described that are exhibited by some examples and may not be exhibited by other examples.
[0018] The terms used herein generally have their ordinary meanings in the art, within the context of this disclosure, and in the specific context in which each term is used. Alternative terms and synonyms may be used for any one or more of the terms discussed herein, and no special emphasis is placed on whether a term is explained or discussed herein. In some cases, synonyms for a particular term are provided. The explanation of one or more synonyms does not exclude the use of other synonyms. The use of examples anywhere in this specification, including examples of any term discussed herein, is illustrative only and is not intended to further limit the scope and meaning of the present disclosure or of any exemplified term. Similarly, the present disclosure is not limited to the various embodiments provided herein.
[0019] Without intending to limit the scope of the present disclosure, examples of devices, apparatus, methods, and their related results according to embodiments of the present disclosure are provided below. It should be noted that headings or subheadings may be used in the examples for the convenience of the reader, but this in no way limits the scope of the present disclosure. Unless otherwise defined, technical and scientific terms used herein have the meanings commonly understood by those skilled in the art to which this disclosure pertains. In the case of conflict, the present document, including definitions, will control.
[0020] Additional features and advantages of the present disclosure will be set forth in the description which follows, and in part will be obvious from that description, or may be learned by the practice of the principles disclosed herein. The features and advantages of the present disclosure may be realized and obtained by means of the instruments and combinations particularly pointed out in the appended claims. These and other features of the present disclosure will become more fully apparent from the following description and the appended claims, or may be obtained by the practice of the principles described herein.
[0021] As previously mentioned, for a product purchase cycle, a product pickup and / or delivery tool can provide update information regarding the delivery and / or pickup of purchased product(s) to intended recipient(s). One such notification can be an arrival alert that is provided based on receiving location updates from a moving target (e.g., a vehicle) to a destination (e.g., a store) regarding the arrival of the moving target to time the alert to the destination as accurately as possible. For example, if a user is driving to a store location to pick up an ordered item, the system's objective is to provide an accurate advance alert (arrival alert) to the store operator so that the store operator can have the user's order ready for pickup when the user arrives.
[0022] Disclosed herein are systems, non-transitory computer-readable media, and methods for including a temporary access key with a code generated at the time of a product order. The code is then used by a merchant to fulfill the product order and also by a product pickup and delivery system to track the movement of devices associated with the customer(s) and merchant(s) involved in the purchase to provide arrival alerts to the merchant (and / or customer) at the product delivery and pick-up point (e.g., merchant location, customer location, etc.). In this case, the code and the temporary access key embedded therein can be used to access the transfer medium upon the customer's arrival at the transfer location (or alternatively, the merchant's arrival at the transfer location) to place the purchased product within the transfer medium. Temporary access to the transfer medium eliminates the need for direct, face-to-face contact between the customer and the merchant, thereby improving the safety and security of such product pickup and delivery systems.
[0023] For example, a customer picking up an item from a brick-and-mortar store traditionally must park their car, enter the store, pick up the item (ordered online or in person), and either leave the store or have a retailer representative bring the item to the customer. The present technology makes this process more efficient and easier for the customer by providing the retailer with temporary access to the customer's vehicle through a code generated for the purchased item. When the customer arrives at the location to pick up the item, the retailer can leave the store, unlock the car with the code, and place the item in the trunk, without the customer having to park or leave the car and / or contact the retailer to deliver the item.
[0024] This disclosure proceeds to describe an example system that uses a temporary access key embedded in a code for a purchased item to implement a contactless delivery process.
[0025] 1A and 1B illustrate an example system according to certain aspects of the present disclosure. System 100 in FIG. 1A illustrates various components that function in communication with one another to enable placing an order for goods or services, generating a transaction code for the order, tracking the movement of a vehicle to pick up (or receive) the goods, and providing an arrival alert to a vendor at a delivery point with temporary access to the vehicle to place the ordered goods inside. The components of system 100 are described below.
[0026] 1A , user 102 may be a customer purchasing a product using user device 104. In some examples, user device 104 may be a personal mobile device, a smart watch, a personal digital assistant, a laptop, a tablet, or a user device located in a vehicle 122. In some examples, vehicle 122 may be a car, a bus, a motorcycle, a public transportation vehicle, or other transportation mechanism used by user 102 to travel to a destination (a pickup or delivery location for a product, which may also be referred to as a drop-off point). A location service 124 on user device 104 may track the movement of user device 104 and / or vehicle 122. Location service 124 may communicate with routing engine 120 and / or server 112 via a network, for example, any known or later-developed wired and / or wireless communication method, such as a cellular network, a Wi-Fi connection, etc. In some examples, the location service 124 may be a global positioning system provided within the user device 104 that is capable of receiving and / or recording the geographic coordinates of the user device 104 .
[0027] A user 102 can order products from a merchant 108 by sending an order request to the merchant server 128 through the user device 104. The order can be placed via a website or a mobile application where the user 102 accesses the merchant's 108 website (or uses the merchant's 108 mobile application installed on the user device 104) to place the order. In another example, the user 102 can place the order in person at a merchant's location, or can place the order at one merchant's 108 location and pick up at another merchant's 108 location. The order can be picked up at a delivery location 106.
[0028] The merchant server 128 may be a cloud-accessible server that processes and manages orders placed with the merchant 108. The merchant server 128 may communicate with the merchant devices 110, server 112, etc. using any known or later developed wired and / or wireless communication method.
[0029] The server 112 may be a backend server associated with the order tracking and delivery system of the present application. The server 112 may communicate with a merchant server 128 and may receive information about the ordered goods or services from the merchant server 128 when goods or services are ordered via the user device 104. Once the information is received, the server 112 may generate a transaction code for the order, such as a QR code, a barcode, or any other known or later-developed computer-readable tag or identifier. The transaction code may include information such as a transaction identifier, a user identifier corresponding to the user 102, a merchant identifier corresponding to the merchant 108, and product identifiers corresponding to one or more goods. Additionally, the transaction code may include a temporary key that grants access to the vehicle 122. This temporary key may be received from the user device 104, directly from the vehicle 122, or from another server associated with the vehicle 122 or the user device 104, as described further below. In some examples, the temporary key may be received and embedded in the transaction code while the user 102 is driving to the delivery location 106 in the vehicle 122 (e.g., when the user device 104 and / or vehicle 122 arrive within a reference proximity range of the delivery location 106, where such reference proximity range is a configurable parameter determined based on experimentation and / or empirical studies).
[0030] The server 112 can send this transaction code to the merchant 108 via the merchant device 110 to facilitate tracking of the user device 104 or vehicle 122 for order fulfillment. The server 112 can also use location data associated with the movement of the vehicle 122 and / or user device 104 to send an arrival alert to the merchant device 110 informing the merchant 108 of the estimated arrival time of the vehicle 122 and / or user device 104 so that the merchant 108 will be ready to deliver the ordered goods or services to the user 102 upon the user's arrival at the delivery location 106.
[0031] The delivery location 106 may be a targeted location where a delivery of goods from the vendor 108 to the user 102 (or to the vehicle 122) occurs. The vendor 108 may receive arrival alerts regarding the arrival of the user 102 from the server 112 via the vendor device 110. The server 112 may provide continuous and / or periodic alerts or updates regarding the estimated arrival time of the vehicle 122 and / or user device 104 at the delivery location 106 based, at least in part, on routing and traffic information received via the routing engine 120. The routing engine 120 may receive location data from a location service 124 via the user device 104 or vehicle 122 and perform tasks associated with a mapping application. The routing engine 120 may consider distance to the delivery location 106, speed limits, traffic, weather, and time of day conditions when providing arrival time information to the server 112. The server 112 may use this information to refine or revise additional alerts as needed and provide them to the vendor 108. The functionality of the routing engine 120 may be implemented by the server 112, which may also have its own dedicated server and memory, as well as databases of maps, traffic data, etc. The generation of arrival alerts and communication of these to the merchant device 110 may be based on any known or later developed method. Non-limiting examples of this method are described in U.S. patent application Ser. No. 15 / 672,399, filed Aug. 9, 2017, U.S. patent application Ser. No. 16 / 402,368, having an effective filing date of May 3, 2018, U.S. patent application Ser. No. 16 / 167,658, having an effective filing date of May 3, 2018, U.S. patent application Ser. No. 16 / 402,408, having an effective filing date of May 3, 2018, U.S. patent application Ser. No. 16 / 402,432, having an effective filing date of May 3, 2018, and U.S. patent application Ser. No. 16 / 162,902, having an effective filing date of May 3, 2018, the entire contents of which are incorporated herein by reference.
[0032] The merchant device 110 may communicate with the server 112 over a network, such as a cellular network or a Wi-Fi connection. In some examples, the merchant device 110 may be a tablet, a personal computer, a mobile device, or a point-of-sale device.
[0033] In one example, the delivery location 106 can be a brick-and-mortar store where the user 102 ordered item(s) for purchase. The user 102 can drive the vehicle 122 to the delivery location 106, and upon arrival, the merchant 108 can be alerted to the arrival of the user 102 to pick up the ordered items. To enable the merchant 108 to prepare for prompt item pickup, the merchant 108 can directly access location data of the user device 104 and / or vehicle 122 upon request, or alternatively, the server 112 can generate an arrival alert and send the arrival alert to the merchant device 110, as described above. In some examples, the delivery location 106 can be a restaurant, a department store, or a service provider, e.g., a dry cleaner or a library, and / or any other location where goods or services purchased by the user 102 can be picked up from the merchant 108 or a corresponding delivery service to the user 102.
[0034] Server 112 may have one or more processors capable of executing one or more sets of computer-readable instructions stored in one or more memories. Execution of such sets of computer-readable instructions may perform the functions of the methods described below with reference to Figures 2A, 2B, 3A, and 3B. Data stored on server 112 may be used to train machine learning algorithms implemented by server 112. These algorithms may help build destination-specific models and perform arrival prediction services based on any known or later-developed method. Non-limiting examples of this method are described in U.S. patent application Ser. No. 15 / 672,399, filed Aug. 9, 2017, U.S. patent application Ser. No. 16 / 402,368, having an effective filing date of May 3, 2018, U.S. patent application Ser. No. 16 / 167,658, having an effective filing date of May 3, 2018, U.S. patent application Ser. No. 16 / 402,408, having an effective filing date of May 3, 2018, U.S. patent application Ser. No. 16 / 402,432, having an effective filing date of May 3, 2018, and U.S. patent application Ser. No. 16 / 162,902, having an effective filing date of May 3, 2018, the entire contents of which are incorporated herein by reference.
[0035] When the vehicle 122 arrives (or is about to arrive) at the delivery location 106, the merchant 108 may receive an alert from the server 112 via the merchant device 110 that the vehicle 122 has arrived or is about to arrive for pickup of the goods. In some examples, when the vehicle 122 arrives at the delivery location 106, the merchant 108 may use a temporary access key included in the transaction code to unlock the vehicle 122. Using the merchant device 110 and / or any other handheld portable electronic device capable of receiving the transaction code, the merchant 108 may use the temporary access key embedded in the transaction code to unlock the vehicle 122. The use of the temporary access key and merchant device 110 to access the vehicle 122 can be based on any known or later-developed near-field communication technology, including, but not limited to, near-field communication (NFC), Bluetooth and Bluetooth Low Energy (BLE), ultra-wideband (UWB), radio frequency identification (RFID), Wi-Fi network, or cellular network technology, and the merchant 108 can use the temporary access key to unlock the vehicle 122. Once the delivery has occurred, the merchant 108 can notify the server 112 that the delivery has occurred, at which point the server 112 can disable the temporary key. In some examples, the server 112 can generate a wait time that measures the difference between when the vehicle 122 arrives at the delivery location 106 and when the server receives notification that the delivery has occurred. The wait time data can be used to refine the estimated arrival time or other aspects of the delivery.
[0036] In some examples, the transaction code may also be shared with the user 102. In some examples, for example, if the transaction code is a QR code, the QR code may be provided on the product packaging and the user 102 may scan the code to ensure that delivery acceptance has occurred.
[0037] FIG. 1B illustrates a system 150 similar to system 100 shown in FIG. 1A and described above, except that system 150 relates to an example in which product pickup occurs via a lockbox 126 at a delivery location 106 and, rather than a merchant 108 using a temporary access key to deliver the products to a vehicle 122, a user 102 accesses the lockbox 126 to receive the ordered products. Elements in FIG. 1B that have the same numbers as corresponding elements in FIG. 1A will not be described again for brevity, as their function and operation are the same as those described above with reference to FIG. 1A. For example, user device 104 in FIG. 1B is the same as user device 104 in FIG. 1A and will not be described again with reference to FIG. 1B.
[0038] In the situation of FIG. 1B , when the user 102 places an order for a product, the user 102 can receive a transaction code with a temporary access key from the server 112. Using the user device 104 and the transaction code with the embedded access key, the user 102 can access the lockbox 126 and pick up the product after the merchant 108 places the product therein. The merchant device 110 can receive location data from the server 112 (and receive arrival alerts in a manner similar to that described above) to ensure that the merchant 108 places the purchased product in the lockbox 126 before the user 102 arrives. In one example, the user 102 can receive an alert notification on the user device 104 informing the user 102 that the product has been placed in the lockbox 126 by the merchant 108 and is ready for pickup. The user 102 can use any means to reach the delivery location 106, including walking, using a vehicle 122, using public transportation, etc. In one example, if the user 102 is using underground public transportation, providing the merchant 108 with an arrival alert regarding the user 102's estimated arrival time at the delivery location 106 can be based on any known or later-developed method, a non-limiting example of which is described in U.S. Patent Application No. 16 / 162,902, having an effective filing date of May 3, 2018, the entire contents of which are incorporated herein by reference.
[0039] 1A and 1B are exemplary systems for implementing the present technology, but the present disclosure is not limited thereto.
[0040] In some examples, the user 102 may pick up merchandise from a vehicle operated by a merchant 108. The merchant 108 may be a restaurant that offers delivery or an independent delivery service. In this case, an arrival alert may be provided to the user device 104 informing the user 102 regarding the estimated arrival time of a delivery device associated with the merchant (e.g., the merchant's vehicle) to deliver the purchased merchandise to the user 102. Additionally, a transaction code with a temporary access key for accessing the user's 102 location (e.g., the user's automobile, home, office, etc.) may be provided on the merchant device 110 to place the delivered merchandise inside the user's 102 location.
[0041] In some examples, in the situation of FIG. 1A, vehicle 122 may be an autonomous vehicle sent to pick up an order on behalf of user 102 from delivery location 106.
[0042] 1A , an automated system may place and initiate an order for goods or services with a merchant 108 on behalf of the user 102. Such a system may be a home system configured to be programmed to order any item or multiple specified items upon a trigger event (e.g., periodically or when any one such item needs to be replenished). Upon detecting a trigger event, such an autonomous system places an order with the merchant 108 or any other associated merchant, and the process of generating a transaction code with a temporary access key may be performed in the same manner as described above and further below.
[0043] 2A and 2B illustrate an example method according to certain aspects of the present disclosure. The method illustrated in FIG. 2A and 2B may be performed by the system 100 illustrated in FIG. 1A, and in particular by the server 112. Note that the server 112 may have one or more processors configured to execute computer-readable instructions stored in one or more associated memories to perform the steps and processes described below with reference to FIG. 2A.
[0044] In process 200, the server 112 receives information from the merchant server 128 that an order for a product has been placed by the user 102 with the merchant 108 (either in person, using the user device 104 and merchant device 110, or on a merchant website, as described above). The information may include, among other information, information identifying the purchased product, a location identifying the merchant, a product delivery location, e.g., the delivery location 106, identification of the user 102, the user device 104, and / or the vehicle 122, etc.
[0045] In process 210, once the information is received, the server 112 generates a transaction code for the ordered items. As mentioned above, the transaction code can be any type of now-known or later-developed computer-readable code, such as a QR code, a barcode, etc. The transaction code can include a temporary access key to access the vehicle 122 or any other means of transportation (personal transportation) used by the user 102 to travel to the delivery location 106 to pick up the ordered items. The temporary key can grant the merchant 108 temporary access to the vehicle 122. The vehicle 122 can be operated by the user 102 or by another user to pick up the items from the delivery location 106.
[0046] In one example, the user device 104 can be configured as a vehicle access key for the vehicle 122, and the user device 104 can store the virtual access key locally (e.g., in a virtual wallet on the user device 104). At the time of ordering goods in process 200, a temporary token representing the vehicle access key can be generated by the user device 104 and transmitted to the server 112. Accordingly, the server 112 can generate a transaction code to include the temporary token as the temporary access key, which is then transmitted to the merchant device 110 for use in accessing the vehicle 122 to place the ordered goods inside. The temporary access key can be transmitted to the merchant device 110 at the time of generation, or the temporary access key can be transmitted based on attributes such as the location of the vehicle 122 relative to the delivery location 106, the estimated time of arrival of the vehicle 122 at the delivery location 106, or other factors. For example, the temporary access key can be transmitted to the merchant device 110 when the vehicle 122 is within a certain distance from the location of the merchant associated with the merchant device 110. Such criteria may be configurable parameters determined based on experimentation and / or empirical studies. In another example, an access key may be sent to the merchant device 110 prior to the arrival of the vehicle 122 (e.g., when an order is placed with a merchant, when the vehicle 122 begins traveling to or is within a reference distance from the merchant, etc.). Alternatively, the access key may not be activated until the vehicle 122 is within a corresponding reference distance and / or arrival time to the merchant's location (both of which may be configurable parameters determined based on experimentation and / or empirical studies).
[0047] In another example, when the user device 104, vehicle 122 is within a certain proximity of the delivery location 106 (where such proximity may be a configurable parameter determined based on experimentation and / or empirical studies, or may be the same as the criteria used to provide an arrival alert to the merchant device 110), the user device 104 and / or vehicle 122 may share such a temporary token representing the vehicle access key with the server 112 or directly with the merchant device 110 for inclusion in the transaction code. If the temporary token is sent directly to the merchant device 110, the transmission of the token and its inclusion in the transaction code may be completely seamless and may be encrypted so that the merchant 108 cannot view, access, and / or store the temporary token on the merchant device 110. This encryption process increases overall system security.
[0048] In another example, the temporary token can be shared directly with the merchant device 110 and / or any other mobile device carried by the merchant 108 when delivering the ordered items to the vehicle 122. In this case, when the merchant device 110 is within a reference distance (e.g., 2 feet, 1 meter, etc.) of the vehicle 122 (and / or user device 104), a short-range communication scheme such as NFC, BLE, etc. can be used to encrypt and transfer the temporary token directly from the user device 104, vehicle 122, or merchant device 110 to access the vehicle 122 and place the ordered items in the vehicle 122. The temporary token in this case can be included in the transaction code, thereby avoiding separate storage of the temporary token on the merchant device 110. In another example, the temporary token can be used directly for temporary access to the vehicle 122 without including the temporary token in the transaction code on the merchant device 110.
[0049] In process 220, once the transaction code is generated, the server 112 communicates the transaction code to the merchant device 110 using any known or later developed communication method.
[0050] In process 230, the server 112 sends an alert to the merchant 108 via the merchant device 110 indicating that the vehicle 122 is about to arrive or has arrived at the delivery location 106. As mentioned above, arrival alerts that provide the merchant with updates to the estimated arrival time of the user 102 at the delivery location 106 can be provided to the merchant device 110 periodically or upon the occurrence of certain trigger events, non-limiting examples of which are U.S. patent application Ser. No. 15 / 672,399, filed Aug. 9, 2017; U.S. patent application Ser. No. 16 / 402,368, filed May 3, 2018; No. 16 / 167,658, having an effective filing date of May 3, 2018, U.S. Patent Application No. 16 / 402,408, having an effective filing date of May 3, 2018, U.S. Patent Application No. 16 / 402,432, having an effective filing date of May 3, 2018, and U.S. Patent Application No. 16 / 162,902, having an effective filing date of May 3, 2018, the entire contents of which are incorporated herein by reference. This information can help the merchant 108 ensure that the ordered items are ready for pickup in a timely manner by the user 102 upon arrival at the delivery location 106.
[0051] In process 240, the server 112 receives notification that the items have been placed inside the vehicle 122. This notification may be received from the merchant device 110 after the merchant 108 accesses the vehicle 122 using a transaction code displayed on the merchant device 110 and provides the merchant device 110 with information (confirmation) that the items have been placed inside the vehicle 122. Alternatively, such notification / confirmation that the ordered items have been placed inside the vehicle 122 may be provided to the server 112 by the user 102 through the user device 104. In another example, both the user 102 and the merchant 108 provide their confirmation using one of the user device 104 and the merchant device 110, respectively.
[0052] In process 250, once the notification is received, the server 112 disables the temporary access key to prevent unauthorized access to the vehicle 122. In one example, the server 112 removes the temporary access key from the transaction code or generates a transaction code such that the temporary access key is automatically disabled upon receiving the notification.
[0053] Figure 2B illustrates a method corresponding to the method illustrated in Figure 2A. Figure 2B illustrates the process of Figure 2A from the perspective of the merchant device 110. It should be noted that the merchant device 110 may have one or more processors configured to execute computer-readable instructions stored in one or more associated memories to implement the steps, processes, described below with reference to Figure 2B.
[0054] In process 260, the merchant device 110 receives a transaction code from the server 112. The transaction code may correspond to an order for merchandise placed by the user 102 with the merchant 108 and may be generated by the server 112 as previously described with reference to FIG.
[0055] In process 270, the merchant device 110 receives an alert that the vehicle 122 has arrived at the delivery location 106. The arrival alert may be provided to the merchant device 110 by the server 112 as previously described with reference to FIG. 2A.
[0056] When the vehicle 122 arrives, in process 280, the merchant device 110 accesses the vehicle 122 using the transaction code and a temporary access key embedded within the transaction code to place the ordered items inside the vehicle 122. In some examples, any known or later developed short-range communication method may be used to grant access to the vehicle 122 using the temporary key embedded within the transaction code, including, but not limited to, near field communication (NFC), Bluetooth and Bluetooth Low Energy (BLE), ultra-wideband (UWB), radio frequency identification (RFID), Wi-Fi network, or cellular network technology.
[0057] In process 290, after the item is placed in the vehicle 122, the merchant device 110 sends a notification to the server 112 that the item has been placed in the vehicle 122, and in response, the temporary access key embedded in the transaction code is invalidated or deleted by the server 112, as described above.
[0058] 3A and 3B illustrate an example method according to certain aspects of the present disclosure. The method illustrated in FIG. 3A and 3B may be performed by the system illustrated in FIG. 1B, and in particular by server 112. It should be noted that server 112 may have one or more processors configured to execute computer-readable instructions stored in one or more associated memories to perform the steps, processes, and the like described below with reference to FIG. 3A.
[0059] In process 300, server 112 receives information from merchant server 128 that an order for merchandise has been placed by user 102 with merchant 108. Process 300 may be performed in a manner similar to process 200 in FIG. 2A described above.
[0060] In response to receiving the information, the server 112 generates a transaction code for the ordered items in process 310. The transaction code may include a temporary access key for accessing the lockbox 126 used by the merchant 108. Process 310 may be performed in a manner similar to process 210 in FIG. 2A described above.
[0061] In one example, the merchant device 110 may be configured with a lockbox access key for the lockbox 126, and the merchant device 110 may store the virtual access key locally (e.g., in a virtual wallet on the merchant device 110). At the time of ordering in process 300, a temporary token representing the lockbox access key may be generated by the merchant device 110 and sent to the server 112. Accordingly, the server 112 may generate a transaction code to include the temporary token as the temporary access key, which is then sent to the user device 104 to be used to access the lockbox 126 to retrieve the ordered items. The temporary access key may be sent to the user device 104 at the time it is generated, or the temporary access key may be sent based on attributes such as the location of the user device 104 relative to the lockbox 126, the estimated time of arrival of the vehicle 122 at the lockbox 126, or other factors. For example, a temporary access key may be sent to the user device 104 when the user device 104 is within a reference distance from the lockbox 126. Such reference may be a configurable parameter determined based on experimentation and / or empirical studies. In another example, the access key may be sent to the user device 104 prior to the arrival of the user device 104 (e.g., when an order is placed with a dealer, when the vehicle 122 or user device 104 begins moving toward or is within a reference distance of the lockbox 126, etc.). Alternatively, the access key may not be activated until the user device 104 is within a corresponding reference distance of the lockbox 126 and / or within a reference arrival time at the lockbox 126 (both of which may be configurable parameters determined based on experimentation and / or empirical studies).
[0062] In another example, when the user device 104 is within a certain proximity of the delivery location 106 (where such proximity may be a configurable parameter determined based on experimentation and / or empirical studies, or may be the same as the criteria used to provide an arrival alert to the merchant device 110), the merchant device 110 may share such a temporary token representing the lockbox access key with the server 112 or directly with the user device 104 for inclusion in the transaction code. In the case where the temporary token is sent directly to the user device 104, the transmission of the token and its inclusion in the transaction code may be completely seamless and encrypted so that the user 102 cannot view, access, and / or store the temporary token on the user device 104. This encryption process increases overall system security.
[0063] In another example, the temporary token can be shared directly with the user device 104 and / or any other mobile device carried by the merchant 108 when delivering the ordered items via the locked box 126. In this case, when the user device 104 is within a reference distance (e.g., 2 feet, 1 meter, etc.) of the locked box 126 (and / or user device 104), a short-range communication method such as NFC or BLE can be used to transfer the encrypted temporary token directly from the merchant device 110 or the locked box 126 to the user device 104 to access the locked box 126 and receive the ordered items. The temporary token in this case can be included in the transaction code, thereby avoiding separate storage of the temporary token on the user device 104. In another example, the temporary token can be used directly for temporary access to the locked box 126 without including the temporary token in the transaction code on the user device 104.
[0064] In process 320, once the transaction code is generated, the server 112 sends the transaction code to the user 102 via the user device 104. The server 112 may send the transaction code to the user device 104 in a manner similar to the manner in which the server 112 sends the transaction code to the merchant device 110 as described above with reference to process 220 of FIG. 2A.
[0065] In process 330, the server 112 sends an alert to the user 102 via the user device 104 indicating that the item has been placed in the lockbox 126 at the delivery location 106. In some examples, prior to the alert, the merchant 108 receives location information (arrival alert) of the user 102 via the user device 104 and the merchant device 110, and in some examples, an estimated time of arrival. This information can help the merchant 108 prepare for prompt delivery of the item. The server 112 can send the alert to the user device 104 in a manner similar to sending an alert to the merchant device 110 as described above with reference to process 230 of FIG. 2A .
[0066] In process 340, the server 112 receives notification that an item has been retrieved from the lockbox 126. This notification may be sent by the merchant 108 via the merchant device 110, by the user 102 via the user device 104, or both, for confirmation purposes. The server 112 may receive the notification in a manner similar to that described above with reference to process 240 of FIG. 2A.
[0067] In process 350, once notification is received, server 112 disables the temporary key to prevent unauthorized access to lockbox 126. Server 112 may disable the temporary key in a manner similar to disabling the temporary key as described above with reference to process 250 of FIG. 2A.
[0068] Figure 3B illustrates a method corresponding to the method illustrated in Figure 3A. Figure 3B illustrates the process of Figure 3A from the perspective of a user device 104. It should be noted that the user device 104 may have one or more processors configured to execute computer-readable instructions stored in one or more associated memories to implement the steps, processes, and steps described below with reference to Figure 3B.
[0069] In process 360, the user device 104 receives the transaction code from the server 112. The user device 104 may receive the transaction code in a manner similar to receiving the transaction code as described above with reference to process 260 of FIG. 2B.
[0070] In process 370, the user device 104 receives an alert that the item has been placed in the lockbox 126 at the delivery location 106. The user device 104 may receive the alert in a manner similar to receiving the alert as described above with reference to process 270 of FIG. 2B.
[0071] Upon arrival of the user 102, in process 380, the user device 104 accesses the locked box 126 using the transaction code and the temporary access key embedded within the transaction code to retrieve the ordered items from the locked box 126. In some examples, any known or later-developed short-range communication method may be used to grant access to the locked box 126 using the temporary key embedded within the transaction code, including, but not limited to, near-field communication (NFC), Bluetooth and Bluetooth Low Energy (BLE), ultra-wideband (UWB), radio frequency identification (RFID), Wi-Fi network, or cellular network technology. The user device 104 may access the locked box 126 in a manner similar to accessing the vehicle 122 as described above with reference to process 280 of FIG. 2B .
[0072] In process 390, after retrieving the item from the lockbox 126, the user device 104 sends a notification to the server 112 that the item has been retrieved, and in response, the temporary access key embedded in the transaction code is revoked or deleted by the server 112, as described above. The user device 104 may send the notification in a manner similar to that described above with reference to process 290 of FIG. 2B.
[0073] FIG. 4 illustrates an exemplary network device according to certain examples of the present technology. In some examples, the user device 104, the merchant device 110, or other devices described in the example system may be implemented according to the configuration of the network device 400. The network device 400 includes a central processing unit (CPU) 404, an interface 402, and a connection 410 (e.g., a PCI bus). When functioning under the control of appropriate software or firmware, the CPU 404 is responsible for performing packet management functions, error detection functions, and / or routing functions. The CPU 404 preferably accomplishes all of these functions under the control of software, including an operating system and any appropriate application software. The CPU 404 may include one or more processors 408, such as a processor selected from the INTEL X86 family of microprocessors. In some cases, the processor 408 may be specially designed hardware that controls the operation of the network device 400. In some cases, the memory 406 (e.g., non-volatile RAM, ROM, etc.) also forms part of the CPU 404. However, there are many ways in which memory can be integrated into the system.
[0074] The interfaces 402 are typically provided as modular interface cards (sometimes referred to as "line cards"). Generally, they control the transmission and reception of data packets over a network and sometimes support other peripherals used with the computing device architecture 500. Interfaces that may be provided include Ethernet interfaces, frame relay interfaces, cable interfaces, DSL interfaces, token ring interfaces, etc. Additionally, various super-speed interfaces may be provided, such as high-speed token ring interfaces, wireless interfaces, Ethernet interfaces, Gigabit Ethernet interfaces, ATM interfaces, HSSI interfaces, POS interfaces, FDDI interfaces, WIFI interfaces, 3G / 4G / 5G cellular interfaces, CAN BUS, LoRA, etc. Generally, these interfaces may include ports appropriate for communication using an appropriate medium. In some cases, these interfaces may also include a separate processor and, optionally, volatile RAM. The separate processor may control communication-intensive tasks such as packet switching, media control, signal processing, cryptography, and management. By providing a separate processor for communication-intensive tasks, these interfaces allow the CPU 404 to efficiently perform routing calculations, network diagnostics, security functions, and the like.
[0075] 4 is one particular network device of the present technology, it is by no means the only network device architecture in which the present technology can be implemented. For example, architectures with a single processor that handles communications and routing calculations, etc. are often used. Additionally, other types of interfaces and media can be used with network device 400.
[0076] Regardless of the configuration of the network device, the network device may employ one or more memories or memory modules (including memory 406) configured to store program instructions for general network operation and mechanisms for the roaming, route optimization, and routing functions described herein. The program instructions may, for example, control the operation of an operating system and / or one or more applications. The one or more memories may also be configured to store tables, such as mobility binding tables, registration tables, and association tables. Memory 406 may also hold various software containers and virtualization execution environments and data.
[0077] Network device 400 may also include an application specific integrated circuit (ASIC), which may be configured to perform routing and / or switching operations. The ASIC may communicate with other components in network device 400 via connections 410 to exchange data and signals and to coordinate various types of operations by network device 400, such as routing, switching, and / or data storage operations.
[0078] 5 illustrates an exemplary computing device architecture in accordance with some examples of the present technology. The components of the computing device architecture 500 are shown in electrical communication with each other using connections 505, e.g., a bus. The exemplary computing device architecture 500 includes a processing unit (CPU or processor) 510 and computing device connections 505 that couple various computing device components, including computing device memory 515, e.g., read-only memory (ROM) 520 and random access memory (RAM) 525, to the processor 510.
[0079] The computing device architecture 500 may include a cache of high-speed memory directly connected to, very close to, or integrated as part of the processor 510. The computing device architecture 500 may copy data from memory 515 and / or storage device 530 to cache 512 for quick access by the processor 510. In this manner, the cache may provide performance improvements that avoid delays while the processor 510 waits for data. These and other modules may control or be configured to control the processor 510 to perform various actions. Other computing device memory 515 may also be available for use. The memory 515 may include multiple different types of memory with different performance characteristics. The processor 510 may include any general-purpose processor, as well as hardware or software services configured to control the processor 510, such as service 1 532, service 2 534, and service 3 536 stored in storage device 530, as well as special-purpose processors in which software instructions are incorporated into the processor design. Processor 510 may be a self-contained system including multiple cores or processors, buses, memory controllers, caches, etc. Multi-core processors may be symmetric or asymmetric.
[0080] To enable user interaction with computing device architecture 500, input device(s) 545 can represent any number of input mechanisms, such as a microphone for audio, a touch-sensitive screen for gesture or graphical input, a keyboard, a mouse, motion input, voice, etc. Additionally, output device(s) 535 can be one or more of many output mechanisms known to those skilled in the art, such as a display, a projector, a television, a speaker device, etc. In some cases, a multimodal computing device can allow a user to provide multiple types of input to communicate with computing device architecture 500. Communications interface 540 can generally govern and manage user input and computing device output. There is no restriction to operating on a specific hardware configuration, and therefore the basic features herein can be easily substituted for improved hardware or firmware configurations as they are developed.
[0081] The storage device 530 is non-volatile memory and may be a hard disk or other type of computer-readable medium capable of storing data accessible by a computer, such as a magnetic cassette, a flash memory card, a solid-state memory device, a digital versatile disk, a cartridge, random access memory (RAM) 525, a read-only memory (ROM) 520, and hybrids thereof. The storage device 530 may include services 532, 534, 536 for controlling the processor 510. Other hardware or software modules are also contemplated. The storage device 530 may be connected to the computing device connection 505. In one aspect, a hardware module that performs a specific function may include software components stored on a computer-readable medium in association with the necessary hardware components, such as the processor 510, the connection 505, the output device 535, etc., to perform that function.
[0082] For ease of understanding the description, in some cases the technology may be presented as including individual functional blocks, including devices, device components, method steps or routines implemented in software, or functional blocks comprising a combination of hardware and software.
[0083] In some examples, computer-readable storage devices, media, and memories may include cables or wireless signals containing bitstreams, etc. However, when referred to, non-transitory computer-readable storage media explicitly excludes media such as energy, carrier signals, electromagnetic waves, and the signals themselves.
[0084] The methods according to the above examples can be implemented using computer-executable instructions stored on or otherwise available from a computer-readable medium. Such instructions can include, for example, instructions and data that cause a general-purpose computer, a special-purpose computer, or a special-purpose processing device to perform a particular function or group of functions, or that otherwise configure a general-purpose computer, a special-purpose computer, or a special-purpose processing device to perform a particular function or group of functions. Some of the computer resources used may be accessible over a network. The computer-executable instructions may be, for example, binaries, instructions in an intermediate format such as assembly language, firmware, or source code. Examples of computer-readable media that can be used to store instructions, information used, and / or information created during the execution of the methods according to the described examples include magnetic or optical disks, flash memory, USB devices provided with non-volatile memory, network-attached storage devices, etc.
[0085] Devices implementing methods according to these disclosures can include hardware, firmware, and / or software and can take any of a variety of form factors. Some examples of such form factors include general-purpose computing devices, such as servers, rack-mounted devices, desktop computers, laptop computers, etc., or general-purpose mobile computing devices, such as tablet computers, smartphones, personal digital assistants, wearable devices, etc. The functionality described herein can also be embodied in peripherals or add-in cards. Such functionality can also be implemented on a circuit board across different chips or processes to be achieved in a single device, as a further example.
[0086] The instructions, media that carry such instructions, computing resources that execute them, and other structures that support such computing resources are means for providing the functionality described in these disclosures.
[0087] While various examples and other information have been used to describe aspects within the appended claims, those skilled in the art can use these examples to derive a wide variety of implementations, and no limitations of the claims based on the specific features or configurations of such examples should be implied. Furthermore, while some subject matter may be described in language specific to example structural features and / or method steps, it is understood that the subject matter defined in the appended claims is not necessarily limited to those described features or operations. For example, such functionality may be distributed separately or performed by different components than those identified herein. Rather, the above-described features and steps are disclosed as example components of systems and methods within the appended claims.
[0088] Claim language reciting "at least one of" a set indicates that one member of the set or multiple members of the set satisfies the claim. For example, claim language reciting "at least one of A and B" means either A, B, or A and B.
Claims
1. receiving, by a server, from at least one of the vehicle and the user's mobile device associated with the vehicle, a temporary key that allows a distributor of the product to access the user's vehicle at a delivery location for the product ordered by the user; generating a transaction code by the server, the transaction code including the temporary key, a transaction identifier for the transaction related to the product, a user identifier corresponding to the user, a merchant identifier corresponding to the merchant, and a product identifier corresponding to the product; the server sending the transaction code to the merchant device; the server using location data of the vehicle and / or the user's mobile device to send an alert to the merchant's device that the vehicle has arrived at the delivery location, the temporary key being used by the merchant to access the vehicle and place the item in the vehicle; receiving, by the server, a notification from the merchant device that the item has been placed in the vehicle; the server instructing the merchant device to delete the temporary key from the transaction code on the merchant device after receiving the notification; A method comprising:
2. The method of claim 1 , wherein the temporary key is received by the merchant device upon receipt of the transaction information.
3. The method of claim 1 , wherein the temporary key is received by the merchant device when the vehicle is a reference distance from the delivery location.
4. The method of claim 1 , wherein the transaction code is a quick response (QR) code or a barcode.
5. Once the transaction code is generated, the server tracks the movement of the vehicle; the server sending a plurality of updates to the dealer device regarding the estimated time of arrival of the vehicle at the delivery location, the last update of the plurality of updates being the alert that the vehicle has arrived at the delivery location; The method of claim 1 further comprising:
6. When executed by one or more processors, the program causes the one or more processors to: receiving a temporary key from at least one of the vehicle and the user's mobile device associated with the vehicle, the temporary key allowing a distributor of the product to access the user's vehicle at a delivery location for the product ordered by the user; generating a transaction code including the temporary key, a transaction identifier for the transaction related to the product, a user identifier corresponding to the user, a merchant identifier corresponding to the merchant, and a product identifier corresponding to the product; sending the transaction code to the merchant device; using location data of the vehicle and / or the user's mobile device to send an alert to the merchant's device that the vehicle has arrived at the delivery location, the temporary key being used by the merchant to access the vehicle and place the item in the vehicle; receiving a notification from the merchant device that the item has been placed in the vehicle; instructing the merchant device to delete the temporary key from the transaction code on the merchant device after receiving the notification; One or more non-transitory computer-readable storage media having stored thereon computer-readable instructions for causing the computer to execute the method.
7. The non-transitory computer-readable storage medium of claim 6 , wherein the temporary key is received by the merchant device upon receipt of the transaction information.
8. The non-transitory computer-readable storage medium of claim 6 , wherein the temporary key is received by the merchant device when the vehicle is a reference distance from the delivery location.
9. The non-transitory computer-readable storage medium of claim 6 , wherein the transaction code is a Quick Response (QR) code or a barcode.
10. Execution of the computer-readable instructions by the one or more processors tracking the movement of the vehicle once the transaction code is generated; sending a plurality of updates to the dealer device regarding an estimated time of arrival of the vehicle at the delivery location, the latest update of the plurality of updates being the alert that the vehicle has arrived at the delivery location; The non-transitory computer-readable storage medium of claim 6 , configured to cause the one or more processors to execute:
11. one or more memories having computer readable instructions stored therein; Execute the computer-readable instructions; receiving a temporary key from at least one of the vehicle and the user's mobile device associated with the vehicle, the temporary key allowing a distributor of the product to access the user's vehicle at a delivery location for the product ordered by the user; generating a transaction code including the temporary key, a transaction identifier for the transaction related to the product, a user identifier corresponding to the user, a merchant identifier corresponding to the merchant, and a product identifier corresponding to the product; sending the transaction code to the merchant device; using location data of the vehicle and / or the user's mobile device to send an alert to the merchant's device that the vehicle has arrived at the delivery location, the temporary key being used by the merchant to access the vehicle and place the item in the vehicle; receiving notification from the merchant device that the item has been placed in the vehicle; instructing the merchant device to delete the temporary key from the transaction code on the merchant device after receiving the notification; one or more processors that perform 1. A device comprising:
12. The device of claim 11 , wherein the temporary key is received by the merchant device upon receipt of the transaction information.
13. The device of claim 11 , wherein the temporary key is received by the merchant device when the vehicle is a reference distance from the delivery location.
14. The device of claim 11 , wherein the transaction code is a Quick Response (QR) code or a barcode.
15. the one or more processors execute the computer-readable instructions; tracking the movement of the vehicle once the transaction code is generated; sending a plurality of updates to the dealer device regarding an estimated time of arrival of the vehicle at the delivery location, the latest update of the plurality of updates being the alert that the vehicle has arrived at the delivery location; The device of claim 11 ,
Citation Information
Patent Citations
Package Exchange and Service System Using a Key Fob Simulator
US20160098871A1