Obtener listado de pedidos

Permite obtener todos los pedidos de cierto rango de fecha según ciertos filtros como el canal de venta, el estado de pedido o un listado de IDs.

🚧

Reglas de uso

  • El endpoint puede ser utilizado hasta 5 veces sobre 24 horas. Error si se excede este límite.
  • El rango de fecha para una consulta no puede exceder 6 meses seguidos.

📘

Recomendaciones

  • El webhook std-orders-report permite recibir una notificación e ir a consultar un solo pedido en tiempo real (es inmediato y óptimo).
  • El reporte de pedidos permite consultar todos los pedidos del día para asegurarte no haber olvidado ninguno. Es un proceso de control.

Ejemplo

  • A la 12:30 pm consultas todos los pedidos del día entre 00:00 am y 12:00 pm.
  • A las 00:30 am consultas todos los pedidos del día entre 12:00 pm y 00:00 am.

Recuerda usar el sistema de webhooks, lo cuál te debe permitir importar a tu sistema 100% de los pedidos. El reporte de pedidos es un proceso de control.

Endpoint

POST

Estructuraurl
Estandarizadahttps://api.tp.yuju.io/std-orders-report?return_type=
Normalhttps://api.tp.yuju.io/orders-report?return_type=

Estructura normal:

Query paramsDescripción
return_typeSe usa para especificar la información que se desea obtener de las órdenes.
- only_ids: El reporte retorna únicamente los ids de pedidos.
- basic: El reporte retorna los campos generales con la información del encabezado sin ítems y sin reclamos.
- complete: El reporte retorna toda la información de la orden incluyendo items y reclamos.

Si no se especifica el parámetro o si se usa un valor diferente a los especificados, se asumirá el valor basic.

Cuerpo del endpoint

PayloadDescripción
order_idsAl usar el filtro por listado de IDs, el reporte ignora todos los demás filtros.

Contiene un listado de objetos con los ids de las órdenes a consultar. Cada posición en el listado debe ser un string (el id de la orden).
payment_accredited_atContiene un objeto que representa un rango de fechas. Debe especificar un límite mínimo (from) y un límite máximo (to) de fechas para realizar la consulta:
- from: Fecha mínima en formato ISO (YYYY-MM-DDTHH:mm:ss).
- to: Fecha máxima en formato ISO (YYYY-MM-DDTHH:mm:ss).
channelsUsa este filtro si quieres obtener los pedidos de ciertos canales.
Es un listado de ids de canales de venta.
Cada id debe ser un valor entero.
statusUsa este filtro para obtener las ordenes con los estados:
- open
- close

Ejemplos

{
    "filters": {
        "payment_accredited_at": {
            "from": "2023-11-21T00:00:00",
            "to": "2023-11-25T23:59:59"
        },
        "channels": [1311],
        "status": "open"
    }
}

{
    "filters": {
    "order_ids": [
            "2000006947183598",
            "12047438",
            "2000006962191394",
            "21972602301-A"
        ]
    }
}

Respuesta (201) - Generación iniciada

{
    "message": "Se está generando tu reporte, recibirás una notificación cuando esté listo.",
    "id_report": "7a966b0a498649c69ebcfd71f5cbb519"
}

📘

Consulta el estado de la generación del reporte aquí

Respuesta (429) - Límite de ejecuciones excedido

{
    "message": "Este endpoint tiene un límite de 5 ejecuciones en un rango de 24 horas. Podrás volver a ejecutarlo dentro de 549 minutos."
}

❗️

Errores de Validación (400)

  • "El rango de búsqueda máximo es de 180 días..."
  • "La fecha final debe ser mayor a la inicial."
  • "Si no se especifican los ids de los pedidos, se debe especificar un rango de fechas."
  • "El valor usado para 'status' no es válido."
  • "Formato incorrecto para el filtro 'payment_accredited_at'."