MercatDevelopers
  1. Webhooks
MercatDevelopers
  • Getting Started
  • Auth
    • Authenticate client
      POST
  • Stores
    • List all stores
      GET
    • Get store details
      GET
  • Menus
    • Get menu details
      GET
  • Orders
    • Get order details
      GET
  • Webhooks
    • Webhooks
    • stores.update
    • orders.create
    • orders.update
    • menus.update
  1. Webhooks

stores.update

Webhook
POST
stores.update
Triggered when tracked store fields change: name, text_address, latitude, longitude, phone, menu_id.
The payload contains the full Store object with current values.

HTTP Request Details#

Headers:
Content-Type: application/json
X-Request-Id: Unique UUID for this webhook request
X-Webhook-Secret: Your configured webhook secret (if set)
Timeout: 10 seconds

Delivery#

Automatic retries on failure with exponential backoff
Duplicate detection based on message content
Events delivered in order per resource

Security#

Configure a webhook secret during setup. Mercat will include it in the X-Webhook-Secret header. Verify this header matches your configured secret.

Best Practices#

Return 200 OK within 10 seconds
Process webhooks asynchronously
Implement idempotency using event_id
Verify X-Webhook-Secret header on every request
Use event_timestamp to ignore out-of-order events

Request

Body Params application/jsonRequired

Example
{
    "client_id": "acme-corp",
    "event_id": "550e8400-e29b-41d4-a716-446655440000",
    "event_type": "stores.update",
    "event_timestamp": 1705348800,
    "api_version": "v1",
    "event_data": {
        "id": 1,
        "name": "Downtown Store Updated",
        "text_address": "123 Main Street, Santiago",
        "latitude": -33.4489,
        "longitude": -70.6693,
        "phone": "+56912345678",
        "menu_id": 10
    }
}

Responses

🟢200OK
Webhook received successfully
This response does not have a body.
🔴500Server Error
Modified at 2026-02-17 15:11:07
Previous
Webhooks
Next
orders.create
Built with