Justo

Justo

  • Docs

›Métodos

General

  • Introducción
  • Crear una llave
  • Estructura
  • Ejemplos

Métodos

  • Información la marca
  • Listar locales
  • Editar el local
  • Listar pedidos pendientes
  • Listar pedidos
  • Rechazar un pedido
  • Aceptar un pedido
  • Activar delivery
  • Obtener un pedido
  • Cupones
  • Editar un pedido
  • Cambiar el estado de un pedido
  • Calcular costo delivery especial
  • Obtener el listado
  • Editar el listado
  • Editar el listado V2
  • Editar menús
  • Obtener un cliente
  • Listar clientes
  • Agregar puntos a cliente
  • Definir código de verificación

Métodos de stock

  • Agotar un producto o modificador
  • Eliminar productos agotados
  • Obtener ítems agotados
  • Definir stock de productos
  • Actualizar stock de productos con respuesta por webhook

Última milla

  • Crear solicitud de despacho
  • Consultar información de despacho
  • Cancelar despacho
  • Crear solicitud de despacho externo

Webhooks

  • Introducción
  • Nuevo pedido
  • Cambio de estado de un pedido
  • Modificación de un pedido
  • Cambio de estado de un despacho
  • Actualización de estado de procesos

Datos

  • Order
  • OrderItem
  • Store
  • Delivery
  • EstimateDelivery
  • Client
  • Address
  • Menu
  • Transaction
  • LoyaltyTransaction
  • Devolution
  • InStoreCouponCode
  • Schedule
  • PaginatedResult
  • OutOfStockItem
  • Billing

Editar el listado

SetListing

Descripción


Aviso importante

Recomendamos manejar los modificadores usando la forma alternativa

Que es más fácil de mantener como integrador, y es la sintaxis que soporta el manejo de modificadores de segundo nivel.


  • Método: setListing
  • Parámetros:
    • deleteOldContent: Si es verdadero, se eliminará todo el contenido actual y se reemplazará por el que se esta subiendo (Importante: las publicaciónes y los componentes del website que utilizan los productos eliminados, perderan las referencias y deben ser reconfigurados desde el admin de la marca)
    • maintainOrder: Si es verdadero, mantendra el orden de los productos creados, de modo que se muestren en las vistas en el mismo orden en el que se enviarón por este metodo. Esta opción solo se puede utilizar si deleteOldContent es verdadero, de lo contrario retornara un error.
    • menus: Un arreglo con los Menu. Un Menu es un conjunto de reglas. Para una compra el sistema eligirá el menú que cumpla todas las reglas y tenga mayor prioridad. Menu. No se pueden editar los menu con este método
    • products: Un arreglo de los productos
      • productId: El ID del producto en Justo. Si es que quieres crear un nuevo producto puedes dejar esto en blanco
      • name: Nombre del producto
      • description: Descripción del producto
      • url: URL completa para acceder al producto (este parámetro no es posible configurarlo y no es considerado al guardar la data del producto)
      • partialUrl: URL parcial del producto, no contiene el dominio (este parámetro no es posible configurarlo y no es considerado al guardar la data del producto)
      • categoriesNames: Un arreglo con los nombres de las categorías
      • modifiersNames: Un arreglo con los nombres de los modificadores. Debe ser igual al campo internalName del modificador
      • externalId: ID externo de este producto
      • priority: Un número entero. Entre más grande sea el valor, mayor será la prioridad en la que se mostrará el producto. Si maintainOrder es true, este campo se omite
      • nicknames: Un arreglo con los nombres alternativos de este producto
      • images: Un arreglo con las URLs de las imagenes de este producto. Puedes usar cualquier URL externa y se va a subir la imagen a los servidores de Justo. El tamaño máximo para las imagenes es de 10mb. Si es que quieres dejar el producto sin imágenes, puedes enviar un arreglo vacío (para no modificar se puede ignorar el parámetro o enviar null)
      • menus: Información sobre los precios. Puedes obtener los menus de esta marca usando el método menu
        • menuId: El ID del menú
        • price: Precio del producto en este menú
        • discount: Precio en descuento de este producto. No es lo mismo 0 que null (si puede haber un producto gratis)
        • available: Si es que esta disponible este producto en el menú
        • externalId: Si es que quieres reemplazar el ID externo de este producto, para cuando la compra se realice con este menú
      • informativeStamps: Un arreglo con sellos informativos de productos. (Deben estar escritos con Mayúscula)
        • VEGAN: Vegano
        • VEGETARIAN: Vegetariano
        • GLUTEN_FREE: Sin gluten
        • LACTOSE_FREE: Sin lactosa
        • SUGAR_FREE: Sin azúcar
        • CACAO_100: 100% cacao
        • RECYCLABLE: Reciclable
        • SPICY: Picante
        • KETO: Keto
        • RECYCLED: Reciclado
        • HANDMADE: Hecho a mano
        • OLDER_THAN_18: Mayor de 18
        • CRUELTY_FREE: No testeado en animales
      • filterNames: Un arreglo con nombres de los filtros [filterName] que aplican para hacer una búsqueda rápida del producto.
    • modifiers: Un arreglo con los modificadores
      • modifierId: El ID del modificador en Justo. Si es que quieres crear un nuevo modificador puedes dejar esto en blanco
      • name: Nombre del modificador
      • description: Descripción del modificador
      • shortName: El nombre corto del modificador
      • internalName: Un nombre interno que no ven los compradores. Sirve para diferenciar modificadores con el mismo nombre y para asociar los modificadores a los productos
      • optional: Es opcional elegir alguna opción de este modificador
      • min: Mínimo de opciones a seleccionar. Si es que necesitas que sea requerido, debes marcar que no sea opcional
      • max: Dejar en blanco para infinito
      • externalId: ID externo del modificador
      • options: Un arreglo de opciones, cada una con las siguientes propiedades
        • name: Nombre de la opción
        • max: Cuantas veces se puede escoger esta opción dentro del modificador
        • externalId: El identificador que usen en sus sistemas para esta opción, optativo
        • menus: Información sobre los precios. Puedes obtener los menús de esta marca usando el método menu
          • menuId: El ID del menú
          • price: Precio de la opción en este menú
          • discount: Precio en descuento de esta opción. No es lo mismo 0 que null (sí puede haber un option gratis)
          • available: Si es que está disponible este option en el menú
    • categories: Un arreglo de las categorías
      • categoryId: El ID de la categoría en Justo. Si es que quieres crear una nueva categoría puedes dejar esto en blanco
      • name: Nombre de la categoría
      • index: El orden (de menor a mayor) que tendrá esta categoría
    • filters: Arreglo de los filtros que se quieran crear o modificar.
      • filterId: El ID del filtro en Justo. Si es que quieres crear un nuevo filtro puedes dejar este campo en blanco
      • filterName: Nombre del filtro
      • type: El tipo del filtro

