Contrato com Desenvolvedor Freelancer: O Que Não Pode Faltar

Contrato de prestação de serviços sendo assinado entre gestor e desenvolvedor freelancer

A maioria dos projetos de desenvolvimento que termina em conflito não falhou por falta de capacidade técnica. Falhou porque as expectativas de cada lado nunca foram formalizadas. O desenvolvedor entregou o que entendeu. O cliente esperava o que imaginou. Sem um contrato com desenvolvedor freelancer bem estruturado, essa distância entre o que foi dito e o que foi entendido vira litígio ou prejuízo.

Este guia cobre o que não pode faltar em um contrato de prestação de serviços de desenvolvimento, escrito para gestores e donos de empresa, não para advogados. Sem juridiquês, com exemplos diretos de cada cláusula e a explicação do por que ela existe.

A recomendação de ter um advogado revisando o contrato final continua válida, especialmente para projetos de valor alto. O que este artigo entrega é o entendimento do que precisa estar no documento para que a revisão jurídica tenha substância para trabalhar.

Por Que Contratos Verbais ou por E-mail Não Protegem Ninguém

Um acordo por e-mail tem algum valor legal, mas é frágil por duas razões práticas. Primeiro, o escopo raramente está completamente definido em uma troca de e-mails, e o que não foi dito explicitamente vai ser interpretado por cada parte à sua maneira. Segundo, quando o conflito surge, reconstituir uma conversa fragmentada em dezenas de e-mails é lento, caro e produz resultado incerto.

Um contrato escrito e assinado força as duas partes a articular explicitamente o que estão acordando antes de qualquer trabalho começar. Esse processo de articulação por si só já resolve muitos conflitos potenciais, porque as divergências de expectativa aparecem durante a elaboração do documento, quando ainda é barato corrigi-las, não durante a execução, quando o custo de conflito é alto.

A legislação brasileira sobre prestação de serviços autônomos reconhece contratos de prestação de serviços entre pessoas físicas e jurídicas com validade plena, sem necessidade de registro em cartório para a maioria dos casos. Um documento bem elaborado, assinado digitalmente pelas partes, tem validade legal.

O Que Deve Estar no Contrato: Elemento por Elemento

1. Identificação das Partes

O contrato começa com a identificação completa de quem está contratando e quem está sendo contratado: nome completo ou razão social, CPF ou CNPJ, endereço e, no caso do desenvolvedor pessoa jurídica, o número de registro da empresa.

Se o desenvolvedor é MEI ou ME, o contrato deve ser com a pessoa jurídica, não com a pessoa física, para que a prestação de serviços seja feita em conformidade com a estrutura jurídica do profissional. A diferença entre MEI, ME e prestador de serviço segundo o Sebrae tem implicações fiscais que afetam tanto o desenvolvedor quanto a empresa contratante.

2. Objeto do Contrato

O objeto é a descrição do que está sendo contratado. Essa é a cláusula mais importante do contrato e a que mais frequentemente está mal escrita.

“Desenvolvimento de sistema web” não é objeto suficiente. Qualquer coisa pode ser chamada de sistema web.

O objeto precisa descrever o que será construído com especificidade suficiente para que qualquer pessoa lendo o contrato entenda o que está incluído. A forma mais prática de fazer isso é anexar o documento de escopo ao contrato e referenciá-lo explicitamente: “O objeto deste contrato é o desenvolvimento do sistema descrito no Documento de Escopo anexo, identificado como Anexo I e parte integrante deste instrumento.”

O documento de escopo deve listar as funcionalidades incluídas, os sistemas que serão integrados, os perfis de usuário e os critérios de aceite para cada entrega principal. Tudo que está no escopo está incluído no preço. Tudo que não está no escopo é trabalho adicional com orçamento separado.

3. Prazo e Marcos de Entrega

O prazo total do projeto deve estar especificado, mas o que realmente protege as duas partes é a definição de marcos intermediários de entrega com datas e critérios de aceite para cada um.

Um contrato que diz apenas “entrega em 90 dias” não tem como ser executado com visibilidade real. O desenvolvedor pode trabalhar nos últimos 30 dias e entregar no prazo, e você não vai saber o que estava acontecendo nos 60 anteriores.

