Ir para conteúdo
  • Cadastre-se

Painel de líderes

Conteúdo popular

Showing content with the highest reputation on 11-05-2026 em todas as áreas

  1. Ao emitir uma DPS em homologação ou produção utilizando o layout XML como Padrão Nacional e não sendo MEI ou Simples Nacional a partir de 01/09/2026, caso ocorra a rejeição E0037 - O código do município emissor informado na DPS é inexistente no cadastro de convênio municipal do sistema nacional, como faço para saber se o município está aderido tanto ao ambiente de produção quanto homologação? De acordo com a planilha ANEXO_I-SEFIN_ADN-DPS_NFSe-SNNFSe-v1.00-20251226 que contém o leiaute da NFS-e e as regras de validação aplicadas pela API do Padrão Nacional, está é a regra de validação que correspondente a esta rejeição: Campo Regra de Validação Código Rejeição cLocEmi O código do município emissor informado na DPS deve existir no cadastro de convênio municipal do sistema nacional. Exceto quando o emitente da DPS for MEI na data de competência da emissão da NFS-e. E0037 O código do município emissor informado na DPS é inexistente no cadastro de convênio municipal do sistema nacional. Primeiro, acesse o Monitor de adesão dos municípios à NFSe Padrão Nacional neste link. Filtre pela cidade e confira se está marcado como Sim em Adesão ao Emissor Nacional NFSe*, conforme prints abaixo. Observação: no momento do teste a cidade de Rancharia/SP estava constando como habilitado o webservice de produção e homologação não, já a cidade de Governador Valadares está com os dois habilitados. Confirmando que o município está aderido a emissão a partir do Padrão Nacional, faça a consulta do Convênio a partir da Consulta de Parâmetros Municipais. Você pode utilizar o demo para conferir a informação clicando no botão Convênio que fica na guia Consulta de Parâmetros Municipais da guia Provedor Padrão Nacional. Para fazer no componente utilize o código abaixo: ACBrNFSeX1.ConsultarParametros(pmConvenio); No monitor: NFSe.ConsultarParametrosNFSe(2, "01.05", "19/06/2023", "12345") Na Lib: NFSE_ConsultarParametros(2, aCodigoServico, aCompetencia, aNumeroBeneficio, sResposta, esTamanho); Ao consultar teremos os seguintes retornos: Tanto para Governador Valadares/MG em Produção quanto em Homologação o retorno foi o mesmo: Já para a cidade de Rancharia/SP, em Produção o retorno foi: Já em Homologação para a cidade de Rancharia/SP foi: Tendo em vista estes retornos, a cidade de Rancharia/SP por exemplo não está ativa no ambiente de Homologação no Sistema Nacional, mas em Produção sim. Você não conseguirá emitir NFSe no ambiente de homologação, apenas produção. Você pode também entrar em contato com a prefeitura também e informar o fato para eles, solicitar que façam a adesão ao ambiente de homologação também. Observações sobre os testes que realizamos: Ao testar a emissão em homologação, foram apresentadas rejeições relacionadas a validação dos campos, mas ao corrigir ocorreu o erro E0037, portanto pode ser que ao testar em sua aplicação ou no seu demo, ocorra erros de validação como CPF/CNPJ do Tomador errado, mas após corrigir todos vai aparecer a rejeição E0037. É possível que o ambiente nacional só faça a validação se está mesmo aderido após realizar as outras validações. Referências:
    5 pontos
  2. Olá, comunidade ! A SEFAZ-RS informou que será realizada uma manutenção emergencial no ambiente de produção do CT-e nesta segunda-feira (11/05), devido à migração para o novo modelo de CNPJ Alfanumérico. Resumo da atualização: Bloqueio temporário das funcionalidades de Complemento de Valores e Substituição; Período previsto: até às 22h do dia 11/05; Parada programada de aproximadamente 40 minutos na autorização de CT-e por volta das 20h30; Durante o período, poderá ocorrer a Rejeição 991; Após às 22h, os serviços serão normalizados. Mensagem retornada durante a manutenção: Conforme o aviso: Fonte oficial: SEFAZ Virtual RS Fiquem atentos caso utilizem processos de complemento ou substituição de CT-e durante o período informado.
    3 pontos
  3. Olá comunidade ! Foi publicada a Nota Técnica 2026.004 v.1.00, trazendo a atualização dos schemas da NF-e e NFC-e para adequação ao novo padrão de CNPJ alfanumérico. Histórico de Alterações / Cronograma Versão: 1.00 Histórico de atualizações: Atualização do schema da NF-e/NFC-e para adequação ao CNPJ alfanumérico, com alteração dos campos do tipo CNPJ e Chave de Acesso (de numérico para alfanumérico). Implantação em ambiente de testes: 01/06/2026 (Veja post abaixo) Implantação em produção: 01/07/2026 Leia na integra: Clique aqui Atenção: Até a publicação desta notícia os schemas ainda não tinham sido publicados. Assim que publicados atualizamos aqui! (Veja post abaixo)
    1 ponto
  4. Boa tarde, Estou contribuindo com a implementação da cobrança via API REST do banco Sisprime do Brasil (código FEBRABAN 084) no ACBrBoleto. As duas units em anexo são novas e adicionam suporte ao webservice cobexpress.com.br, que a Sisprime usa para registro, consulta, baixa e alteração de boletos. Versão usada: ACBr LibD29 (Delphi 12). Documentação oficial: "Documentação da Integração SISPRIME" (Layout Cobrança Sisprime, versão 2.0, 23 páginas — fornecida pela cooperativa). (Em Anexo) URLs oficiais: - Homologação: https://homologa-ws.cobexpress.com.br/webservice/enviar-boleto e /consultar-boleto - Produção: https://sisprimebr.cobexpress.com.br/webservice/enviar-boleto e /consultar-boleto Arquivos novos: ACBrBoletoW_Sisprime_API.pas — gerador de requisições. Implementa autenticação JWT HS512 (token assinado com a chave de acesso geral da cooperativa, com a chave da conta indo dentro do payload em "hash"), monta o JSON do título com os campos exigidos pela Sisprime (codigo_pagador, tipo_inscricao_pagador, inscricao_pagador, nome_pagador, endereço completo, percentuais de juros e multa, etc) e cuida de normalizar os campos textuais com TiraAcentos pois o servidor rejeita acentos no campo Município (resposta "codigo_inconsistencia=134, O campo [Município Pagador] não contém uma Cidade válida"). O mapeamento de operação para ocorrencia_remessa segue a convenção CNAB do banco: tpInclui=01 (registro), tpAltera=06 (alteração de vencimento), tpBaixa e tpCancelar=02 (baixa/cancelamento), tpConsulta e tpConsultaDetalhe usam o endpoint consultar-boleto. ACBrBoletoRet_Sisprime_API.pas — parser de retorno. Trata o detalhe específico da Sisprime de devolver TODAS as respostas encapsuladas em array JSON (formato [{...}]), removendo os colchetes externos antes de chamar TACBrJSONObject.Parse para evitar Invalid class typecast. No caso de rejeição (status_retorno diferente de 0), itera o array "inconsistencias" devolvido pelo servidor e cria uma TACBrBoletoRejeicao por item, com codigo_inconsistencia e descricao_inconsistencia preservados (a descrição genérica "Entrada Rejeitada" sozinha não ajuda em diagnóstico). Para o registro com sucesso, popula NossoNumero, LinhaDig, CodBarras, SeuNumero (a partir de numero_documento) e NossoNumeroCorrespondente com o id_boleto (UUID que a Sisprime usa em consultas posteriores). Para a consulta, popula EstadoTituloCobranca a partir de descricao_situacao e os dados PIX (qr_code) quando presentes. Observações sobre a integração: 1. A autenticação não é OAuth2 — é JWT HS512 montado a cada requisição (token expira em 600s). A chave geral é o segredo HMAC; a chave da conta vai como hash no payload. As duas chaves são fornecidas pela cooperativa após homologação. Não há certificado PFX nem mTLS. 2. O algoritmo HMAC precisa ser referenciado como THashSHA2.TSHA2Version.SHA512 (o enum TSHA2Version é nested no record THashSHA2 em System.Hash). Castar inteiro 512 para esse enum é silenciosamente errado e o servidor responde "status_retorno=-10, Assinatura Inválida". 3. A Sisprime registra o banco 084, mesmo código FEBRABAN do Uniprime Norte do Paraná. As duas cooperativas coexistem no enum TACBrTipoCobranca (cobBancoSisprime e cobUniprimeNortePR). Por padrão, GetTipoCobranca(084) retorna cobUniprimeNortePR — o uso de Sisprime requer setar TipoCobranca explicitamente como cobBancoSisprime no Cedente, antes do EnviarBoleto. 4. Os dois endpoints aceitam apenas POST com Content-Type application/json. O token vai dentro do corpo JSON (não no header Authorization). Validações que fiz contra o ambiente de homologação: - Registro de boleto: status_retorno=0, "Entrada Confirmada", retornando id_boleto, linha_digitavel e codigo_barras. - Consulta de boleto: status_retorno=0 com descricao_situacao preenchida e qr_code (PIX) quando aplicável. As duas units são compatíveis com o ACBrBancoSisprime.pas existente (parte CNAB do banco, sem alterações) e com a infraestrutura ACBr existente (ACBrBoleto.pas, ACBrBoletoWS.pas). Disponível para responder dúvidas, anexar logs de homologação ou ajustar o que for solicitado na revisão. Abraço. ACBrBoletoW_Sisprime_API.pas ACBrBoletoRet_Sisprime_API.pas DOCUMENTAÇÃO DA INTEGRAÇÃO SISPRIME.pdf
    1 ponto
  5. Boa noite. Conclui todos os meus testes, e atualização do nosso sistema para o modelo de DANFENFSe que será o padrão nacional. Para tanto, precisei realizar mais alguns pequenos ajustes na unit ACBrNFSeXDANFSeFR.pas, além das informações do Intermediário da nota. No PDF em anexo, demonstro, através de comparação entre o DANFENFSe oficial do portal nacional, o DANFNFSe original do ACBr e o DANFNFSe com as minhas correções, e submeto tudo a análise de vocês. Acredito que essas alterações venham a contribuir um pouco com o projeto. O DANFENFSeNacional.fr3 agora alterna corretamente entre a impressão das informações do intermediário do serviço, e a mensagem "INTERMEDIÁRIO DO SERVIÇO NÃO IDENTIFICADO NA NFS-e". Para localizar os pontos onde alterei a unit ACBrNFSeXDANFSeFR.pas, basta pesquisar por // Francis.Silva em 09/05/2026. Grato. ACBrNFSeXDANFSeFR.pas DANFENFSeNacional.fr3 Mudanças DANFENFSe_FR.pdf
    1 ponto
  6. Cidade de Piratuba - SC, provedor Betha Ao emitir uma NFS-e com o cObra preenchido, obtivemos o seguinte retorno na emissão: cvc-complex-type.2.4.d: Conteúdo inválido encontrado ao iniciar com o elemento 'dps:end'. Nenhum elemento filho é esperado neste ponto. Olhando a geração da dps, notei que o grupo de endereço estava sendo gerado todo em branco, causando o erro acima. <dps:obra> <dps:cObra>0000000000000</dps:cObra> <dps:end> <dps:CEP/> <dps:xLgr/> <dps:nro/> <dps:xBairro/> </dps:end> </dps:obra> Fiz a alteração do código dentro do arquivo Betha.GravarXml, Antes alteração: function TNFSeW_BethaAPIPropria.GerarXMLObra: TACBrXmlNode; begin Result := CreateElement('obra'); Result.AppendChild(AddNode(tcStr, '#1', 'inscImobFisc', 1, 30, 0, NFSe.ConstrucaoCivil.inscImobFisc, '')); if NFSe.ConstrucaoCivil.CodigoObra <> '' then Result.AppendChild(AddNode(tcStr, '#1', 'cObra', 1, 30, 1, NFSe.ConstrucaoCivil.CodigoObra, '')) else if NFSe.ConstrucaoCivil.Cib > 0 then Result.AppendChild(AddNode(tcStr, '#1', 'cCIB', 1, 8, 1, Poem_Zeros(NFSe.ConstrucaoCivil.Cib, 8))); Result.AppendChild(GerarXMLEnderecoObra); end; Depois alteração: function TNFSeW_BethaAPIPropria.GerarXMLObra: TACBrXmlNode; begin Result := CreateElement('obra'); Result.AppendChild(AddNode(tcStr, '#1', 'inscImobFisc', 1, 30, 0, NFSe.ConstrucaoCivil.inscImobFisc, '')); if NFSe.ConstrucaoCivil.CodigoObra <> '' then Result.AppendChild(AddNode(tcStr, '#1', 'cObra', 1, 30, 1, NFSe.ConstrucaoCivil.CodigoObra, '')) else if NFSe.ConstrucaoCivil.Cib > 0 then Result.AppendChild(AddNode(tcStr, '#1', 'cCIB', 1, 8, 1, Poem_Zeros(NFSe.ConstrucaoCivil.Cib, 8))) else Result.AppendChild(GerarXMLEnderecoObra); end; Apenas coloquei a geração do endereço no else seguindo cCIB, inclusive se olhar o arquivo de geração do ambiente nacional também está englobado no else. Após a correção a nota foi emitida com sucesso. Se puderem avaliar e se estiver correto
    1 ponto
  7. Existem duas propriedades no título do boleto que costumam gerar dúvidas no preenchimento: CodigoMoraJuros (Enumerado) Define o tipo de cálculo de juros/mora: 0 → Valor por dia 1 → Taxa mensal (%) 2 → Isento 3 → Valor mensal 4 → Taxa diária (%) CodigoMora (String) Código utilizado por alguns bancos para definir a mora: '' → Não informado (padrão) '1' → Valor diário '2' → Taxa mensal (%) Caso específico – Sicredi: (Vide Particularidades) 'A' → Valor 'B' → Percentual Regras Importantes Para evitar rejeições ou comportamento inesperado, siga estas regras: Regra 1 Se você estiver utilizando: CodigoMoraJuros <> Isento Então: CodigoMora = '' (Não deve ser informado) Regra 2 Se você utilizar: CodigoMora preenchido Então obrigatoriamente: CodigoMoraJuros = Isento Regra 3 – Particularidades por banco Sempre consulte o arquivo de particularidades do banco, pois podem existir regras específicas. Exemplo – Sicredi: Utilizar: CodigoMora = 'A' (Valor) ou CodigoMora = 'B' (Percentual) E obrigatoriamente: CodigoMoraJuros = Isento "Estes campos impactam tanto a impressão das mensagens padrão quanto a geração das instruções de Juros de Mora nos boletos. Por isso, sempre que implementar boletos em um cliente, peça para que ele homologue os boletos junto ao banco."
    1 ponto
  8. Olá comunidade ! Foi publicada a Resolução ANTT nº 6.078/2026, que altera a Resolução ANTT nº 5.862/2019, responsável por regulamentar o cadastro da Operação de Transporte necessário para a geração do Código Identificador da Operação de Transporte (CIOT). Com essa publicação, a partir de 24/05/2026, passa a ser obrigatória a geração e vinculação do CIOT ao MDF-e em todas as operações de transporte, exceto quando o valor do frete estiver em desacordo com o piso mínimo aplicável. Detalhando melhor, a nova norma é composta por quatro artigos, trazendo alterações de redação, revogações e definição de datas de vigência. Entre os pontos mais relevantes, destaca-se a nova redação incluída pelo Art. 1º, que estabelece: Outras disposições Art. 2º: estabelece valores de multas para determinadas infrações. Art. 3º: revoga o § 1º do art. 5º e o art. 8º da Resolução ANTT nº 5.862/2019. Art. 4º: define que a resolução entra em vigor em 24/05/2026.
    1 ponto
  9. Todos seguem o mesmo padrão. Gratuito não existe, pois é preciso ter contrato com eles. mesmo a que diz ser. então é fazer o contrato com umas delas ou até aproveitar o que tem no ACBr e usar
    1 ponto
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.