Para poder rodar o projeto é necessário instalar:
- Xampp
- A Ide de Programação
- O Framework baixado
Após Baixar, execute o arquivo que foi baixado e o sistema irá começar a fazer a instalação, apenas clique na opção next, não há necessidade de nenhuma configuração especial
Para editar os códigos de programação você precisará de uma ide, você pode utilizar qualquer uma, no nosso sistema utilizamos a IDE VS Code, segue uma lista da principais que existem no mercado:
- Visual Studio Code (VS Code): https://code.visualstudio.com/ (esse que utilizaremos)
- Atom: https://atom.io/
- Sublime Text: um editor de texto sofisticado para código, marcação e prosa.
- Website: https://www.sublimetext.com/
- IntelliJ IDEA: https://www.jetbrains.com/idea/
- PyCharm: https://www.jetbrains.com/pycharm/
- Eclipse: https://www.eclipse.org/
Após instalar o xampp, agora você precisar configurar o Framework que será utilizado durante a criação do projeto.
Agora configure o seu projeto, seguindo os seguinte passos:
- Crie uma pasta onde ficará seu projeto (importante, a pasta precisará está dentro de xampp/htdocs)
- Clique no link abaixo e salve os arquivos dentro da pasta que foi criada
- Descompacte o arquivo baixado e renomeie o a pasta framework para o nome do seu projeto
- Abra o projeto na Ide que você instalou
- Abra o seu projeto no navegador
- Abra o arquivo config/config.php do seu projeto
- O modifique a constante URL_BASE trocando o valor que está em caminho-do-seu-projeto
A Nota Fiscal Eletrônica (NFe) é um documento gerado digitalmente pela empresa que está realizando a transação comercial, por exemplo, a venda de um produto. Além de documentar fiscalmente as operações de venda, a NFe também é responsável para acobertar todas as demais operações, dentre elas a entrada de mercadorias, operações interestaduais, operações de devolução ou transferência de mercadorias, bem como para comprovar operações de simples remessa.
Documento fiscal digital assim como a NF-e. Mas, diferentemente dela, a NFC-e deve ser emitida em operações de venda presencial ou entrega a domicílio para o consumidor final. Em casos de delivery, por exemplo, ela só é permitida se a entrega for no mesmo Estado da emissão.
A Nota Fiscal de Serviço Eletrônica Utilizada para registrar a prestação de serviço onde não se pode emitir NF-e. Como este documento segue o layout de cada município, não há um número de modelo como nos demais documentos fiscais eletrônicos.
Possui o objetivo de documentar, para fins fiscais, uma prestação de serviço de transporte de cargas feito por qualquer modal (rodoviário, aéreo, ferroviário, aquaviário e dutoviário)
Criado com o intuito de viabilizar a fiscalização e diminuir o tempo de parada nos postos fiscais, isso porque no MDF-e, é informado um breve resumo da operação de transporte, contendo dados do veículo, motorista, destino, origem e documentos originários do transporte, como o CT-e ou NF-e, por exemplo.
O processo de emissão da Sefaz ocorrem em seis passos:
1 - Software Emissor de NF-e do Contribuinte deverá gerar um arquivo XML
2- O arquivo XML deverá ser “assinado” com um Certificado Digital padrão ICP-Brasil do contribuinte
3 - O sistema deverá transmitir o arquivo assinado para a SEFAZ (Secretaria da Fazenda) do seu estado;
4 - A plataforma de autorização de NF-e da SEFAZ irá devolver o protocolo de autorização da NFe ou o código de erro no caso de algo ter dado errado;
5 -Uma vez que a nota tenha sido autorizada, o sistema deverá transmitir por email ou disponibilizar em portal na web para download o arquivo XML assinado e o PDF do DANFE
6 - Também poderão ser impressas quantas vias do DANFE quantas forem necessárias, tanto para acompanhar o trânsito das mercadorias, como para outras finalidades.
Veja algumas regras importantes para o preenchimento da nota:
- Campos que representam códigos (CNPJ, CPF, CEP, CST, NCM, EAN, etc.) devem ser informados com o tamanho fixo previsto, sem formatação e com o preenchimento dos zeros não significativos;
- Campos numéricos que representam valores e quantidades são de tamanho variável, respeitando o tamanho máximo previsto para o campo e a quantidade de casas decimais. O preenchimento de zeros não significativos causa erro de validação do Schema XML. Os campos numéricos devem ser informados sem o separador de milhar, com uso do ponto decimal para indicar a parte fracionária se existente respeitando-se a quantidade de dígitos prevista no layout;
- O uso de caracteres acentuados e símbolos especiais para o preenchimento dos campos alfanuméricos devem ser evitados. Os espaços informados no início e no final do campo alfanumérico também devem ser evitados;
- As datas devem ser informadas no formato “AAAA-MM-DD”;
- A forma e a obrigatoriedade de preenchimento dos campos da Nota Fiscal Eletrônica estão previstas na legislação aplicável para a operação que se pretende realizar;
- Inexistindo conteúdo (valor zero ou vazio) para um campo não obrigatório, a TAG deste campo não deverá ser informada no arquivo da NF-e;
- Tratando-se de operações com o exterior, uma vez que o campo CNPJ é obrigatório não informar o conteúdo deste campo;
- No caso das pessoas desobrigadas de inscrição no CNPJ/MF, deverá ser informado o CPF da pessoa, exceto nas operações com o exterior
Para emitir uma NFE é necessário:
- Certificado Digital
- Dispositivos Eletrônicos(Computador, Tablet ou Smartphone
- Software
- Internet
- Certificado digital é um documento eletrônico que contém informações de identificação de uma pessoa física ou jurídica, como: nome, CPF ou CNPJ, e que é utilizado para garantir a autenticidade, integridade e confidencialidade de transações realizadas pela internet.
- Ele é emitido por uma Autoridade Certificadora (AC), que é uma entidade confiável responsável por verificar a identidade do solicitante e emitir o certificado digital, que pode ser utilizado para assinar documentos eletrônicos, enviar e-mails criptografados, acessar sistemas protegidos por login e senha, entre outras aplicações.
Para emissão de Notas Fiscais, podemos utilizar basicamente dois principais tipos: o Certificado A1 e o certificado A3, a principal diferença entre os dois é o tipo de armazenagem.
1 - Certificado A1 - Este é armazenado no computador ou em algum dispositivo móvel, como smartphone e tablet, este tipo tem validade de 1 ano
2 - Certificado A3 - É emitido e armazenado em cartão inteligente, token criptográfico ou diretamente na nuvem, este certificado tem validade de 1 a 5 anos
NFePHP é uma biblioteca de implementação em PHP do SPED-NFE. Essa biblioteca fornece classes e métodos para criar, assinar digitalmente e transmitir as notas fiscais eletrônicas para o ambiente da Receita Federal.
Com o NFePHP, é possível criar e preencher os dados da nota fiscal eletrônica, gerar o XML correspondente, assinar digitalmente com certificado digital válido e transmitir para a Receita Federal por meio do protocolo SOAP.
Além disso, a biblioteca também permite realizar consultas e obter informações sobre notas fiscais já emitidas, como a situação do documento e a resposta da Receita Federal.