Marcos de entrega bem definidos têm três elementos: o que será entregue, quando será entregue e como a entrega será validada. Exemplo: “Marco 1 — Módulo de cadastro de clientes e autenticação: entrega até [data]. Aceite mediante funcionamento correto do fluxo de cadastro, login e recuperação de senha conforme especificado no Anexo I.”

O prazo de cada marco deve ter uma cláusula de aditivo: o que acontece se o marco atrasar? Se o atraso for causado por fatores dentro do controle do desenvolvedor, o contrato deve prever penalidade ou direito de rescisão. Se o atraso for causado por falta de aprovação ou feedback da parte contratante, o prazo é automaticamente estendido pelo tempo equivalente.

4. Valor e Forma de Pagamento

O valor total deve estar explícito, assim como a forma de pagamento atrelada aos marcos de entrega.

A estrutura mais comum e mais equilibrada para projetos com escopo definido é:

  • Uma entrada no início do projeto, entre 20% e 30% do valor total, que cobre o investimento inicial de planejamento e setup.
  • Pagamentos intermediários atrelados à aprovação de cada marco de entrega.
  • Saldo final na entrega e aprovação do produto completo.

Essa estrutura protege as duas partes: o desenvolvedor não está trabalhando sem receber, e o contratante não pagou tudo antes de ter resultado.

O contrato deve especificar o prazo para pagamento após a aprovação de cada marco (geralmente cinco a dez dias úteis), a forma de pagamento aceita (transferência bancária, PIX) e o que acontece em caso de atraso no pagamento: juros e multa aplicáveis e prazo a partir do qual o desenvolvedor pode suspender o trabalho.

5. Mudanças de Escopo

Essa é a cláusula que mais frequentemente está ausente nos contratos informais e que gera mais conflito quando está ausente.

Mudanças de escopo são qualquer adição, remoção ou alteração nas funcionalidades ou requisitos definidos no Anexo I de escopo. A cláusula deve definir o processo para tratar essas mudanças:

A parte contratante solicita a mudança por escrito (e-mail com confirmação de recebimento é suficiente). O desenvolvedor avalia o impacto no prazo e no custo e responde em até [X] dias úteis com uma proposta de aditivo. A mudança só é implementada após aprovação escrita do aditivo pela parte contratante.

Sem esse processo, qualquer pedido informal de ajuste durante uma reunião pode ser interpretado como dentro do escopo original pelo contratante e como trabalho adicional pelo desenvolvedor. Essa divergência de interpretação é a origem de boa parte dos conflitos de projeto.

6. Propriedade do Código e dos Ativos

Esta cláusula define quem é dono do que foi construído. A regra padrão que protege a parte contratante é clara: após o pagamento integral, todos os direitos sobre o código-fonte, banco de dados, documentação e quaisquer outros ativos desenvolvidos especificamente para o projeto são transferidos integralmente para a parte contratante.

O contrato deve especificar também o que acontece com componentes de terceiros utilizados no desenvolvimento: bibliotecas open source, frameworks, APIs pagas. Esses componentes têm licenças próprias que não são transferidas com o código. O desenvolvedor deve listar os componentes de terceiros utilizados e as licenças correspondentes como parte da documentação de entrega.

Uma situação comum que o contrato deve endereçar: o desenvolvedor reutiliza componentes que desenvolveu para outros projetos anteriores. Isso é prática legítima e pode acelerar o desenvolvimento, mas os dois lados precisam estar cientes de que esses componentes não são de propriedade exclusiva da parte contratante.

7. Confidencialidade

Se o projeto envolve informações sensíveis sobre o negócio, como dados de clientes, estratégias comerciais, processos proprietários ou qualquer informação que não deve ser divulgada a terceiros, a cláusula de confidencialidade é obrigatória.

A cláusula deve especificar o que é considerado informação confidencial, por quanto tempo a obrigação de confidencialidade se mantém após o encerramento do contrato (geralmente dois a cinco anos) e quais são as exceções: o desenvolvedor pode mencionar que trabalhou para a empresa como referência profissional, mas não pode revelar detalhes do que foi construído.

8. Período de Suporte e Garantia

Todo software tem bugs que aparecem após o lançamento, em situações que os testes não cobriram. A cláusula de garantia define por quanto tempo o desenvolvedor se compromete a corrigir problemas identificados após a entrega final, sem custo adicional.

