logo
Menu

Enhancing Curbside Pickup with Amazon Location Service’s Enhanced Location Integrity features

Reduce wait times, increase efficiency, and reduce fraud with Enhanced Location Integrity features from Amazon Location Service.

Zach Elliott
Amazon Employee
Published Jun 6, 2024
Zach Elliott Sr Location Specialist SA
Anand Vijayan Sr Product Manager
In today's retail landscape, curbside pickup has emerged as a crucial service, merging the convenience of online shopping with the immediacy of physical store transactions. This service not only caters to the need for a quick and easy shopping experience but also adheres to health and safety standards, which have become increasingly important to consumers. To enhance the effectiveness of curbside pickup, retailers are increasingly turning to location services technology. Location services utilize GPS and other geolocation technologies to pinpoint the exact location of a customer when they arrive at the store to pick up their order. This enables store employees to be alerted in real-time when a customer is near or has arrived at the pickup location, ensuring that orders are ready and handed off smoothly without significant wait times. This system minimizes errors and confusion, such as delivering orders to the wrong vehicle, and enhances customer satisfaction by reducing the time customers spend waiting.
However, the integration of location services into curbside pickup is not without challenges. Ensuring data security and addressing privacy concerns transparently is crucial for gaining customer trust. Additionally, the accuracy of location services can be affected by factors such as poor GPS signals or the specific geographic layout of the store's parking area, which can lead to inefficiencies and delays.
With the new Enhanced Location Integrity features from Amazon Location Service, retailers can set precise boundaries for their store locations and anticipate customer arrivals to offer timely service. This feature enables retailers to accurately determine a user's location with high confidence and identify if a location is fraudulent, helping to avoid false positives and prevent location-based fraud.

What is Amazon Location Service and Enhanced Location Integrity?

Amazon Location Service is an AWS geolocation service offering maps, places (search for points of interest and addresses), and routes. Amazon Location Service recently launched enhanced location integrity features that help customers use precise location data to confidently determine a user's whereabouts. This launch includes three main components: First, a geofencing API called ForecastGeofenceEvents (FGE), designed to predict a user's movements in or out of geofences within a set radius, and help customers determine if a user is within a geofence boundary. Second, a tracking API called VerifyDevicePosition (VDP), which helps customers assess user or device location through their IP address, WiFi, and cellular information. Third, a tracking client SDK that helps customers verify the authenticity of a user's reported location, including tests to identify if their location has been spoofed. To achieve greater precision in representing complex administrative boundaries such as US states with geofence boundaries, customers can now define complex geofences with support for up to 100000 vertices, enabling high precision and accuracy. These features are specifically designed to meet customer needs for precise and secure location verification and integrity. For more details on these new APIs, start here.

Curbside pickup workflow with Enhanced Location Integrity

