FlowRunner
PricingContact
Theme
Start Free

Facebook Conversions API

Advertising

Send server-side conversion events to the Meta Conversions API. Agents track purchases, leads, and any standard or custom funnel event, batch historical conversions, and deduplicate against browser Pixel events, with customer data automatically SHA-256 hashed to Meta's rules.

4 actions API key available
A checkout completes in the storefront and the payment settles
The agent assembles the event: order value, currency, content IDs, order ID, and the customer identifiers
The event_id is set to match the browser Pixel's event so Meta deduplicates the pair
Track Purchase sends the server-side event, with email and phone SHA-256 hashed to Meta's normalization rules inside FlowRunner
The agent logs Meta's response and watches the running event count against the day's actual orders
When server events and store orders diverge beyond tolerance, the growth lead reviews before the feed keeps teaching Meta from wrong data
The daily attribution health summary posts: events sent, dedup matches, discrepancies

What This Integration Enables

Ad optimization is only as good as the conversion data feeding it, and browser-side tracking loses more of that data every year. Every blocked Pixel event is a purchase the algorithm never learned from and a dollar of budget optimized against a partial picture. The Conversions API moves the reporting to where the truth lives, your order system, your CRM, your payment processor, and this connector makes sending those events a FlowRunner workflow step, with PII hashing handled automatically on the single-event actions before anything leaves the platform. - Attribute revenue with server-side Purchase events fired from the actual completed checkout - Capture form submissions and quote requests as Lead events, with optional value for value-based optimization - Send any standard or custom funnel event server-side: PageView, ViewContent, AddToCart, InitiateCheckout - Pair browser Pixel events with deduplicated server events via matching event_id for better match quality without double counting - Backfill or replay historical conversions in bulk, up to 1000 pre-hashed events per call The hashing rules deserve the emphasis. On the single-event actions, email, phone, name, and external ID are normalized and SHA-256 hashed inside FlowRunner before the request leaves, and values already shaped like a 64-character hash pass through untouched. Only Meta's designated matching signals, IP, user agent, and the Pixel cookies, travel unhashed, per the spec. The batch path deliberately skips automatic hashing, which is exactly the kind of sharp edge FlowRunner's [human-in-the-loop](/concepts/human-in-the-loop) gate exists to stand in front of.

Without FlowRunner

Attribution decays with the browser Cookie restrictions and ad blockers eat Pixel events, and Meta optimizes on a shrinking sample
Conversions reported by hope Whether the Purchase event actually fired depends on the customer's browser settings
Backfills are a science project Replaying missed conversions means hand-building hashed payloads against Meta's schema

With FlowRunner

The server reports every conversion Purchases and leads flow from systems of record, immune to what the browser blocks
Pixel and server deduplicate cleanly Matching event_id on both sides means better match quality without double counting
Backfills are a gated batch job Up to 1000 pre-hashed events per call, staged and reviewed before they touch the dataset

Use Case Scenarios

Every order becomes a server-side Purchase

A [Shopify](/integrations/shopify) order confirms. The agent calls Track Purchase with value, currency, content IDs, and the order ID, setting event_id to the same value the storefront Pixel used so Meta deduplicates rather than double counts. The customer's email and phone are hashed inside FlowRunner before anything leaves. Attribution stops depending on the buyer's browser, and purchase-optimized delivery trains on complete data. When the payment settles through [Stripe](/integrations/stripe) instead, the same pattern applies from the payment confirmation, whichever system is the truth of the sale.

Leads with a value attached

A quote request lands via [Typeform](/integrations/typeform). The agent scores it against the CRM, calls Track Lead with an estimated value and currency, and the campaign optimizes toward the leads that resemble revenue, not just form fills, which is the difference between cheap leads and good ones. During setup, every event carries a test_event_code so the team verifies the mapping in the Test Events tab before a single production event ships, the same discipline a staging environment gives an engineering team.

The migration backfill, reviewed before it teaches Meta anything

A team moving from Pixel-only tracking wants ninety days of historical purchases replayed. The agent pulls the orders, builds the server-event schema with pre-hashed identifiers, and stages the Send Batch Events payload in chunks. The growth lead reviews a sample: hashes verified as 64-character SHA-256, event_time within Meta's 7-day window flagged where stale, totals reconciled against the order system. Only the approved chunks send, and Meta's per-call responses log to [Google Sheets](/integrations/google-sheets) with alerts to [Slack](/integrations/slack).

Human-in-Loop Highlight

Send Batch Events sends its events array exactly as given, and it does not hash PII: any em, ph, fn, ln, or external_id field the caller failed to pre-hash goes to Meta as plaintext customer data. That is not a bug to retry, it is a disclosure you cannot recall, with the customer's raw email in a third party's ingestion pipeline. The single-event actions hash automatically, so FlowRunner agents run them freely. The batch path runs gated, always: before any Send Batch Events call, the agent verifies every user_data identifier matches the 64-character SHA-256 hex shape, and the batch, source, count, sample, and reconciliation against the system of record, posts to the growth lead for approval. A malformed conversion feed also quietly mis-trains ad delivery for weeks, so the review protects both the customers' data and the budget the algorithm spends. Hashing checks are machine work. Releasing a thousand-event payload to Meta is a named person's call.

Agent processes routinely
Detects exception requiring judgment
Clear match Continues automatically
Ambiguous Routes to human via email
Human decides
Agent resumes with decision

Agent Capabilities

4 actions

Events

4
  • Send Conversion Event Sends a single server-side event for any standard or custom event name, PageView, ViewContent, AddToCart, Purchase, Lead, or your own. Email, phone, name, and external ID are automatically SHA-256 hashed to Meta's normalization rules; already-hashed values pass through. Supports a test_event_code for setup verification.
  • Track Purchase Sends a Purchase event with purchase-specific fields: value, currency, content IDs, order ID. The post-checkout convenience wrapper with automatic hashing built in, made for revenue attribution and purchase-optimized delivery.
  • Track Lead Sends a Lead event when a prospect submits a form or requests a quote, with optional value and currency for value-based optimization. Automatic hashing applies, same as the other single-event actions.
  • Send Batch Events Sends up to 1000 events in one request, each following Meta's server-event schema. Does not hash PII: all user_data identifiers must arrive pre-hashed. The bulk backfill path, and the operation this page's gate inspects before anything ships.

Frequently Asked Questions

What can FlowRunner do with Facebook Conversions API?

FlowRunner agents can run Send Conversion Event, Track Purchase, and Track Lead in Facebook Conversions API, plus 1 more action.

Does connecting Facebook Conversions API to FlowRunner require OAuth?

No. Facebook Conversions API connects to FlowRunner with an API key, no OAuth flow required.

Can Facebook Conversions API trigger a FlowRunner workflow automatically?

Facebook Conversions API doesn't currently expose triggers in FlowRunner. It connects as an action step inside workflows started by another trigger.

Start building with Facebook Conversions API

$100 in credits. No card required. Connect in minutes.