> ## Documentation Index
> Fetch the complete documentation index at: https://docs.eat-now.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Meta Conversions API

> Generate the Conversions API token in Meta and paste it into EatNow to send bookings and the settled bill to Meta.

The Meta Pixel measures what happens in the guest's browser. The **Conversions
API** completes it: EatNow also sends events to Meta from its servers. Meta
requires an **access token** for this, which you generate in your Meta account
and paste into EatNow.

## What the token adds

The token only concerns guests who **came from Meta**: those who clicked a
Facebook or Instagram ad, or a Facebook or Instagram link, before booking on
your portal. It is the source you see in
[source tracking](/marketing/source-tracking). EatNow never sends your other
guests' data to Meta.

For these guests:

* **The real value of the visit.** Once the guest came, EatNow sends Meta a
  `Purchase` event with the real price: the bill reported by your till (NowOS,
  Lightspeed) or a partner, or else the price of the booked products (menu,
  experience, activity, extras), paid online or at the venue. The guest left
  the portal long ago: without the token, Meta cannot receive this. Your
  campaigns can then learn to bring in the guests who spend the most.
* **Bookings counted more reliably.** The `Schedule` event goes out from both
  the browser and EatNow's servers. Meta recognizes the two copies by a shared
  id and counts the booking once. A booking made with an ad blocker is still
  measured.

<Note>
  Only a till and a product give a real price. A deposit or a card hold is only a
  guarantee: a table with neither a till nor a product sends no `Purchase`.
</Note>

<Note>
  The pixel itself works as on any website: it measures every portal visit in the
  browser, whatever its source.
</Note>

## Before you start

* The **Meta Pixel** is already connected in EatNow (see
  [Measure the portal journey](/integrations/tracking)).
* You have access to Meta's **Events Manager** with **developer rights** on the
  Business account. Without them, Meta hides the link that generates the token.
  If an agency runs your ads, it often holds these rights: send it this page.

<Warning>
  You are the controller of this processing: you decide to send Meta the data of
  your guests who came from Meta. The EatNow portal's privacy policy describes it
  (section 6.10), but it is up to you to check that this sending complies with
  the regulation that applies to your establishment, notably on consent to
  advertising cookies.
</Warning>

## Generate the token and paste it into EatNow

<Steps>
  <Step title="Open the pixel in Events Manager">
    In Meta's [Events Manager](https://business.facebook.com/events_manager2),
    choose the pixel whose ID is saved in EatNow.
  </Step>

  <Step title="Generate the token">
    Open the **Settings** tab. In the **Conversions API** section, under
    **Set up manually**, click **Generate access token** and follow the
    instructions in the window that opens. Copy the token.
  </Step>

  <Step title="Finish the setup on Meta's side">
    In the **Overview** tab, click **Manage integrations**, then **Manage** next
    to **Conversions API**. Meta then creates the app and the system user that
    hold the token. There is no permission to request.
  </Step>

  <Step title="Paste the token into EatNow">
    Under **Settings → Integrations → General**, on the **Meta Pixel** card,
    click **Edit**. Paste the token into **Conversions API token** and click
    **Update**.

    EatNow never shows the token again. To replace it, paste a new one. To stop
    the Conversions API, click **Remove the token**.
  </Step>
</Steps>

These steps follow Meta's documentation, [Get started with the Conversions
API](https://developers.facebook.com/docs/marketing-api/conversions-api/get-started).
Meta changes its interface over time: if a label differs, that page is the
reference.

## Check that it works

On the **Meta Pixel** card, a line shows the Conversions API status:

* **Active, last sent… ago**: Meta accepts the events.
* **Active, no event sent yet**: the token is saved, the first event goes out
  with the next booking on the portal.
* **Meta refused the last call**: Meta's message is shown. The usual cause is a
  token that was revoked, copied incompletely or generated for another pixel.
  Generate a new one and paste it.

On Meta's side, events received from the server appear in the pixel's
**Overview** tab, under **Conversions API**.

## FAQ

**Will bookings count twice?** No. The browser and the server send the same
event id, and Meta keeps one copy.

**When does the `Purchase` go out?** Within fifteen minutes of the guest's
visit:

* **Table**: once the guest is seated or the table is closed. If a till is
  linked to the booking, once the table is closed, to get the final bill. When
  there is a till bill, it is the one that counts: it already includes the
  products.
* **Activity**: once the guest is marked as showed up, or three hours after a
  confirmed activity started. This delay leaves you time to mark a no-show.

A bill reported late still goes out up to six days after the booking.

**Which guests are sent to Meta?** Only those who came from Meta: a click on a
Facebook or Instagram ad (Meta adds a click id to its ad links), or a link whose
source is `facebook` or `instagram`. A guest who came from Google, another site,
by phone or through a partner is never sent to Meta by the server. For a link on
your Instagram profile or Facebook page to be recognized, add
`utm_source=instagram` or `utm_source=facebook` to it.

**Is the `Purchase` corrected afterwards?** No. It goes out once, with the amount
known at that moment. A refund, a cancellation or an extra added later does not
change what Meta received. An activity booking counts one `Purchase` per
attended activity.

**Does the browser also send a `Purchase`?** No. An online payment at booking
is often a deposit or a card hold, not the price of the visit. The `Purchase`
only goes out from the server, with the token.

**I can't find the "Generate access token" button.** It only shows with
developer rights on the Business account. Ask your Meta account's administrator
for them, or hand this step to your agency. Your Meta account setup is Meta's
domain: if you are stuck, see [Meta's help center](https://www.facebook.com/business/help).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.