Listados e inventario de Market: de verificado a visible
Cómo pasa un dispositivo de su stock vendible a un listado publicado, y por qué la fila registra un canal y una disponibilidad, no un estado de ánimo.
El inventario de Market, en /market/inventory, es la zona de preparación entre su stock vendible y un listado sobre el que un comprador puede actuar. Un dispositivo que pasa la puerta vendible es elegible para Market, pero elegibilidad no es publicación. El vendedor sigue eligiendo qué sale a la venta, en qué lote y a qué precio. Y el pool es compartido: Market y Auction leen las mismas filas vendibles, así que un dispositivo está en un solo pool y en un solo canal a la vez.
Estado de canal y disponibilidad
Cada fila lleva dos datos que es fácil confundir y que se mantienen separados a propósito. El estado de canal dice dónde está publicado el dispositivo: libre, en Market o en Auction; un dispositivo comprometido en una venta directa desde Core también aparece bloqueado. La disponibilidad dice si su equipo quiere venderlo siquiera: disponible, no disponible (en espera) o destruido. Una fila puede estar libre de canal y aun así en espera. Lo tercero que sigue la lista es la pertenencia a un lote: un dispositivo en un lote en borrador o listo queda reservado para el canal de ese lote y sale de la selección normal del otro canal. Los filtros siguen el mismo modelo: origen, disponibilidad, estado, lote, archivado, etiquetas, rango de precio, fabricante, preset de estado, categoría. El listado en sí es borrador, publicado, en pausa o archivado; el lote que hay detrás pasa por borrador, listo, publicado, reservado y vendido.
Solo la reventa se proyecta
Core empuja un dispositivo a la capa vendible únicamente mientras su disposición es reventa. Enrute a reciclaje, desguace, devolución al cliente, donación o uso interno un dispositivo ya proyectado y la proyección queda en espera, con la disposición como motivo; vuelve sola cuando la disposición regresa a reventa. Un dispositivo listado o reservado no puede cambiar de disposición hasta que salga de la venta. El nivel de renovación “Tal como se recibió” es una forma válida de vender y no bloquea nada. El artículo sobre la capa vendible tiene la puerta completa.
Etiquetas y notas
Cada fila lleva etiquetas internas (su taxonomía) y notas privadas (de esas que su comercial se escribe a sí mismo a las 2 de la mañana: “reservar para Gregor, se los lleva todos a precio de lista”). Las etiquetas sobreviven a todo el ciclo de vida del dispositivo. Las notas privadas son solo del tenant: los compradores nunca las ven.
Volver a sincronizar desde Core
Cuando el almacén recalifica de C a B un portátil ya listado, ese cambio tiene que llegar a Market sin pisar el precio ni la descripción del vendedor. La página del artículo tiene la acción Volver a sincronizar desde Core: refresca los datos de origen y recalcula el score de calidad, y deja intactos los campos que pertenecen a Market —precio de lista, reserva, moneda, notas de renovación, etiquetas, notas internas, historial de canal— tal como estaban. Si la nueva calificación merece un precio nuevo sigue siendo una decisión humana.
Retirar stock de la venta
La acción masiva de la lista es Despublicar: marque las filas que están en Market y bajan juntas; los dispositivos vuelven a quedar libres. Sacar stock de la venta es otra cosa: ponga el dispositivo en espera, lo que bloquea nuevas publicaciones tanto en Market como en Auction mientras la fila de stock se queda. Archivar existe solo para artículos importados por archivo y rechaza cualquier cosa que esté en un canal. La destrucción física se registra como destruido, con fecha y motivo, y la fila se conserva para procedencia y auditoría. Aquí nada es un borrado.
Limpieza de lo rancio
Un trabajo diario retira la publicación de las filas vendibles cuyo origen se ha quedado en silencio: sesenta días para los artículos importados por archivo, siete para los enviados por la API. Los artículos que vienen de Core no se tocan nunca, porque Core es la fuente viva. El listado se archiva, el lote se cancela si sigue en borrador, programado o en vivo, el canal vuelve a libre, la fila de stock se queda y su tenant recibe después el aviso con los recuentos. Los umbrales son fijos de plataforma. Nada mata un marketplace más rápido que el listado de un portátil que alguien ya se llevó a casa en febrero.
De quién es la pantalla
/market/listings/[id] es la página del vendedor. Cuando un comprador abre el listado de otro, la app lo lleva a /market/browse/[id], donde las ofertas, la compra, el contacto y el seguimiento funcionan de verdad. Las dos páginas muestran las fotos de los dispositivos del listado, y el vendedor elige allí la portada; el artículo sobre fotos explica qué ve el comprador y cómo.
Demo y real nunca se cruzan
Un listado público y publicado es visible para cualquier tenant con sesión iniciada: eso es el marketplace funcionando como se diseñó. Los entornos demo están amurallados frente al comercio real, en los dos sentidos: los tenants demo ven listados demo, los tenants reales ven listados reales, y el stock de un lado no aparece en la navegación, los lotes ni las fotos del otro. Una contraparte demo puede seguir comerciando con un vendedor demo; un cliente que paga nunca ve un palé que no existe.