---
title: "Integración con Webhooks"
description: "Envía a tus propios sistemas los eventos de pedidos, clientes y repartidores de Ordering.co en cuanto ocurren, para todo el proyecto o una sola tienda."
canonical: https://www.ordering.co/es/integrations/webhooks/
lang: es
---

![Ordering.co](https://www.ordering.co/assets/logos/ordering-lockup-color-on-white.svg)

Integración de automatización

# Envía cada evento de pedido a los sistemas que ya operas.

Envía a tus propios sistemas los eventos de pedidos, clientes y repartidores de Ordering.co en el momento en que ocurren, para todo el proyecto o para una sola tienda.

[Habla sobre la configuración de Webhooks](https://www.ordering.co/es/contact/)[Explorar integraciones de automatización](https://www.ordering.co/es/integrations/automation/)

Webhooks con Ordering.co

- Eventos

  19 eventos de pedidos, clientes y repartidores en el panel de administración

- Cobertura

  Todo el proyecto o una sola tienda

- Formato

  HTTP POST con cuerpo JSON

- Momento de envío

  De inmediato o con el retraso que elijas

## Tus sistemas reaccionan a cada pedido. Ordering.co opera la operación.

Los webhooks convierten a Ordering.co en una fuente de eventos en vivo para el resto de tu negocio: ERP, contabilidad, CRM, BI, mensajería y tu propio software. Debajo de esos eventos hay una operación de pedidos completa:

- **Más productos y funciones.** Más de 20 productos y más de 1,500 funciones en sitios web, apps, marketplaces, kioscos, call centers, lealtad y delivery.
- **Tus propios canales con tu marca.** Tus clientes piden en tu sitio web, tus apps y tus kioscos, y cada pedido que hacen puede llegar a tus sistemas.
- **Tu diseño, no una plantilla.** Crea una experiencia de pedidos con tu propio diseño a la medida, con ayuda de nuestro equipo.
- **Hecho para ampliarse.** Combina los webhooks con [API y MCP](https://www.ordering.co/es/developers/api-mcp/), con el código fuente de las aplicaciones disponible en los planes que cumplen los requisitos.

## Por qué usar webhooks con Ordering.co

- **Mantén todos tus sistemas sincronizados.** Envía los pedidos a tu ERP, a tu contabilidad o a tu almacén de datos en cuanto se hacen, en lugar de exportarlos y volver a capturarlos.
- **Reacciona en tiempo real.** Tus sistemas reciben el aviso en cuanto ocurre un evento, así que no necesitas consultar los cambios cada cierto tiempo.
- **Avisa a las personas correctas.** Publica los pedidos nuevos en un canal de mensajería del equipo, o avisa a una herramienta de operaciones cuando falla una recolección o una entrega.
- **Haz crecer los datos de tus clientes.** Envía cada registro nuevo a tu CRM para que marketing y ventas den seguimiento con rapidez.
- **Automatiza por tienda o por proyecto.** Dirige los pedidos de una tienda al sistema propio de esa tienda, o envía la actividad de todo el proyecto a una plataforma central.
- **Menos errores.** Los datos se mueven entre sistemas automáticamente, sin transcripción manual.

## Eventos a los que puedes suscribirte

El panel de administración ofrece estos eventos. Cada webhook escucha un evento, identificado por el nombre de su hook.

### Clientes

- **New user** (`users_register`): un cliente crea una cuenta. Disponible para webhooks de todo el proyecto.

### Pedidos

- **New order** (`orders_register`): se hace un pedido.
- **Order status update** (`orders_status_updated`): cualquier cambio en el estado de un pedido. Se activa junto con los eventos de estado más específicos que siguen.
- **Order pending** (`orders_pending`): un pedido pasa a Pending, incluso cuando un pedido anticipado programado se activa.
- **Preorder updated** (`preorder_updated`): un pedido anticipado programado se convierte en un pedido activo.
- **Order completed** (`orders_completed`): un pedido se completa.
- **Order rejected** (`orders_rejected`): un pedido se rechaza.

### Acciones de la tienda

- **Order accepted by business** (`orders_accepted_business`): la tienda acepta un pedido.
- **Order rejected by business** (`orders_rejected_business`): la tienda rechaza un pedido.

### Repartidor y entrega

- **Order update by driver** (`orders_update_driver`): se asigna un repartidor al pedido o cambia el repartidor asignado.
- **Order unassigned driver** (`orders_unassigned_driver`): se quita el repartidor del pedido.
- **Order accepted by driver** (`orders_accepted_driver`) y **Order rejected by driver** (`orders_rejected_driver`).
- **Order pickup completed by driver** (`orders_pickup_completed_driver`) y **Order pickup failed by driver** (`orders_pickup_failed_driver`).
- **Order delivery completed by driver** (`orders_delivery_completed_driver`) y **Order delivery failed by driver** (`orders_delivery_failed_driver`).
- **Order driver waiting for customer** (`orders_driver_waiting_for_customer`): el repartidor está esperando al cliente. Disponible para webhooks de todo el proyecto.
- **Driver changes** (`drivers_changes`): cambia el registro de un repartidor.

### Más eventos de pedidos a través de la API

Cuando creas webhooks a través de la API, también puedes suscribirte a otros eventos de estado de pedidos por el nombre del hook, entre ellos `orders_ready`, `orders_not_ready`, `orders_driver_in_business`, `orders_driver_almost_arrived_business`, `orders_driver_almost_arrived_customer`, `orders_pickup_completed_customer`, `orders_not_pickedup_customer` y `orders_canceled_customer`.

## Qué envía cada webhook

Ordering.co envía una solicitud HTTP `POST` a tu URL con un cuerpo JSON.

- **Los eventos de pedidos** envían el registro completo del pedido: su ID y estado, la tienda y el cliente, el repartidor asignado cuando lo hay, y cada producto con sus opciones y subopciones. Ordering.co agrega campos que facilitan el uso de los datos: `order_type`, `status_name` en el idioma del pedido, `delivery_date`, un resumen legible `to_string` de cada producto y un bloque `calculated` con los totales del pedido.
- **New user** envía el registro de la cuenta nueva, como el correo electrónico del cliente.
- **Driver changes** envía el `id` del repartidor, los `changes`, los valores `current` y `issued_at`.

Un payload abreviado de un pedido se ve así:

```
{
  "id": 1024,
  "status": 0,
  "status_name": "Pending",
  "delivery_type": 1,
  "order_type": "Delivery",
  "delivery_datetime": "2026-09-24 19:30:00",
  "delivery_date": "2026-09-24",
  "business_id": 12,
  "customer_id": 3456,
  "driver_id": null,
  "products": [
    {
      "name": "Margherita pizza",
      "quantity": 2,
      "options": [
        { "name": "Size", "suboptions": [{ "name": "Large" }] }
      ],
      "to_string": "2 x Margherita pizza: $24\n  Size\n    Large  $4\n"
    }
  ],
  "calculated": {
    "subtotal": 24,
    "tax": 1.92,
    "delivery_fee": 3.5,
    "driver_tip": 2,
    "service_fee": 0,
    "discount": 0,
    "total": 31.42
  }
}
```

El cuerpo no repite el nombre del evento, porque cada webhook escucha un solo evento. Asigna a cada evento su propia URL, o agrega un parámetro de consulta a través de la API, para que tu endpoint sepa qué evento llegó.

## Cómo llega un evento a tu sistema

1. Ocurre algo en tu operación: un cliente se registra, se hace un pedido, una tienda lo acepta o un repartidor completa la entrega.
2. Ordering.co encuentra todos los webhooks activos de ese evento, tanto los de todo el proyecto como, en los eventos de pedidos, los de la tienda del pedido.
3. Cada webhook se pone en cola y se envía de inmediato, o después del retraso que elegiste para él.
4. Ordering.co envía el payload JSON a tu URL, con los encabezados y los parámetros de consulta que configuraste.
5. Tu sistema actúa: crea el pedido en tu ERP, actualiza un tablero, avisa a tu equipo o inicia un flujo de trabajo.

## Configura y sal a producción

### Para todo el proyecto

La [guía de Ordering.co para configurar webhooks](https://docs.ordering.co/docs/products/dashboard/settings/pro/developers/webhooks/) (en inglés) recorre cada paso:

1. En el panel de administración, abre **Settings > Pro > Developers** y selecciona la tarjeta **Webhooks**.
2. Selecciona **Add new webhook**.
3. Ingresa la URL de destino, elige el evento y elige el retraso.
4. Guarda el webhook. Ahora aparece en la lista, donde puedes revisarlo o eliminarlo.

Los webhooks de todo el proyecto los administran los administradores del proyecto.

### Para una sola tienda

Abre **Stores**, selecciona la tienda y elige **Webhooks** en el panel de la tienda. Agrega el evento, la URL y el retraso. Estos webhooks solo se activan con los pedidos de esa tienda, así que cada sucursal o franquiciatario puede conectar su propio sistema.

### Elige cuándo se activa

Cada webhook puede activarse **de inmediato**, después de **5, 10 o 15 minutos**, o después del **tiempo de entrega** de la tienda, el **tiempo para recoger** de la tienda o el **tiempo de preparación** del pedido.

### A través de la API

Tus desarrolladores pueden administrar los webhooks con las [operaciones de webhooks de la referencia de la API](https://docs.ordering.co/api-reference/#tag/webhooks) (en inglés), autenticadas con una [llave de API](https://docs.ordering.co/docs/products/dashboard/settings/pro/developers/api-keys/) del proyecto en el encabezado `X-Api-Key`:

- **Webhooks del proyecto:** listarlos, crearlos, actualizarlos y eliminarlos en `/webhooks`, con un `hook`, una `url` y un `delay` opcional.
- **Webhooks de la tienda:** las mismas operaciones en `/business/{business}/webhooks`.
- **Encabezados personalizados y parámetros de consulta:** agrega `headers` y `query_params` a un webhook, hasta 10 de cada uno.
- **Suscripciones desde otras plataformas:** una plataforma de integración puede suscribir y cancelar la suscripción de un webhook con `/webhooks/services/subscribe` y `/webhooks/services/unsubscribe`, usando su propio nombre de `platform` y el `id` de la suscripción.

## Entrega, tiempos y reintentos

- **En cola y enviados en segundo plano.** Las entregas se ejecutan en una cola, por separado del pedido en sí, y cada webhook se activa con el retraso elegido.
- **Reintentos en caso de fallo.** Un webhook con `retry_on_fail` habilitado reintenta una entrega fallida unos segundos después, hasta cinco intentos en total.
- **Endpoints en pausa.** Si un endpoint sigue fallando, el webhook puede pausarse. Sus campos `disabled_until` y `disabled_reason` indican cuándo se reanuda y por qué se pausó.
- **Más de una entrega por cambio.** Order status update se activa con cada cambio de estado, junto con el evento específico de ese cambio. Suscríbete solo a los eventos que necesitas y maneja de forma segura una entrega repetida del mismo evento, por ejemplo usando el `id` y el `status` del pedido.

## Protege tu endpoint

- **Usa HTTPS** en cada URL de destino.
- **Autentica cada solicitud.** Agrega un encabezado o un parámetro de consulta secreto a través de la API y rechaza las solicitudes que no lo incluyan. Los valores de los encabezados se guardan cifrados.
- **Valida el payload** antes de actuar sobre él, y responde con rapidez.
- **Protege los datos de los clientes.** Los payloads llevan datos del cliente y del pedido, así que no registres credenciales ni datos sensibles de los clientes, y compártelos solo con sistemas aprobados.
- **Limita el acceso.** Solo los administradores del proyecto administran los webhooks de todo el proyecto. Mantén en privado las llaves de API y reemplaza cualquier llave que sospeches expuesta.

## Prueba antes de depender de él

1. Prueba en un entorno de staging antes de habilitar un webhook en un proyecto en producción.
2. Crea un evento equivalente, como un pedido de prueba o un registro de prueba, y revisa que tu endpoint recibió el payload.
3. Confirma que tu sistema lo procesó, no solo que la solicitud llegó.
4. Para probar tu endpoint sin un evento real, tus desarrolladores pueden enviar un cuerpo JSON de hasta 20,000 caracteres a cualquier URL con `/webhooks/dispatch`, ahora o con un retraso de hasta 10 días, con encabezados y parámetros de consulta opcionales.

## Webhooks, plugins o la API

- **Los webhooks** envían los eventos de Ordering.co a una URL que tú operas. Úsalos cuando tu propio sistema deba reaccionar en el momento en que ocurre algo.
- **La [Ordering API](https://www.ordering.co/es/integrations/ordering-api/)** permite que tu sistema lea y actualice los datos de Ordering.co cuando los necesite, por ejemplo para obtener más detalles después de que llega un webhook.
- Los **[Plugins](https://www.ordering.co/es/integrations/plugins/)** se ejecutan dentro de la plataforma y reciben los eventos ahí, sin un servidor aparte de tu parte.
- **[Zapier](https://www.ordering.co/es/integrations/zapier/)** recibe los mismos eventos a través de una URL de webhook y los conecta con miles de apps sin código.

## Más formas de automatizar Ordering.co

- **[Zapier](https://www.ordering.co/es/integrations/zapier/)** envía los eventos de Ordering.co a miles de apps sin escribir código.
- La **[Ordering API](https://www.ordering.co/es/integrations/ordering-api/)** lee y actualiza tus datos de Ordering.co desde tus propias aplicaciones.
- **[API y MCP](https://www.ordering.co/es/developers/api-mcp/)** muestran todo lo que los desarrolladores y los agentes de IA pueden construir sobre Ordering.co.

Configuración

## Dirige un evento a tu URL y deja que cada pedido llegue a tus sistemas.

1. 01

   **Prepara tu endpoint**

   Ten en marcha una URL que acepte solicitudes POST con un cuerpo JSON, valide lo que recibe y responda con rapidez.

2. 02

   **Agrega el webhook**

   En el panel de administración, abre Settings > Pro > Developers > Webhooks, selecciona Add new webhook, ingresa tu URL y elige el evento y el retraso. Para una sola tienda, usa el área de Webhooks de esa tienda.

3. 03

   **Prueba con un evento real**

   Crea un evento equivalente en un entorno de pruebas y confirma que tu endpoint recibió el payload y lo procesó como esperas.

Recursos

## Guías y referencias.

- [Guía de Ordering.co para configurar webhooks (en inglés)Abre la guía con los detalles de configuración y operación.](https://docs.ordering.co/docs/products/dashboard/settings/pro/developers/webhooks/)
- [Ajustes de Developers de Ordering.co (en inglés)Abre la guía con los detalles de configuración y operación.](https://docs.ordering.co/docs/products/dashboard/settings/pro/developers/)
- [Operaciones de webhooks en la referencia de la API de Ordering.co (en inglés)Abre la guía con los detalles de configuración y operación.](https://docs.ordering.co/api-reference/#tag/webhooks)
- [Modelo de Webhooks de Ordering.co (en inglés)Abre la guía con los detalles de configuración y operación.](https://docs.ordering.co/api-reference/guides/webhooks-model)
- [Guía de llaves de API de Ordering.co (en inglés)Abre la guía con los detalles de configuración y operación.](https://docs.ordering.co/docs/products/dashboard/settings/pro/developers/api-keys/)
- [Guía de Ordering.co para configurar Zapier (en inglés)Abre la guía con los detalles de configuración y operación.](https://docs.ordering.co/docs/products/dashboard/settings/pro/integrations/zapier/)

Preguntas

## Preguntas frecuentes.

¿Qué eventos puedo enviar a mis sistemas?

El panel de administración ofrece 19 eventos. Cubren los registros de clientes nuevos, los pedidos nuevos, cada actualización del estado de un pedido, la aceptación o el rechazo de la tienda y del repartidor, los resultados de la recolección y la entrega, la asignación de repartidor, los pedidos anticipados que se activan y los cambios de repartidor. A través de la API puedes suscribirte a más eventos de estado de pedidos, como un pedido listo o cancelado por el cliente.

¿Qué datos envía un webhook?

Los eventos de pedidos envían el registro completo del pedido, con sus productos, opciones y subopciones, un resumen legible de cada producto, el tipo de pedido y el nombre del estado, y un bloque calculado con el subtotal, los impuestos, la tarifa de entrega, la propina del repartidor, el cargo por servicio, el descuento y el total. Los eventos de usuario nuevo envían el registro de la cuenta nueva, y los cambios de repartidor envían el ID del repartidor, los campos modificados, los valores actuales y el momento en que se emitió el cambio.

¿Puedo enviar los pedidos de una tienda al sistema propio de esa tienda?

Sí. Los webhooks creados en el área de Webhooks de una tienda solo se activan con los pedidos de esa tienda, mientras que los webhooks de Settings > Pro > Developers cubren todo el proyecto. Los administradores y los gerentes del negocio de la tienda pueden administrar los webhooks de la tienda.

¿Puedo retrasar un webhook?

Sí. Cada webhook puede activarse de inmediato o después de 5, 10 o 15 minutos, o después del tiempo de entrega de la tienda, el tiempo para recoger de la tienda o el tiempo de preparación del pedido. Un retraso es útil para seguimientos que deben llegar cuando se espera que el pedido ya se haya entregado o recogido.

¿Cómo me aseguro de que una solicitud viene de mi proyecto de Ordering.co?

Usa una URL HTTPS y agrega al webhook, a través de la API, encabezados personalizados o parámetros de consulta, como un valor secreto que tu endpoint verifique antes de aceptar la solicitud. Los valores de los encabezados se guardan cifrados.

¿Qué pasa si mi endpoint no está disponible?

Un webhook con reintento en caso de fallo habilitado reintenta una entrega fallida, hasta cinco intentos en total. Si un endpoint sigue fallando, el webhook puede pausarse, y su registro indica cuándo se reanuda y por qué se pausó. Construye tu endpoint para que maneje de forma segura una entrega repetida del mismo evento.

¿Necesito a un desarrollador para usar webhooks?

Para recibir webhooks en tu propio sistema, sí, porque algo tiene que ejecutar la URL que los recibe. Si prefieres conectar apps sin código, usa Zapier, que recibe los mismos eventos de Ordering.co a través de una URL de webhook.

¿En qué se diferencian los webhooks de los plugins y de la API?

Los webhooks envían eventos de Ordering.co a una URL que tú operas. La Ordering API permite que tu sistema lea y modifique los datos de Ordering.co cuando lo necesite. Los plugins se ejecutan dentro de la plataforma y reciben los eventos ahí. Muchos proyectos combinan webhooks con la API.

## Conecta Ordering.co con el resto de tu ecosistema.

Cuéntanos qué eventos necesitas, a dónde deben ir y qué debe pasar cuando lleguen, y te ayudaremos a planear la conexión.

[Habla sobre la configuración de Webhooks](https://www.ordering.co/es/contact/)[Volver a integraciones de automatización](https://www.ordering.co/es/integrations/automation/)