Retailers can optimize their curbside pickup workflow, by leveraging the new functionality from Amazon Location Service. Specfically, they can anticipate user movement into our out of curbside locations by using the ForecastGeofenceEvents (FGE) API and determine the legitimacy of the user’s location by using the VerifyDevicePosition (VDP) API and SDK.
By optimizing the curbside pickup workflow, retail customers can:
Reduce Wait Times: Customers receive their orders without unnecessary delays, enhancing their overall shopping experience.
Increase Efficiency: Customers can optimize staff workflows, ensuring orders are prepared in alignment with customer arrivals.
Prevent Fraud: The ability to verify real versus spoofed locations adds a layer of security, essential for maintaining trust in the service.
Here is a sample architecture that shows how Amazon Location Service can be used in conjunction with services like Amazon Eventbridge, AWS Lambda, and Amazon SQS to build an end to end workflow for retail optimization.
Architecture Diagram
Architecture Diagram
Here are the steps we will take to set this up:
Geofence Setup: We will setup geofences around the store and a smaller geofence around the specific curbside pickup location within the store premises. Geofences can be represented either as polygons, OR as circles. For the Store Geofence, we will use a polygon to represent precise boundaries. With the ability to support up to 100,000 vertices, these geofences can precisely map out complex areas, ensuring accurate detection of customer proximity. For the curbside pickup area, we will create a circular geofence, where we pick a point and a radius around it.
We will use geojson.io to create the geometries for two polygons, and then use the AWS CLI to insert them into our Geofence Collection. The instructions below are generic for the purposes of this demo, and will need to be modified to fit your Geofence Collection and location geometry.
For the curbside pickup area, we define a small rectangle in the parking lot
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
aws location put-geofence --collection-name <YourGeofenceCollection> \
--geofence-id BuyAnythingStoreCurbside \
--geometry 'Polygon=[
[
[
-94.57517281844146,
39.18340677065038
],
[
-94.57517281844146,
39.18323776840842
],
[
-94.57447233497375,
39.18323776840842
],
[
-94.57447233497375,
39.18340677065038
],
[
-94.57517281844146,
39.18340677065038
]
]
]'
For the overall store, area, we create a precise geofence generated as a polygon, factoring in all the boundaries of the store
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
aws location put-geofence --collection-name <YourGeofenceCollection> \
--geofence-id BuyAnythingStoreCurbside \
--geometry 'Polygon=[
[
[
-94.57313688091345,
39.18386502535111
],
[
-94.57440450627361,
39.18386502535111
],
[
-94.57440450627361,
39.18232919772473
],
[
-94.57313688091345,
39.18232919772473
],
[
-94.57313688091345,
39.18386502535111
]
]
]'
We can now visualize the geofences on our demo map
Demo Map
Demo Map Showing Geofences
Geofence Evaluation : As a customer approaches the pickup location, the FGE API can be used to verify all the Geofences the user is within or nearby. With one FGE call, we can determine 1/If a user is in the store or pickup area 2/If they are not inside, how close they are 3/Other heuristics like proximity, where we can estimate how many minutes away they are, from a given geofence collection. In this example, we can pick a proximity threshold of 15minutes, where we can choose to trigger a workflow when customers are “Near” the store geofence, within a time horizon of 15minutes. In this image, we can see this particular location update is 4.551 kilometers from the store.
Current Position
Current Position Showing Geofence Proximity
If we take a look at the API Output for ForecastGeofenceEvents, we can see information about additional geofences, as well as the status of our location update, and what time we are expected to breach the geofence at our current speed and time horizon.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
{
"ForecastedEvents": [
{
"EventId": "8ac5f647-1d4c-4014-47b7-dda9057deba0",
"GeofenceId": "BuyAnythingStore",
"IsDeviceInGeofence": false,
"NearestDistance": 5.75,
"EventType": "ENTER",
"ForecastedBreachTime": "2024-05-31T19:52:21.477Z"
},
{
"EventId": "8ac042e1-ee51-4022-678c-04a375997140",
"GeofenceId": "BuyAnythingStoreCurbside",
"IsDeviceInGeofence": false,
"NearestDistance": 5.789,
"EventType": "ENTER",
"ForecastedBreachTime": "2024-05-31T19:52:22.88Z"
}
],
"DistanceUnit": "Kilometers",
"SpeedUnit": "KilometersPerHour"
}
Once the user is inside a Geofence, we can see the output changes, showing that we are within the Curbside pickup area, and at our current speed when we are projected to leave.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
{
"ForecastedEvents": [
{
"EventId": "3012bdae-6aaf-4210-674e-d19d4475451e",
"GeofenceId": "BuyAnythingStore",
"IsDeviceInGeofence": false,
"NearestDistance": 0.029,
"EventType": "ENTER",
"ForecastedBreachTime": "2024-05-31T19:54:57.673Z"
},
{
"EventId": "9b22cdba-c74c-4f27-4748-85bb47d5acbe",
"GeofenceId": "BuyAnythingStoreCurbside",
"IsDeviceInGeofence": true,
"NearestDistance": 0.008,
"EventType": "EXIT",
"ForecastedBreachTime": "2024-05-31T19:54:56.916Z"
}
],
"DistanceUnit": "Kilometers",
"SpeedUnit": "KilometersPerHour"
}
Location Integrity: Once we validate that a user is within the vicinity we care about, we can evaluate the authenticity of their location by calling the VDP API. This API looks at the advertised device position, the inferred device position based on their IP address, Wifi and Cellular information, giving us confidence that a user is indeed within the advertised location and not spoofing their location fraudulently.
Operational Workflows: Based on the proximity and integrity insights provided by the FGE and VDP APIs, customers can configure Amazon EventBridge to initiate an automated workflow. This process encompasses actions such as sending notifications through Amazon Simple Notification Service (SNS) or logging the event for analytics. The inclusion of distance and estimated arrival time enables customers to fine-tune the timing of these actions, ensuring the preparation and execution of the curbside pickup align closely with the customer's arrival. The triggered workflow alerts store staff to prepare the order for handoff. By leveraging real-time data and analytics, retailers can optimize their processes, reducing wait times and ensuring that orders are ready as soon as the customer arrives.
Follow up: Optionally, customers can initiate other workflows when users leave a geofence. They can use the FGE API to determine if the user is no longer inside the store geofence and engage with them for loyalty points related information.

