Voltar ao blog
Vibe Coding

Crie um formulário de orçamento que gera PDF e envia por e-mail automaticamente

Aprenda a construir um formulário de orçamento que coleta os dados do cliente, gera um PDF personalizado e envia por e-mail — tudo automático, com Lovable e Resend.

C
Caio Braga
07 de junho de 2026 · 5 min de leitura
Sumário do artigo
Crie um formulário de orçamento que gera PDF e envia por e-mail automaticamente

Se você é freelancer ou presta serviços, sabe o quanto tempo vai embora montando orçamentos. O cliente pede, você abre o template, preenche os dados, salva como PDF, abre o Gmail, anexa, escreve o e-mail, envia.

Dez minutos em cada orçamento. Multiplica por 5 por semana e você perdeu quase uma hora de trabalho em algo que poderia ser automático.

Este tutorial mostra como construir um sistema que faz tudo isso: o cliente preenche um formulário com os dados do projeto, você recebe uma notificação, o sistema gera o PDF do orçamento personalizado e envia automaticamente para o cliente.


O que vamos construir

  • Formulário público de solicitação de orçamento

  • Geração automática de PDF com os dados preenchidos

  • Envio do PDF por e-mail para o cliente (via Resend)

  • Notificação para você (via e-mail ou Telegram)

  • Painel interno com todos os orçamentos gerados

Stack: Lovable para interface e lógica, Supabase para banco, Resend para e-mails, PDF gerado via HTML/CSS no servidor.


Passo 1 — Criando o projeto no Lovable

Crie um sistema de orçamento automático para freelancer de design.

FORMULÁRIO PÚBLICO (/orcamento):
Campos obrigatórios:
- Nome completo do cliente
- E-mail
- Empresa (opcional)
- Tipo de projeto (select: identidade visual, website, 
  social media, outro)
- Descrição do projeto (textarea, máx. 500 chars)
- Prazo desejado (date picker)
- Orçamento estimado (select: até R$1k, R$1k-3k, 
  R$3k-8k, acima de R$8k)

Após envio:
- Mensagem de confirmação com previsão de retorno (24h úteis)
- Salvar os dados no Supabase
- Disparar o fluxo de geração e envio do orçamento

PAINEL INTERNO (/admin/orcamentos) — protegido por senha:
- Tabela com todos os orçamentos: nome, data, tipo, status
- Status: recebido, em análise, enviado, aprovado, recusado
- Botão para alterar status de cada orçamento

Passo 2 — Estrutura no Supabase

sql

create table orcamentos (
  id              uuid primary key default gen_random_uuid(),
  nome            text not null,
  email           text not null,
  empresa         text,
  tipo_projeto    text not null,
  descricao       text not null,
  prazo           date,
  budget          text,
  status          text default 'recebido',
  pdf_url         text,
  criado_em       timestamp default now()
);

Passo 3 — Gerando o PDF

A geração de PDF é a parte mais importante. A abordagem mais simples e confiável: gerar um HTML formatado e converter para PDF usando a biblioteca Puppeteer numa Edge Function do Supabase.

Instrua o Lovable:

Crie uma Supabase Edge Function chamada "gerar-orcamento-pdf" que:

1. Recebe o id do orçamento via POST
2. Busca os dados no banco
3. Monta um HTML de orçamento profissional com:
   - Logo e nome do freelancer no topo
   - Dados do cliente
   - Descrição do projeto
   - Valor estimado (baseado no budget selecionado)
   - Prazo de validade do orçamento (7 dias)
   - Condições de pagamento padrão
   - Assinatura no rodapé
4. Converte o HTML para PDF usando a API do PDFShift ou 
   HTML2PDF.app (ambas têm plano gratuito)
5. Salva o PDF no Supabase Storage no bucket "orcamentos"
6. Atualiza o campo pdf_url na tabela orcamentos
7. Retorna a URL pública do PDF

