Skip to content
Google Sheets and Shoper

Sales from outside your forms go back to Meta too

Reception logs visits in a sheet, the shop takes orders. Convs turns a new status or a paid order into an event for Meta, so your campaigns learn from sales, not just clicks.

A flow: a sheet status turned into a Meta event

Screenshots from a demo organisation. People and numbers are fictional.

What you see in the app

A status in a sheet, an order in a shop, an event in Meta

Reception changes a status, the shop takes a payment, and the rest happens on its own. This is how it looks on the way.

A sheet row becomes an event

A new status in a row is one conversion, and the same status of the same row never goes twice. The sheet is read about once a minute.

The flow says what and how

You choose which status goes to Meta and under what event name. Statuses without an event stay in the sheet.

A paid order from the shop

The shop’s server sends a paid order with the source’s private token. Meta gets a purchase with its value, currency and product IDs.

Every send on the Events list

You see what is queued, what is being retried and what Meta accepted. Acceptance confirms receipt, not attribution to an ad.

Example data

Three ways to Meta

Pick the one your sales already flow through. Each ends in the same queue to Meta, with the same deduplication.

API documentation
  • Google Sheet

    no developer

    Reception or sales type statuses into a spreadsheet.

    • Connect a Google account and pick the file; the app reads only that file
    • Turn a row’s status into an event in a flow
    • Read about every minute, up to 500 rows at a time
  • Shoper shop

    Orders paid in an online shop.

    • The shop’s server sends a paid order with the source’s private token
    • The browser script runs only after consent and helps tie the order to an ad
    • A purchase with value and currency, up to 100 product IDs
  • Public API

    from Growth

    Sales live in another system, such as your own CRM.

    • Send conversions to a sheet or shop source
    • Webhooks for new people, stage changes, new leads and failed sends to Meta
    • Create API keys with chosen scopes in the app

A Google Sheet as a source

Connect a Google account and pick the file in Google’s file picker. The app sees only the files you choose, and only reads them. Then choose the tab and the header row and say which column means what.

  • Columns: row ID, status, status time, consent and at least one of email, phone or Meta lead ID
  • Optional value and currency, for example for a purchase
  • Read about every minute, up to 500 rows per pass
  • An error names the first rejected row number, never customer data
Connected sources: a sheet, a shop and Meta forms

Turn a status into an event

A flow says which status goes to Meta and under what name. This is how it looks in the example clinic. Every new status of a row is one conversion, and one source can send to several Meta datasets.

Status in the sheetEvent to MetaWhat goes with it
Appointment bookedScheduleHashed email and phone, the status time in the sheet’s time zone
Package purchasedPurchaseThe same plus value and currency

A row’s way to Meta

Nothing lost, nothing sent twice: the same row with the same status, or the same order, is always one event, also after the sheet is read again.

How sending to Meta works
  1. 1

    A new status

    Someone changes a status in the sheet, or the shop’s server reports a paid order.

  2. 2

    Read

    The sheet is read about every minute; an error names the row number, never customer data.

  3. 3

    Flow

    The status gets an event name, and email and phone are normalised and hashed with SHA-256.

  4. 4

    Durable queue

    The event waits until Meta accepts it; passing errors are retried with the same ID.

  5. 5

    Result in Events

    Every send’s result shows in the Events list. Meta accepts events no older than 7 days.

For Shoper we have a ready script for the shop and an address the shop’s server posts the paid order to. We do not yet have a ready plug-in that reads orders from Shoper’s API by itself, so that step has to be fitted to your shop. A Google Sheet connects entirely from the app.

Google Sheets and Shoper

Frequently asked questions

Can’t find your question? Write to us

Yes. The sheet needs a row ID, a status, the status time, consent and an email, phone or Meta lead ID. Every new status the flow turns into an event goes to Meta as a conversion.

Only the ones you pick in Google’s file picker, and only to read them. We do not see the rest of your Drive and change nothing in the sheet.

The same row with the same status is one conversion, forever. Only a new status that the flow maps to an event sends another one.

Yes. Until your consent tool calls it, it stores nothing and sends nothing. The order itself is confirmed by the shop’s server, and the consent field on the order says whether you have a legal basis to pass it to Meta.

Yes. The plan limit covers new leads and orders in a month across all sources: the first event of each sheet row and each order counts once.

Get started in under 5 minutes

Connect your Meta account and see which forms send good data and which need fixing.

  • Free up to 100 leads a month
  • No developer needed
  • Automatic connection checks