Batch feed errors

Batch ingestion of data feeds allows you to make restaurants, services, and menus available in Ordering End-to-End.

Google fetches your data feeds stored on the hosting platform and process them. After a successful ingestion, Ordering End-to-End provides information about status of ingestion, new files uploaded, total number of files, errors and warnings among other things.

This article goes into details for most of the batch feed errors in Actions Center, what they mean and how to fix them. The hyperlinks take you to the relational inventory schema page which provides more context such as accepted data type and examples on specific fields and entities.

Where are batch feed errors seen in Actions Center?

Data feeds let you make your restaurant, services, and menu available in Ordering End-to-End. To know more about hosting data feeds, visit the Batch ingestion article.

Once the feed files are uploaded, they are fetched and processed by Google. If there are any issues, they are displayed as errors. Here are steps to see Batch Feed errors in the Actions Center.

  1. On the main navigation panel on the Actions Center, go to Feeds > History section. Batch Feed Errors Ingestion
History

  2. Pick the environment (Production or Sandbox) and then click on the Ingestion history tab

  3. Enter a lookback window to see ingestion history for past X days

  4. To get more details on errors for a particular feed ingestion, click on the arrow (→)

  5. You can then see more details on errors and warnings Detailed Batch Feed
Errors

Here's a list of batch feed errors:

Error What it means How to fix
Missing Data - MenuItem Menu must have at least one MenuItem A Menu has been defined without any MenuItem Find the ID for erroneous Menu entity in the feed and add Menu items.
Incorrect Data - maxPrice Incorrect data for field maxPrice The value of the maxPrice field is incorrect Ensure that the value of the maxPrice field is greater than 0 for the entity ID mentioned in the error description
Incorrect Data - eligibleQuantityMax Incorrect data for field eligibleQuantityMax The value of the eligibleQuantityMax field is incorrect Ensure that the value of the eligibleQuantityMax field is greater than 0 for the entity ID mentioned.
Incorrect Data - leadTimeMax Incorrect data for field leadTimeMax The field leadTimeMax expects an integer value. Example, 12. It throws an error for any other data type, even double (15.0) For the Entity ID mentioned in the error message, check the value of the leadTimeMax property and ensure that it is an integer.
Incorrect Data - validFrom Incorrect data for field validFrom Value for the validFrom field expects an ISO timestamp format with type String. For the entity ID in the error message for validFrom field, ensure that the value is a timestamp string.

Example: "2022-01-02T00:00:00-07:00"
Missing Data - ServiceHours

OperationHour contains no nested ServiceHours
OperationHours entity has been defined but there isn't a valid ServiceHours entity corresponding to it. For the entity ID mentioned in the error message, check if there is a properly defined ServiceHours entity corresponding to it.

Example: if the error message is "Entity id: store-1:DELIVERY OperationHour contains no nested ServiceHours" and assuming that Entity ID of OperationHours entity is 'store-1:DELIVERY:operation_hours' - check if there's a serviceHours entity tied to 'store-1:DELIVERY' ServiceID and 'store-1:DELIVERY:operation_hours' OperationHoursID
Incorrect Data - advanceBookingRequirementMin Incorrect data for field advanceBookingRequirementMin The field advanceBookingRequirementMin expects an integer value. Example, 12.

It throws an error for any other data type, even double (15.0)
For the Entity ID mentioned in the error message, check the value of the advanceBookingRequirementMin property and ensure that it is an integer.
Incorrect Data - availabilityStarts Incorrect data for field availabilityStarts Value for the availabilityStarts field expects an ISO timestamp format with type String. For the entity ID in the error message for availabilityStarts field, ensure that the value is a timestamp string.

Example: "2022-01-02T00:00:00-07:00"
Incorrect Data - closes Incorrect data for field closes Value for the closes field expects an ISO timestamp format with type String. For the entity ID in the error message for the closes field, ensure that the value is a timestamp string.

