Volver
Flujo comercial full stackCompletado
Proyecto profesional
tu-dominio.cl
- Next.js
- Prisma
- PostgreSQL
- Supabase
- Mercado Pago
Problema
Un cliente quería vender varios dominios online y necesitaba una web con catálogo y pago integrado, en vez de gestionar cada venta a mano.
Contexto
Encargo individual: tu-dominio.cl, una web para vender dominios. La construí solo de punta a punta.
Objetivo
Resolver el flujo comercial completo desde la selección de un dominio hasta el resultado del pago y su cambio de estado.
Mi rol
- Desarrollé todo: frontend, backend y base de datos.
- Integré Mercado Pago con Checkout Pro y un webhook que confirma el pago.
- Modelé los datos con Prisma sobre PostgreSQL alojado en Supabase.
Arquitectura y decisiones
- Next.js concentra frontend y backend; Prisma accede a PostgreSQL en Supabase; Mercado Pago procesa el checkout.
- El webhook no confía en la notificación: vuelve a consultar el pago en Mercado Pago antes de registrar la orden.
- Un pago aprobado crea la orden y marca el dominio como vendido; la orden queda pendiente de datos hasta que el comprador completa la información para la transferencia.
Solución
- Catálogo de dominios con búsqueda, filtros por categoría y disponibilidad.
- Checkout con Mercado Pago y páginas de resultado para pago aprobado, pendiente o fallido.
- Al aprobarse el pago, el dominio pasa de disponible a vendido y se crea la orden.
- Formulario posterior al pago para los datos del titular, necesarios para transferir el dominio vía NIC Chile.
Desafíos y trade-offs
- Mantener coherentes el pago externo y el estado local ante resultados aprobados, fallidos o incompletos.
- Evitar órdenes duplicadas cuando Mercado Pago repite una notificación: el identificador del pago es único en la base.
- Cerrar el producto técnico aunque su salida dependiera de información de terceros.
Aprendizajes
- Integrar una pasarela de pago y reaccionar a su resultado para mover el estado de la orden.
- Dejar un producto funcional terminado, aunque el cierre dependa de terceros.
Resultado
Desarrollo finalizado, con pagos probados en modo de prueba. El cierre quedó pendiente por información que debía proporcionar el encargado.