PPC PRITAM - Strategy, Tracking, Automation, Growth
Meta CAPI Ecommerce•8 min read•By PPC Pritam

Meta CAPI Purchase Events Missing: How to Trace the Server-Side Event Flow

When CAPI Purchase events are missing, the server never tells Meta about the sale. The break is in the server-side flow that generates and sends the Purchase event. Because the failure is silent in the browser, you have to trace the flow from the order to Meta to find where the Purchase data disappears.

Table of Contents

  • 01.The server-side Purchase flow
  • 02.What to check first
  • 03.Is the server event being generated
  • 04.Order data in the payload
  • 05.The CAPI request and response
  • 06.Deduplication and the event ID
  • 07.How to test it

The server-side Purchase flow

A CAPI Purchase event follows a specific path. The purchase happens on your ecommerce platform, the platform or your server generates a server event, the server sends a CAPI request to Meta and Meta receives it. If any step fails, the Purchase data never reaches Meta even though the order completed.

Purchase server event flow
StepWhat must happenWhere it can fail
1. PurchaseOrder completes on the platformOrder fails or is not finalized
2. Ecommerce platformPlatform triggers server logicWebhook does not fire
3. Server eventServer builds the Purchase payloadMissing value or user data
4. CAPI requestServer sends the event to MetaAuth failure, wrong dataset
5. MetaMeta receives and processes the eventPayload rejected

What to check first

Start here
  • Confirm the order actually completed and triggered the server logic.
  • Check whether the webhook or server function fired for the order.
  • Confirm the Purchase payload includes value, currency and event ID.
  • Check the server response from the CAPI request for errors.
  • Confirm the event is sent to the correct dataset.

Is the server event being generated

The first question is whether the purchase triggers your server logic at all. Most setups rely on a webhook from the ecommerce platform that fires when an order completes. If the webhook does not fire, is delayed or is sent to the wrong endpoint, no server event is generated. Confirm the webhook fires for a test order and reaches your server.

Order data in the payload

The Purchase payload needs the order data, including value, currency and an event ID. If the order data is not available when the server builds the payload, the event is sent with missing or zero value. Confirm the webhook or server function receives the full order data and that the payload includes it. A Purchase event with no value is far less useful to Meta.

The CAPI request and response

Once the payload is built, the server sends the CAPI request. Check the response from Meta. An auth failure, a wrong dataset or a rejected payload will show in the response. Log the response for your CAPI requests so you can see whether Meta accepted the event. A request that returns an error is not reaching Meta, even if your server logic thinks it succeeded.

Deduplication and the event ID

If you also send Purchase through the Pixel, the CAPI Purchase needs an event ID that matches the browser event for deduplication. A missing or mismatched event ID can cause the server Purchase to be counted separately or to fail to deduplicate. The guide on Meta CAPI event ID missing covers event ID generation in detail.

How to test it

  1. 1.Place a test order and confirm it completes on the platform.
  2. 2.Confirm the webhook or server function fires for that order.
  3. 3.Log the Purchase payload and confirm value, currency and event ID are present.
  4. 4.Log the CAPI response and confirm Meta accepted the event.
  5. 5.Confirm the Purchase appears in Test Events for the correct dataset.
A missing CAPI Purchase is a server-side flow problem. Confirm the order triggers the server logic, confirm the payload carries the order data and check the CAPI response to see whether Meta accepted the event.

Frequently Asked Questions

Why are my CAPI Purchase events missing but browser Purchase works?

The browser event fires from the confirmation page, but the CAPI event depends on server logic triggered by the order. If the webhook does not fire or the server payload is incomplete, the CAPI Purchase never reaches Meta even though the browser event does.

How do I know if Meta accepted my CAPI Purchase?

Inspect the server response from the CAPI request. The response tells you whether Meta accepted the event and can flag payload problems. Log it for every request so you can diagnose failures.

Related Service

Need help applying this to your business?

Explore Ecommerce Tracking
PPC Pritam
Written by PPC Pritam

PPC, Conversion Tracking, CRM and Automation Specialist. Helping businesses generate qualified leads with Google Ads, accurate tracking and automated follow-up.

Related Guides

Meta Conversions API

Meta CAPI Events Not Showing in Events Manager: A Troubleshooting Guide

CAPI failures are silent in the browser. Log the server response, confirm the authentication and dataset are correct and verify the required payload fields to find where the server event stops.

Read Article
Meta Ecommerce Tracking

Meta Purchase Event Not Firing After an Order: What to Check

A missing Purchase event is usually a trigger pointing at the wrong page or purchase data that is not available when the tag fires. Complete a test order and check the confirmation page first.

Read Article
Meta CAPI Ecommerce

Meta CAPI Sending Duplicate Purchase Events: Common Causes and Fixes

Duplicate CAPI Purchase events come from repeated server requests or multiple integrations. Use a unique event ID like the order ID and make sure only one path sends Purchase per order.

Read Article