タグアーカイブ Google Merchant Center

Google Universal Cartが米国で正式提供開始。複数店舗横断カートの仕組みとEC事業者への影響

Google Universal Cartが米国で正式提供開始。複数店舗横断カートの仕組みとEC事業者への影響

Googleが10月15日、新しいショッピング機能「Universal Cart」を米国で正式に提供開始した。Google検索とGeminiアプリの両方で使える共通カートで、複数の小売店の商品を1か所にまとめられる。

価格下落や在庫補充の通知を受け取れるほか、Google Payでの決済、または加盟店サイトへのカート引き継ぎに対応する。対象店舗にはNike、Sephora、Target、Ulta Beauty、Walmart、Wayfair、多数のShopify加盟店が含まれる。

EC事業者にとっては、Google検索やAIモード経由の流入をどう受け止めるかが重要になる。カート引き継ぎの仕組みを理解しておけば、ホリデーシーズン前の売上機会を逃さずに済む。

Universal Cartの概要と基本機能

Universal Cartの概要と基本機能
買い物客の操作フロー
Google検索 商品を検索 → Universal Cart に追加
↓
カート内の主な機能
価格下落通知 保存した商品が値下がりしたら通知
在庫補充通知 売り切れ商品の再入荷を知らせる
プロモコード表示 カート内でクーポンを確認できる

買い物客はGoogle検索とGeminiアプリの両方で同じカートを利用できる。複数店舗の商品をまとめて管理できる点が最大の特徴だ。

複数店舗の商品を1つのカートに

Universal Cartは、Google検索(AIモードを含む)とGeminiアプリの両方で利用できる。買い物客は別々の小売店で見つけた商品を1つのカートに追加し、Googleアカウントに紐づけて管理できる。カートはGoogle Walletを基盤としており、保有するカードの特典に応じて使用するカードの提案も受けられる。

対応店舗としてGoogleが名を挙げているのは、Nike、Sephora、Target、Ulta Beauty、Walmart、Wayfair、そして多数のShopify加盟店だ。いずれの購入経路でも、記録上の売主は加盟店のままになる。

価格下落と在庫補充の通知

価格下落通知と在庫補充通知は、保存した商品の購入タイミングを逃さないための機能だ。値下がりした場合や売り切れ商品が再入荷した場合に通知が届く。プロモコードもカート内に表示されるため、クーポンを探す手間も減る。

5月のI/O発表から何が変わったのか

5月のI/O発表から何が変わったのか
5月のI/O発表時に言及されていた機能(Before)
履歴価格 商品の過去の価格推移を表示
互換性の警告 カート内商品が一緒に機能しない場合の警告
ロイヤルティ情報Google Wallet連携のポイント情報
YouTubeとGmail対応 将来的な展開先として言及
↓
今回の正式発表(After)
検索とGemini米国で正式提供開始
価格下落・在庫通知 今回の発表で明記
未言及の機能 履歴価格・互換性警告・ロイヤルティ情報は記載なし
YouTube・Gmail提供時期の記載なし

5月の発表内容と今回の正式発表を比較すると、いくつかの機能が説明から外れている。提供対象の整理と機能の取捨選択が進んだと考えられる。

YouTubeとGmailの提供時期

5月のGoogle I/Oで発表された際、Universal Cartは夏の終わりまでに米国のSearchとGeminiアプリで利用可能になる見込みとされていた。YouTubeとGmailへの対応はその後とされていたが、今回の正式発表にはYouTubeとGmailに関する提供時期の記載がない。

今回の発表で触れられていない機能

5月の発表には商品の履歴価格、カート内の商品が一緒に機能しない場合の警告、Google Walletに関連するロイヤルティプログラム情報が含まれていた。今回のローンチ投稿ではこれらの機能についての説明が見当たらない。含まれている可能性はあるものの、少なくとも公式の説明には記載されていない。

5月時点ではUniversal Cartを「エージェントコマース基盤をまとめる次のステップ」と位置づけていた。今回の投稿では、買い物客の代わりに行動するエージェント機能と、買い物客に自信とコントロールを与えるツールを分けて説明しており、Universal Cartは後者に分類されている。