O período razoável de garantia para projetos de desenvolvimento customizado é de 30 a 90 dias após a entrega final aprovada. A cláusula deve especificar o que está coberto pela garantia: correção de comportamento que diverge do especificado no escopo. O que não está coberto: novas funcionalidades, mudanças de requisito, problemas causados por alterações feitas pela parte contratante após a entrega.

9. Rescisão e Consequências

O contrato deve prever as condições sob as quais cada parte pode encerrá-lo antes da conclusão e o que acontece nesse caso.

Rescisão por parte do contratante: o desenvolvedor recebe pelo trabalho já realizado até a data de rescisão, proporcional ao escopo entregue e aprovado. Se a rescisão acontecer sem justa causa após o início do projeto, pode haver uma cláusula de indenização mínima equivalente a um percentual do valor total.

Rescisão por parte do desenvolvedor: possível em caso de inadimplência da parte contratante (pagamento em atraso além do prazo definido) ou de conduta que inviabilize o trabalho. O contrato deve definir o prazo de aviso prévio e o que acontece com o trabalho em andamento.

Rescisão por justa causa de qualquer parte: descumprimento grave das obrigações contratuais dá direito de rescisão imediata sem penalidade para a parte prejudicada.

10. Foro e Legislação Aplicável

Especifique em qual cidade e estado será resolvido qualquer litígio e que a legislação brasileira se aplica. Para contratos entre empresas de estados diferentes, o foro é especialmente importante para definir onde um eventual processo judicial seria conduzido.

Como Estruturar o Processo de Assinatura

Contratos digitais assinados por plataformas como DocuSign, ClickSign ou Assina Bem têm validade legal no Brasil desde a aprovação da MP 2.200-2/2001 e são aceitos em juízo. São mais práticos do que contratos em papel, eliminam o custo de reconhecimento de firma e criam um registro digital com data e hora de assinatura de cada parte.

O processo é simples: você cria o documento, envia para o e-mail do desenvolvedor pela plataforma, e os dois assinam digitalmente. O contrato assinado é arquivado pela plataforma e pode ser acessado por qualquer uma das partes a qualquer momento.

Não assine nenhum contrato em que você não tenha tido pelo menos 24 horas para ler com atenção. Contratos apresentados com urgência para assinatura imediata merecem desconfiança proporcional à pressão.

O Que Acontece Quando Não Há Contrato

Sem contrato, qualquer conflito vai ser resolvido com base na interpretação de e-mails, mensagens de WhatsApp e memória de conversas. Esse processo é lento, caro e raramente satisfatório para qualquer uma das partes.

O cenário mais comum sem contrato é o seguinte: o projeto entrega algo diferente do esperado, as duas partes têm razão de acordo com o que cada uma entendeu do acordo verbal, e a resolução envolve uma negociação desgastante sobre o que foi ou não combinado, frequentemente com prejuízo financeiro para pelo menos um dos lados.

O contrato não impede conflitos. Impede que os conflitos não tenham resolução clara.

Antes de chegar ao contrato, o processo começa com o que perguntar antes de assinar qualquer coisa e com como documentar o escopo antes de assinar, porque um contrato bem feito sobre um escopo mal definido ainda vai gerar conflito. E para entender como funciona o processo de contratação na prática, ver como um profissional estruturado trabalha ajuda a calibrar o que esperar de um processo bem conduzido.

Se o projeto envolve contratação PJ, o artigo sobre como funciona a contratação PJ sem vínculo empregatício cobre a estrutura jurídica que o contrato precisa refletir.

Conclusão

Um contrato com desenvolvedor freelancer bem estruturado não é burocracia. É o documento que torna possível uma relação de trabalho clara, onde as duas partes sabem exatamente pelo que estão sendo responsáveis e o que esperar uma da outra.

As cláusulas que cobri aqui, escopo documentado como anexo, marcos de entrega com critérios de aceite, processo de mudança de escopo, propriedade do código, garantia e condições de rescisão, são o mínimo necessário para que o projeto tenha proteção real para os dois lados.

O tempo investido em elaborar esse documento antes do início do trabalho é o investimento que mais diretamente reduz o risco de um projeto de desenvolvimento. E um desenvolvedor sério não vai resistir a assinar um contrato que protege as duas partes. Vai reconhecer nele o sinal de um cliente que sabe o que está fazendo.

Leia também

Artigos Relacionados