Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Sped Da Laravel Package

nfephp-org/sped-da

Biblioteca PHP para gerar PDFs de documentos auxiliares do Sped (DANFE, DACTE, DAMDFE) a partir de XML, baseada nas classes legadas do NFePHP. Foco em conformidade SEFAZ, simplicidade e escopo genérico, sem customizações de sistema.

View on GitHub
Deep Wiki
Context7

Classes para geração dos documentos auxiliares usados pelos padrões Sped

Frequently asked questions about Sped Da
Como instalar o nfephp-org/sped-da no Laravel?
Use Composer para instalar via `composer require nfephp-org/sped-da`. O pacote não exige configuração adicional no Laravel, mas você precisará de uma biblioteca como Dompdf ou TCPDF para renderizar os PDFs a partir do XML gerado. Certifique-se de que o PHP 7.4+ está configurado.
Este pacote é compatível com Laravel 10 e PHP 8.2?
O pacote foi desenvolvido para PHP 7+, mas não há garantias explícitas de compatibilidade com Laravel 10 ou PHP 8.2. Teste em seu ambiente e, se necessário, faça um fork para atualizar dependências. A última atualização foi em 2021, então verifique se as classes ainda funcionam com versões recentes.
Posso gerar DANFE personalizado com logos ou layouts específicos?
O pacote é genérico e segue estritamente as normas SEFAZ, sem suporte a personalizações como logos ou layouts customizados. Se precisar de recursos adicionais, você deve criar um gerador próprio ou estender as classes, mas isso pode violar a conformidade fiscal. Use o XML original para informações administrativas.
Como integrar a geração de SPED-DA com Laravel Queues?
Crie uma job Laravel (ex: `GenerateSpedDaJob`) que utilize o pacote para gerar o PDF a partir do XML. Dispare a job via `GenerateSpedDaJob::dispatch($xmlData)`. Para processamento assíncrono, configure o queue worker com `php artisan queue:work`. Ideal para evitar timeouts em requisições HTTP.
O pacote suporta validação automática do XML antes de gerar o PDF?
Não há validação automática integrada. Você deve validar o XML manualmente contra os esquemas SEFAZ antes de passar para o pacote. Use bibliotecas como `simplexml_load_string()` com `@errors` ou libs como `spatie/array-to-xml` para pré-processamento. O pacote assume que o XML está correto.
Quais são os limites de tamanho de arquivo para DANFE/DACTE/DAMDFE?
Os documentos auxiliares do SPED não têm limites rígidos, mas arquivos muito grandes (ex: >50MB) podem causar problemas de memória no Laravel. Use `ini_set('memory_limit', '512M')` temporariamente ou processe o XML em chunks. Para arquivos maiores, considere streaming com `fopen()` ou bibliotecas como `league/flysystem`.
Existem alternativas ao nfephp-org/sped-da para SPED no Laravel?
Sim, avalie o `spedfiscal/sped` (mais completo para SPED Fiscal) ou `nfephp/nfe` (para NF-e). Se precisar de um pacote mais ativo, considere forks ou pacotes como `laravel-sped` (se disponível). Este pacote é focado apenas em documentos auxiliares (DANFE/DACTE/DAMDFE), enquanto outros cobrem mais do ecossistema SPED.
Como testar a geração de SPED-DA em ambiente de desenvolvimento?
Use XMLs de exemplo válidos (disponíveis no site da SEFAZ) e compare os PDFs gerados com amostras oficiais. Teste edge cases como campos obrigatórios vazios ou dados inválidos. Para automação, crie testes unitários com `Pest` ou `PHPUnit`, mockando a geração de PDFs e validando a estrutura XML de saída.
O pacote é seguro para uso em produção com dados fiscais sensíveis?
O pacote segue as normas SEFAZ, mas não é ativamente mantido. Avalie riscos como vulnerabilidades não corrigidas ou desatualização com novas versões do SPED. Para maior segurança, faça uma auditoria de código ou use em conjunto com um WAF (Web Application Firewall) para proteger APIs que exponham a geração de SPED-DA.
Posso contribuir para atualizar o pacote ou adicionar novos recursos?
O repositório está em refatoração e será dividido em 4 pacotes menores (nfe, cte, mdfe e common). Contribuições são bem-vindas, mas novas funcionalidades devem ser discutidas no GitHub para alinhar com o escopo genérico do projeto. Evite adicionar recursos específicos de sistemas, conforme orientado no README.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
pharaonic/laravel-notification-dependencies
beautinow/translug
dev-brainiac/bot-cloaked
octoberrain/html
octoberrain/extension
octoberrain/exception
octoberrain/contracts
frankyso/ipaymu
3mdikram/worldmoneywords
snowsoft/config
itmosoft/laravel-subscriptions
larva/laravel-ai-qwen
adachsoft/api-version-bundle
cgv/localized-resource
noith/settings
kda/laravel-package
kda/filament-dynamic-navigation
bypersoft/signbox
pairus/product-data
fayne/laravel-filament-cms-core