カートが加盟店に届く仕組み

カートが加盟店に届く仕組み

Cart APIとUniversal Commerce Protocol

カート引き継ぎの仕組みは、Universal Commerce Protocol(UCP)のCart APIに紐づいている。UCPとはGoogleが定める商取引連携の共通プロトコルだ。Googleの開発者向けドキュメントによると、買い物客が商品を転送すると、加盟店のシステム上にCreateCart呼び出しによってカートが作成される。

今回の初回リリースは一方通行で、カートの作成と転送のみをサポートする。Googleと加盟店システム間でのカート内容の更新、削除、同期はまだできない。Google上で決済を完結させるネイティブチェックアウトは別のAPIで、カート転送には必須ではない。

加盟店側の設定と分析ダッシュボード

加盟店はMerchant Center内のUCP統合ハブで、ネイティブチェックアウトかカート引き継ぎのいずれかを選択する。このハブは米国で段階的に展開されており、オーストラリアとカナダは来年の対応予定だ。

分析面では、Merchant CenterのUCP Analytics Reportingダッシュボードで、Buyボタンのクリックから購入、キャンセルまでのチェックアウトファネルを追跡できる。Merchant APIリファレンスには、カート転送数や転送時の平均カート金額といった指標も用意されている。ただし、カートに保存された商品数の指標はどのページにもリストされていない。

購入完了までの2つの経路

購入完了までの2つの経路
経路1ネイティブチェックアウト
買い物客 Universal Cartで購入 → Google が決済を処理
加盟店サイトに遷移せず、Google内で購入が完了する。
↓
経路2カート引き継ぎ
買い物客 カートを転送 → 加盟店サイト で事前入力済みカートを表示
加盟店サイトに遷移し、そこで購入を完了する。売主は加盟店のまま。

購入完了の経路は2つある。どちらを選ぶかは加盟店の設定と買い物客の選択によって決まる。

ネイティブチェックアウト

1つ目はネイティブチェックアウトで、買い物客がGoogle内で決済まで完了する方式だ。Google Payを利用し、カート内の商品をGoogle上でそのまま購入できる。購入者は加盟店サイトへ移動する必要がない。

カート引き継ぎ

2つ目はカート引き継ぎで、加盟店サイトに遷移した時点で商品リストが事前入力されたカートが用意される方式だ。この場合、購入は加盟店サイト上で発生する。記録上の売主はどちらの経路でも加盟店のまま変わりない。

UCPの販売追跡システムは、カート転送と購入を別々に記録する。Universal Cartの販売追跡に含まれるのは、カートから直接完了した購入のみだ。商品リストを転送した後の購入は加盟店サイト側の計測になる。

EC事業者への影響と今後の展望

EC事業者への影響と今後の展望

Shopify加盟店が確認すべきポイント

Shopifyのサポート情報によると、対象となる米国のShopifyストアではDirect Checkoutがデフォルトで有効になっている。注意点として、Direct Checkout経由で購入が完了した場合、Google AnalyticsとCustom Pixelsが発火しない。Universal Cartのカート内購入がShopify上でどのように処理されるかは、現時点で公開情報が見つかっていない。

Shopify加盟店は、管理画面の「Sales channels > Agentic」でDirect Checkoutのオンオフを確認できる。Google Analyticsで正確なコンバージョンを計測したい場合は、Direct Checkout経由の購入が計測されない点を踏まえて、カート引き継ぎの比率や自社サイト側の計測体制を整えることが重要だ。

ホリデーシーズンに向けた準備

Universal Cartの本質は、購入者のショッピングリストがGoogleアカウント側に置かれる点にある。検索から購入までの導線がGoogle内で閉じるため、EC事業者はGoogle検索やAIモードからの流入を従来以上に意識する必要がある。

ホリデーショッピングシーズンを目前に控え、Universal Cartは米国で展開が進んでいる。YouTubeとGmailへの対応時期はまだ示されていないが、UCP統合ハブへのアクセスを持つ加盟店であれば、Buyクリック、購入、カート転送の各指標を分析タブで確認し続けられる。

