Skip to main content

Especificación de datos del historial de transacciones

Para analítica de ventas, modelado de elasticidad e inteligencia de retail. Consulta el archivo de ejemplo sample_transactions.
También puedes cargar datos de transacciones de forma programática mediante la API REST de Retailgrid pública. Las cargas por API usan nombres de campos y campos obligatorios ligeramente distintos. Consulta Carga mediante la API más abajo.

1. Objetivo

Usa este conjunto de datos para:
  • Analítica del rendimiento de ventas
  • Modelado de elasticidad de precios
  • Estimación de la curva de demanda
  • Optimización de precios
  • Análisis del impacto de promociones
  • Comparativa del rendimiento por tienda
Debes proporcionar los datos a nivel de línea de transacción.

2. Requisito de granularidad de los datos

Cada fila debe representar:
Un producto en una transacción
Correcto: Incorrecto:
  • Totales agregados por día
  • Resúmenes a nivel de tienda
  • Exportaciones pivotadas

3. Historial de transacciones: especificación de datos unificada

4. Política de gestión de devoluciones (obligatoria si existen devoluciones)

Las devoluciones deben proporcionarse como filas de transacción separadas.

4.1 Formato de las devoluciones

4.2 Ejemplo

Venta original Devolución

4.3 Reglas importantes

  • NO elimines las filas de la venta original
  • NO agregues valores netos antes de exportar
  • NO uses cantidades positivas para las devoluciones
  • unit_price debe seguir siendo positivo
  • Las devoluciones deben reflejar la fecha real de la devolución

5. Requisitos de formato de datos (estrictos)

5.1 Marca de tiempo

Debe seguir ISO 8601:
Ejemplo:
Zona horaria:
  • Preferiblemente UTC
  • O bien la zona horaria debe indicarse claramente

5.2 Campos numéricos

  • Separador decimal: .
  • Sin separadores de miles
  • Sin símbolos de moneda
  • Sin formatos localizados
Correcto:
Incorrecto:

5.3 Formato del descuento

Debe ser una tasa:
No:

6. Formato de archivo

Aceptados:
  • CSV (codificación UTF-8), preferido
  • XLSX
Sin tablas dinámicas
Sin fórmulas
Solo datos en bruto

7. Requisitos de datos históricos

Mínimo:
  • De 6 a 12 meses de historial
  • Preferiblemente 24 meses
Volumen mínimo recomendado:
  • Más de 10.000 filas de transacciones por tienda

8. Reglas de validación de datos

  • quantity ≠ 0
  • quantity > 0 para ventas
  • quantity < 0 para devoluciones
  • unit_price ≥ 0
  • discount_rate entre 0 y 1
  • transaction_timestamp no nulo
  • item_id debe existir en el archivo maestro de productos

9. Ejemplo de esquema SQL

10. Conjunto de datos mínimo (si existen limitaciones del sistema)

Si el sistema no puede proporcionar la estructura completa, el mínimo obligatorio es:
Las devoluciones deben seguir igualmente la lógica de cantidad negativa.

11. Carga mediante la API

La API REST pública acepta los mismos datos a través de POST /v1/transactions/bulk (registros JSON) o POST /v1/imports/transactions (importación de CSV), con dos diferencias respecto al esquema CSV:
  • No existe el campo transaction_id en la API. Usa el campo opcional external_transaction_id para transportar tu propio identificador de transacción; la API no exige uno.
  • Campos obligatorios en las cargas por API: item_id, store_id, transaction_timestamp, quantity, selling_price.
Campos opcionales solo de la API: sku, region, promo_type, zone_price.
La API JSON rechaza los campos desconocidos: las cargas que contengan campos fuera del esquema no superan la validación.