LineItem

Una línea de pedido contiene una vertical. Un pedido o un carrito puede tener varias líneas de pedido de la misma vertical. Las sublíneas de pedido, los complementos, etc., se deben definir 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. A menos que se especifique lo contrario, el recuento de todos los campos repetidos en todos los niveles debe ser inferior a 50. 3. Todas las marcas de tiempo en todos los niveles, si se especifican, deben ser marcas 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: Es un identificador asignado por el comercio para la línea de pedido. Se usa para identificar líneas de pedido existentes al aplicar actualizaciones parciales. La longitud máxima permitida es de 64 caracteres.

name

string

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

Ya no está disponible. En su lugar, usa el estado de nivel vertical. Por ejemplo, para compras, usa PurchaseOrderExtension.status. Es la etiqueta visible para el usuario correspondiente al estado de esta línea de pedido.

provider

object (Merchant)

El proveedor de la línea de pedido específica (si es diferente del pedido general). Ejemplo: Pedido de Expedia con el proveedor de línea de pedido ANA.

priceAttributes[]

object (PriceAttribute)

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

followUpActions[]

object (Action)

Acciones de seguimiento en la línea de pedido.

recipients[]

object (UserInfo)

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

image

object (Image)

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

description

string

Es la descripción de la línea de pedido.

notes[]

string

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

disclosures[]

object (Disclosure)

Divulgaciones asociadas con esta línea de pedido.

vertical
(deprecated)

object

Obsoleto: usa verticales en su lugar. Obligatorio: El contenido semántico de la línea de pedido según su tipo o vertical. Cada vertical debe incluir sus propios detalles de entrega. Debe tener 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: El contenido semántico de la línea de pedido según 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 de bienes, comida, etcétera

reservation

object (ReservationItemExtension)

Pedidos de reserva, como restaurante, corte de pelo, etcétera

PurchaseItemExtension

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

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: Es el estado a nivel de la línea de pedido.

userVisibleStatusLabel

string

Obligatorio: Etiqueta o cadena visibles para el usuario del 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 a esta línea de pedido.

quantity

integer

Es la cantidad del artículo.

unitMeasure

object (MerchantUnitMeasure)

Unidad medida. Especifica el tamaño del artículo en las unidades elegidas. El tamaño y el precio activo se usan para determinar el precio unitario.

returnsInfo

object (PurchaseReturnsInfo)

Muestra información de esta línea de pedido. Si no se establece, esta línea de pedido hereda información de las devoluciones a nivel del pedido.

fulfillmentInfo

object (PurchaseFulfillmentInfo)

Es la información de entrega de esta línea de pedido. Si no la estableces, esta línea de pedido heredará la información de entrega a nivel del pedido.

itemOptions[]

object (ItemOption)

Complementos o elementos secundarios adicionales.

extension

object

Cualquier campo adicional intercambiado 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 de comercio.

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

number

Valor: Ejemplo 1.2.

unit

enum (Unit)

Unidad: Ejemplo POUND, GRAM.

ItemOption

Representa complementos o elementos secundarios.

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

string

Para opciones que son artículos, ID único de artículo.

name

string

Nombre de la opción.

prices[]

object (PriceAttribute)

Precio total de la opción.

note

string

Nota relacionada con la opción.

quantity

integer

Para opciones que son artículos, cantidad.

productId

string

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

subOptions[]

object (ItemOption)

Para definir otras opciones secundarias 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 a esta línea de pedido.

gtin

string

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

plu

string

Los códigos de búsqueda de precios, comúnmente llamados códigos de PLU, números de PLU, PLU, códigos de productos o etiquetas de productos agrícolas, son un sistema de números que identifican de forma ú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., "Inicio > Tienda de alimentos > Lácteos y huevos > Leche > Leche entera"

productAttributes

map (key: string, value: string)

Detalles proporcionados por el comercio sobre el producto, 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 del elemento de una sola línea para pedidos de reserva, como restaurante, corte de pelo, etc. ID siguiente: 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 visibles para el usuario del estado. La longitud máxima permitida es de 50 caracteres.

type

enum (ReservationType)

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

reservationTime

object (Time)

la hora a la que se programó el servicio o evento. Puede ser un intervalo de tiempo, una fecha o una fecha y hora exactas.

userAcceptableTimeRange

object (Time)

de tiempo que sea aceptable para el usuario.

confirmationCode

string

Código de confirmación para esta reserva.

partySize

integer

Es la cantidad de personas.

staffFacilitators[]

object (StaffFacilitator)

Los facilitadores del personal que se encargarán de la reserva. P. ej., La peluquería.

location

object (Location)

Es la ubicación del servicio o evento.

extension

object

Cualquier campo adicional intercambiado 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 el personal de servicio.

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

string

Es el nombre del facilitador de personal. P. ej., "Juan Pérez"

image

object (Image)

Imágenes del artista