この記事のポイント

  • GoogleがUniversal Cartを米国で正式提供開始。Google検索とGeminiアプリで複数店舗の商品を1つのカートにまとめられる
  • 価格下落通知、在庫補充通知、プロモコード表示に対応。Google Walletを基盤にカード提案も行う
  • 5月のI/O発表と比べ、YouTubeとGmailの提供時期や履歴価格などの記載が今回の発表にはない
  • カート引き継ぎはUCPのCart APIで実現。初回リリースは一方通行でカート作成と転送のみをサポートする
  • 購入経路はネイティブチェックアウトとカート引き継ぎの2つ。加盟店はMerchant CenterのUCP統合ハブで選択する
  • Shopify加盟店はDirect Checkoutがデフォルト有効。Google Analyticsが発火しない点に注意が必要
Product Feed PROでブランド・変動商品・商品カテゴリが出力されない時の直し方

Product Feed PROでブランド・変動商品・商品カテゴリが出力されない時の直し方

Product Feed PRO for WooCommerceでブランド・変動商品・Google商品カテゴリがXMLに出力されない場合、まず確認すべきはフィールドマッピングの重複定義とキャッシュの遅延だ。症状が3つ同時に出ていても原因はそれぞれ別で、マッピング設定と条件設定を正しく組み替えれば大半は解決する。

ブランドがXMLに間欠的に出力される原因

ブランドがXMLに間欠的に出力される原因

同じブランドを割り当てた商品の一部にだけ<g:brand>が出力されない場合、最も多いのが「ブランドの取得ソースが複数存在している」ケースだ。WooCommerceの商品編集画面ではブランドが正しく見えていても、フィードプラグインは別のソースを参照して空の値を受け取ることがある。

Product Feed PROにはブランドを取得するための選択肢が複数用意されている。商品ブランド(product_brand)タクソノミー、商品属性(pa_brand)、YITH Brandプラグイン用の「Brand」、WooCommerce Brandsプラグイン用の「Product brand」などが代表だ。これらが混在していると、商品Aはタクソノミーから値を取得し、商品Bは未設定の商品属性を参照して空振りする、という動きになる。

特に複数のプラグインを併用していたり、過去にブランド管理の方法を変更したサイトで起きやすい。商品一覧のCSV書き出しでブランド列を確認すると、同じブランド名でも保存されている場所が商品によって異なるのがわかる。

Before フィールドマッピングが「ブランド(属性)」を参照
商品A Dr Coffee → タクソノミーに設定済み → 実は属性も選択済み → 出力OK
商品B Dr Coffee → タクソノミーに設定済み → 属性は未設定 → 出力なし
↓
After マッピングを「商品ブランド(product_brand)」に統一
商品A Dr Coffee → タクソノミーから取得 → 出力あり
商品B Dr Coffee → タクソノミーから取得 → 出力あり
■ ブランドの出力がない状態 ■ 修正後

このデモは、ブランドの取得ソースを属性にしたままタクソノミーのみ設定した商品で出力が欠落する状況を示している。対処は連載の後半でまとめて説明する。

商品ごとにブランドの保存場所を確認する

WooCommerceの商品一覧からCSVを書き出し、ブランドのタクソノミー列と属性列の両方を確認する。片方だけに値が入っている商品があれば、その商品群で出力が欠落しているはずだ。同じブランド名を保ったまま、フィードが参照するソースにデータを揃える必要がある。

フィードプラグインのフィールドマッピングを再定義する

フィードのフィールドマッピング画面で、<g:brand>フィールドの「取得ソース」を確認する。プルダウンに複数のブランド候補が並んでいたら、実際に価値が入っているタクソノミー(product_brand)を選択し直し、フィードを再生成する。

変動商品がフィードから完全に欠落する原因

変動商品がフィードから完全に欠落する原因

変動商品(バリエーションを持つ商品)がXMLに一切出力されない場合、最初に確認するのは「デフォルトのバリエーション」の設定だ。WooCommerceの変動商品では「デフォルトのバリエーションを選択」プルダウンが「デフォルトを選択」のままになっていると、親商品がフィードの出力対象から外れることがある。

