Docs menu · Overview
Getting Started
Integrations
Server-side GTM
COD Order Protection
Advanced Features
Downloads
Tools & Support
Docs / COD Order Protection
Overview
COD Order Protection
Hold cash-on-delivery purchases at checkout, confirm the real orders, then send them to Meta, GA4, Google Ads and TikTok with the original order time.
How it works
- A customer places a cash-on-delivery order. Your GTM holds the purchase: nothing reaches Meta, GA4, Google Ads or TikTok at checkout. Prepaid orders (bKash, card, …) go out as usual.
- PixelFly keeps the order in COD Held Orders: value, products, customer, cookies, click IDs and the GA client/session.
- You confirm or reject it in the dashboard, or your store does it automatically through the webhook.
- Confirmed: PixelFly sends the purchase, with the original order time, to your ad platforms. Rejected: nothing is sent.
Step 1, for every setup: turn it on in PixelFly
- PixelFly → your container → Power-ups → COD Order Protection → on. Do this before switching COD on in GTM.
- Fire path: sGTM containers choose sGTM /data (recommended; it runs your server tags, including Google Ads) or Receivers. Proxy containers always use Receivers: add a Receiver for each platform (Meta, GA4, TikTok, Google Ads).
- Note the Hold URL, Webhook URL and Webhook Secret it shows, and your container’s API Key (container page). The API Key starts with
pf_live_; the webhook secret (pfwh_) is only for the webhook.
Step 2: set up GTM
Then: WooCommerce plugin or custom website · confirm orders · test.
Where a confirmed purchase goes
| Platform | sGTM (fire path sGTM /data) | Proxy (Receivers) |
|---|---|---|
| Meta | Facebook CAPI tag | Meta Receiver |
| GA4 | GA4 server tag | GA4 Receiver, with GA4 purchase via = pixelfly |
| TikTok | TikTok Events API tag | TikTok Receiver |
| Google Ads | Google Ads Conversion (COD confirmed) tag | GA4 → Google Ads import, or a Google Ads (click conversions) Receiver. One, not both |
The order keeps its GA client and session IDs, so GA4 and a GA4 → Google Ads import credit the ad that brought the shopper. Google Ads needs the click ID (gclid) saved at checkout.