Agenda tu diagnóstico

Contrato de desarrollo de software: código, propiedad y soporte

Contrato de desarrollo de software: alcance, entregables, propiedad del código según la ley colombiana, pagos por hitos, garantía, soporte y datos.

Por Tomás Buitrago 11 min de lectura

Ilustración del artículo: Contrato de desarrollo de software: código, propiedad y soporte

Un contrato de desarrollo de software debe fijar por escrito el alcance, los entregables, quién es dueño del código, los pagos por hitos, la garantía, el soporte, la confidencialidad y el manejo de datos personales.

La mayoría de conflictos entre una empresa y su proveedor de software no nacen de un error técnico, sino de algo que nunca se escribió: una función que el cliente daba por incluida, un código fuente que nunca se entregó o un soporte que nadie definió. Esta guía recorre las cláusulas que necesitas revisar antes de firmar, con el contexto de la ley colombiana. Es información general y no constituye asesoría legal: para tu caso concreto, consulta con un abogado.

Por qué el contrato pesa más en software que en otros servicios

Un software es un activo intangible que sigue cambiando después de entregado. Vive en servidores, depende de credenciales, usa librerías de terceros y casi siempre maneja datos de clientes. Si el contrato no ordena todo eso, el riesgo no es solo perder dinero: es quedar atado a un proveedor que tiene las llaves de tu operación.

Además, el alcance tiende a crecer sobre la marcha. Según el informe Pulse of the Profession 2018 del Project Management Institute, el 52 % de los proyectos terminados en los doce meses anteriores sufrió crecimiento no controlado del alcance, frente al 43 % de cinco años antes. Un buen contrato no impide que el alcance cambie; define cómo se cambia.

Las cláusulas que no pueden faltar

Cláusula Qué define Pregunta que debe responder
Alcance Módulos, funciones, integraciones y exclusiones ¿Qué se construye y qué no?
Entregables y aceptación Qué recibes y cómo se aprueba ¿Cuándo se considera terminado?
Propiedad intelectual Cesión o licencia del código ¿De quién es el software?
Pagos Valor, hitos y condiciones ¿Qué pago corresponde a qué entrega?
Garantía Corrección de defectos posteriores ¿Qué pasa si algo falla después?
Soporte Operación, mantenimiento y tiempos de respuesta ¿Quién lo mantiene vivo y a qué costo?
Confidencialidad Información del negocio ¿Qué no se puede divulgar?
Datos personales Roles y obligaciones de tratamiento ¿Quién responde por los datos?
Terminación y salida Entrega de código, accesos y datos ¿Cómo me voy si no funciona?

1. Alcance: qué se construye y qué no

El alcance debe ir en un anexo técnico, no en un párrafo genérico. Como mínimo debe listar los módulos, los roles de usuario, las integraciones con otros sistemas, las plataformas soportadas (navegadores, móvil) y, sobre todo, las exclusiones. Lo que no está escrito como incluido debe entenderse como excluido, y eso protege a ambas partes.

Igual de importante es el procedimiento de cambios: cómo se solicita un ajuste, quién lo cotiza, en cuánto tiempo se responde y quién lo aprueba. Sin ese procedimiento, cada cambio se vuelve una negociación informal por chat. Si todavía no tienes claro el alcance, empieza por entender cuánto se demora hacer un software según su tamaño.

2. Entregables y criterios de aceptación

“Entregar el software” es ambiguo. El contrato debe decir qué recibes concretamente:

  • El código fuente completo, en un repositorio al que tengas acceso.
  • La base de datos y su estructura.
  • La aplicación desplegada en un entorno de producción.
  • Documentación técnica mínima y manual de uso.
  • Credenciales de todos los servicios usados.
  • Capacitación del equipo que va a operar el sistema.

Para cada etapa, define criterios de aceptación verificables (“el usuario administrador puede crear, editar y anular una orden”) y un plazo para revisar. Si el plazo vence sin observaciones, la entrega se entiende aprobada. Así evitas proyectos que nunca terminan porque nadie firma la aceptación.

3. Propiedad intelectual: ¿de quién es el código?

Esta es la cláusula que más se pasa por alto. En Colombia, el software se protege por derecho de autor: el Decreto 1360 de 1989 lo considera una creación del dominio literario y regula su inscripción en el Registro Nacional del Derecho de Autor.

Para obras creadas bajo un contrato de prestación de servicios, el artículo 20 de la Ley 23 de 1982, modificado por el artículo 28 de la Ley 1450 de 2011, establece que el autor es el titular originario de los derechos, pero se presume, salvo pacto en contrario, que los derechos patrimoniales se transfieren al encargante “en la medida necesaria para el ejercicio de sus actividades habituales”. Para que opere esa presunción, el contrato debe constar por escrito.

La misma ley modificó el artículo 183 de la Ley 23: la transferencia de derechos patrimoniales queda limitada a las modalidades de explotación, el tiempo y el territorio que se pacten. Si el contrato no menciona el tiempo, la transferencia se limita a cinco años; si no menciona el territorio, al país donde se hace la transferencia. Además, el contrato debe constar por escrito como condición de validez.