Total cost of ownership (TCO)

Let’s analyze the total cost of optimizing a curb-side pickup operation for a single user. As seen in the Amazon Location Service pricing page, the cost of the FGE API is $1.75 per 1000, VDP API is $1.00 per 1000. Geofence operations like create, and delete cost $0.05 per 1000 API calls.
  • Geofence Creation
    • For an operation like the above, let’s assume 1 geofence collection with 1 store location geofence and 1 curbside pickup location within the store. Since Geofence CRUDL operations are charged at $0.05 per 1000, the total cost of creating these geofences will be $0.0001
  • Forecasting Geofence Events
    • We will also assume that in the user’s journey, we will pick a defined time window (like 2 hours) within which we will verify their proximity. For example, if the user says their pickup window is between 9am and 11am, our workflow can start triggering when at 9AM.
    • For this use case, let's assume that the first check (FGE) at 9AM shows that the user is more than 30mins away from the store location. Based on this, the customer can choose to check every 5minutes to determine if the user has started moving towards the store. Let's also assume that the user started moving towards the store at 10AM, resulting in 12 FGE checks through the hour. So a total of 12 FGE calls will be made before the user starts moving to pickup the order.
    • After 12 FGE checks, the user is now within 15mins from the store location, at which state the customer triggers their operational workflow for pickup. A subsequent FGE shows that the user is 5kms from the store location, and is 3mins away.
    • A final FGE call will show that the user is within both geofences (store location and curbside area)
    • Let's also assume that we call FGE one more time when the user leaves the store
    • Total number of FGE calls : 14
    • Total cost of FGE : 14 * ($1.75/1000) = $0.0245
  • Location Integrity
    • At this stage, we then check for the user’s location integrity by making a call for VDP to determine if the user is actually inside/near the store location OR if the user may be incorrectly showing up as proximal to the store (or fraudulently advertising their location to be close to the store)
    • Total number of VDP calls : 1
    • Total cost of VDP : 1 * 1/1000 = $0.001
Given this, the total cost of this operation for one user is $0.0001 + $0.0245 + $0.001 = $0.0256.

Conclusion

As retail evolves, integrating technology like Enhanced Location Integrity is becoming essential for enhancing curbside pickup, a service pivotal to combining the efficiency of online shopping with the immediacy of in-store transactions. This feature facilitates accurate location tracking, ensuring that retailers can manage customer arrivals with heightened accuracy and efficiency, thus minimizing wait times and optimizing the customer experience. It also addresses critical challenges such as location-based fraud and privacy concerns, establishing a more secure and trustworthy service. By leveraging such technologies, retailers not only streamline their operations but also significantly boost customer satisfaction and loyalty in a competitive market.
 

Any opinions in this post are those of the individual author and may not reflect the opinions of AWS.

Comments