nfephp-org/sped-efd

API para geração dos arquivos para SPED EFD

dev-master / 1.0.x-dev 2024-03-22 11:44 UTC

This package is auto-updated.

Last update: 2024-04-22 11:53:09 UTC


README

https://stackoverflow.com/questions/8549496/how-can-i-create-a-function-dynamically

  • Contrib/M215
  • Contrib/M615
  • Contrib/Z1601

EM DESENVOLVIMENTO

Classes para a geração do SPED EFD (fiscal ICMS IPI) e para o SPED EFD contribuições

EFD ICMS IPI v3.1.3 Leiaute 17 - válido a partir de 01 de janeiro de 2022/abril de 2023.

EFD Contribuições v1.35 Leiaute 6 - válido a partir de 01 de janeiro de 2019.

IMPORTANTE

NOTA: Os elementos não mais irão retornar Exceptions, e sim carregar uma propriedade pública errors[], contendo todos os erros identificados em cada elemento.

NOTA: As classes dos blocos e as próprias classes EFD herdarão os errros[] de seus elementos constituintes em propriedade pública errors[] de cada uma dessas classes.

Controle de Versões de Layouts do EFD

O controle de versões é feito com jsons na pasta storage.

storage/layouts/ICMSIPI/vigencias.json

Este json contêm o codigo de leyout, versão, data inicial e a data final de vigência, obtido nas tabelas do Sped (vide portal Sped)

Deve ser passado uma string com o codigo do layaut no construtor de cada bloco, este por sua vez irão passar esse codigo e os demais dados de vigencia para cada elemento que pertença a esse bloco.

As estruturas construtivas de cada elemento e versão, deverão ser salvos como json na pasta denominada pelo codigo da versão. por exemplo:

  • storage/layouts/ICMSIPI/v017

Ao ser criado ou editado o elemento internamente ele deve conter a estrutura referente a ultima versão existente.

Caso se necessite de versões anteriores a 017, estas deverão ser criadas como json elemente por elemento na pasta adequada.

DETALHES

  • A finalidade desse projeto é APENAS fornecer os meios para criar os arquivos EFD ICMS/IPI e contribuições a partir de dados formecidos pelo sistema ERP.
  • É necessario que os dados já estejam previamente tratados e consolidados internamente no ERP antes da geração dos arquivos de transmissão.
  • Para entender o processo de montagem dos arquivos de envio, é OBRIGATÓRIO o conhecimento sobre esses dados e o estudo da documentação da Receita Federal.
  • Haverão centenas de classes !!! uma para cada elemento de um bloco, esses elementos poderão ser unicos, varios, obrigatórios ou não dependendo de uma série de condições, que não serão gerenciadas por esse construtor.
  • O processo de montagem dos blocos é complexo e irá requerer tempo de processamento e memória, tendo em vista o volume de dados que poderá existir.
  • Após a geração do arquivo o mesmo deve ser validado pelo validador oficial da Receita e transmitido pelo Receitanet, não é possivel a validação automática nem o envio automatico por webservice

Utilize o chat do Gitter para iniciar discussões específicas sobre o desenvolvimento deste pacote.

Chat Actions Coverage Status Quality Score

Latest Stable Version Latest Version on Packagist License Total Downloads

Issues Forks Stars

Detalhes dos Campos

Todos os campos "C" strings apenas com caracteres ASCII, não são permitidos outro charsets, preferencialmente em "MAIUSCULAS"

Todos os campos "N" apenas numericos como:

$ 1.129.998,99 => 1129998,99

1.255,42 => 1255,42

234,567 => 234,567

10.000 => 10000

10.000,00 => 10000 ou 10000,00

17,00 % => 17,00 ou 17

18,50 % => 18,5 ou 18,50

30 => 30

1.123,456 Kg => 1123,456

0,010 litros => 0,010

0,00 => 0 ou 0,00

0 => 0

campo vazio =>

Observando o numero de decimais em cada caso

Credits

Roberto L. Machado (owner and developer)

License

Este pacote está diponibilizado sob LGPLv3 ou MIT License (MIT). Leia Arquivo de Licença para maiores informações.