Justo

Justo

  • Docs

›Datos

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

Order

Estructura

  • _id: ID del pedido
  • orderStatus: Estado del pedido. Puede ser pending, waiting, preparing, delivering, done, cancelled o Dispatch not completed.
  • isScheduled: Si el pedido es programado (true = pedido programado, false = pedido normal)
  • websiteId: ID de la marca
  • code: Código del pedido. Único para toda la plataforma de justo
  • fullCode: Código del pedido incluyendo el código diario de la marca (número de pedido por local, por día)
  • userId: ID del usuario
  • createdAt: Fecha de creación del pedido
  • address: Dirección de entrega. Address
  • directions: Información del viaje. Un objeto que incluye la duración en minutos y la distancia recorrida en metros
  • menuId: ID del menú
  • deliveryType: Tipo de entrega. Puede ser delivery, go o serve
  • deliverAt: Fecha en la que el pedido debe ser entregado al repartidor o al cliente si es que no es delivery
  • timeText: Fecha de entrega al cliente en texto
  • paymentType: Tipo de medio de pago. Puede ser webpayOneClick, inStore, khipu, cash, transbank, other
  • otherPaymentType: Medio de pago, si es que es "other"
  • tipAmount: Monto entregado en propina
  • deliveryFee: Precio del despacho
  • itemsPrice: Precio del pedido sin incluír propina ni precio del despacho, solo el precio de los productos
  • baseItemsPrice: itemsPrice antes de los descuentos
  • baseTotalPrice: totalPrice antes de los descuentos
  • totalPrice: Monto del pedido sin incluír propina. La boleta a generar debe ser de este monto
  • amountToPay: Monto a pagar por el cliente incluyendo la propina
  • amountFinancedByJusto: En caso que hubiera, monto que Justo financia del pedido. El descuento es visible para el cliente final pero no afecta los montos de las boletas (totalPrice).
  • couponName: Nombre del cupón usado
  • couponCode: Código del cupón
  • couponDiscount: Monto del descuento del cupón
  • websiteCoinsDiscount: Monto descuento de programa de lealtad
  • itemsPriceBeforeDiscountsAfterProductDiscount: Precio de los items con descuento tachado
  • expectedPreparationDuration: Tiempo estimado de preparación (no incluye delivery)
  • deliveryDuration: Tiempo estimado de delivery
  • cashAmount: Si es que el medio de pago es "cash", el monto que el cliente indica que va a pagar
  • cardId: ID de la tarjeta de crédito si es que el medio de pago es "webpayOneClick"
  • channel: Canal. Es compuesto por <deliveryType>-<canal>. Y canal puede ser: web (página web de la marca), orion (app agregadora de Justo), app (app propia de la marca).
  • source: Origen del pedido. puede tomar los valores de web, app, justoApp, pide, chat, commander, commanderManaged o commanderMarketplace
  • buyerName: Nombre del cliente
  • phone: Teléfono del cliente
  • email: Email del cliente
  • tableName: Nombre de la mesa. Solo para pedidos deliveryType serve
  • flagColor: Color de la bandera en el POS.
  • items: Detalle del pedido. Item
  • transaction: Información de la transacción asociada a este pedido. Transaction
  • deliveries: Información los repartos asociados a este pedido. Delivery
  • devolutions: Información las devoluciones asociadas a este pedido. Devolution
  • charges: Resumen de los cobros asociados a este pedido.
  • clonedOrder: Id de la orden clonada/repetida (si corresponde).
  • parentOrder: Id de la orden de la cual fue clonada/repetida (si corresponde).
  • hasManagedDelivery: boolean. true: pedido manejado por Justo. false: pedido manejado por el local.
  • loyaltyTransaction: Información de la transacción de pago con puntos de lealtad asociada a este pedido. LoyaltyTransaction
  • billing: Información de facturación del cliente para el pedido. La estructura de este atributo dependerá del país. Más detalles en Billing
  • cancellationInfo: Objeto que contiene información de las razones de la cancelación de un pedido.
    • reason: Razón del rechazo. Solo uso interno.
    • reasonMessage: Texto de explicación de la cancelación.
    • category: Categoría del rechazo.

