LineItem

Una línea de pedido contiene una vertical. Un pedido o carrito puede tener varias líneas de pedido de la misma vertical. Las sublíneas de pedido, los complementos, etc., deben definirse en prototipos verticales según sus casos de uso. Nota: 1. Todas las cadenas de todos los niveles deben tener menos de 1,000 caracteres, a menos que se especifique lo contrario. 2. Todos los campos repetidos en todos los niveles deben tener un tamaño inferior a 50, a menos que se especifique lo contrario. 3. Si se especifican, todas las marcas de tiempo de todos los niveles deben ser marcas de tiempo válidas.

Representación JSON
{
  "id": string,
  "name": string,
  "userVisibleStateLabel": string,
  "provider": {
    object (Merchant)
  },
  "priceAttributes": [
    {
      object (PriceAttribute)
    }
  ],
  "followUpActions": [
    {
      object (Action)
    }
  ],
  "recipients": [
    {
      object (UserInfo)
    }
  ],
  "image": {
    object (Image)
  },
  "description": string,
  "notes": [
    string
  ],
  "disclosures": [
    {
      object (Disclosure)
    }
  ],
  "vertical": {
    "@type": string,
    field1: ...,
    ...
  },

  // Union field verticals can be only one of the following:
  "purchase": {
    object (PurchaseItemExtension)
  },
  "reservation": {
    object (ReservationItemExtension)
  }
  // End of list of possible types for union field verticals.
}
Campos
id

string

Obligatorio: Identificador asignado por el comercio para la línea de pedido. Se usa para identificar líneas de pedido existentes en la aplicación de actualizaciones parciales. La longitud máxima permitida es de 64 caracteres.

name

string

el nombre de la línea de pedido tal como aparece en el recibo. La longitud máxima permitida es de 100 caracteres.

userVisibleStateLabel
(deprecated)

string

Obsoleta. En su lugar, usa el estado de nivel vertical. Por ejemplo, para compras, usa PurchaseOrderExtension.status. Es la etiqueta visible del usuario para el estado de esta línea de pedido.

provider

object (Merchant)

El proveedor de la línea de pedido en particular, si es diferente del pedido general. Ejemplo: Pedido de Expedia con el proveedor de líneas de pedido ANA.

priceAttributes[]

object (PriceAttribute)

Precio y ajustes a nivel de la línea de pedido.

followUpActions[]

object (Action)

Hace un seguimiento de las acciones en la línea de pedido.

recipients[]

object (UserInfo)

los clientes a nivel de la línea de pedido, puede ser diferente del comprador a nivel del pedido. Ejemplo: El usuario X realizó una reserva en un restaurante con el nombre del usuario Y.

image

object (Image)

Imagen pequeña asociada con este elemento, si corresponde.

description

string

Descripción de la línea de pedido.

notes[]

string

Notas adicionales aplicables a esta línea de pedido en particular, como la política de cancelación.

disclosures[]

object (Disclosure)

Son divulgaciones asociadas a esta línea de pedido.

vertical
(deprecated)

object

Obsoleto: Usa verticales en su lugar. Obligatorio: Contenido semántico de la línea de pedido en función de su tipo o vertical. Cada vertical debe incluir sus propios detalles de entrega. Debe ser uno de los siguientes valores: google.actions.orders.v3.verticals.purchase.PurchaseItemExtension google.actions.orders.v3.verticals.reservation.ReservationItemExtension google.actions.orders.v3.verticals.ticket.TicketItemExtension

Un objeto que contiene campos de un tipo arbitrario. Un campo adicional "@type" contiene una URI que identifica el tipo. Ejemplo: { "id": 1234, "@type": "types.example.com/standard/id" }.

Campo de unión verticals. Obligatorio: Contenido semántico de la línea de pedido en función de su tipo o vertical. Cada vertical debe incluir sus propios detalles de entrega. Las direcciones (verticals) solo pueden ser una de las siguientes opciones:
purchase

object (PurchaseItemExtension)

Órdenes de compra como productos, comida, etcétera

reservation

object (ReservationItemExtension)

Pedidos de reservación como restaurante, corte de pelo, etc.

PurchaseItemExtension

Contenido de la línea de pedido de la vertical de compras.

Representación JSON
{
  "status": enum (PurchaseStatus),
  "userVisibleStatusLabel": string,
  "type": enum (PurchaseType),
  "productId": string,
  "quantity": integer,
  "unitMeasure": {
    object (MerchantUnitMeasure)
  },
  "returnsInfo": {
    object (PurchaseReturnsInfo)
  },
  "fulfillmentInfo": {
    object (PurchaseFulfillmentInfo)
  },
  "itemOptions": [
    {
      object (ItemOption)
    }
  ],
  "extension": {
    "@type": string,
    field1: ...,
    ...
  },
  "productDetails": {
    object (ProductDetails)
  }
}
Campos
status

enum (PurchaseStatus)

Obligatorio: Estado a nivel de la línea de pedido.

userVisibleStatusLabel

string

Obligatorio: Etiqueta o cadena visible para el usuario para el estado. La longitud máxima permitida es de 50 caracteres.

type

enum (PurchaseType)

Obligatorio: Tipo de compra.

productId
(deprecated)

string

Es el ID de oferta o producto asociado con esta línea de pedido.

quantity

integer

Es la cantidad del artículo.

unitMeasure