フィードプラグインの設定で「商品のバリエーションを含める」を有効にしても、親商品のバリエーション自体が正しく構築されていないと出力はできない。各バリエーションに価格・在庫状況・画像が設定されているか、親商品がカタログに表示される設定になっているかも重要なチェックポイントだ。

Before デフォルトのバリエーションが未選択
Dr Coffee M10(変動商品)
プルダウン「デフォルトを選択」のまま → フィード生成スキップ
バリエーション3点も非出力
↓
After デフォルトのバリエーションを明示的に選択
Dr Coffee M10(変動商品)
プルダウンで1件選択 → フィードに親商品とバリエーションが出力
価格と在庫のある3バリエーションも表示
■ フィード欠落の状態 ■ 修正後

このデモは、デフォルトのバリエーション未選択で変動商品が出力から漏れる典型的なパターンを表している。ほかに価格未入力や在庫切れでも同様の欠落が起こる。

バリエーションの設定を一括で点検する

変動商品の編集画面で、各バリエーションに通常価格またはセール価格が登録されているか、在庫ステータスが「在庫あり」または「予約可能」になっているかを確認する。バリエーションが「非公開」や「カタログに表示しない」になっていないかも見る。

親商品の「商品データ」メタボックスでは、プルダウンで「デフォルトのバリエーション」を必ず1つ選ぶ。この操作が済んでいない変動商品は、フィードプラグイン側の設定に関係なく出力対象外になるケースが多い。

フィード設定の「商品のバリエーションを含める」を再確認する

Product Feed PROのフィード編集画面で、変動商品に関するオプションが有効か確認する。「商品のバリエーションを含める」と「親商品も含める」の両方が目に入るが、どちらか一方だけ有効になっていると期待した出力にならない。特に親商品を表示するには、その商品自体がカタログに表示される設定である必要がある。

Google商品カテゴリが出力されない原因

Google商品カテゴリが出力されない原因

Google商品カテゴリ(<g:google_product_category>)がXMLに出ない場合、原因はほぼ「カテゴリマッピングの条件不一致」か「フィールドマッピングの取得ソースにgoogle_categoryが設定されていない」のどちらかだ。カテゴリマッピング画面でWooCommerceカテゴリとGoogleカテゴリを紐づけただけでは、フィードに反映されない。

カテゴリマッピングの画面では、左側にWooCommerceの商品カテゴリ、右側にGoogleの商品カテゴリを割り当てる。この割り当てが「すべてのカテゴリ」ではなく、一部のカテゴリだけに適用される条件で作られていると、対象外のカテゴリに属する商品からはカテゴリが出力されない。

Before カテゴリマッピングに条件絞り込みが残っている
WooCommerceカテゴリ「コーヒーマシン」だけにGoogleカテゴリを割り当て
→ 他のカテゴリ(ドリップ用品など)は<g:google_product_category>が空のまま
↓
After 全カテゴリを割り当て直し、条件を解除
全WooCommerceカテゴリに対応するGoogleカテゴリをマッピング
→ すべての商品に<g:google_product_category>が出力
■ カテゴリ未出力 ■ 修正後

このデモは、カテゴリマッピングの条件漏れで一部商品のGoogleカテゴリが空になる状況を示している。カテゴリマッピング画面は商品数が多いほど設定漏れが起きやすいので、全カテゴリを対象にするのが基本だ。

フィールドマッピングでgoogle_categoryが設定されているか確認する

フィードのフィールドマッピング画面で、Google側の<g:google_product_category>フィールドに対して、取得ソースが「google_category」になっていることを確認する。このソースは、カテゴリマッピング画面で定義した対照表を参照する専用の値だ。

誤って商品カテゴリそのものを割り当てていると、Googleが求める形式(例: Home & Garden > Kitchen & Dining > Coffee Makers)ではなく、WooCommerceのカテゴリ名だけが出力される。Google Merchant Center側でエラーまたは警告になるため、ソース設定は丁寧に見直す必要がある。