Traducido a la práctica: si quieres ser dueño de tu software, el contrato debe decir expresamente que se ceden los derechos patrimoniales sobre el código desarrollado a la medida, para todas las modalidades de explotación, por el término máximo que permita la ley y con alcance mundial, e incluir la entrega del código fuente.

Cesión, licencia o modelo mixto

Modelo Qué recibes Cuándo conviene Punto a vigilar
Cesión de derechos La titularidad patrimonial del código hecho para ti Software a la medida que es parte de tu operación Que incluya código fuente, tiempo y territorio
Licencia de uso Derecho a usar un producto que sigue siendo del proveedor Plataformas estándar o SaaS Condiciones de salida y exportación de datos
Mixto Cesión del desarrollo propio y licencia sobre componentes previos del proveedor Cuando el proveedor reutiliza módulos propios Que la licencia sea perpetua, irrevocable y sin costo recurrente

Si estás evaluando si construir o suscribirte a una plataforma, revisa nuestra comparación de aplicaciones web a medida frente a SaaS.

Componentes de terceros y código abierto

Ningún software moderno se escribe desde cero: usa frameworks, librerías y servicios externos con sus propias licencias. El contrato debe obligar al proveedor a usar solo componentes cuyas licencias permitan el uso comercial que vas a darle y a entregarte el listado. Esos componentes no se te ceden: se usan bajo su licencia. Lo que sí se te cede es el código escrito para tu proyecto.

4. Pagos por hitos

El pago debe estar atado a entregas verificables, no al calendario. En proyectos acotados, un esquema común es pagar una parte al iniciar y el resto al publicar. En proyectos más grandes conviene dividir en más hitos, cada uno con su entregable y su criterio de aceptación. En TBA Digitals, el software suele pagarse por hitos, y en proyectos acotados también usamos 50 % al iniciar y 50 % al publicar. La forma exacta queda en la propuesta.

El contrato también debe aclarar qué pasa con los cambios: si se cobran por hora, a qué tarifa y con qué aprobación previa. En TBA Digitals, el valor de la hora de desarrollo adicional queda en la propuesta. Una aplicación web a la medida parte desde $2.400.000; el valor final depende del alcance. Puedes ver cómo se arma ese valor en cuánto cuesta un software a la medida en Colombia y en nuestra página de precios.

5. Garantía: qué pasa si algo falla después de entregar

La garantía cubre defectos: el software no hace lo que el alcance aprobado decía que debía hacer. No cubre funciones nuevas ni cambios de opinión. Define en el contrato:

  • El periodo de garantía después de la publicación.
  • Qué se considera defecto y qué se considera requerimiento nuevo.
  • Tiempos de respuesta según la gravedad (un sistema caído no espera lo mismo que un texto mal alineado).
  • Exclusiones razonables: cambios hechos por terceros, servidores no administrados por el proveedor o uso fuera de lo acordado.

6. Soporte, mantenimiento y operación

La garantía termina; el software sigue. Alguien tiene que pagar el hosting, vigilar la base de datos, aplicar actualizaciones de seguridad y hacer ajustes menores. Eso va en un acuerdo de soporte, separado o como anexo, con alcance mensual, horas incluidas, tiempos de respuesta y costo de las horas extra.

En TBA Digitals, el valor del soporte y la operación mensual de un software (hosting, base de datos, monitoreo y horas de desarrollo) queda en la propuesta. Si quieres entender qué hay detrás de la operación, revisa nuestra guía de infraestructura web, hosting y uptime.

7. Confidencialidad

Durante el proyecto vas a compartir procesos, precios, bases de clientes y estrategias. La cláusula debe ser mutua, definir qué se considera información confidencial, cómo se protege, quién puede acceder a ella y cuánto tiempo sigue vigente después de terminado el contrato. Si el proveedor quiere mostrar el proyecto en su portafolio, pacta qué puede mostrar y qué no.

8. Datos personales: responsable y encargado

Si el software maneja datos de clientes, empleados o pacientes, la Ley 1581 de 2012 distingue dos roles. El responsable del tratamiento es quien decide sobre la base de datos y su tratamiento; normalmente, tu empresa. El encargado es quien trata los datos por cuenta del responsable; por ejemplo, el proveedor que desarrolla, aloja o da soporte al sistema.

La misma ley fija deberes para el encargado, como conservar la información bajo condiciones de seguridad que impidan su adulteración, pérdida o acceso no autorizado. La reglamentación compilada en el Decreto 1074 de 2015 prevé un contrato de transmisión de datos entre responsable y encargado, que define el alcance del tratamiento, las actividades que el encargado hará por cuenta del responsable y sus obligaciones de seguridad y confidencialidad. Incluye esa cláusula o ese anexo en tu contrato.

9. Accesos, terminación y salida

La pregunta que pocos hacen al firmar es: ¿cómo me voy si esto no funciona? El contrato debe asegurar que:

  • El dominio, las cuentas de hosting, la nube y el repositorio estén a nombre de tu empresa, o se te transfieran al terminar.
  • Al terminar, por cualquier causa, recibas el código, la base de datos completa y la documentación en un plazo definido.
  • No existan penalidades desproporcionadas por cambiar de proveedor.

