---
title: "Agentes de compra con IA y tiendas personalizadas"
description: "Los agentes de compra con IA y los enlaces de la app Shop aún no pueden elegir una fecha de entrega, pero tus reglas de fecha se siguen aplicando en el checkout. Avisa a los agentes de que se necesita una fecha y deja que las tiendas Hydrogen o headless escriban la fecha para que el checkout la acepte."
contentType: "docs"
locale: "es"
localized: true
source: "https://orderrules.com/es/docs/delivery/ai-shopping-agents-and-headless"
slug: "delivery/ai-shopping-agents-and-headless"
---
## Agentes de compra con IA (ChatGPT, Gemini, Copilot) y enlaces de la app Shop

**Todavía no pueden elegir una fecha de entrega. Shopify no ofrece a las apps ninguna forma de pedírsela a un agente.** Tus reglas de fecha se siguen aplicando a sus pedidos en el checkout:

- Con **Bloquear**, el checkout pide al cliente que termine en tu tienda y elija la fecha.
- Con **Aceptar**, el pedido se completa y el cliente elige la fecha en la página de confirmación del pedido (agradecimiento), o más tarde en la página de estado del pedido una vez que ha iniciado sesión en su cuenta.

Consulta [Pedidos sin fecha de entrega](/docs/delivery/orders-without-a-delivery-date).

### Avisa a los agentes de que se necesita una fecha

OrderRules → **Fechas de entrega** → **Pedidos y preparación** → **Indica a los agentes de IA que se necesita una fecha**. Copia la pregunta frecuente lista para usar y añádela a la app gratuita **Knowledge Base** de Shopify, que los agentes de IA consultan cuando los compradores preguntan por tu tienda. Añadir la misma frase a tu política de envíos también ayuda.

![El recuadro de OrderRules para indicar a los agentes de IA que se necesita una fecha, con una FAQ lista para copiar en la app Knowledge Base de Shopify](/images/docs/delivery-ai-agents-faq.png)

## Tiendas personalizadas (Hydrogen, headless, agentes propios)

El selector de fecha de entrega de OrderRules es un bloque de app de tema, así que solo aparece en los temas de Online Store. Una tienda creada con la Storefront API se lo salta, sea Hydrogen o una app personalizada de React o Next.js. **El checkout sigue aplicando tus reglas.**

Para que los compradores elijan la fecha en tu propia tienda, escríbela en el carrito con los mismos campos que usa el selector. Las consultas de abajo son para la Storefront API 2026-10.

### 1. Lee las fechas abiertas

```graphql
query OrderRulesDelivery {
  shop {
    metafield(namespace: "order_rules", key: "delivery") { value }
  }
}
```

`value` es JSON. Las partes que necesitas:

| Campo | Significado |
|---|---|
| `rules[]` | Reglas de entrega: `id`, `scope` (`storewide` / `product` / `collection` / `tag`), `requireDate`, `requireSlot`, `slotTemplateId`, `allowedDates` (YYYY-MM-DD, ya descontadas la hora límite y la antelación) |
| `defaultRuleId` | La regla de toda la tienda, si existe |
| `productRuleMap` | Id numérico de producto → id de regla |
| `collectionProductIds` / `tagProductIds` | Qué productos cubre una regla de colección o de etiqueta |
| `blackouts` | Fechas cerradas (YYYY-MM-DD) |
| `slotTemplates[id].windows[]` | Franjas horarias: `id`, `label`, `start`, `end` |
| `capacity[date][slotId or "_all"]` | Reservas restantes; `0` significa completo |

Muestra una fecha solo si se cumplen todas estas condiciones:

- está en los `allowedDates` de la regla;
- no está en `blackouts`;
- `capacity[date]._all` no es `0`.

Cuando `requireDate` es true, la fecha es obligatoria. El metacampo se actualiza cada vez que cambias tus ajustes de entrega y después de que lleguen pedidos. Trátalo como de solo lectura: el formato es interno y puede cambiar.

### 2. Escribe la fecha elegida

**Una fecha para todo el pedido.** Atributos del carrito:

```graphql
mutation SetDeliveryDate($cartId: ID!) {
  cartAttributesUpdate(cartId: $cartId, attributes: [
    { key: "_os_dp", value: "d|2026-11-04|am" }
    { key: "delivery_date", value: "2026-11-04" }
    { key: "delivery_slot", value: "am" }
  ]) {
    cart { id }
    userErrors { field message }
  }
}
```

- `_os_dp` es lo que lee la comprobación del checkout. Su formato es `d|YYYY-MM-DD|slotId`; deja la franja vacía cuando no hay franjas horarias, por ejemplo `d|2026-11-04|`.
- `delivery_date` y `delivery_slot` son lo que leen tu lista de pedidos, las etiquetas, la exportación CSV y los recuentos de capacidad.

**O una fecha por producto.** Un atributo de línea:

```graphql
mutation AddDatedLine($cartId: ID!) {
  cartLinesAdd(cartId: $cartId, lines: [{
    merchandiseId: "gid://shopify/ProductVariant/123"
    quantity: 1
    attributes: [{ key: "_os_dpl", value: "d|2026-11-04|am" }]
  }]) {
    cart { id }
    userErrors { field message }
  }
}
```

El `_os_dpl` propio de una línea prevalece sobre el `_os_dp` del pedido. Las líneas que no lo tienen usan la fecha del pedido.

### 3. Compruébalo

Ve al checkout con un producto que exija fecha.

- **Sin fecha:** el checkout muestra «Please choose a delivery date…».
- **Con una fecha válida:** el checkout continúa, y el pedido muestra la fecha en sus detalles adicionales.

## Enlaces en lugar de una tienda

Para ventas por chat, correo o redes sociales, usa [Enlace de pago con fecha de entrega](/docs/delivery/checkout-links-with-delivery-date). Crea un enlace de carrito con la fecha ya definida.

## Relacionado

- [Pedidos sin fecha de entrega](/docs/delivery/orders-without-a-delivery-date) · [Protección del checkout](/docs/delivery/checkout-protection) · [Fecha de entrega después del pedido](/docs/delivery/delivery-date-after-order)
