TL;DR
Shopify rates a card order's chargeback risk as low, medium or high [1]. That rating can arrive after the order is created [2], and WeltPixel Conversion Tracking doesn't read it. By default the purchase goes to every connected platform when the order is placed, and a cancel afterwards takes nothing back. The one way to keep a reviewed order out is to hold the money. On manual capture the order sits authorized, the app doesn't count that as paid, and the purchase goes out when you capture, or never if you cancel [3][4].
Key Takeaways
- Shopify's "high risk" is an estimate of chargeback risk, not a finding of fraud [1].
- The verdict can land after the order exists: Shopify's Flow help says analysis "takes some time to process after an order is created" [2]. The app reads no verdict at all.
- Read Settings → Payments first. "Automatically at checkout" captures at the time of sale [3], so "When the order is paid" releases a card order at once.
- On manual capture, an authorized order isn't paid in the app's eyes, and Shopify Payments authorizations last 7 days [3].
- A cancel before capture voids the authorization, and a void isn't a refund [4][6].
- Google Ads takes a retraction by order ID; Google recommends waiting 24 hours, and gives 7 days to reach bidding and 54 days overall [8].
- Meta and TikTok list no reversal event [10][11], so for them the only lever is not sending the order.
Does Shopify fraud analysis finish before the app sends the order?
Not reliably, and the app wouldn't wait for it if it did. Shopify says fraud analysis "typically happens immediately, but in rare cases it can take a few minutes" [1]. Its Flow help is blunter about the order of events: analysis "takes some time to process after an order is created", so a workflow built on the verdict uses the "Order risk analyzed" trigger "instead of the Order created trigger" [2]. Shopify's API draws the same line with two topics: ORDERS_CREATE, and a separate ORDERS_RISK_ASSESSMENT_CHANGED that fires when a risk assessment becomes available [5].
WeltPixel Conversion Tracking listens for three Shopify order events: a new order, a paid order and a refund. A risk assessment is none of them, so a high-risk flag changes nothing the app sends. By default it sends the Purchase event to every connected platform when the order is placed, before a reviewer has opened the order.
The recommendation "indicates whether an order has a low, medium, or high risk of a chargeback due to fraud", and Shopify's suggestion for a high-risk order is that you "attempt to verify the order, cancel the order, or refund the order" [1]. Shopify offers it as a review aid, and nothing in it works as fraud protection for your ad platforms.
Here is one card order, both ways.
| Moment | Automatic capture, app on "On order creation" | Manual capture, app on "When the order is paid" |
|---|---|---|
| Checkout completes | Card charged, order paid | Card authorized, order not paid [3] |
| Right after | Purchase sent to every connected platform | Nothing sent |
| Verdict appears (usually at once, rarely minutes later) [1] | The app doesn't read it | The app doesn't read it |
| Reviewer cancels | Order cancelled, sent purchase stays | Authorization voided, order never sent |
| Reviewer captures | Not applicable, already captured | Order paid, purchase sent |
Which orders never get a verdict?
Shopify says "Fraud analysis works with online credit card orders that Shopify can verify", and it lists test orders and free orders among those that get no recommendation [1]. On the same page, the overall recommendation needs the Grow plan or higher, or Shopify Payments, and fraud indicators are available from the Basic plan [1]. A fix that waits for a verdict never covers those orders. They get the app's normal treatment, and a free order goes out at creation in either mode.
Why "When the order is paid" does nothing on automatic capture
The app's option waits for payment; whether payment waits for you is a Shopify setting. Under Settings → Payments, Shopify offers "Automatically at checkout" ("Payment is captured at the time of sale"), "Automatically when the entire order is fulfilled", and "Manually", where an order stays Authorized and "you need to capture payment before you're paid for the order" [3].
On the default, the card is charged at checkout. The order is paid before any verdict exists, so "When the order is paid" releases the purchase immediately and the reviewer cancels a sale the platforms already have. The setting works for cash on delivery orders, which are unpaid by nature; that article walks through the option. A card order only waits if you hold the money.
On manual capture the order sits authorized after checkout. The app doesn't treat an authorized order as paid, so with the option on, the purchase waits for you. Shopify says capturing changes the payment status from Authorized to Paid [12]; confirm on one order of your own that the app then sends (step 4 below). A cancel goes the other way. In Shopify's words, "If the payment wasn't captured, then the payment status changes to Voided" [4], so the order is never paid and the purchase never goes out.
Shopify Payments gives an authorization period of 7 days, and a manual capture after it adds a 1.75% charge on top of the usual card fees, per Shopify's page [3]. Other providers set their own period [12].
"When to send the Purchase event" is a per-destination option on the app's Plus plan, not Shopify Plus [13]. Both are setting changes, which the Black Friday tracking freeze puts before November 13.
What does a cancel leave behind, voided or captured?
Either way the order is cancelled. What the platforms hold afterwards turns on one fact: whether the money was captured.
| What happened | Shopify's record | GA4 | Google Ads | Meta and TikTok |
|---|---|---|---|---|
| Cancelled before capture, purchase already sent | Payment status "Voided" [4]; a refund "can happen only after a capture" [6] | Check one order (step 3) | Keeps it until you retract | Keep it [10][11] |
| Cancelled before capture, paid mode on | Voided | Never sent | Never sent | Never sent |
| Cancelled after capture, refunded to the card | Payment status "Refunded" [4] | Plus: a refund event on the original order; free plan: keeps it | Keeps it until you retract | Keep it [10][11] |
| Cancelled after capture, refund left for later | Shopify says no refund is issued on cancel in that case [4] | Check one order (step 3) | Keeps it | Keep it |
Shopify's cancel dialog offers the original payment method (the default), store credit, or refund later [4], and its API voids an authorized payment on cancel whatever you pick [7]. Pick "later" and no refund is issued when you cancel [4]. Whether GA4 then gets a refund event depends on what Shopify records on the order, so check one (step 3). The server-side GA4 refund article shows what the event carries.
You've probably watched a cancelled order sit in an ad platform's purchase count for days and assumed the cancel was still syncing. Nothing is syncing, because the app subscribes to no cancellation event.
What Flow can do here, and what it can't
Shopify Flow has an "Order risk analyzed" trigger that fires when the analysis completes [2]. Its templates include "Capture payment if order is not high fraud risk" and "Cancel and restock high risk orders" [2]. Shopify adds: "Workflows that manage capturing payments don't function if automatic capture is activated" [2]. The capture template needs the manual-capture setting from above, and on automatic capture a cancel template runs after the purchase has gone.
The app sees no risk level, workflow result or tag, only whether the order became paid or was refunded. Shopify's Flow help doesn't say whether the cancel template refunds a captured payment, so run it on one order and read the transactions before you rely on it.
What can you still retract at Google Ads?
The app uploads a Google Ads conversion for an order with a Google click ID, or with customer details if you've turned on import without a gclid; Google Ads conversions without a gclid covers that path. Google recommends a day's wait before uploading an adjustment, counts a retraction toward bidding only in the first 7 days after the conversion is recorded, and takes adjustments for reporting for 54 days [8]. It identifies the conversion by order ID [8].
A review cancel fits those clocks. Take an illustrative order cancelled six hours after checkout: the cancel is final before Google's day-long wait ends, and six days of the bidding window remain. Retract once, when the cancel is final [9]. Handling refunds and cancellations in ad platform reporting has the upload steps and the order ID the app uses.
Meta and TikTok offer nothing comparable. Meta and TikTok publish no reversal event [10][11], so for both the only lever is upstream, which is why the capture decision comes before the clean-up.
One order check before the freeze
Do this before November 13, with one reviewed order and one cancelled one.
- Open Settings → Payments and read the capture setting for your provider [3]. If it says "Automatically at checkout", paid mode holds no card order, so you can stop here or change the capture method.
- On the Orders page, open an order flagged medium or high risk (Shopify marks them with a warning symbol [1]). If the page says the analysis isn't available yet, refresh or check back in a few minutes [1].
- Open an order you cancelled before capture. In its transactions you should see an authorization and a void, and no refund [6]. Then check GA4 for a refund event on that order's purchase.
- The next time you capture an authorized order by hand, open the Server-side events stream on the app's Home page (it lists GA4, Meta, TikTok and most other destinations, not Google Ads). With paid mode on, Purchase should appear after the capture.
Then decide which destinations you'd hold. Holding orders also moves the totals apart from Shopify's own reports, and Shopify Analytics vs GA4 lists the other reasons they drift.
FAQ
Does a high-risk rating mean the order is fraud?
No. Shopify rates the risk of a chargeback due to fraud, and it lists verifying, cancelling or refunding as your options [1].
Can WeltPixel Conversion Tracking block a high-risk order from my ad platforms?
It reads no risk level and cancels nothing. It sends the purchase when the order is created, or on Plus with "When the order is paid", once the order is paid. With manual capture, that means once you capture.
Will cancelling an order remove the purchase from Meta or TikTok?
Neither platform's event list has a refund or cancel event [10][11], and the app sends none. Google Ads is the exception, through a retraction you upload by order ID [8].
Does a void send GA4 a refund event?
A void isn't a refund in Shopify's records, because a refund "can happen only after a capture" [6]. The app's GA4 refund event follows a refund, on Plus, so open one cancelled order to confirm what your store did.
Check the capture setting, then the option
WeltPixel Conversion Tracking lets each destination send its Purchase event at order creation or when the order is paid. The paid option is on Plus ($39/month [13]), which has no order limit and also sends admin, POS and draft orders. The free plan covers GA4 only, up to 100 storefront orders a month.
Sources
- Shopify Help Center, "Fraud analysis", help.shopify.com/en/manual/fulfillment/managing-orders/protecting-orders/fraud-analysis, accessed October 20, 2026
- Shopify Help Center, "Managing high-risk orders with Shopify Flow", help.shopify.com/en/manual/fulfillment/managing-orders/protecting-orders/shopify-flow, accessed October 20, 2026
- Shopify Help Center, "Payment authorization", help.shopify.com/en/manual/payments/payment-authorization, accessed October 20, 2026
- Shopify Help Center, "Canceling orders", help.shopify.com/en/manual/fulfillment/managing-orders/canceling-orders, accessed October 20, 2026
- Shopify developer documentation, GraphQL Admin API
WebhookSubscriptionTopicenum, shopify.dev/docs/api/admin-graphql/latest/enums/WebhookSubscriptionTopic, accessed October 20, 2026 - Shopify developer documentation, GraphQL Admin API
OrderTransactionKindenum, shopify.dev/docs/api/admin-graphql/latest/enums/OrderTransactionKind, accessed October 20, 2026 - Shopify developer documentation, GraphQL Admin API
orderCancelmutation, shopify.dev/docs/api/admin-graphql/latest/mutations/orderCancel, accessed October 20, 2026 - Google Ads Help, "How to adjust your conversions", support.google.com/google-ads/answer/7686280, accessed October 20, 2026
- Google Ads Help, "About conversion adjustments", support.google.com/google-ads/answer/7686447, accessed October 20, 2026
- Meta for Developers, Meta Pixel reference (standard events), developers.facebook.com/docs/meta-pixel/reference, accessed October 20, 2026
- TikTok Ads Manager Help Center, "Standard events and parameters", ads.tiktok.com/help/article/standard-events-parameters, accessed October 20, 2026
- Shopify Help Center, "Capturing payments", help.shopify.com/en/manual/fulfillment/managing-orders/payments/capturing-payments, accessed October 20, 2026
- WeltPixel Conversion Tracking, Shopify App Store listing, apps.shopify.com/weltpixel-conversion-tracking, accessed October 20, 2026