Sobre as APIs de PDF:

  • PDFShift: 50 conversões gratuitas por mês, ideal para começar

  • HTML2PDF.app: plano gratuito com watermark, pago sem watermark

Para volume maior, o Puppeteer self-hosted numa VPS é a opção mais econômica — mas requer mais configuração.


Passo 4 — Enviando por e-mail com Resend

Após gerar o PDF, dispare o e-mail para o cliente:

Crie uma Supabase Edge Function chamada "enviar-orcamento-email" que:

1. Recebe o id do orçamento
2. Busca os dados e a URL do PDF no banco
3. Usa a API do Resend para enviar um e-mail para o cliente com:
   - Assunto: "Seu orçamento está pronto — [tipo_projeto]"
   - Corpo HTML com mensagem personalizada e link do PDF
   - Remetente: seu e-mail profissional via Resend

Template do e-mail:
"Olá [nome],

Obrigado pelo interesse! Preparei o orçamento para o seu projeto 
de [tipo_projeto] conforme solicitado.

[Botão: Ver Orçamento] → link do PDF

O orçamento tem validade de 7 dias. Qualquer dúvida, 
é só responder este e-mail.

[sua assinatura]"

Configure o Resend com o seu domínio para que o e-mail chegue com o seu remetente profissional (não um genérico do Resend).


Passo 5 — Notificação para você

Adicione também uma notificação para você saber que chegou um novo pedido:

Após salvar o orçamento no banco, envie uma notificação 
para [seu e-mail] via Resend com:
- Nome do cliente
- Tipo de projeto
- Budget selecionado
- Link para o painel: /admin/orcamentos

O HTML do orçamento — o que não pode faltar

O template HTML que vira PDF deve ter:

Cabeçalho:

  • Seu logo e nome

  • Número do orçamento (gerado automaticamente: ORC-2026-001)

  • Data de emissão e validade

Dados do cliente:

  • Nome, empresa, e-mail

  • Tipo de projeto solicitado

Escopo do projeto:

  • Descrição fornecida pelo cliente

  • O que está incluso (defina um texto padrão por tipo de projeto)

  • O que não está incluso (importante para evitar mal-entendido)

Investimento:

  • Valor (baseado na faixa de budget selecionada)

  • Forma de pagamento (ex: 50% entrada, 50% na entrega)

  • Prazo estimado de entrega

Termos:

  • Validade do orçamento

  • Política de revisões

  • Direitos autorais

Rodapé:

  • Seus dados de contato

  • Como aceitar o orçamento


Evoluções possíveis

Aceitação digital do orçamento: um link no PDF que leva para uma página onde o cliente clica "Aceito" e assina digitalmente — gerando um e-mail de confirmação para os dois lados.

Integração com Stripe: botão de "Pagar entrada" direto no e-mail do orçamento — cliente vê o orçamento e já paga a entrada em um clique.

Geração de valor automática pela IA: ao invés de usar a faixa de budget do cliente, a IA pode calcular um valor com base no tipo de projeto e na descrição, usando uma tabela de preços base que você define.


Conclusão

Com esse sistema no ar, você para de gastar 10 minutos por orçamento e passa a gastar zero — o sistema faz tudo enquanto você está em outra tarefa.

O cliente recebe uma experiência mais profissional, você tem um histórico centralizado de todos os orçamentos e nunca mais vai perder um lead porque demorou dois dias para responder com o PDF.

É o tipo de ferramenta que você constrói uma vez e usa para sempre.

Tags
#lovable#formulário#orçamento#pdf#resend#supabase#automação#vibe coding
● Não perca essa chance

Não perca a próxima edição.

Toda quinta, 9h. Direto na sua caixa.

  • Ferramentas que economizam horas do seu trabalho
  • Agentes e automações que funcionam
  • Bastidores do que estamos construindo

100% gratuito. Cancele quando quiser.

Compartilhar