Jobber to Ads: offline conversion mapper

The hard part of reporting closed jobs back to your ad platforms is not the upload. It is that Google, Microsoft and Meta each track a different click id, and none of them can be added after the fact. This is a working reference of the whole loop: a paid invoice in Jobber, matched to the click that started the job, reported to each platform that can actually match it.

Reference tool. It builds the exact payloads each platform expects, using sample data. It is not connected to a live ad account and uploads nothing.

Pick a scenario

Used as the order id so a conversion is never counted twice.
Captured at form submit into a Jobber client custom field.
Bing keys off this, not the gclid.
Meta composes its fbc value from this plus the click time.

In: the Jobber record

Client
Lead created
Invoice
StatusPAID
amounts.total
Paid at
client.customFields (captured click ids)

The rule

Report the paid value to each ad platform whose click id was captured at intake, and to no others. A job that came from a Google ad carries a gclid only, so it reports to Google only. A click id cannot be recovered later, so the ones you did not capture at the form are gone for good.

  1. A Fillout form submit creates the Jobber client and stores whatever click ids the URL carried (gclid, msclkid, fbclid) in client custom fields, not tags.
  2. The invoice is marked paid. That event triggers the flow and carries the invoice total.
  3. Find the client to read back the stored click ids.
  4. For each platform with a matching click id, build its offline conversion and send the real revenue. Skip the rest, on purpose.

Out: what each platform receives

What a real setup gets right