データフィードのバッチ取り込みを使用すると、レストラン、サービス、メニューを注文エンドツーエンドで利用できるようになります。
Google は、ホスト プラットフォームに保存されているデータフィードを取得して処理します。取り込みが正常に完了すると、取り込みのステータス、アップロードされた新しいファイル、ファイルの合計数、エラー、警告などの情報が Ordering End-to-End に表示されます。
この記事では、アクション センターのバッチフィード エラーのほとんどについて、その意味と解決方法を詳しく説明します。ハイパーリンクをクリックすると、リレーショナル インベントリ スキーマ ページに移動します。このページには、使用可能なデータ型や特定のフィールドとエンティティの例など、より詳しいコンテキストが記載されています。
アクション センターでバッチフィードのエラーを確認するにはどうすればよいですか?
データフィードを使用すると、レストラン、サービス、メニューを注文エンドツーエンドで利用できるようになります。データフィードのホスティングの詳細については、バッチ取り込みの記事をご覧ください。
フィード ファイルがアップロードされると、Google によって取得され、処理されます。問題がある場合は、エラーとして表示されます。アクション センターでバッチ フィードのエラーを確認する手順は次のとおりです。
アクション センターのメイン ナビゲーション パネルで、[フィード] > [履歴] セクションに移動します。
環境(本番環境またはサンドボックス)を選択し、[取り込み履歴] タブをクリックします。
ルックバック ウィンドウを入力して、過去 X 日間の取り込み履歴を表示する
特定のフィード取り込みのエラーの詳細を表示するには、矢印(→)をクリックします。
エラーと警告の詳細を確認できます。
バッチフィードのエラーの一覧は次のとおりです。
エラー | 意味 | 修正方法 |
データがない - MenuItem
メニューに MenuItem が 1 つ以上必要です。 |
MenuItem なしで Menu が定義されています。 |
フィード内の誤った メニュー エンティティの ID を見つけて、メニュー アイテムを追加します。 |
データが正しくない - maxPrice
フィールド maxPrice のデータが正しくない
|
maxPrice フィールドの値が正しくない |
エラーの説明に記載されているエンティティ ID の maxPrice フィールドの値が 0 より大きいことを確認します。 |
データが正しくない - eligibleQuantityMax
フィールド eligibleQuantityMax のデータが正しくない
|
eligibleQuantityMax フィールドの値が正しくない |
指定されたエンティティ ID の eligibleQuantityMax フィールドの値が 0 より大きいことを確認します。 |
データが正しくない - leadTimeMax
フィールド leadTimeMax のデータが正しくない
|
フィールド leadTimeMax には整数値を指定する必要があります。例: 12。他のすべてのデータ型(double(15.0)を含む)ではエラーがスローされます。 |
エラー メッセージに記載されているエンティティ ID の leadTimeMax プロパティの値が整数であることを確認します。 |
データが正しくない - validFrom
フィールド validFrom のデータが正しくない
|
validFrom フィールドの値には、型が String の ISO タイムスタンプ形式を指定する必要があります。 |
validFrom フィールドのエラー メッセージのエンティティ ID の値がタイムスタンプ文字列であることを確認します。例: 「 2022-01-02T00:00:00-07:00 」
|
データがない - ServiceHours
OperationHour にネストされた ServiceHours が含まれていない |
OperationHours エンティティは定義されていますが、それに対応する有効な ServiceHours エンティティがありません。 | エラー メッセージに記載されているエンティティ ID に、対応する ServiceHours エンティティが正しく定義されているかどうかを確認します。 例: エラー メッセージが「Entity id: store-1:DELIVERY OperationHour contains no nested ServiceHours」で、OperationHours エンティティのエンティティ ID が「store-1:DELIVERY:operation_hours」であると仮定します。この場合、「store-1:DELIVERY」 ServiceID と「store-1:DELIVERY:operation_hours」OperationHoursID に関連付けられた serviceHours エンティティがあるかどうかを確認します。 |
データが正しくない - advanceBookingRequirementMin
フィールド advanceBookingRequirementMin のデータが正しくない
|
フィールド advanceBookingRequirementMin には整数値を指定する必要があります。例: 12。他のすべてのデータ型(double(15.0)を含む)ではエラーがスローされます。 |
エラー メッセージに記載されているエンティティ ID の advanceBookingRequirementMin プロパティの値が整数であることを確認します。 |
データが正しくない - availabilityStarts
フィールド availabilityStarts のデータが正しくない
|
availabilityStarts フィールドの値には、型が String の ISO タイムスタンプ形式を指定する必要があります。 |
availabilityStarts フィールドのエラー メッセージのエンティティ ID の値がタイムスタンプ文字列であることを確認します。例: 「 2022-01-02T00:00:00-07:00 」
|
データが正しくない - closes
フィールド closes のデータが正しくない
|
closes フィールドの値には、型が String の ISO タイムスタンプ形式を指定する必要があります。 |
closes フィールドのエラー メッセージのエンティティ ID の値がタイムスタンプ文字列であることを確認します。例: 「 2022-01-02T00:00:00-07:00 」
|
データが正しくない - dateModified
フィールド dateModified のデータが正しくない
|
dateModified フィールドの値には、型が String の ISO タイムスタンプ形式を指定する必要があります。 |
dateModified フィールドのエラー メッセージのエンティティ ID の値がタイムスタンプ文字列であることを確認します。例: 「 2022-01-02T00:00:00-07:00 」
|
データが正しくない - discount
フィールド discount のデータが正しくない
|
discount フィールドには数値を指定する必要があります。 |
discount フィールドのエラー メッセージのエンティティ ID の値が数値であることを確認します。例: 10
|
データが正しくない - discountPercentage
フィールド discountPercentage のデータが正しくない
|
discountPercentage フィールドには数値を指定する必要があります。 |
discountPercentage フィールドのエラー メッセージのエンティティ ID の値が数値であることを確認します。例: 15
|
データが正しくない - geoRadius
フィールド geoRadius のデータが正しくない
|
フィールド geoRadius には正の整数値を指定してください。 |
エラー メッセージに記載されているエンティティ ID の geoRadius プロパティの値が整数であることを確認します。例: 10000 |
データが正しくない - image
フィールド image のデータが正しくない
|
image フィールドは有効な URL を想定しており、それ以外が検出されるとエラーをスローします。 |
image フィールドの値が有効な URL 文字列かどうかを確認します。 |
データが正しくない - latitude
フィールド latitude のデータが正しくない
|
latitude フィールドの値の型は double です。 |
エラーの説明に記載されている Restaurant タイプのエンティティ ID について、latitude フィールドの値が double であることを確認します。例: 35.4565 |
データが正しくない - leadTimeMin
フィールド leadTimeMin のデータが正しくない
|
フィールド leadTimeMin には整数値を指定する必要があります。例: 12。他のすべてのデータ型(double(15.0)を含む)ではエラーがスローされます。 |
エラー メッセージに記載されているエンティティ ID の leadTimeMin プロパティの値が整数であることを確認します。 |
データが正しくない - longitude
フィールド longitude のデータが正しくない
|
longitude フィールドの値の型は double です。 |
エラーの説明に記載されている Restaurant タイプのエンティティ ID について、longitude フィールドの値が double であることを確認します。例: 35.4565 |
データが正しくない - menuId
フィールド menuId のデータが正しくない
|
menuId フィールドの値は空でない文字列にする必要があります。 |
エラーの説明に記載されているエンティティ ID の値が、String 型で空でないことを確認します。 |
データが正しくない - name
フィールド name のデータが正しくない
|
フィールド name の値は空でない文字列にする必要があります。 |
エラー メッセージに記載されているエンティティ ID の値が空でない文字列かどうかを確認します。 |
データが正しくない - nutrition.calories
フィールド nutrition.calories のデータが正しくない
|
calories フィールドの値は、「NN Cal」形式の文字列にする必要があります。 |
エラー メッセージのエンティティ ID の値が、正しい形式の正の数値であることを確認します。 例: 「123.32 カロリー」 |
データが正しくない - opens
フィールド opens のデータが正しくない
|
opens フィールドの値には、型が String の ISO タイムスタンプ形式を指定する必要があります。 |
opens フィールドのエラー メッセージのエンティティ ID の値がタイムスタンプ文字列であることを確認します。例: 「 2022-01-02T00:00:00-07:00 」
|
データが正しくない - price
フィールド price のデータが正しくない
|
price フィールドには数値を指定する必要があります。 |
price フィールドのエラー メッセージのエンティティ ID の値が数値であることを確認します。例: 15.4 |
データが正しくない - sku
フィールド sku のデータが正しくない
|
フィールド sku の値は空でない文字列にする必要があります。 |
エラー メッセージに記載されているエンティティ ID の値が空でない文字列かどうかを確認します。 |
データが正しくない - validFrom
フィールド validFrom のデータが正しくない
|
validFrom フィールドの値には、型が String の ISO タイムスタンプ形式を指定する必要があります。また、validFrom の値は validThrough 以下にする必要があります。 |
エラーの説明に記載されているエンティティ ID について、validFrom フィールドの値がタイムスタンプ文字列であることを確認します。「 2022-01-02T00:00:00-07:00 」
また、 validFrom の値が validThrough 以下であることを確認してください。
|
データが正しくない - validThrough
フィールド validThrough のデータが正しくない
|
validThrough フィールドの値には、型が String の ISO タイムスタンプ形式を指定する必要があります。また、validThrough の値は validFrom 以上である必要があります。 |
エラーの説明に記載されているエンティティ ID について、validThrough フィールドの値がタイムスタンプ文字列であることを確認します。「 2022-01-02T00:00:00-07:00 」
また、 validThrough の値が validFrom 以上であることを確認します。
|
データが正しくない - value
フィールド value のデータが正しくない
|
value フィールドは、Optiontype が定義されている場合にのみ必要です。文字列または列挙型 value を想定しています。列挙型の値は、PIZZA_SIDE オプション タイプに固有のものです。 |
エラーの説明に記載されている entityID について、value フィールドに空でない文字列が含まれているかどうかを確認します。 |
メニューが大きすぎる
メニューのサイズが上限を超えている |
このエラーは、メニュー ファイルのサイズがシステムで許容できるサイズを超えている場合にスローされます。各ファイル(複数のエンティティを含めることができます)は 200 MB を超えないようにしてください。最上位エンティティのレストラン、サービス、メニューとその子エンティティの合計サイズは 4 MB を超えてはなりません。 | メニュー ファイルのサイズがドキュメントで指定されている上限内であることを確認します。 |
データがない - addressCountry
入力に必須項目 addressCountry がありません。
|
addressCountry は必須フィールドですが、レストラン エンティティに含まれていません。 |
エラーの説明に記載されているエンティティ ID について、addressCountry フィールドが空でない文字列かどうかを確認します。 |
データがない - addressLocality
入力に必須項目 addressLocality がありません。
|
addressLocality は必須フィールドですが、レストラン エンティティに含まれていません。 |
エラーの説明に記載されているエンティティ ID について、addressLocality フィールドが空でない文字列かどうかを確認します。 |
データがない - addressRegion
入力に必須項目 addressRegion がありません。
|
addressRegion は必須フィールドですが、レストラン エンティティに含まれていません。 |
エラーの説明に記載されているエンティティ ID について、addressRegion フィールドが空でない文字列かどうかを確認します。 |
データがない - 料金
配達/持ち帰りサービスに配送料金がない |
Fee タイプのエンティティに、デリバリー/テイクアウト サービスに関連付けられた price がない。 |
エラーの説明に記載されているエンティティ ID について、こちらの手順に沿って、デリバリー/テイクアウトの ServiceType に Fee エンティティが正しく設定されていることを確認します。 |
データがない - FeeValue
入力には price 、pricePerMeter 、percentageOfCart のいずれかのフィールドが必要です。 |
Fee の値には、price, pricePerMeter or percentageOfCart のいずれか 1 つを設定する必要があります。 |
エラーの説明に記載されているエンティティ ID で、price, pricePerMeter or percentageOfCart が 1 つだけ設定されていることを確認します。 |
データがない - geoMidpointLatitude
入力に必須項目 geoMidpointLatitude がありません。
|
ServiceArea を定義する場合、geoRadius を使用する場合は geoMidpointLongitude とともに geoMidpointLatitude が必要です。 |
エラーの説明に記載されているエンティティ ID について、geoMidpointLatitude フィールドの値が定義され、型が double であることを確認します。例: 35.4565 |
データがない - 入力に geoMidpointLongitude
geoMidpointLongitude がありません。 |
ServiceArea を定義する場合、geoRadius を使用する場合は geoMidpointLatitude とともに geoMidpointLongitude が必要です。 |
エラーの説明に記載されているエンティティ ID について、geoMidpointLatitude フィールドの値が定義され、型が double であることを確認します。例: 122.4565 |
データがない - MenuItemOption
MenuItemOption には MenuItemOffer が必要です |
MenuItemOption ごとに、対応する MenuItemOffer エンティティが必要です。 | エラーの説明に記載されているすべてのメニューアイテム ID について、すべての MenuItemOption エンティティに MenuItemOffer エンティティが適切に定義されていることを確認します。 |
データがない - OperationHours
サービスに営業時間が設定されていません |
デリバリー/テイクアウト サービス エンティティに、対応する OperationHoursエンティティがありません。OperationHours には、ユーザーがフローからアクセスして ASAP または将来の注文をできる注文可能期間を指定します。 | エラーの説明に記載されているエンティティ ID について、OperationHours エンティティが正しく定義されていることを確認します。 |
データがない - postalCode
入力に必須項目 postalCode がありません。
|
postalCode は必須フィールドですが、レストラン エンティティに含まれていません。 |
エラーの説明に記載されているエンティティ ID について、postalCode フィールドが空でない文字列かどうかを確認します。 |
データがない - priceCurrency
入力に必須項目 priceCurrency がありません。
|
priceCurrency フィールドが空であるか、不正確な値が含まれています。3 文字の ISO 4217 通貨コードを指定します。 |
エラーの説明に記載されているエンティティ ID で、priceCurrency フィールドが空でない文字列で、3 文字の ISO 4217 通貨コードが含まれていることを確認します。例: USD、EUR |
データがない - ServiceArea
配送サービスに配送サービスエリアがない |
関連する Service エンティティの serviceType が「DELIVERY」に設定されている場合、ServiceArea エンティティを実装する必要があります。 |
エラー メッセージに記載されている Service エンティティ ID に、適切に定義された ServiceArea エンティティがあることを確認します。 |
データがない - streetAddress
入力に必須項目 streetAddress がありません。
|
streetAddress は必須フィールドですが、レストラン エンティティに含まれていません。 |
エラーの説明に記載されている ID で レストラン エンティティを見つけ、streetAddress フィールドが空でない文字列かどうかを確認します。 |
古いエンティティ | データフィード取り込み中に、Ordering End-to-End は、受信する各エンティティの変更日タイムスタンプを、以前に取り込まれたエンティティのタイムスタンプと比較します。データフィード内のエンティティが新しい場合を除き、受信したエンティティは古いエンティティとしてマークされます。 | エラーの説明に記載されているすべてのエンティティ ID について、Google はデータフィード内のタイムスタンプが、Google に送信された以前のエンティティの更新で設定されたタイムスタンプよりも新しいことを確認する必要があります。詳しくは、エンティティのバージョニングをご覧ください。 |