Ejemplo

{
  "_id": "xabAso2p3pKkLMTuz",
  "orderStatus": "pending",
  "isScheduled": false,
  "websiteId": "ErCkmcyCEovseJq5E",
  "code": "15244",
  "fullCode": "#15244-05",
  "userId": "T4wMX9CjX3zpkPxb3",
  "createdAt": "2019-10-11T15:07:50.106Z",
  "address": {
    "placeId": "EihBdmVuaWRhIEhvbGFuZGEgMTYwNSwgUHJvdmlkZW5jaWEsIENoaWxlIjESLwoUChIJCfBr63TPYpYRguPJ8LiSNSgQxQwqFAoSCbELmxJ1z2KWEdvDHqTQ-XrU",
    "address": "Avenida Holanda 1605",
    "addressSecondary": "Providencia, Chile",
    "location": {
      "lat": -33.4334297,
      "lng": -70.59966380000002
    },
    "addressLine2": "1234",
    "comment": "Dejar con el conserje"
  },
  "menuId": "kH2qLySHZ6CdHopNC",
  "deliveryType": "delivery",
  "deliverAt": "2019-10-11T15:24:19.816Z",
  "timeText": "12:34 pm - 12:49 pm",
  "paymentType": "other",
  "otherPaymentType": "Junaeb",
  "tipAmount": 0,
  "amountToPay": 5000,
  "deliveryFee": 2000,
  "itemsPrice": 3000,
  "totalPrice": 5000,
  "baseItemsPrice": 11000,
  "baseTotalPrice": 13000,
  "amountFinancedByJusto": 0,
  "expectedPreparationDuration": 10,
  "deliveryDuration": 10,
  "cashAmount": null,
  "cardId": null,
  "channel": "web-delivery",
  "buyerName": "Nicolás López",
  "phone": "+56979761851",
  "email": "email@example.com",
  "couponName": null,
  "couponDiscount": null,
  "websiteCoinsDiscount": null,
  "itemsPriceBeforeDiscountsAfterProductDiscount": null,
  "store": {
    "_id": "Li4eEa3W2hiuGGCFa",
    "websiteId": "ErCkmcyCEovseJq5E",
    "name": "Colón",
    "acceptDelivery": true,
    "acceptServe": false,
    "acceptGo": true,
    "currentPreparationDuration": 10,
    "currentDeliveryDuration": 10,
    "phone": "+56979761851",
    "address": {
      "placeId": "ChIJjTIDvOLOYpYRX-5Ivi_6UF4",
      "address": "Vasco Núñez de Balboa 1233",
      "addressSecondary": "Las Condes, Chile",
      "location": {
        "lat": -33.42161910000001,
        "lng": -70.5729473
      }
    }
  },
  "items": [
    <OrderItem>
  ],
  "transaction": {
    "_id": "AJubbn679CTmgyb6k",
    "totalPrice": 13500,
    "paymentType": "webpayTest",
    "cardType": "credit",
    "cardLast4": "4242",
    "status": "paid",
    "fee": 375,
    "feeWithoutTax": 315
  },
  "deliveries": [
    <Delivery>
  ],
  "devolutions": [
    <Devolution>
  ],
  "charges": {
    <Resumen de cobros>
  },
  "clonedOrder": null,
  "parentOrder": null,
  "hasManagedDelivery": false,
  "loyaltyTransaction": null,
  "billing:": null,
  "cancellationInfo": {
    "reason": "Sin productos suficientes",
    "reasonMessage": "Lamentamos tener que cancelar tu pedido, pero en estos momentos tenemos problemas para poder ofrecerte el pedido",
    "category": "Productos"
  }
}
← Actualización de estado de procesosOrderItem →
  • Estructura
  • Ejemplo