Skip to content

4success/nfse-campinas

Repository files navigation

NFSe Campinas

Pacote de integração para os webservices da prefeitura de Campinas no padrão ABRASF 2.03.

Importante: Se você procura a integração no padrão DSFNET, utilize a versão 1.x deste pacote.

Versões Disponíveis

  • 2.x (Atual): Padrão ABRASF 2.03

    yarn add @4success/nfse-campinas
    # ou
    npm install @4success/nfse-campinas
  • 1.x (Legacy): Padrão DSFNET

    yarn add @4success/nfse-campinas@^1.0.0
    # ou
    npm install @4success/nfse-campinas@^1.0.0

Compatibilidade

Este pacote é compatível com municípios que utilizam o Padrão ABRASF 1.3 ou superior. É necessária a utilização de Certificado Digital A1.

Como Usar

Configuração Básica

import { NfseCampinas } from '@4success/nfse-campinas';

const cert = fs.readFileSync('/caminho/para/certificado.pfx');
const nfse = new NfseCampinas(
  'https://issdigital.campinas.sp.gov.br/WsNFe2/LoteRps.jws?wsdl',
  cert,
        'senhaCertificado'
);

Exemplo de Consulta

const response = await nfse.ConsultarNfseServicoPrestado({
  ConsultarNfseServicoPrestadoEnvio: {
    Prestador: {
      CpfCnpj: {
        Cnpj: '99999999000199',
      },
    },
    PeriodoCompetencia: {
      DataFinal: '2024-08-31',
      DataInicial: '2024-08-01',
    },
  }
});

Impressão da DANFE

const pdfBuffer = await nfse.ImprimirNfse({
  cnpj: '99999999000199',
  inscricaoMunicipal: '1234567',
  numeroNfse: '123',
  codigoVerificacao: 'ABC123'
});

// Salvar o PDF
fs.writeFileSync('danfe.pdf', pdfBuffer);

Configuração para Serverless (AWS Lambda)

Para utilizar em ambientes serverless, adicione as seguintes configurações:

  1. No seu serverless.yml, adicione a layer necessária:
layers:
  - arn:aws:lambda:us-east-1:034541671702:layer:openssl-lambda:1

Funcionalidades

✅ Implementado

  • ✅ Emissão com XMLs assinados
  • ✅ Consulta de NFSe por RPS
  • ✅ Consulta de serviços prestados
  • ✅ Consulta de serviços tomados
  • ✅ Cancelamento de NFSe
  • ✅ Impressão da DANFE em PDF
  • ✅ Suporte para ambientes serverless

Links Úteis

Contribuindo

  1. Faça um fork do projeto
  2. Crie sua feature branch (git checkout -b feature/MinhaFeature)
  3. Commit suas mudanças (git commit -am 'Adicionando nova feature')
  4. Push para a branch (git push origin feature/MinhaFeature)
  5. Crie um novo Pull Request

Suporte

Para suporte, dúvidas ou sugestões, por favor abra um issue no repositório.

About

Biblioteca para emissão de Nota Fiscal de Serviços em Campinas

Resources

Stars

Watchers

Forks

Packages

No packages published