購入手続きが完了して注文が確定したら、Webhook を使用してステータスの更新を Google にプッシュする必要があります。API キーは、クエリ パラメータまたはヘッダーで送信する必要があります。
1. Order Created イベント
- トリガー: 注文が確定した直後(
status: processing)。 - エンドポイント:
POST /webhooks/partners/{partner_id}/events/order
ペイロード: 完全な注文エンティティを送信する必要があります。
{
"ucp": { "version": "2026-01-01", "capabilities": [...] },
"id": "order_789",
"checkout_id": "checkout_xyz789",
"line_items": [
{
"id": "line_1",
"item":
{
"id": "product_12345",
"title": "Running Shoes",
"price": 10000
},
"quantity": { "total": 1, "fulfilled": 0 },
"totals": [
{"type": "subtotal", "amount": 10000},
{"type": "total", "amount": 10000}
],
"status": "processing"
}
],
"fulfillment": {
"expectations": [
{
"id": "exp_1",
"line_items": [{ "id": "line_1", "quantity": 1 }],
"method_type": "shipping",
"destination": {
"street_address": "123 Main St",
"address_locality": "Austin",
"address_region": "TX",
"address_country": "US",
"postal_code": "78701"
},
"description": "Arrives in 2-3 business days",
"fulfillable_on": "now"
}
]
},
"permalink_url": "https://merchant.example.com/orders/789"
}
2. 注文の最新情報(発送/キャンセル)
- トリガー: 注文ステータスが更新されたとき(商品が発送されたときやキャンセルされたときなど)。
- 要件: 部分的な更新ではなく、完全な注文エンティティを再度送信する必要があります。
例(発送済み):
{
"id": "order_789",
"checkout_id": "checkout_xyz789",
// Full line items must be included
"line_items": [
{
"id": "line_1",
"item":
{
"id": "product_12345",
"title": "Running Shoes",
"price": 10000
},
"quantity": { "total": 1, "fulfilled": 1 },
"totals": [
{"type": "subtotal", "amount": 10000},
{"type": "total", "amount": 10000}
],
"status": "fulfilled"
}
],
// Updated fulfillment details
"fulfillment": {
"events": [
{
"id": "evt_1",
"occurred_at": "2025-01-08T10:30:00Z",
"type": "shipped",
"line_items": [{ "id": "line_1", "quantity": 1 }],
"tracking_number": "123456789",
"tracking_url": "https://fedex.com/track/123456789",
"description": "Shipping departed from warehouse"
}
]
},
"expectations": {"..."},
"permalink_url": "https://merchant.example.com/orders/789"
}