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.
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.

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
]
]
]'
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
]
]
]'


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"
}
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"
}
- 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
Any opinions in this post are those of the individual author and may not reflect the opinions of AWS.