Example: "2022-01-02T00:00:00-07:00"
Incorrect Data - dateModified Incorrect data for field dateModified Value for the dateModified field expects an ISO timestamp format with type String. For the entity ID in the error message for dateModified field, ensure that the value is a timestamp string.

Example: "2022-01-02T00:00:00-07:00"
Incorrect Data - discount Incorrect data for field discount discount field expects a numeric value For the entity ID in the error message for the discount field, ensure that the value is numerical.

Example: 10
Incorrect Data - discountPercentage Incorrect data for field discountPercentage discountPercentage field expects a numeric value For the entity ID in the error message for discountPercentage field, ensure that the value is numerical.

Example: 15
Incorrect Data - geoRadius Incorrect data for field geoRadius The field geoRadius expects a positive integer value. For the Entity ID mentioned in the error message, check the value of the geoRadius property and ensure that it is an integer.

Example: 10000
Incorrect Data - image Incorrect data for field image image field expects a valid URL and throws an error if it detects anything else. Check if the value of the image field is a valid URL string
Incorrect Data - latitude Incorrect data for field latitude The latitude field expects the type of value to be double For the entity ID of type Restaurant mentioned in the error description, ensure that the value of the latitude field is double.

Example: 35.4565
Incorrect Data - leadTimeMin Incorrect data for field leadTimeMin The field leadTimeMin expects an integer value. Example, 12.

It throws an error for any other data type, even double (15.0)
For the Entity ID mentioned in the error message, check the value of the leadTimeMin property and ensure that it is an integer.
Incorrect Data - longitude Incorrect data for field longitude The longitude field expects the type of value to be double For the entity ID of type Restaurant mentioned in the error description, ensure that the value of the longitude field is double.

Example: 35.4565
Incorrect Data - menuId Incorrect data for field menuId The value for the menuId field needs to be a non-empty String For the entity ID mentioned in the error description, ensure that the value is of type String and not empty
Incorrect Data - name Incorrect data for field name The value for the field name should be a non empty string Check if the value for the entity ID mentioned in the error message is a non empty string
Incorrect Data - nutrition.calories Incorrect data for field nutrition.calories The value for the calories field needs to be a string in the format "NN Cal" Ensure that for the entity ID in the error message, the value is a positive number in the correct format.

Example: "123.32 Cal"
Incorrect Data - opens Incorrect data for field opens Value for the opens field expects an ISO timestamp format with type String. For the entity ID in the error message for opens field, ensure that the value is a timestamp string.

Example: "2022-01-02T00:00:00-07:00"
Incorrect Data - price Incorrect data for field price price field expects a numeric value For the entity ID in the error message for price field, ensure that the value is numerical.

Example: 15.4
Incorrect Data - sku Incorrect data for field sku The value for the field sku should be a non empty string Check if the value for the entity ID mentioned in the error message is a non empty string
Incorrect Data - validFrom Incorrect data for field validFrom Value for the validFrom field expects an ISO timestamp format with type String. Also, value for validFrom should be less than or equal to validThrough For the entity ID mentioned in the error description, ensure that the value for the validFrom field is a timestamp string.

"2022-01-02T00:00:00-07:00"

Also, make sure that the value for validFrom is less than or equal to validThrough
Incorrect Data - validThrough Incorrect data for field validThrough Value for the validThrough field expects an ISO timestamp format with type String. Also, value for validThrough should be more than or equal to validFrom For the entity ID mentioned in the error description, ensure that the value for the validThrough field is a timestamp string.

"2022-01-02T00:00:00-07:00"

Also, make sure that the value for validThrough is more than or equal to validFrom
Incorrect Data - value Incorrect data for field value value field is only required when Optiontype is defined. It expects a String or an Enum value. Note that Enum values are specific to the PIZZA_SIDE option type. For the entityID mentioned in the error description, check if the value field has a non-empty string.
Menu is too large

