Integration using SFTP

SFTP (Secure File Transfer Protocol) is a network protocol that enables the access, transfer & management of data in a secure manner between a user/client & a target SFTP server. Designed to be compliant with international regulatory standards such as GDPR, files are uploaded & stored on an SFTP server; data is then available to access via several authentication methods (i.e. public key or username/password). Following access, any data is able to be retrieved in a downloadable format.

Within the context of Glovo, partners have a requirement to transmit updates to their item catalog at regular intervals (e.g. price, stock availability); this is needed by the partner in order to ensure that:

- Items that are out of stock are not listed as available on our platform

- Items have the correct price at all times

Integration process

Standard integration through SFTP server consists of the following steps:

  1. SFTP directory credentials will be provided to the partner in order to test the connection.
  2. Partner develops the first draft of the csv file as specified below, and tests sending it to the SFTP server. Please let your AM know once you’ve left the first draft for tests.
  3. Partner develops the menu spreadsheet with the following template and sends it to Glovo through email. Partner will also provide the External ID (Store_ID in the csv file) used internally to identify the different Store Addresses.
  4. Store will be created with the menu provided by the Partner, and one Store Address will be configured to start testing the integration.
  5. If all goes well, the rest of the stores will be configured.
  6. First price and stock update must be pushed before going live.

WARNING: when the menu 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. We recommend pushing new menus at the end of the day, when the store is already closed.

File specifications

  • File type: CSV 
  • Text delimiter: “,” (comma)
  • Decimal sign: “.” (fullstop)
  • File name: <brand_name>_stock_YYYYMMDD_HHMM_<file number>. There can’t be two files with the same name, as they will be overwritten.
  • Headers: All 4 headers are mandatory {store_id, product_id, price, stock}, even if data is left blank. Please note that all headers must be in lowercases.
  • Number of records per store: < 10,000 records per store (if bigger, it must be split into smaller files)
  • Frequency: Minimum of one daily update (we recommend as many updates as possible - hourly, every 4 hours,...)

Columns:

  • store_id: Unique identifier of the store address
  • product_id: Unique identifier of the product. Warning: Product_id should match product_id in the catalogue.
  • price: Optional. Format must be "123.56" (no thousand separator). If not specified, price won't be changed. Value can't be null and must be greater that 0.
  • stock: Optional. If not specified, stock won't be changed. Value may not be null.