Why your Just Eat menu prices differ from the ones you set

Restaurant chains on Just Eat have an unusually candid explanation available to them, published by Just Eat Takeaway itself. Its menu ingest API states that “our platform only checks if the menu structure is valid. However, a valid menu may still fail to publish on the corresponding delivery partner platform. Currently, this endpoint does not indicate whether the publish operation was successful”. A price push can therefore be accepted with a 202, be structurally perfect, and never reach the storefront, with no error raised anywhere.

Where do you change a Just Eat price?

Just Eat’s self-service tool is Menu Manager, inside the partner back office. Its knowledge centre introduces it plainly, saying “We’ve introduced a tool that provides a faster, simpler way to make changes to your menu. It’s called the Menu Manager”, and describing the scope as “From price changes to adding products and meal deals – you can do it all yourself with Menu Manager” (partnerinfo.just-eat.co.uk).

The documented path treats a price as two prices. An operator navigates to “Management” then “Menu/Items”, selects the item, taps “Edit”, and is told to “Enter your new sale price”. A second instruction follows: “To change the collection price select ‘Add collection price'”. Delivery and collection are independently priced on Just Eat, so an operator who updates only the sale price leaves the collection price untouched, and the customer who switches fulfilment method sees the older figure with nothing flagged.

Why does saving a Just Eat price not publish it?

Because saving and publishing are separate, and Just Eat words the instruction as a caution rather than a step. Its guidance says to tap “Save” once you are done with an item, and then “Only tap ‘Publish’ once you’ve made all desired changes to your menu” (partnerinfo.just-eat.co.uk). The advice is sensible, because publishing pushes the whole menu, but it also means a session interrupted before the final publish leaves every saved price invisible to customers.

Whole-menu replacement is a different route with a different pace and no self-service at all. Just Eat asks partners to “Upload your new menu as a PDF, JPEG, PNG, DOCX, XLS or XLSX file (with a maximum size of 20MB)”, to add a note with the request, and then says “Once done, click ‘Publish’ and we’ll make your menu changes as soon as we can”. That is a human queue with no stated turnaround, and the same page limits the option to partners who are not integrated.

What does the Just Eat menu API not tell you?

This is the platform’s defining characteristic for anyone chasing a price mismatch. The JET Connect menu ingest endpoint returns a 202 and states that “The new menu should appear on the delivery partner website (e.g. Just Eat, Skip The Dishes, Takeaway) website automatically within less than 5 minutes”, the doubled word being in the original. It then adds the caveat quoted above, that a structurally valid menu may still fail to publish and that the endpoint will not say so (JET Connect OpenAPI specification).

Just Eat does offer an asynchronous callback carrying a boolean ingestion_succeeded, described as indicating “whether the menu has been successfully accepted by the delivery partner”, with an error object whose code is constrained to ERROR_UNKNOWN, CONNECTION_FAILED, INVALID_FORMAT or INVALID_CONFIGURATION. Acceptance is not publication, and none of those four codes identify an item. On the availability endpoint Just Eat is explicit that better reporting is future work, listing as “Coming soon: more detailed error messages, including whether the operation failed when attempting to publish your update to the delivery partner”.

What unit does a Just Eat price use?

Minor units, as an integer, and the spec says so on each object separately. The item schema documents price as “The price in cents of the base item. When swap modifiers are present, this price could be 0”, and the portion schema repeats it as “The price in cents of the base portion. When swap modifiers are present, this price could be 0”, typed as int32 with the example value 2490 (JET Connect OpenAPI specification).

The clause about swap modifiers is the one to read twice. A zero price on Just Eat is legitimate rather than an error, because an item whose price is carried by its modifiers is expected to sit at zero. That removes the most obvious sanity check available to an integration, since a zero cannot be treated as a fault. Portions carry their own plu, out_of_stock, tax_percentage and deposit fields alongside the price, so a single dish with three sizes is three independently priced records that can drift apart.

Why do sites in one Just Eat estate end up on different prices?

Because the routes available to a site depend on how that site is set up, and a single brand can have sites on more than one route. Just Eat restricts the whole-menu upload option with the line “This option is only available for Partners who are not integrated with 10 or less sites”, quoted as written on its own page (partnerinfo.just-eat.co.uk). Integrated sites are excluded from that route and take their menu from the POS instead.

The API side confirms that a chain is handled restaurant by restaurant rather than as one unit. JET Connect notes that although one callback address serves a collection of menus, “As a single address is defined for a collection of menus which may be associated with multiple restaurants, a separate request will be made to the address for each restaurant” (JET Connect OpenAPI specification). Each restaurant therefore has its own outcome, and a chain wide price change is a set of independent results rather than a single one that either worked or did not.

How does Just Eat mark an item as unavailable?

Through a dedicated availability call with a two value state. The endpoint takes an event constrained to AVAILABLE or UNAVAILABLE, a list of itemReferences described as “The POS Item IDs to be made available or unavailable”, and an optional nextAvailableAt, documented as the time “when the item becomes available again” and applicable “only for UNAVAILABLE event type” (JET Connect OpenAPI specification). Just Eat states the item should reflect the change “within less than 5 minutes”.

On the Orderpad tablet the same idea has a plainer name and one important behaviour attached. The section is headed “Take items off menu”, and the guidance ends with “Offline items will be automatically set back online the next day” (partnerinfo.just-eat.co.uk). That automatic restoration is the opposite of DoorDash, where an item stays suspended until someone reactivates it, and it means an item taken off for a genuine supply problem returns on its own, at its old price, without anyone deciding it should.

What should a Just Eat operator check first when the app price is wrong?

Confirm the menu was published rather than saved, because Just Eat’s own instructions treat publishing as a deliberate final action rather than an automatic consequence of saving. Check the collection price separately from the sale price, since the two are set independently. If the menu comes from a POS through JET Connect, do not treat the 202 as confirmation, and read the callback’s ingestion_succeeded instead, remembering that even that reports acceptance rather than publication.

That last gap is the reason this platform in particular rewards checking the customer-facing listing. Just Eat tells integrators outright that its endpoint cannot yet confirm a publish. The storefront is therefore not merely the best available evidence, it is the only evidence the platform currently offers. Reading it branch by branch each day against the brand’s price book is what Kitchain (kitchain.co) does. Ownership, markets and the wider set of Just Eat signals are covered on the Kitchain Just Eat page.

Start Monitoring



    No credit card. No integrations.
    We'll configure your first location and confirm within 24h.
    Request a Demo

    Book a personalized walkthrough of Kitchain Products.



      We'll get back to you within 24 hours.