Menu size exceeds the max limit
This error is thrown when the size of a menu file is more than what the system can accept. Each file, which can contain multiple entities, must not exceed 200 MB. The top-level entities Restaurant, Service, and Menu, along with their child entities, must not exceed 4 MB all together. Ensure that the size of the menu file is within the limit of what is specified in the documentation.
Missing Data - addressCountry Missing required field addressCountry in the input. addressCountry is a required field and is missing from the Restaurant entity For the entity id mentioned in the error description, check if the addressCountry field is a non empty string
Missing Data - addressLocality Missing required field addressLocality in the input. addressLocality is a required field and is missing from the Restaurant entity For the entity id mentioned in the error description, check if the addressLocality field is a non empty string
Missing Data - addressRegion Missing required field addressRegion in the input. addressRegion is a required field and is missing from the Restaurant entity For the entity id mentioned in the error description, check if the addressRegion field is a non empty string
Missing Data - Fee

Delivery/Takeout service does not have any delivery fees
Entity of type Fee does not have any price associated with it for the delivery/takeout service For the entity ID mentioned in the error description, ensure that the Fee entity is set properly for delivery/takeout ServiceType according to the directions here.
Missing Data - FeeValue One of price, pricePerMeter, percentageOfCart fields are required in the input. For the value of Fee, exactly one of price, pricePerMeter or percentageOfCart needs to be set. For the entity ID mentioned in the error description, ensure that exactly one of price, pricePerMeter or percentageOfCart is set.
Missing Data - geoMidpointLatitude Missing required field geoMidpointLatitude in the input. When defining ServiceArea, geoMidpointLatitude is required along with geoMidpointLongitude when geoRadius is used. For the entity ID mentioned in the error description, ensure that the value of the geoMidpointLatitude field is defined and is of the type double.

Example: 35.4565
Missing Data - geoMidpointLongitude geoMidpointLongitude in the input. When defining ServiceArea, geoMidpointLongitude is required along with geoMidpointLatitude when geoRadius is used. For the entity ID mentioned in the error description, ensure that the value of the geoMidpointLatitude field is defined and is of the type double.

Example: 122.4565
Missing Data - MenuItemOption

MenuItemOffer is required for MenuItemOption
For every MenuItemOption, there needs to be a corresponding MenuItemOffer entity Ensure that for all menu item ids in the error description, all MenuItemOption entities have a MenuItemOffer entity properly defined.
Missing Data - OperationHours

Service is missing operation hours
A Delivery/Takeout service entity is missing a corresponding OperationHours entity. OperationHours describes the ordering window in which users can access the flow and place ASAP or future orders. For the entity ID mentioned in the error description, ensure that an OperationHours entity is properly defined.
Missing Data - postalCode Missing required field postalCode in the input. postalCode is a required field and is missing from the Restaurant entity For the entity id mentioned in the error description, check if the postalCode field is a non empty string
Missing Data - priceCurrency Missing required field priceCurrency in the input. The priceCurrency field is either empty or contains an inaccurate value. It expects a 3-letter ISO 4217 currency code. For the entity ID described in the error description, ensure that the priceCurrency field is a non empty String with 3-letter ISO 4217 currency code.

Example: USD, EUR
Missing Data - ServiceArea

Delivery service does not have delivery service areas
ServiceArea entity is required to be implemented if the associated Service entity has serviceType set to "DELIVERY" Ensure that for the Service entity ID mentioned in the error message, there is a properly defined ServiceArea entity
Missing Data - streetAddress Missing required field streetAddress in the input. streetAddress is a required field and is missing from the Restaurant entity Find the Restaurant entity by the ID mentioned in the error description, check if the streetAddress field is a non empty string
Stale Entity During data feed ingestion, Ordering End-to-End compares the modified date timestamp of each incoming entity with the timestamps of previously ingested entities. Unless the entity in the data feeds is newer, the incoming entity is marked as stale. For all entity IDs mentioned in the error description, Google must ensure that the timestamp in the data feed is newer than the timestamp set in prior entity updates sent to Google. You can refer to entity versioning for further clarification.