カテゴリマッピングを全カテゴリに適用する

カテゴリマッピング画面で、WooCommerceの各カテゴリに対応するGoogleカテゴリをすべて埋める。カテゴリが多い場合は「未マッピングのカテゴリ」フィルタを使うと、設定漏れのカテゴリだけを洗い出せる。親カテゴリを割り当てたら、子カテゴリが自動的に引き継がれるかどうかも確認する。

3つの問題をまとめて修正する手順

3つの問題をまとめて修正する手順

3つの問題が同時に起きている場合は、それぞれを個別に直すよりも、フィードの基本設定を順番に整える方が早い。次の手順でフィールドマッピング、変動商品設定、カテゴリマッピングを見直す。

STEP 1 ブランドの取得ソースを「商品ブランド(product_brand)」に統一する
↓
STEP 2 変動商品のデフォルトバリエーションを1つ選択する
↓
STEP 3 Google商品カテゴリを全カテゴリに割り当てる
↓
STEP 4 フィードを再生成し、XMLで各フィールドの出力を検証する

このデモは、3つの症状をまとめて修正する際の優先順位を表している。ブランドの取得ソースを先に統一すると、変動商品とGoogleカテゴリの修正結果をXMLで正確に確認できる。

フィード再生成とキャッシュの扱い

設定を変更したあとは、フィードプラグインの「再生成」または「今すぐ更新」ボタンを実行する。WooCommerceやサーバー側のキャッシュが効いていると、更新前のXMLが表示され続けることがある。キャッシュプラグインを使っている場合は、フィードを再生成する前にキャッシュを削除すると確実だ。

生成されたXMLをブラウザで開き、<g:brand>、<g:google_product_category>、変動商品のIDやタイトルが表示されているかをCtrl+F(MacではCommand+F)で検索する。変動商品は親商品とバリエーションが別々の<item>要素として出力されるため、商品IDではなく商品名の一部で検索すると見つけやすい。

よくある質問

ブランドの出力が安定しないのはキャッシュが原因か?

キャッシュだけが原因になる場合は少ない。ブランドタクソノミーと商品属性の両方に同名のブランドが存在し、フィードのマッピングが不安定なソースを参照していることが多い。キャッシュを削除しても再発するなら、取得ソースの統一が先だ。

変動商品だけがXMLから消えるのはなぜか?

変動商品は親商品と各バリエーションが個別の商品として扱われるため、単純商品より出力条件が厳しい。デフォルトのバリエーション未選択、価格未入力、在庫切れ、または「商品のバリエーションを含める」設定のミスが典型的な原因になる。

Google商品カテゴリの出力形式が正しいか確認する方法は?

出力されたXML内の<g:google_product_category>の値を確認し、Google Merchant Centerが求める形式(不等号で区切られた英語の数字付きカテゴリパス)になっているかを見る。WooCommerceのカテゴリ名だけが入っている場合は、フィールドマッピングの取得ソースが誤っている。

設定を変えてもフィードが更新されない場合は?

フィードの再生成ボタンを押したあと、ブラウザでXMLを開いたときに古い内容が表示されることがある。キャッシュプラグインの削除、サーバー側のキャッシュ(OPcacheやVarnish)のクリア、またはクエリパラメータを付けて開く(例: feed.xml?nocache=1)と最新の出力を確認できる。

ブランドが空の商品はどうやって特定するか?

WooCommerceの商品一覧でフィルタ機能を使い、ブランドタクソノミーが空の商品を絞り込む。もし全商品にブランドが付いているのにXMLには一部しか出ていないなら、取得ソースの不一致を疑う。CSV書き出しでブランド列とブランド属性列を並べて比較すると特定しやすい。

この記事のポイント

  • ブランドは取得ソースの統一が最優先
  • 変動商品はデフォルトバリエーションの選択が必須
  • Google商品カテゴリは全カテゴリのマッピングが必要
  • 設定変更後はキャッシュを削除して再生成する
  • XMLを検索して各フィールドの出力を検証する