Esta cláusula tiene historia en TBA Digitals. Tomás Buitrago, su fundador, empezó a desarrollar en 2014, cuando el sitio de un negocio familiar estaba en manos de una agencia que cobraba de más por cada cambio. De ahí sale una regla que aplicamos en cada proyecto: qué queda a nombre del cliente (código, datos, cuentas y accesos) y bajo qué condiciones se deja por escrito antes de empezar, sin letra pequeña. Puedes conocer más en sobre nosotros.

Señales de alerta antes de firmar

  • El alcance cabe en un párrafo y no tiene exclusiones.
  • No hay mención al código fuente ni a la cesión de derechos.
  • Los pagos van atados a fechas, no a entregas.
  • El proveedor registra el dominio o el hosting a su nombre “para facilitar”.
  • No hay procedimiento de cambios ni tarifa por hora para ajustes.
  • El soporte se promete “incluido” sin límite ni definición.
  • No se menciona el tratamiento de datos personales.

Si estás comparando proveedores, nuestra guía sobre cómo elegir una empresa de desarrollo de software en Medellín te da las preguntas para hacer antes de llegar al contrato.

Checklist rápido

  1. ¿El alcance está en un anexo, con módulos, integraciones y exclusiones?
  2. ¿Cada pago corresponde a un entregable con criterio de aceptación?
  3. ¿Se ceden expresamente los derechos patrimoniales del código a la medida, con tiempo y territorio?
  4. ¿Se entrega el código fuente y el acceso al repositorio?
  5. ¿Hay garantía con periodo y tiempos de respuesta definidos?
  6. ¿El soporte posterior tiene alcance, horas y tarifa?
  7. ¿Existe cláusula de confidencialidad mutua?
  8. ¿Está regulado el tratamiento de datos personales?
  9. ¿Las cuentas críticas están a nombre de tu empresa?
  10. ¿Está claro cómo terminar y qué recibes al salir?

Preguntas frecuentes

¿Quién es dueño del código si el contrato no dice nada?

En Colombia, si el contrato de prestación de servicios consta por escrito, la ley presume que los derechos patrimoniales pasan al cliente solo en la medida necesaria para sus actividades habituales. Esa presunción es limitada y genera discusiones. Lo más seguro es pactar una cesión expresa, con modalidades, tiempo, territorio y entrega del código fuente.

¿Cuánto cuesta un software a la medida en Colombia?

Depende de los módulos, las integraciones y los usuarios. Como referencia, en TBA Digitals una aplicación web a la medida parte desde $2.400.000, y el valor final se define con el alcance. Desconfía de cotizaciones sin alcance escrito: el precio solo tiene sentido si sabes qué incluye.

¿Es mejor pagar por hitos o por horas?

Para un alcance definido, los hitos dan certeza de precio y te permiten pagar contra entregas verificables. Las horas funcionan mejor para soporte, ajustes pequeños o proyectos exploratorios donde el alcance todavía cambia. Muchos contratos combinan ambos: hitos para la construcción inicial y una bolsa de horas o un plan mensual para lo que viene después.

¿Qué diferencia hay entre garantía y soporte?

La garantía obliga al proveedor a corregir, sin costo, defectos de lo que se entregó según el alcance aprobado, durante un periodo definido. El soporte es un servicio continuo y pagado que cubre la operación, el hosting, las actualizaciones y los ajustes nuevos. Confundirlos lleva a esperar arreglos gratuitos de cosas que nunca estuvieron en el alcance.

¿Tengo que registrar el software ante la Dirección Nacional de Derecho de Autor?

El Decreto 1360 de 1989 regula la inscripción del software en el Registro Nacional del Derecho de Autor, y la Ley 1450 de 2011 exige inscribir los actos de transferencia para que sean oponibles ante terceros. Si el software es un activo importante para tu empresa, vale la pena hacerlo. Consulta el trámite vigente con la entidad o con tu abogado.

Revisa tu proyecto antes de firmar

Si estás por contratar el desarrollo de un software, o ya tienes uno y no sabes quién es dueño del código, conviene revisarlo antes de que sea un problema. En TBA Digitals trabajamos con propuesta escrita de alcance, precio y cronograma, y cada proyecto de software a la medida se entrega con su código y sus accesos; puedes ver ejemplos en nuestros proyectos. Agenda un diagnóstico gratuito de 30 minutos o, si prefieres, escríbenos por WhatsApp con lo que tienes hoy.

Tomás Buitrago

Fundador de TBA Digitals, estudio de desarrollo de software en Medellín. Desarrolla software desde 2014 y lidera un equipo de 8 personas que construye apps, sitios web, automatizaciones e infraestructura.

Conoce el estudio
30 min Diagnóstico gratuito

Cuéntanos qué necesitas. Te respondemos el mismo día hábil.

Revisamos tu sitio, tus procesos y tus objetivos en una conversación de 30 minutos. Trabajemos juntos o no, te llevas recomendaciones concretas.

¿En qué podemos ayudarte?

WhatsApp