object (MerchantUnitMeasure)

Unidad de medida. Especifica el tamaño del elemento en las unidades elegidas. El tamaño, junto con el precio activo, se usan para determinar el precio unitario.

returnsInfo

object (PurchaseReturnsInfo)

Muestra información de esta línea de pedido. Si no la estableces, esta línea de pedido hereda la información de devoluciones a nivel del pedido.

fulfillmentInfo

object (PurchaseFulfillmentInfo)

Información de entrega para esta línea de pedido. Si no la estableces, esta línea de pedido hereda la información de entrega a nivel del pedido.

itemOptions[]

object (ItemOption)

Complementos o subelementos adicionales.

extension

object

Cualquier campo adicional que se intercambie entre el comercio y Google

Un objeto que contiene campos de un tipo arbitrario. Un campo adicional "@type" contiene una URI que identifica el tipo. Ejemplo: { "id": 1234, "@type": "types.example.com/standard/id" }.

productDetails

object (ProductDetails)

Detalles sobre el producto.

MerchantUnitMeasure

Medida de precio por unidad del comercio.

Representación JSON
{
  "measure": number,
  "unit": enum (Unit)
}
Campos
measure

number

Valor (Value): ejemplo 1.2

unit

enum (Unit)

Unidad: Ejemplo POUND, GRAM.

ItemOption

Representa complementos o subelementos.

Representación JSON
{
  "id": string,
  "name": string,
  "prices": [
    {
      object (PriceAttribute)
    }
  ],
  "note": string,
  "quantity": integer,
  "productId": string,
  "subOptions": [
    {
      object (ItemOption)
    }
  ]
}
Campos
id

string

En el caso de las opciones que son artículos, usa el ID de artículo único.

name

string

Nombre de la opción.

prices[]

object (PriceAttribute)

Es el precio total de la opción.

note

string

Nota relacionada con la opción.

quantity

integer

En el caso de las opciones que son artículos, selecciona la cantidad.

productId

string

Es el ID de oferta o producto asociado con esta opción.

subOptions[]

object (ItemOption)

Para definir otras subopciones anidadas.

ProductDetails

Detalles sobre el producto.

Representación JSON
{
  "productId": string,
  "gtin": string,
  "plu": string,
  "productType": string,
  "productAttributes": {
    string: string,
    ...
  }
}
Campos
productId

string

Es el ID de oferta o producto asociado con esta línea de pedido.

gtin

string

Es el código comercial global de artículo del producto. Es útil si offerId no está presente en Merchant Center. Opcional.

plu

string

Los códigos de búsqueda de precios, comúnmente llamados códigos PLU, números de PLU, PLU, códigos de productos o etiquetas de productos, son un sistema de números que identifican de manera única los productos a granel que se venden en supermercados y supermercados.

productType

string

Es la categoría de producto definida por el comercio. P.ej., "Página principal > Tienda de comestibles > Productos lácteos y Huevos > Leche > Leche entera"

productAttributes

map (key: string, value: string)

Detalles sobre el producto proporcionados por el comercio, p.ej., { "allergen": "peanut" }. Es útil si offerId no está presente en Merchant Center. Opcional.

Es un objeto que contiene una lista de pares "key": value. Ejemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

ReservationItemExtension

Contenido de líneas de pedido para pedidos de reserva, como restaurantes, cortes de pelo, etc. Siguiente ID: 15.

Representación JSON
{
  "status": enum (ReservationStatus),
  "userVisibleStatusLabel": string,
  "type": enum (ReservationType),
  "reservationTime": {
    object (Time)
  },
  "userAcceptableTimeRange": {
    object (Time)
  },
  "confirmationCode": string,
  "partySize": integer,
  "staffFacilitators": [
    {
      object (StaffFacilitator)
    }
  ],
  "location": {
    object (Location)
  },
  "extension": {
    "@type": string,
    field1: ...,
    ...
  }
}
Campos
status

enum (ReservationStatus)

Obligatorio: Estado de la reserva.

userVisibleStatusLabel

string

Obligatorio: Etiqueta o cadena visible para el usuario para el estado. La longitud máxima permitida es de 50 caracteres.

type

enum (ReservationType)

el tipo de reserva. Se puede desactivar si ninguna de las opciones de tipo es aplicable.

reservationTime

object (Time)

hora a la que está programado el servicio o evento. Puede ser un intervalo de tiempo, una fecha o una fecha y hora exacta.

userAcceptableTimeRange

object (Time)

que es aceptable para el usuario.

confirmationCode

string

Código de confirmación para esta reserva.

partySize

integer

Es la cantidad de personas.

staffFacilitators[]

object (StaffFacilitator)

Facilitadores del personal que se encargarán de la reserva. P. ej., El peluquero.

location

object (Location)

Ubicación del servicio o evento.

extension

object

Cualquier campo adicional que se intercambie entre el comercio y Google

Un objeto que contiene campos de un tipo arbitrario. Un campo adicional "@type" contiene una URI que identifica el tipo. Ejemplo: { "id": 1234, "@type": "types.example.com/standard/id" }.

StaffFacilitator

Información sobre la persona de servicio.

Representación JSON
{
  "name": string,
  "image": {
    object (Image)
  }
}
Campos
name

string

El nombre del facilitador del personal. P. ej., "Juan Pérez"

image

object (Image)

Imágenes del artista.