El módulo de clientes gestiona el registro de personas naturales y jurídicas que realizan compras en Tiendas Mi Cholo. Soporta cuatro tipos de documento de identidad peruanos e internacionales:Documentation Index
Fetch the complete documentation index at: https://mintlify.com/interezante456-pixel/Miercoles-Proyecto/llms.txt
Use this file to discover all available pages before exploring further.
DNI, RUC, PASAPORTE y CE (Carné de Extranjería). El número de documento es único en el sistema. El borrado es lógico (activo = false). Todos los roles autenticados tienen acceso completo a este módulo.
Todos los endpoints requieren
Authorization: Bearer <token>. Cualquier rol autenticado (ADMIN, VENDEDOR, ALMACENERO) puede ejecutar operaciones de lectura y escritura.GET /api/clientes
Lista todos los clientes conactivo = true.
Ejemplo
Response fields
Identificador único del cliente. Se usa como
clienteId al registrar ventas.Nombres del cliente. Máximo 100 caracteres.
Apellidos del cliente. Máximo 100 caracteres.
Tipo de documento de identidad:
DNI, RUC, PASAPORTE o CE.Número de documento. Único en el sistema. Máximo 20 caracteres.
Correo electrónico del cliente. Puede ser
null.Teléfono de contacto. Máximo 20 caracteres. Puede ser
null.Dirección del cliente. Máximo 300 caracteres. Puede ser
null.Estado del cliente. Los inactivos no aparecen en
GET /api/clientes.Fecha y hora de creación (ISO 8601).
Fecha y hora de última modificación (ISO 8601).
GET /api/clientes/buscar
Busca clientes activos por nombres, apellidos o número de documento.Query parameters
Término de búsqueda. Se aplica sobre
nombres, apellidos y nroDoc con coincidencia parcial (LIKE).Ejemplo
GET /api/clientes/{id}
Obtiene un cliente por su ID.Path parameters
ID del cliente a consultar.
Ejemplo
POST /api/clientes
Registra un nuevo cliente en el sistema.Request body
Nombres del cliente. Máximo 100 caracteres.
Apellidos del cliente. Máximo 100 caracteres.
Tipo de documento. Valores aceptados:
DNI, RUC, PASAPORTE, CE. Por defecto DNI si se omite.Número de documento único. Máximo 20 caracteres.
Correo electrónico. Máximo 150 caracteres.
Teléfono de contacto. Máximo 20 caracteres.
Dirección del cliente. Máximo 300 caracteres.
Tipos de documento
| Valor | Descripción |
|---|---|
DNI | Documento Nacional de Identidad (8 dígitos) |
RUC | Registro Único de Contribuyentes (11 dígitos) |
PASAPORTE | Pasaporte internacional |
CE | Carné de Extranjería |
Ejemplo
- cURL
- Request JSON
PUT /api/clientes/{id}
Actualiza los datos de un cliente existente.Path parameters
ID del cliente a actualizar.
Request body
Mismos campos quePOST /api/clientes. Todos los campos provistos sobreescriben los existentes.
Ejemplo
DELETE /api/clientes/{id}
Desactiva un cliente (borrado lógico —activo = false). El historial de ventas asociado se conserva.
Path parameters
ID del cliente a desactivar.
Ejemplo
204 No Content (sin cuerpo).
Códigos de error
| Código | Descripción | Causa habitual |
|---|---|---|
400 Bad Request | Validación fallida | Campos requeridos vacíos, nroDoc duplicado, tipoDoc inválido |
401 Unauthorized | No autenticado | Token ausente, inválido o expirado |
404 Not Found | Cliente no encontrado | El id no existe en la base de datos |