Meta Conversions API (CAPI)

Meta Conversions API (CAPI) is an essential tool for modern advertisers. This feature allows you to send conversion data (like Leads, Purchases) directly from the Konektor server to Meta, bypassing the user's browser.

Why You Must Use CAPI?

Regular browser Pixel is becoming increasingly inaccurate due to:

  1. Ad Blockers: Extensions like uBlock Origin block pixels.
  2. Browser Privacy: Safari (ITP) and Firefox limit cookie lifespan.
  3. Unstable Connections: Slow page loading can fail to trigger the pixel.
  4. iOS14+: Tracking Transparency (ATT) makes app/web tracking difficult.

With CAPI, data is sent Server-to-Server, making it more resilient to the above issues. Data accuracy can increase by 10-30%.

Setup Requirements

Before starting, ensure you have:

  • Admin access to Meta Business Manager.
  • A Meta Pixel already created.
  • Admin access to Konektor Dashboard.

URL Parameters Template (Meta Ads)

Meta supports auto-tagging for IDs like campaign_id, adset_id, and ad_id. Add name snapshots for stable historical reporting and use official macros from Ads Manager.

Recommended Template (UTM + Stable IDs):

utm_source=meta&utm_medium=paid&utm_campaign={{campaign.name}}&utm_term={{adset.name}}&utm_content={{ad.name}}&campaign_id={{campaign.id}}&adset_id={{adset.id}}&ad_id={{ad.id}}&campaign_name={{campaign.name}}&adset_name={{adset.name}}&ad_name={{ad.name}}&site_source_name={{site_source_name}}&ad_meta={{placement}}&ad_account_id=YOUR_AD_ACCOUNT_ID

Fill ad_account_id with your ad account ID.

Important Note

If you fill the URL Parameters field in Meta Ads, do not add the question mark (?). Meta will append it automatically.

View Meta Dynamic Macros
MacroDescriptionExample
{{campaign.name}}Campaign NameEid_Promo
{{adset.name}}Ad Set NameJava_Bali_25-50
{{ad.name}}Ad NameTestimonial_Video_1
{{placement}}PlacementInstagram_Stories
{{site_source_name}}Source Platformfb, ig, an, msg

How to Get CAPI Token

  1. Open Meta Events Manager.
  2. Select the Pixel you want to use.
  3. Go to the Settings tab.
  4. Scroll down to the Conversions API section.
  5. Click Generate Access Token.
  6. IMPORTANT: Copy and save this token in a safe place (Notepad/Password Manager). Meta will not display this token again.

Integration in Konektor

  1. Login to Konektor Dashboard.
  2. Go to Settings > Pixel & Tracking.
  3. Select Meta / Facebook.
  4. Enter your Pixel ID.
  5. Paste the Access Token you copied into the CAPI Access Token field.
  6. Click Test Connection to ensure successful connection.
  7. Click Save.

Setup for Click-to-WhatsApp (CTWA) Ads

If you run Click-to-WhatsApp ads on Meta, additional configuration is required so that conversions from WhatsApp conversations can be attributed back to your ads.

Why Is Additional Configuration Needed?

When a user clicks a CTWA ad and enters WhatsApp, Meta sends a ctwa_clid (Click-to-WhatsApp Click ID) via webhook. Konektor automatically captures this ID from partner integrations (Qiscus, Qontak, etc.).

However, when sending conversion events back to Meta via CAPI, Meta requires the whatsapp_business_account_id field in the payload. Without this field, events will be rejected with the error:

Missing Page ID Or WhatsApp Business account ID

How to Get Your WhatsApp Business Account ID

  1. Open Meta Business Suite.
  2. In the left sidebar, click Business Settings.
  3. Navigate to Accounts > WhatsApp Accounts.
  4. Select the WhatsApp Business account connected to your ads.
  5. Copy the numeric ID displayed (e.g. 123456789012345).
You can also find the WABA ID in WhatsApp Manager under Phone Numbers > Settings. The ID is shown in the URL or on the account detail page.

Entering the ID in Konektor

  1. Go to Settings > Pixel & Tracking.
  2. Edit your Meta pixel.
  3. Fill in the WhatsApp Business Account ID field with the copied ID.
  4. Click Save.

Multiple WABA IDs (Multi-Number)

If your business uses multiple WhatsApp numbers registered under different WhatsApp Business accounts (different WABA IDs), the WABA ID set in the Pixel only serves as a default fallback.

To ensure CTWA conversions are sent to the correct Meta account based on the agent number handling the lead, you need to set a WABA ID per session:

  1. Go to WhatsApp > Sessions.
  2. Click the Edit button on the session you want to configure.
  3. Fill in the WhatsApp Business Account ID field with the appropriate WABA ID for that number.
  4. Click Save.

Konektor will automatically match the agent number on the lead with the registered session, then send the conversion using the WABA ID from that session.

WABA ID resolution priority:

  1. WABA ID from the session matching the agent number on the lead.
  2. WABA ID from the Pixel configuration (fallback).
  • You have one WABA ID for all numbers → just set it in the Pixel.
  • You have multiple WABA IDs (e.g., sales numbers on WABA A, support numbers on WABA B) → set the WABA ID on each session, and optionally set one in the Pixel as a fallback.

This field is optional

If you are not running Click-to-WhatsApp ads, you can ignore this field. It is only used when Konektor detects a lead that came through a CTWA ad click (has a ctwa_clid). For leads from other sources (website, form, manual), this field has no effect.

Sync log statuses

When Konektor sends events to Meta, it records detailed results in Sync Logs:

  • accepted: Meta accepted the payload.
  • partial_failure: the request reached Meta, but some data was rejected or needs review.
  • failed: the request failed before Meta accepted it.
  • skipped: Konektor did not send the event because the minimum data or configuration was not available.

What Data is Sent?

Konektor automatically sends the following standard events based on lead status:

Lead StatusMeta Event
newLead
qualifiedInitiateCheckout
wonPurchase
resubscribedSubscribe
For CAPI events to match with Facebook users, we send hashed (SHA256) user data such as Email (em), Phone (ph), First Name (fn), and City (ct).

Event Deduplication

If you have both Browser Pixel and CAPI installed, Meta may receive 2 events for the same occurrence (Double Counting).

Konektor sends a unique event_id for server-side events. Browser and server deduplication only works when your browser-side event also sends the same event_id. If the browser event uses a different ID, Meta will treat them as separate events.

For Click-to-WhatsApp flows, ctwa_clid is treated as webhook-derived data from WhatsApp / ad metadata, not as a normal browser-tracked parameter.

Troubleshooting

Events Not Showing Up? Check Traffic Permissions

The most common issue is blocked events because the domain hasn't been added to Meta's Allow List. You might see a warning like:

If an error has been detected in the last 3 days it will appear here... Domain(s) recently started sending data. Confirm that they're yours by adding them to allowlist.

Solution:

  1. Open Settings in Meta Events Manager.
  2. Scroll down to the Traffic Permissions section.
  3. Check the Allow List section.
  4. Select your domain, then click Add to Allow List.
  5. Click Confirm.

Once your domain is whitelisted, events will start flowing normally.

Next Steps

Need More Help?

Our team is ready to help you maximize ad tracking and business attribution.

Email Supportsupport@konektor.id
YouTubeYouTube

© 2026 Konektor. All rights reserved.