Implement pickup with an integrated shopper experience
Learn how to implement a basic pickup workflow that supports having an in-store shopper who uses the Instacart Shopper app. You can try out this tutorial in your development environment.
While this tutorial shows you how to create an order, the order you create is sent to a development version of the Fulfillment engine. The order is not batched for fulfillment.
To support your development efforts, this tutorial also includes tips to consider when you implement the workflow in a production environment.
- Before you begin
- Find store locations near the customer
- Create a Connect user account
- Fill a cart
- Understand changes required in the checkout process
- Reserve a time slot for pickup
- Create a pickup order
- What happens to an order in a production environment?
- Summary
Before you begin
For this tutorial, you need the following items:
- A generated access token
- The base URL of your assigned Instacart development server
- Store locations defined in your development environment
- Catalog items defined in your development environment
- A light-weight Powered By Instacart page
If store locations, catalog items, or the Powered By Instacart page are not yet in your development environment, contact your Instacart representative.
Variables used in this tutorial
The following variables are used in requests in this tutorial. When you see a variable, substitute them with values that work in your development environment.
Variable | Description |
---|---|
<instacart_development_domain> | The domain of your assigned Instacart development server. |
<token> | The generated access token. |
<item_upc> | The UPC number of an item in your development store that you can add to a cart. You'll need this value when you list time slots and create the order. |
<location_code> | After you find stores, select one to use in this tutorial. You'll need this value when you reserve a time slot and create the order. |
<service_option_id> | After you find available time slots, select one to use in this tutorial. You'll need this value when you reserve a time slot. |
<service_option_hold_id> | After you reserve the time slot, note the ID. You'll need this value when you create the order. |
The responses in this tutorial show sample values in place of the variables. The responses that are returned in your environment should have a similar format to the example responses. If you are interested in other possible responses including errors, see the API documentation.