Forma alternativa de agregar modificadores

Existe una segunda forma para crear modificadores y opciones de modificadores, en este caso las opciones se ingresan como objetos separados y pueden ser asociados a distintos modificadores. Esto es útil cuando una opción se repite en múltiples modificadores y deseas que, al agotar esta opción, se deshabilite en todos los modificadores que la usan.

(Notar que, en el caso anterior, cada option dentro de un modificador tendrá Ids distintos, y será necesario agotarlos todos aunque sean lo mismo)

Te recomendamos usar solo una de las dos formas para gestionar todos tus modificadores en Justo.

Uso

En este caso, agregar un campos options al mismo nivel que productos

  • options
    • name: Nombre de la opción
    • max: Cuantas veces se puede escoger esta opción dentro del modificador
    • externalId: El identificador que usen en sus sistemas para esta opción, optativo.
    • menus: Información sobre los precios. Puedes obtener los menús de esta marca usando el método menu
      • menuId: El ID del menú
      • price: Precio de la opción en este menú
      • discount: Precio en descuento de esta opción. No es lo mismo 0 que null (sí puede haber un option gratis)
      • available: Si es que está disponible este option en el menú
    • requiredOptionsIds: Arreglo opcional de Ids de options que son requeridos para mostrar esta opción. Al incluir este campo, la opción se clasificará como de segundo nivel. Esto implica que la opción solo estará disponible si el usuario ha seleccionado previamente todas las opciones requeridas en este campo. Se pueden especificar IDs de justo o externalId.

y en modifiers, en vez de incluir el campo options, incluir un campo optionIds que sea un arreglo de Ids de opciones (puede ser con id justo, o externalId)

{
  "modifiers": [
    {
      "optionIds": ["id1", "id2"]
    }
  ]
}

Notas

  • No se pueden editar los Menu desde este método, debes editarlos desde el dashboard.
  • Los filtros trabajan en tuplas (type:filterName), en donde todos los filtros del mismo tipo se agreguparán para filtrar productos.

Llamada

POST /api/v1/setListing Content-Type: application/json

{
  "products": <ListingProducts>,
  "modifiers": <ListingModifiers>,
  "categories": <ListingCategories>,
  "filters": <ListingFilters>,
  "options": <ListingOptions>,
  "deleteOldContent": false
}

Respuesta

{
  "status": "ok"
}
← Obtener el listadoEditar el listado V2 →
  • SetListing
    • Aviso importante
  • Forma alternativa de agregar modificadores
    • Uso
  • Notas