決済完了ページから外部サイトへのリダイレクトをWebPixelで実装する方法について。

Topic summary

  • 要件: 決済完了ページの表示前に注文IDを取得し、独自の決済URLへ自動リダイレクトしたい。従来の「注文完了ページの追加スクリプト」が来年終了するため、Web Pixelでの代替を模索。

  • 技術的制約: Web Pixelは拡張(App Extension)はWeb Worker、カスタムピクセルはiframe内で動作。windowオブジェクトにアクセスできず、window.location系によるリダイレクトは不可。

  • 根拠: Shopify公式ドキュメントおよびコミュニティ投稿で、サンキューページの拡張から外部URLへリダイレクトできない旨がスタッフにより明言。技術仕様上の制限に基づく。

  • 代替案: サンキューページをカスタマイズできる外部アプリを利用し、目的のページへ遷移するボタン等のUIを表示。自動ではなくユーザー操作による遷移を促す方針。

  • 結論/現状: Web Pixel単体での自動リダイレクトは実現不可。実装方針の見直し(カスタマイズアプリ導入・UX設計)が必要。解決は未了だが、実現可能なワークアラウンドのみ提示。

Summarized with AI on December 20. AI used: gpt-5.

決済完了ページの表示前に注文IDを取得し、独自の決済URLにリダイレクトする処理の実装を検討しています。

これまでは注文完了ページの追加スクリプトを使用していましたが、来年にサポートが終了するため、代替案としてWebPixelアプリを使用した処理に切り替えたいと考えています。

WebPixel上ではjavascriptのwindow要素が機能しないため、window.location.hrefやwindow.location.replaceが使えず、どのような処理を利用すればいいか分かりません。

webpixel上でも使えるリダイレクト処理は何かありませんでしょうか?

@T_J1991

webpixel上でも使えるリダイレクト処理は何かありませんでしょうか?

Web Pixelの仕様上、不可能ではないかと思います。

https://shopify.dev/docs/apps/build/marketing-analytics/pixels

WebPixelは、

App Extensionsの場合は、web workerで、

カスタムピクセルの場合(Shopifyストア管理画面 > お客様のイベント で設定する場合)は、iframeで

動作します。

web workerでも、iframeでも、

質問者様が希望されているようなリダイレクトを行うことはできないはずです。

https://community.shopify.com/post/2281000

こちらの投稿でも、Shopifyスタッフから、

サンキューページからのExtensionsを利用してのリダイレクトはできない、と回答がありました。

私が思いつくのは、

下記のような注文完了ページ(サンキューページ)をカスタマイズできるアプリを利用して、

https://apps.shopify.com/type?locale=ja

質問者様がリダイレクトさせたいとお考えのページにリンクするボタンを持ったUIを表示する、

くらいです。

お力になれず恐縮です。

(キュー田辺)