Cómo las empresas tecnológicas se enfrentan a los costes de desarrollo de software: Ideas de un contador público

Comparta

  • En el mundo de la tecnología de arranque/crecimiento emergente, hay una pregunta contable recurrente que inevitablemente requiere una consideración seria: ¿debo capitalizar mis costos de desarrollo de software, o debo gastarlos todos o una parte de ellos? Si usted también se hace esta pregunta, consuélese al saber que la determinación de la capitalización de los costes de software no es un camino de rosas. Aunque las normas contables abordan específicamente esta cuestión con gran detalle, la aplicación de las reglas es una cuestión de subjetividad y opinión. Sin embargo, un CEO/CFO/Controlador bien informado necesita entender las normas contables que rodean a los costos de software capitalizados para determinar, y lo que es más importante, apoyar la política de su empresa sobre los costos de capitalización de software.

    Puede que se pregunte por qué debería preocuparse. Sencillamente, las startups de alta tecnología generalmente dedican una cantidad significativa de su tiempo y dinero al desarrollo de software; el tratamiento de estos costes muy probablemente tendrá un enorme impacto no sólo en su rendimiento financiero actual, sino también en las finanzas futuras.

    Hay algunas distinciones que deben hacerse antes de sumergirse en las normas de contabilidad. En primer lugar, las normas contables según los PCGA definen dos tipos de software:

    1. software para ser vendido, arrendado o comercializado
    2. software para uso interno
    3. Las normas proporcionan reglas contables específicas y diferentes para cada tipo de software. Es importante determinar qué tipo de software se está desarrollando para determinar adecuadamente el importe de los costes que deben ser cargados o capitalizados. En segundo lugar, a efectos de este artículo, me referiré a las normas contables según los PCGA y no según el Código del IRS. Sin embargo, es importante tener en cuenta que cualquiera que sea la determinación que se haga con respecto al tratamiento de los costes de desarrollo de software por parte de las empresas según los PCGA, esa determinación no influye necesariamente en el tratamiento de los costes por parte de su empresa según el Código del IRS (es decir, capitalizar para los PCGA y gastar para los impuestos puede estar bien). En tercer lugar, este artículo abordará los aspectos básicos de las normas y será un buen punto de partida. Este artículo no sustituye la necesidad de consultar con su firma de CPA antes de tomar cualquier decisión importante.

      Software para ser vendido, arrendado o comercializado

      Si su empresa está desarrollando software para eventualmente vender, arrendar o comercializar al público en general, esta sección es para usted. Este software se desarrolla con la intención de obtener futuros ingresos y no debe proporcionar beneficios a las operaciones internas de su empresa (véase el software de uso interno más abajo). Cuando hablo con los clientes sobre qué costes de desarrollo capitalizar o gastar en relación con el software que se va a comercializar externamente, la pregunta más importante que hago es ¿cuándo alcanzó el proyecto de software la «viabilidad tecnológica»? Esto es importante porque las normas contables establecen que todos los costes incurridos en un proyecto de software antes del establecimiento de la viabilidad tecnológica deben contabilizarse como gastos. Las normas también establecen que los costes incurridos después del establecimiento de la viabilidad tecnológica pueden ser capitalizados. La capitalización de los costes debe cesar cuando el programa informático esté disponible para su lanzamiento general a los clientes. Cualquier coste futuro relacionado con el proyecto de software debe cargarse a la cuenta de resultados a medida que se incurre en él.

      Contacta con nuestros profesionales para que te ayuden a gestionar este tema.

      ¿Qué es la viabilidad tecnológica?

      La viabilidad tecnológica es un término que se utiliza para describir un punto determinado durante un proyecto de software cuando la fase de investigación y desarrollo se ha completado sustancialmente. Las normas proporcionan una orientación específica sobre cuándo un proyecto ha alcanzado la viabilidad tecnológica.

      Lo siguiente es un extracto directamente de las normas:
      …el producto de software informático incluye un diseño de programa detallado (definido a continuación) todo lo siguiente:

      • El diseño del producto y el diseño del programa detallado se han completado, y la entidad ha establecido que las habilidades necesarias, el hardware y la tecnología de software están disponibles para la empresa para producir el producto.
      • Se ha confirmado la integridad del diseño del programa de detalle y su coherencia con el diseño del producto mediante la documentación y el seguimiento del diseño del programa de detalle con las especificaciones del producto.
      • Se ha revisado el diseño del programa detallado para detectar problemas de desarrollo de alto riesgo (por ejemplo, funciones y características novedosas, únicas y no probadas o innovaciones tecnológicas), y se ha resuelto cualquier incertidumbre relacionada con los problemas de desarrollo de alto riesgo identificados mediante la codificación y las pruebas.
        • Un Diseño de Programa Detallado es definido por las normas de la siguiente manera:
          El diseño detallado de un producto de software informático que lleva la función del producto, la característica y los requisitos técnicos a su forma más detallada y lógica y está listo para la codificación.

          Ahora haré una pausa para que puedas tomarte un respiro contable…Vale. Como con cualquier tema contable, la orientación anterior está abierta a la interpretación de la gerencia.

          En la profesión, usted encontrará empresas que han capitalizado significativamente los costos de desarrollo de software y otras que han gastado todos sus costos de desarrollo de software. Muchas empresas adoptan la posición de que la viabilidad tecnológica se establece en el mismo momento en que el producto de software puede ser utilizado o consumido en cualquier forma por el público; por lo tanto, gastan la mayoría de los costes de desarrollo. Esta posición suele ser la más conservadora y probablemente se enfrentará a un menor escrutinio por parte de sus auditores. Otros adoptan la posición de que la viabilidad tecnológica se produce antes de que el producto esté disponible para la venta.

          Los costes que son elegibles para la capitalización, después de la viabilidad tecnológica, son los siguientes:

          • La compensación del programador por el tiempo directamente atribuible a la codificación del software.
          • Una cantidad asignada de costes indirectos, como los gastos generales relacionados con los programadores y las instalaciones que ocupan.
          • Costes asociados a las pruebas de mercado del software (es decir, pruebas alfa, beta).
          • Otros costes directos de producción en los que se incurre para llevar el software al mercado.
          • Algunos otros puntos a tener en cuenta son:

            • Los costes de mantenimiento, de corrección de errores y de asistencia al cliente deben cargarse a medida que se producen.
            • Hemos visto que los clientes tienen en cuenta las ineficiencias a la hora de determinar el importe de la remuneración del programador que se debe capitalizar (es decir, el total se reduce en un porcentaje).
            • Las normas contables también tocan un concepto conocido como modelo de trabajo que se ha dejado fuera de esta discusión. En nuestra experiencia, el concepto de modelo de trabajo no influye en la mayoría de las decisiones de nuestros clientes con respecto a la capitalización o no de los costes de software.

      Software de uso interno

      Si su empresa está desarrollando software internamente únicamente para satisfacer las necesidades internas de su empresa, esta sección es para usted. No puede haber ningún plan para comercializar el software externamente, ni siquiera en el futuro (determinado en el momento del desarrollo). El software de uso interno suele controlar los módulos analíticos y contables.

      Las normas contables dividen el proceso de desarrollo del software de uso interno en tres etapas diferentes. La dirección debe determinar en qué momento el desarrollo del software entra y sale de cada etapa. Dependiendo de la etapa, los costes de desarrollo asociados se contabilizarán como gastos o se capitalizarán. Las tres etapas de software de uso interno junto con sus definiciones son las siguientes:
      Etapa de proyecto preliminar – Cuando un proyecto de software informático se encuentra en esta fase, su empresa probablemente hará lo siguiente:

    • Tomar decisiones estratégicas para asignar recursos entre proyectos alternativos en un momento dado.
    • Determinar lo que su empresa necesita que haga el software y los requisitos del sistema en él.
    • Determinar la tecnología necesaria para lograr los requisitos del sistema.
    • Explorar la mejor solución de implementación para el software. Por ejemplo, determinar si desarrollar o comprar el
      software.
    • Etapa de desarrollo de la aplicación – Esta etapa suele comenzar una vez que se elige un proyecto de software de uso interno y el desarrollo está a punto de comenzar. Las actividades realizadas durante la etapa de desarrollo de la aplicación incluyen:

      • Diseño de la ruta elegida, incluyendo la configuración del software y las interfaces del mismo.
      • Codificación.
      • Instalación en el hardware.
      • Pruebas.
      • Etapa de postimplementación-operación – Esta etapa suele comenzar una vez que se ha completado el desarrollo del software y se ha implementado el software de uso interno. Las actividades realizadas durante la etapa de post-implementación-operación incluyen:

        • Formación.
        • Mantenimiento.
        • Una vez que haya dividido el proceso de desarrollo en las tres etapas, las siguientes son las consideraciones de tratamiento contable para cada etapa:

          Etapa de proyecto preliminar – Todos los costes de desarrollo incurridos durante esta etapa deben ser cargados como incurridos. Esto incluye tanto los costes internos como los externos.

          Etapa de desarrollo de la aplicación – Todos los costes de desarrollo incurridos durante esta etapa deben ser capitalizados como incurridos una vez que se cumplan las condiciones. Esto incluye tanto los costes internos como los externos. Los costes generales & administrativos y de formación no se consideran costes de desarrollo, y si se incurre en ellos durante esta etapa, deben contabilizarse como gastos. Los costes de conversión de datos antiguos a un nuevo sistema deben contabilizarse como gastos. Sin embargo, si el software fue desarrollado o comprado para convertir los datos, estos costos específicos deben ser capitalizados.

          Etapa de Implementación-Operación – Los costos de capacitación interna y externa y los costos de mantenimiento durante esta etapa deben ser cargados como incurridos.

          Algunas ideas sobre lo que debe y no debe ser capitalizado con respecto al software de uso interno:

          • Sólo los costos incurridos durante la etapa de desarrollo de la aplicación son elegibles para la capitalización.
          • Los costes sólo pueden capitalizarse una vez que la dirección autoriza y se compromete a financiar el proyecto, cree que se completará y se han realizado todas las pruebas de diseño.
          • Los costes internos que pueden capitalizarse incluyen principalmente los costes de nómina y los relacionados con la nómina que están directamente relacionados con el proyecto. Los gastos generales y administrativos no son elegibles para la capitalización.
            • Costes de desarrollo web

              Si su empresa está incurriendo en costes para desarrollar, implementar y mantener un sitio web, los costes pueden ser capitalizados. Las normas contables tienen orientaciones específicas en este ámbito, y encontrará que estas orientaciones son muy similares a la contabilidad del software de uso interno. Como resultado, es importante entender las reglas de contabilidad que rodean al software de uso interno (incluidas más arriba).

              De forma similar al software de uso interno, el proceso de desarrollo del sitio web se divide en etapas. Las cinco etapas de desarrollo web junto con sus definiciones son las siguientes:

              • Etapa de planificación Esta etapa es el comienzo mismo de la vida de un sitio web: el proceso de pensamiento. Las acciones incluyen la determinación de los objetivos específicos del sitio web, la identificación del público objetivo, la creación de presupuestos de tiempo y costes, y la determinación de las funcionalidades del sitio web.
              • Etapa de desarrollo de la aplicación y la infraestructura Esta etapa implica la creación de los huesos del sitio web, incluyendo el registro de un nombre de dominio, el desarrollo o la adquisición de código personalizado, la integración de aplicaciones externas, el desarrollo de páginas HTML, la compra de routers y servidores, y la prueba de las aplicaciones del sitio web.
              • Etapa de desarrollo gráfico
              • Esta etapa se suele realizar junto con la etapa dos anterior. Las tareas incluyen el desarrollo del diseño o la disposición de cada página, el color, las imágenes y el aspecto general y la usabilidad del sitio web.

                • Etapa de desarrollo del contenido Esta etapa es la carga continua de contenido que mantiene el sitio web actualizado. El contenido puede ser de naturaleza textual o gráfica. Los ejemplos incluyen artículos, fotos de productos, mapas, descripciones, etc.
                • Etapa de funcionamiento Esta etapa incluye tareas como la formación, la administración, el mantenimiento y otros costes para operar el sitio web.
                • Una vez que haya dividido el proceso de desarrollo en las cinco etapas, las siguientes son las consideraciones de tratamiento contable para cada etapa:

                  • Etapa de planificación Todos los costes de desarrollo en los que se incurra durante esta etapa deben contabilizarse como gastos. Esto incluye tanto los costes internos como los externos.
                  • Etapa de desarrollo de la aplicación y la infraestructura Todos los costes relacionados con el software desarrollado o adquirido que se utiliza para ayudar a operar el sitio web deben contabilizarse bajo las reglas de software de uso interno (detalladas anteriormente). Los costes de obtención y registro de un dominio de Internet deben capitalizarse. Los costes de alojamiento de la web deben cargarse a lo largo del periodo de beneficio.
                  • Etapa de desarrollo de gráficos Las normas contables consideran que los gráficos son un componente del software y, por lo tanto, deben contabilizarse con arreglo a las normas de uso interno del software.
                  • Etapa de desarrollo de contenidos Los costes de introducción de contenidos en un sitio web deben cargarse a lo largo del periodo en que se incurre en ellos. Los costes de conversión de datos también deben contabilizarse a medida que se producen. El software utilizado para integrar una base de datos con un sitio web debe capitalizarse.
                  • Etapa de funcionamiento Por lo general, los costes de esta etapa deben contabilizarse a medida que se producen. Los costes de las actualizaciones y mejoras que añaden funcionalidad al sitio web deben contabilizarse según las reglas del software de uso interno. Los costos para registrar el sitio web en los motores de búsqueda se consideran costos de publicidad y deben ser gastados cuando se incurre en ellos.
                    • Pensamientos finales

                      Un punto a considerar es que si usted capitaliza los costos de desarrollo de software de su empresa, la administración debe ser capaz de apoyar estos costos capitalizados con números duros, hojas de cálculo y la lógica detrás de todo. El proceso también suele conllevar la necesidad de hacer un seguimiento del tiempo del desarrollador por horas y por proyectos. Si capitaliza el software, asegúrese de que su empresa cuenta con el sistema de seguimiento y la organización necesarios para respaldar sus costes capitalizados.

                      Un segundo punto a tener en cuenta se refiere a las mejoras significativas realizadas en el software desarrollado para ser vendido, alquilado o comercializado externamente. Por ejemplo, si su empresa tiene un producto de software establecido que se vende al público y sus desarrolladores están trabajando en la adición de nuevas funcionalidades a este producto, esto puede ser una mejora significativa. Cada mejora significativa debe tratarse de la misma manera que el producto base, en el sentido de que todos los costes anteriores a la viabilidad tecnológica deben contabilizarse como gastos; todos los costes posteriores a la viabilidad tecnológica pueden capitalizarse. Es importante señalar que la viabilidad tecnológica puede alcanzarse antes en el proceso de desarrollo de las mejoras significativas, en comparación con los nuevos productos de software. La lógica es que, en su mayoría, todas las cuestiones tecnológicas, de hardware y de desarrollo de alto riesgo ya fueron examinadas durante el desarrollo inicial del producto. También hay que tener en cuenta que las mejoras del producto sólo pueden capitalizarse si se consideran significativas para el producto en sí (es decir, nuevas funcionalidades).

                      Un tercer punto a tener en cuenta es que una vez que los costes se capitalizan, generalmente se amortizan a lo largo de la vida útil del producto o software. A continuación, los costes capitalizados se someten a un análisis de deterioro en cada periodo de información. Las reglas de amortización difieren entre el software de uso interno, el software para venta externa y los costes de desarrollo de la web. Estas reglas quedan fuera del alcance de este artículo (¡tengo que dejar de escribir en algún momento!).

                      El último punto a tener en cuenta es que para el software desarrollado para la venta o el uso público, la mayoría, si no todos, los costes de investigación y desarrollo deben ser contabilizados como gastos. Existen bolsas de tiempo bastante reducidas en las que se puede producir la capitalización. En general, cuando una empresa establece que su software se desarrolla para uso interno, la mayoría de los costes de investigación y desarrollo deben capitalizarse. Es importante tener en cuenta que el proceso de cada empresa puede ser diferente; en consecuencia, la aplicación de las normas contables es específica para cada entidad.

                      Servicios de Tecnología y Crecimiento Emergente

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *