Skip to content

Latest commit

 

History

History
117 lines (89 loc) · 2.98 KB

README.md

File metadata and controls

117 lines (89 loc) · 2.98 KB

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.