After checkout is completed and an order is placed, you must push status updates to Google using Webhooks. The API key must be sent in query params or headers.
1. Order Created Event
- Trigger: Immediately after the order is confirmed (
status: processing). - Endpoint:
POST /webhooks/partners/{partner_id}/events/order
Payload: You must send the full order entity.
{
"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. Order Updates (Shipping/Cancellation)
- Trigger: When there is an update to the order status (e.g., item ships or is canceled).
- Requirement: You must send the full order entity again, not just a partial update.
Example (Shipped):
{
"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"
}