Partners API

The Partner API is the name given to two APIs that enable vendors to self-manage and automate the order transmission & item-management process, thereby allowing for a smoother and more reactive purchase experience for end users.

The two elements of the Partner API are as follows:

  • Order API - which governs the POS integration between our vendor partners & Delivery Hero, & allows our partners to receive and manage incoming orders.
  • Stock & Price API - which allows partners to manage individual (or bulk) purchasable items (amending features such as price and availability) which have been added to the shop.
  • Through this integration, we offer the possibility to update at store address level the product prices and availability, among other properties, by pushing an API request to one of our endpoints.

    There are two endpoints where you can push a product update:

    1. Bulk update items (POST): you can update a batch of products and/or attributes. This is the preferred option, and you can push as many updates as needed during the day. You can also check the status of the batch update by making a GET request to our endpoint Verify bulk update items status.
    2. Modify product (PATCH): you can update a single product. There is a limitation on the amount of  120 calls per minute per store, so we recommend using the Bulk endpoint if you want to update more than one product at the same time. This endpoint is used when you want to integrate live product update changes.

    Integration process

    Standard products update API integration consists of the following steps:

    1. We will create one store in the test environment so you can start developing the API request automatization. Stage Webhook credentials (token) will be provided.
    2. You will also be requested to share your menu/assortment using this template. The menu needs to be uploaded upfront in our stage environment for you to test the endpoint.
    3. Once everything is working well in the test environment, we will create all the stores in Glovo (prod). In order to do that, we will need you to provide the store_id you use to identify each store in your systems (external_id). 
    4. We will share the Productive Webhook credential (token) and we will connect one of the stores for you to test in production. All the stores use the same token.
    5. If all goes well, the rest of the stores will be activated and you will be fully integrated with Glovo!
    6. The first price and stock update must be pushed before going live.

    Note that URLs in Stage environment and URL's in Prod are slightly different:

    • Test: https://stageapi.glovoapp.com/webhook/stores/YOUR-STORE-ID/menu/updates
    • Prod: https://api.glovoapp.com/webhook/stores/YOUR-STORE-ID/menu/updates

    WARNING: when a new menu/assortment is uploaded ALL products within all the Store Addresses are set as available. Each time a new menu is uploaded in Glovo, the update process needs to be replicated immediately.
    WARNING: Product ID must be exactly the same as the product ID in the catalogue. Please check that there’re no extra zeros.

    Minimum suggested tests

    We suggest running as many tests as you need, both in stage and productive environments, including the following:

    • Disable products
    • Enable products
    • Change the price of products
    • Enable, disable and change the price of products in the same API request
    • Enable / disable attributes (if any)
    • Change price of the attributes (if any)
    • Send an API request with a wrong token or store id → check the response
    • Send an API request with a wrong body schema → check the response
  • Through this integration, we offer the possibility to receive orders directly in your systems and to handle them by updating its content and status. This is typically used when integrating with your own picking device.

    There are four endpoints that you’ll need to use in order to have full visibility of the Orders:

    1. Order creation: Format in which you’ll receive Glovo orders notifications
    2. Order cancellation: Format in which you’ll receive order cancellations notifications
    3. Order status update: Through this endpoint, you’ll need to send status updates as the order preparation is done. When the picker starts the picking process, the status to be sent is ACCEPTED and when the picker finishes the order preparation, the status to be sent is READY_FOR_PICKUP.
    4. Order modification: When the order preparation is finished, if there were any modifications (products replaced, added or deleted), you should send the update through this endpoint, before changing the status to READY_FOR_PICKUP.

    Integration process

    Standard API order integration consists of the following steps:

    1. You’ll need to provide us with the URLs for the endpoints you’ll use while testing. To be mentioned:
      undefinedundefined
    2. Once we’ve got the URLs, we will create one store in the staging (test) environment so you can start developing the API request automatization. Stage Webhook credentials (token) will be provided to you as well.
    3. Depending on the type of catalog integration you have, you might be requested to share your menu/assortment using this template. The menu needs to be uploaded upfront in our stage environment for you to test the endpoints.
    4. You’ll be able to create orders from the store provided in our stage webapp, therefore testing the endpoints. Make sure you test all possibilities:
      undefinedundefinedundefinedundefinedundefinedundefinedundefinedundefined
    5. Once everything is working well in the test environment, we’ll need the production URLs to create the new webhook credentials (token) in our prod system. To be mentioned:
      undefinedundefinedundefined
    6. After creating the new webhook token for the production environment, we’ll need to connect your stores in Glovo (prod). In order to do that, we will need you to provide the store_id you use to identify each store in your systems (external_id). If you already have your catalog or stock updates integrated, this step won’t be necessary.
    7. We will share the Productive Webhook credential (token) and we will connect one of the stores for you to test in production. All the stores use the same token.
    8. If all goes well, the rest of the stores will be activated and you will be fully integrated with Glovo!

    Note that URLs in Stage environment and URL's in Prod are slightly different. For example:

    • Test: https://stageapi.glovoapp.com/webhook/stores/YOUR-STORE-ID/orders/ORDER-ID/replace_products
    • Production: https://api.glovoapp.com/webhook/stores/YOUR-STORE-ID/orders/ORDER-ID/replace_products

    Integration validation

    The integration will be accepted in Glovo only if all the steps mentioned in point 4 of the integration process are accomplished. This means:

    1. The partner receives order notifications correctly.
    2. The partner receives order cancellations correctly.
    3. The partner sends the ACCEPTED status before starting the preparation of the order.
    4. The partner sends the ORDER MODIFICATION with all changes made during the picking process. This includes:
      undefinedundefinedundefinedundefinedundefined
    5. The partner sends the READY_FOR_PICKUP status after finalizing the order preparation and sending the ORDER NOTIFICATION callback.

    These validations will need to be approved by Glovo’s integration team.