Pagamentos & Checkout
ChatGPT / GPT-4o
Gerador de Fatura em PDF com Campos Pix, Boleto e Cartão
Script Node.js que gera faturas profissionais em PDF (A4) com QR Code Pix, linha digitável do boleto e parcelamento — pronto para enviar por e-mail.
0cópias
0joinhas
0favoritos
O prompt
Desenvolva um gerador de faturas em PDF profissional em Node.js/TypeScript para a empresa {{nome_empresa}}.
Parâmetros:
- Nome da Empresa (emitente): {{nome_empresa}}
- CNPJ/CPF do Emitente: {{documento_emitente}}
- Logotipo (caminho ou URL, opcional): {{logo_url}}
Requisitos:
1. Função generateInvoice(data) recebendo: emitente, cliente (nome, documento, e-mail), itens [{descricao, quantidade, unitPrice}], vencimento e forma de pagamento — retorna Buffer do PDF A4.
2. Layout profissional: cabeçalho com logo {{logo_url}} + dados do emitente, bloco do cliente, tabela de itens com subtotal por linha, totais (subtotal, desconto opcional, total) alinhados à direita, rodapé com contato e 'Documento gerado automaticamente'.
3. Se formaPix for fornecida: renderizar o QR Code Pix (recebendo a string EMV pronta) + código copia-e-cola em fonte monoespaçada quebrada em linhas de 40 chars.
4. Se formaBoleto for fornecida: linha digitável formatada no padrão XXXXX.XXXXX XXXXX.XXXXX XXXXX.XXXXX XX XXXXXXXXXX.
5. Se formaCartao: tabela de parcelas (nº, data, valor) para até {{max_parcelas}}x com destaque na primeira.
6. Use pdfkit (ou equivalente leve); números em pt-BR (R$ 1.234,56), datas dd/mm/aaaa; exporte também generateInvoiceBase64() para embutir em e-mail.
Como usar
- Substitua {{nome_empresa}}, {{documento_emitente}} e {{logo_url}} (ou deixe vazio).
- Cole no ChatGPT/Cursor em uma pasta com package.json — o gerador + dependências saem prontos.
- Rode o exemplo incluso: gera fatura.pdf na raiz; abra e confira alinhamentos, QR Code legível (escaneie com o app do banco) e linha digitável no formato certo.
- Para integrar ao seu sistema de cobrança, chame generateInvoice() a cada venda e anexe o Buffer no e-mail — a função é pura e sem estado.
Exemplo de saída
invoice.ts (~200 linhas): generateInvoice(data) → Buffer PDF A4 com pdfkit, cabeçalho logo + emitente, tabela de itens com subtotais e totais alinhados à direita em pt-BR (R$ 1.234,56), QR Code Pix renderizado da string EMV + copia-e-cola quebrado a cada 40 chars, linha digitável no padrão oficial e tabela de parcelas destacando a primeira; generateInvoiceBase64() para e-mail.