diff --git a/DFe.Utils/DataHora.cs b/DFe.Utils/DataHora.cs
index 4a3ccf436..7951ed586 100644
--- a/DFe.Utils/DataHora.cs
+++ b/DFe.Utils/DataHora.cs
@@ -58,6 +58,18 @@ public static string ParaDataString(this DateTime? data)
return data == DateTime.MinValue ? null : data.Value.ToString("yyyy-MM-dd");
}
+
+ ///
+ /// Retorna uma string no formato AAAA-MM
+ ///
+ ///
+ ///
+ public static string ParaDataAnoEMesString(this DateTime? data)
+ {
+ if (data == null) return null;
+
+ return data == DateTime.MinValue ? null : data.Value.ToString("yyyy-MM");
+ }
///
/// Retorna uma string no formato AAAA-MM-DDThh:mm:ssTZD (UTC - Universal Coordinated Time)
diff --git a/NFe.AppTeste/ConfiguracaoApp.cs b/NFe.AppTeste/ConfiguracaoApp.cs
index fe58e52e6..4871a1505 100644
--- a/NFe.AppTeste/ConfiguracaoApp.cs
+++ b/NFe.AppTeste/ConfiguracaoApp.cs
@@ -42,7 +42,6 @@
using NFe.Danfe.Base.NFCe;
using NFe.Utils;
using NFe.Utils.Email;
-using Shared.NFe.Utils.Enderecos.NovasUrlsCeara;
namespace NFe.AppTeste
{
@@ -84,6 +83,8 @@ public ConfiguracaoServico CfgServico
public ConfiguracaoCsc ConfiguracaoCsc { get; set; }
public ConfiguracaoDanfeNfce ConfiguracaoDanfeNfce { get; set; }
+ public bool EnviarTributacaoIbsCbsIs { get; set; }
+
///
/// Salva os dados de CfgServico em um arquivo XML
///
diff --git a/NFe.AppTeste/MainWindow.xaml b/NFe.AppTeste/MainWindow.xaml
index f0250500c..589d3553a 100644
--- a/NFe.AppTeste/MainWindow.xaml
+++ b/NFe.AppTeste/MainWindow.xaml
@@ -302,6 +302,14 @@
VerticalAlignment="Top" Width="178"
IsChecked="{Binding CfgServico.RemoverAcentos}"/>
+
+
+
+
diff --git a/NFe.AppTeste/MainWindow.xaml.cs b/NFe.AppTeste/MainWindow.xaml.cs
index e12a965ae..079571ade 100644
--- a/NFe.AppTeste/MainWindow.xaml.cs
+++ b/NFe.AppTeste/MainWindow.xaml.cs
@@ -75,9 +75,17 @@
using NFe.Utils.Excecoes;
using NFe.Utils.Tributacao.Federal;
using Image = System.Drawing.Image;
-using static System.Net.Mime.MediaTypeNames;
using System.Text;
using System.Security.Cryptography;
+using NFe.Classes.Informacoes.Detalhe.Tributacao.Compartilhado;
+using NFe.Classes.Informacoes.Detalhe.Tributacao.Compartilhado.InformacoesIbsCbs;
+using NFe.Classes.Informacoes.Detalhe.Tributacao.Compartilhado.InformacoesIbsCbs.InformacoesCbs;
+using NFe.Classes.Informacoes.Detalhe.Tributacao.Compartilhado.InformacoesIbsCbs.InformacoesIbs;
+using NFe.Classes.Informacoes.Detalhe.Tributacao.Compartilhado.Tipos;
+using NFe.Classes.Informacoes.Total.IbsCbs;
+using NFe.Classes.Informacoes.Total.IbsCbs.Cbs;
+using NFe.Classes.Informacoes.Total.IbsCbs.Ibs;
+using NFe.Classes.Informacoes.Total.IbsCbs.Monofasica;
namespace NFe.AppTeste
{
@@ -193,6 +201,8 @@ private void CarregarConfiguracao()
}
#endregion
+
+ CbxEnviarTributacaoDaReforma.IsChecked = _configuracoes.EnviarTributacaoIbsCbsIs;
}
catch (Exception ex)
{
@@ -1377,7 +1387,8 @@ protected virtual ide GetIdentificacao(int numero, ModeloDocumento modelo, Versa
tpAmb = _configuracoes.CfgServico.tpAmb,
finNFe = FinalidadeNFe.fnNormal,
verProc = "3.000",
- indIntermed = IndicadorIntermediador.iiSemIntermediador
+ indIntermed = IndicadorIntermediador.iiSemIntermediador,
+ // dPrevEntrega = modelo == ModeloDocumento.NFe ? DateTime.Now : null
};
if (ide.tpEmis != TipoEmissao.teNormal)
@@ -1541,7 +1552,184 @@ protected virtual det GetDetalhe(int i, CRT crt, ModeloDocumento modelo)
//Caso você resolva utilizar método ObterPisBasico(), comente esta proxima linha
TipoPIS = new PISOutr { CST = CSTPIS.pis99, pPIS = 0, vBC = 0, vPIS = 0 }
- }
+ },
+
+ // Estrutura de IBS/CBS para testes durante processo de homologação
+ IBSCBS = _configuracoes.EnviarTributacaoIbsCbsIs ? new IBSCBS
+ {
+ CST = CST.Cst000,
+ cClassTrib = "000001",
+ // indDoacao = "1", //Somente a partir do dia 29/10
+ gIBSCBS = new gIBSCBS
+ {
+ vBC = 0,
+ gIBSUF = new gIBSUF
+ {
+ pIBSUF = 0.10m,
+ vIBSUF = 0,
+ gDif = new gDif
+ {
+ vDif = 0,
+ pDif = 0
+ },
+ gRed = new gRed
+ {
+ pAliqEfet = 0,
+ pRedAliq = 0
+ },
+ gDevTrib = new gDevTrib
+ {
+ vDevTrib = 0
+ }
+ },
+ gIBSMun = new gIBSMun
+ {
+ pIBSMun = 0,
+ vIBSMun = 0,
+ gDif = new gDif
+ {
+ vDif = 0,
+ pDif = 0
+ },
+ gRed = new gRed
+ {
+ pAliqEfet = 0,
+ pRedAliq = 0
+ },
+ gDevTrib = new gDevTrib
+ {
+ vDevTrib = 0
+ }
+ },
+ gCBS = new gCBS
+ {
+ pCBS = 0.90m,
+ vCBS = 0,
+ gDif = new gDif
+ {
+ vDif = 0,
+ pDif = 0
+ },
+ gRed = new gRed
+ {
+ pAliqEfet = 0,
+ pRedAliq = 0
+ },
+ gDevTrib = new gDevTrib
+ {
+ vDevTrib = 0
+ }
+ },
+ vIBS = 0,
+ gTribCompraGov = new gTribCompraGov
+ {
+ pAliqCBS = 0,
+ vTribCBS = 0,
+ pAliqIBSMun = 0,
+ vTribIBSMun = 0,
+ pAliqIBSUF = 0,
+ vTribIBSUF = 0
+ },
+ gTribRegular = new gTribRegular
+ {
+ cClassTribReg = "000001",
+ CSTReg = CST.Cst000,
+ vTribRegCBS = 0,
+ pAliqEfetRegCBS = 0,
+ vTribRegIBSMun = 0,
+ pAliqEfetRegIBSMun = 0,
+ vTribRegIBSUF = 0,
+ pAliqEfetRegIBSUF = 0
+ }
+ },
+ // gIBSCBSMono = new gIBSCBSMono
+ // {
+ // gMonoDif = new gMonoDif
+ // {
+ // pDifCBS = 0,
+ // pDifIBS = 0,
+ // vCBSMonoDif = 0,
+ // vIBSMonoDif = 0
+ // },
+ // gMonoPadrao = new gMonoPadrao
+ // {
+ // qBCMono = 0,
+ // adRemCBS = 0,
+ // adRemIBS = 0,
+ // vCBSMono = 0,
+ // vIBSMono = 0
+ // },
+ // gMonoRet = new gMonoRet
+ // {
+ // qBCMonoRet = 0,
+ // adRemCBSRet = 0,
+ // adRemIBSRet = 0,
+ // vCBSMonoRet = 0,
+ // vIBSMonoRet = 0
+ // },
+ // gMonoReten = new gMonoReten
+ // {
+ // qBCMonoReten = 0,
+ // adRemCBSReten = 0,
+ // adRemIBSReten = 0,
+ // vCBSMonoReten = 0,
+ // vIBSMonoReten = 0
+ // },
+ // vTotCBSMonoItem = 0,
+ // vTotIBSMonoItem = 0
+ // },
+ // gTransfCred = new gTransfCred
+ // {
+ // vCBS = 0,
+ // vIBS = 0
+ // },
+ // gAjusteCompet = new gAjusteCompet
+ // {
+ // competApur = DateTime.Now,
+ // vCBS = 0,
+ // vIBS = 0
+ // },
+ // gEstornoCred = new gEstornoCred
+ // {
+ // vCBSEstCred = 0,
+ // vIBSEstCred = 0
+ // },
+ // gCredPresOper = new gCredPresOper
+ // {
+ // cCredPres = "01",
+ // vBCCredPres = 0,
+ // gIBSCredPres = new gIBSCredPres
+ // {
+ // pCredPres = 0,
+ // vCredPres = 0,
+ // // vCredPresCondSus = 0 // Informar somente após 2033
+ // },
+ // gCBSCredPres = new gCBSCredPres
+ // {
+ // pCredPres = 0,
+ // vCredPres = 0,
+ // // vCredPresCondSus = 0 // Informar somente após 2027
+ // }
+ // },
+ // gCredPresIBSZFM = new gCredPresIBSZFM
+ // {
+ // competApur = DateTime.Now,
+ // tpCredPresIBSZFM = ClassificacaoCreditoPresumidoIbsZfmTipos.tpCredPresIbsZfm0,
+ // vCredPresIBSZFM = 0
+ // }
+ } : null,
+
+ IS = _configuracoes.EnviarTributacaoIbsCbsIs ?new IS
+ {
+ qTrib = 1,
+ uTrib = "PC",
+ pISEspec = 0,
+ pIS = 0,
+ vIS = 0,
+ cClassTribIS = "000001",
+ CSTIS = CSTIS.Is000,
+ vBCIS = 0
+ } : null
}
};
@@ -1593,7 +1781,10 @@ protected virtual prod GetProduto(int i)
// nCano = "123456",
// descr = "TESTE DE ARMA"
//}
+
+ // tpCredPresIBSZFM = tpCredPresIBSZFM.SemCreditoPresumido // Informado somente para testes com gCredPresIBSZFM
};
+
return p;
}
@@ -1768,7 +1959,58 @@ protected virtual total GetTotal(VersaoServico versao, List produtos)
+ icmsTot.vIPI
+ icmsTot.vIPIDevol.GetValueOrDefault();
- var t = new total { ICMSTot = icmsTot };
+ var t = new total
+ {
+ ICMSTot = icmsTot,
+ IBSCBSTot = _configuracoes.EnviarTributacaoIbsCbsIs ? new IBSCBSTot
+ {
+ vBCIBSCBS = 0,
+ gIBS = new gIBS
+ {
+ gIBSUF = new gIBSUFTotal
+ {
+ vDif = 0,
+ vDevTrib = 0,
+ vIBSUF = 0
+ },
+ gIBSMun = new gIBSMunTotal
+ {
+ vDif = 0,
+ vDevTrib = 0,
+ vIBSMun = 0
+ },
+ vIBS = 0,
+ vCredPres = 0,
+ vCredPresCondSus = 0,
+ },
+ gCBS = new gCBSTotal
+ {
+ vDif = 0,
+ vDevTrib = 0,
+ vCBS = 0,
+ vCredPres = 0,
+ vCredPresCondSus = 0
+ },
+ gMono = new gMono
+ {
+ vCBSMono = 0,
+ vIBSMono = 0,
+ vCBSMonoRet = 0,
+ vCBSMonoReten = 0,
+ vIBSMonoRet = 0,
+ vIBSMonoReten = 0
+ },
+ gEstornoCred = new gEstornoCredTotal
+ {
+ vCBSEstCred = 0,
+ vIBSEstCred = 0
+ }
+ } : null,
+ ISTot = _configuracoes.EnviarTributacaoIbsCbsIs ? new ISTot
+ {
+ vIS = 0,
+ } : null
+ };
return t;
}
@@ -2319,5 +2561,9 @@ private void BtnAtorInteressado_Click(object sender, RoutedEventArgs e)
}
}
+ private void CbxEnviarTributacaoDaReforma_OnClick(object sender, RoutedEventArgs e)
+ {
+ _configuracoes.EnviarTributacaoIbsCbsIs = CbxEnviarTributacaoDaReforma.IsChecked ?? false;
+ }
}
}
\ No newline at end of file
diff --git a/NFe.AppTeste/Schemas/DFeTiposBasicos_v1.00.xsd b/NFe.AppTeste/Schemas/DFeTiposBasicos_v1.00.xsd
index 44e4ec49d..a5051dd02 100644
--- a/NFe.AppTeste/Schemas/DFeTiposBasicos_v1.00.xsd
+++ b/NFe.AppTeste/Schemas/DFeTiposBasicos_v1.00.xsd
@@ -1,5 +1,5 @@
-
+
@@ -37,7 +37,7 @@
-
+
Tipo Decimal com 15 dígitos, sendo 11 de corpo e 4 decimais
@@ -46,7 +46,7 @@
-
+
Tipo Decimal com 11 inteiros, podendo ter 4 decimais (utilizado em tags opcionais)
@@ -55,7 +55,7 @@
-
+
Tipo Decimal com 15 dígitos, sendo 13 de corpo e 2 decimais
@@ -64,7 +64,7 @@
-
+
Tipo Decimal com até 3 dígitos inteiros, podendo ter de 2 até 4 decimais
@@ -107,6 +107,14 @@
+
+
+ Tipo Indicador de Doação
+
+
+
+
+
Grupo de informações da Tributação da NFCom
@@ -118,7 +126,17 @@
+
+
+ Indica se a operação é de doação
+
+
+
+
+ Informado conforme indicador no cClassTrib
+
+
@@ -132,7 +150,37 @@
+
+
+ Indica se a operação é de doação
+
+
+
+
+
+ Informado conforme indicador no cClassTrib
+
+
+
+
+
+
+ Grupo de informações da Tributação da NFAg
+
+
+
+
+ Código Situação Tributária do IBS/CBS
+
+
+
+
+
+
+ Informado conforme indicador no cClassTrib
+
+
@@ -146,7 +194,13 @@
+
+
+
+ Informado conforme indicador no cClassTrib
+
+
@@ -160,7 +214,13 @@
+
+
+
+ Informado conforme indicador no cClassTrib
+
+
@@ -174,6 +234,11 @@
+
+
+ Indica se a operação é de doação
+
+
@@ -191,11 +256,16 @@
+
+
+ Indica se a operação é de doação
+
+
- Informar essa opção da Choice para Monofasia
+ Informar essa opção da Choice para Monofasia (CST 620)
@@ -203,10 +273,54 @@
Informar essa opção da Choice para o CST 800
+
+
+ Informar essa opção da Choice para o CST 811
+
+
-
+
- Classificação de acordo com o art. 450, § 1º, da LC 214/25 para o cálculo do crédito presumido na ZFM
+ Informado conforme indicador no cClassTrib
+
+
+
+
+
+ Crédito Presumido da Operação. Informado conforme indicador no cClassTrib.
+
+
+
+
+ Classificação de acordo com o art. 450, § 1º, da LC 214/25 para o cálculo do crédito presumido na ZFM. Informado conforme indicador no cClassTrib.
+
+
+
+
+
+
+
+ Grupo de informações da Tributação da NFGas
+
+
+
+
+ Código Situação Tributária do IBS/CBS
+
+
+
+
+
+
+
+
+ Informar essa opção da Choice para Monofasia
+
+
+
+
+
+ Informado conforme indicador no cClassTrib
@@ -223,17 +337,17 @@
-
+
Valor do BC
-
+
Alíquota do Imposto Seletivo (percentual)
-
+
Alíquota do Imposto Seletivo (por valor)
@@ -250,13 +364,13 @@
-
+
Quantidade com abse no campo uTrib informado
-
+
Valor do Imposto Seletivo calculado
@@ -269,7 +383,7 @@
Grupo de informações de totais do Imposto Seletivo
-
+
Valor Total do Imposto Seletivo
@@ -281,7 +395,7 @@
Grupo de informações de totais da CBS/IBS
-
+
Total Base de Calculo
@@ -298,17 +412,17 @@
-
+
Total do Diferimento
-
+
Total de devoluções de tributos
-
+
Valor total do IBS Estadual
@@ -322,17 +436,17 @@
-
+
Total do Diferimento
-
+
Total de devoluções de tributos
-
+
Valor total do IBS Municipal
@@ -340,21 +454,11 @@
-
+
Valor total do IBS
-
-
- Total do Crédito Presumido
-
-
-
-
- Total do Crédito Presumido Condição Suspensiva
-
-
@@ -364,29 +468,38 @@
-
+
Total do Diferimento
-
+
Total de devoluções de tributos
-
+
Valor total da CBS
-
+
+
+
+
+
+ Totalização do estorno de crédito
+
+
+
+
- Total do Crédito Presumido
+ Valor total do IBS estornado
-
+
- Total do Crédito Presumido Condição Suspensiva
+ Valor total da CBS estornada
@@ -399,7 +512,7 @@
Grupo de informações de totais da CBS/IBS com monofasia
-
+
Total Base de Calculo
@@ -416,17 +529,17 @@
-
+
Total do Diferimento
-
+
Total de devoluções de tributos
-
+
Valor total do IBS Estadual
@@ -440,17 +553,17 @@
-
+
Total do Diferimento
-
+
Total de devoluções de tributos
-
+
Valor total do IBS Municipal
@@ -458,17 +571,17 @@
-
+
Valor total do IBS
-
+
Total do Crédito Presumido
-
+
Total do Crédito Presumido Condição Suspensiva
@@ -482,27 +595,27 @@
-
+
Total do Diferimento
-
+
Total de devoluções de tributos
-
+
Valor total da CBS
-
+
Total do Crédito Presumido
-
+
Total do Crédito Presumido Condição Suspensiva
@@ -517,32 +630,32 @@
-
+
Valor total do IBS monofásico
-
+
Valor total da CBS monofásica
-
+
Valor total do IBS monofásico sujeito a retenção
-
+
Valor total da CBS monofásica sujeita a retenção
-
+
Valor do IBS monofásico retido anteriormente
-
+
Valor da CBS monofásica retida anteriormente
@@ -550,6 +663,25 @@
+
+
+ Totalização do estorno de crédito
+
+
+
+
+
+ Valor total do IBS estornado
+
+
+
+
+ Valor total da CBS estornada
+
+
+
+
+
@@ -566,27 +698,27 @@
-
+
Quantidade tributada na monofasia
-
+
Alíquota ad rem do IBS
-
+
Alíquota ad rem da CBS
-
+
Valor do IBS monofásico
-
+
Valor da CBS monofásica
@@ -600,27 +732,27 @@
-
+
Quantidade tributada sujeita a retenção.
-
+
Alíquota ad rem do IBS sujeito a retenção
-
+
Valor do IBS monofásico sujeito a retenção
-
+
Alíquota ad rem da CBS sujeita a retenção
-
+
Valor da CBS monofásica sujeita a retenção
@@ -634,27 +766,27 @@
-
+
Quantidade tributada retida anteriormente
-
+
Alíquota ad rem do IBS retido anteriormente
-
+
Valor do IBS retido anteriormente
-
+
Alíquota ad rem da CBS retida anteriormente
-
+
Valor da CBS retida anteriormente
@@ -668,22 +800,22 @@
-
+
Percentual do diferimento do imposto monofásico
-
+
Valor do IBS monofásico diferido
-
+
Percentual do diferimento do imposto monofásico
-
+
Valor da CBS monofásica diferida
@@ -691,12 +823,12 @@
-
+
Total de IBS monofásico do item
-
+
Total da CBS monofásica do item
@@ -711,7 +843,7 @@
IBS / CBS
-
+
Valor do BC
@@ -723,9 +855,9 @@
-
+
- Aliquota do IBS de competência das UF
+ Aliquota do IBS de competência das UF (em percentual)
@@ -743,7 +875,7 @@
Grupo de campos da redução de aliquota
-
+
Valor do IBS de competência das UF
@@ -757,9 +889,9 @@
-
+
- Aliquota do IBS Municipal
+ Aliquota do IBS Municipal (em percentual)
@@ -777,7 +909,7 @@
Grupo de campos da redução de aliquota
-
+
Valor do IBS Municipal
@@ -785,7 +917,7 @@
-
+
Valor do IBS
@@ -797,9 +929,9 @@
-
+
- Aliquota da CBS
+ Aliquota da CBS (em percentual)
@@ -817,7 +949,7 @@
Grupo de campos da redução de aliquota
-
+
Valor da CBS
@@ -830,16 +962,6 @@
Grupo de informações da Tributação Regular. Informar como seria a tributação caso não cumprida a condição resolutória/suspensiva. Exemplo 1: Art. 442, §4. Operações com ZFM e ALC. Exemplo 2: Operações com suspensão do tributo.
-
-
- Grupo de Informações do Crédito Presumido referente ao IBS, quando aproveitado pelo emitente do documento.
-
-
-
-
- Grupo de Informações do Crédito Presumido referente a CBS, quando aproveitado pelo emitente do documento.
-
-
Grupo de informações da composição do valor do IBS e da CBS em compras governamental
@@ -852,14 +974,14 @@
Tipo Redução Base de Cálculo
-
+
Percentual de redução de aliquota do cClassTrib
-
+
- Aliquota Efetiva que será aplicada a Base de Calculo
+ Aliquota Efetiva que será aplicada a Base de Calculo (em percentual)
@@ -869,23 +991,18 @@
Tipo Crédito Presumido
-
-
- Código de Classificação do Crédito Presumido do IBS e da CBS
-
-
-
+
Percentual do Crédito Presumido
-
+
Valor do Crédito Presumido
-
+
Valor do Crédito Presumido Condição Suspensiva, preencher apenas para cCredPres que possui indicação de Condição Suspensiva
@@ -898,12 +1015,12 @@
Tipo Diferimento
-
+
Percentual do diferimento
-
+
Valor do diferimento
@@ -915,7 +1032,7 @@
Tipo Devolução Tributo
-
+
Valor do tributo devolvido. No fornecimento de energia elétrica, água, esgoto e
gás natural e em outras hipóteses definidas no regulamento
@@ -939,37 +1056,37 @@ gás natural e em outras hipóteses definidas no regulamento
Informar qual seria o cClassTrib caso não cumprida a condição resolutória/suspensiva
-
+
Alíquota do IBS da UF
Informar como seria a Alíquota caso não cumprida a condição resolutória/suspensiva
-
+
Valor do IBS da UF
Informar como seria o valor do Tributo caso não cumprida a condição resolutória/suspensiva
-
+
Alíquota do IBS do Município
Informar como seria a Alíquota caso não cumprida a condição resolutória/suspensiva
-
+
Valor do IBS do Município
Informar como seria o valor do Tributo caso não cumprida a condição resolutória/suspensiva
-
+
Alíquota da CBS
Informar como seria a Alíquota caso não cumprida a condição resolutória/suspensiva
-
+
Valor da CBS
Informar como seria o valor do Tributo caso não cumprida a condição resolutória/suspensiva
@@ -982,20 +1099,20 @@ gás natural e em outras hipóteses definidas no regulamento
Tipo Tributação Compra Governamental
-
-
+
+
Valor que seria devido a UF, sem aplicação do Art. 473. da LC 214/2025
-
-
+
+
Valor que seria devido ao município, sem aplicação do Art. 473. da LC 214/2025
-
-
+
+
Valor que seria devido a CBS, sem aplicação do Art. 473. da LC 214/2025
@@ -1017,9 +1134,9 @@ gás natural e em outras hipóteses definidas no regulamento
4=Municípios
-
+
- Percentual de redução de aliquota em compra goverrnamental
+ Percentual de redução de aliquota em compra governamental
@@ -1039,9 +1156,9 @@ gás natural e em outras hipóteses definidas no regulamento
4=Municípios
-
+
- Percentual de redução de aliquota em compra goverrnamental
+ Percentual de redução de aliquota em compra governamental
@@ -1058,23 +1175,102 @@ gás natural e em outras hipóteses definidas no regulamento
Tipo Transferência de Crédito
-
+
Valor do IBS a ser transferido
-
+
Valor da CBS a ser transferida
+
+
+ Tipo Estorno de Crédito
+
+
+
+
+ Valor do IBS a ser estornado
+
+
+
+
+ Valor da CBS a ser estornada
+
+
+
+
+
+
+ Ano e mês referência do período de apuração (AAAA-MM)
+
+
+
+
+
+
+
+ Tipo Ajuste de Competência
+
+
+
+
+ Ano e mês referência do período de apuração (AAAA-MM)
+
+
+
+
+ Valor do IBS
+
+
+
+
+ Valor da CBS
+
+
+
+
+
+
+ Tipo Crédito Presumido da Operação
+
+
+
+
+ Valor da Base de Cálculo do Crédito Presumido da Operação
+
+
+
+
+ Código de Classificação do Crédito Presumido do IBS e da CBS
+
+
+
+
+ Grupo de Informações do Crédito Presumido referente ao IBS, quando aproveitado pelo emitente do documento.
+
+
+
+
+ Grupo de Informações do Crédito Presumido referente a CBS, quando aproveitado pelo emitente do documento.
+
+
+
+
Tipo Informações do crédito presumido de IBS para fornecimentos a partir da ZFM
+
+
+ Ano e mês referência do período de apuração (AAAA-MM)
+
+
Classificação de acordo com o art. 450, § 1º, da LC 214/25 para o cálculo do crédito presumido na ZFM
@@ -1087,11 +1283,11 @@ OBS: Percentuais definidos no art. 450, § 1º, da LC 214/25 para o cálculo do
-
+
Valor do crédito presumido calculado sobre o saldo devedor apurado
-
+
\ No newline at end of file
diff --git a/NFe.AppTeste/Schemas/leiauteNFe_v4.00.xsd b/NFe.AppTeste/Schemas/leiauteNFe_v4.00.xsd
index 770676266..7d6fb69ef 100644
--- a/NFe.AppTeste/Schemas/leiauteNFe_v4.00.xsd
+++ b/NFe.AppTeste/Schemas/leiauteNFe_v4.00.xsd
@@ -94,6 +94,11 @@ SCAN 900-999
Data e Hora da saída ou de entrada da mercadoria / produto (AAAA-MM-DDTHH:mm:ssTZD)
+
+
+ Data da previsão de entrega ou disponibilização do bem (AAAA-MM-DD)
+
+
Tipo do Documento Fiscal (0 - entrada; 1 - saída)
@@ -204,13 +209,7 @@ Campo preenchido somente quando “indPres = 5 (Operação presencial, fora do e
- Tipo de Nota de Débito:
-01=Transferência de créditos para Cooperativas;
-02=Anulação de Crédito por Saídas Imunes/Isentas;
-03=Débitos de notas fiscais não processadas na apuração;
-04=Multa e juros;
-05=Transferência de crédito de sucessão.
-
+ Tipo de Nota de Débito
@@ -993,6 +992,11 @@ Formato ”CFOP9999”.
+
+
+ Classificação para subapuração do IBS na ZFM
+
+
Código EX TIPI (3 posições)
@@ -7345,7 +7349,15 @@ alterado para tamanho variavel 1-4. (NT2011/004)
- Tipo de Nota de Débito: 01=Transferência de créditos para Cooperativas; 02=Anulação de Crédito por Saídas Imunes/Isentas; 03=Débitos de notas fiscais não processadas na apuração; 04=Multa e juros; 05=Transferência de crédito de sucessão); 06=Pagamento antecipado; 07=Perda em estoque
+ Tipo de Nota de Débito:
+ 01=Transferência de créditos para Cooperativas;
+ 02=Anulação de Crédito por Saídas Imunes/Isentas;
+ 03=Débitos de notas fiscais não processadas na apuração;
+ 04=Multa e juros;
+ 05=Transferência de crédito na sucessão;
+ 06=Pagamento antecipado;
+ 07=Perda em estoque;
+ 08=Desenquadramento do SN;
@@ -7356,17 +7368,26 @@ alterado para tamanho variavel 1-4. (NT2011/004)
+
- Tipo de Nota de Crédito: 01=Multa e juros; 02=Apropriação de crédito presumido de IBS sobre o saldo devedor na ZFM (art. 450, § 1º, LC 214/25); 03=Retorno
+ Tipo de Nota de Crédito:
+ 01=Multa e juros;
+ 02=Apropriação de crédito presumido de IBS sobre o saldo devedor na ZFM (art. 450, § 1º, LC 214/25);
+ 03=Retorno por recusa na entrega ou por não localização do destinatário na tentativa de entrega;
+ 04=Redução de valores;
+ 05=Transferência de crédito na sucessão;
+
+
+
diff --git a/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/IBSCBS.cs b/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/IBSCBS.cs
index 019f93672..f98d1f8c9 100644
--- a/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/IBSCBS.cs
+++ b/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/IBSCBS.cs
@@ -53,27 +53,51 @@ public class IBSCBS
public string cClassTrib { get; set; }
///
- /// UB15 - Grupo de Informações do IBS e da CBS
+ /// UB14a - Indica a natureza da operação de doação, orientando a apuração e a geração de débitos ou estornos conforme o cenário
///
[XmlElement(Order = 3)]
+ public string indDoacao { get; set; }
+
+ ///
+ /// UB15 - Grupo de Informações do IBS e da CBS
+ ///
+ [XmlElement(Order = 4)]
public gIBSCBS gIBSCBS { get; set; }
///
/// UB84 - Grupo de Informações do IBS e CBS em operações com imposto monofásico
///
- [XmlElement(Order = 4)]
+ [XmlElement(Order = 5)]
public gIBSCBSMono gIBSCBSMono { get; set; }
///
/// UB106 - Transferências de Crédito
///
- [XmlElement(Order = 5)]
+ [XmlElement(Order = 6)]
public gTransfCred gTransfCred { get; set; }
///
- /// UB109 - Informações do crédito presumido de IBS para fornecimentos a partir da ZFM
+ /// UB112 - Ajuste de Competência
///
- [XmlElement(Order = 6)]
+ [XmlElement(Order = 7)]
+ public gAjusteCompet gAjusteCompet { get; set; }
+
+ ///
+ /// UB116 - Estorno de Crédito
+ ///
+ [XmlElement(Order = 8)]
+ public gEstornoCred gEstornoCred { get; set; }
+
+ ///
+ /// UB120 - Crédito Presumido da Operação
+ ///
+ [XmlElement(Order = 9)]
+ public gCredPresOper gCredPresOper { get; set; }
+
+ ///
+ /// UB131 - Grupo para apropriação de crédito presumido de IBS sobre o saldo devedor na ZFM (art. 450, § 1º, LC 214/25)
+ ///
+ [XmlElement(Order = 10)]
public gCredPresIBSZFM gCredPresIBSZFM { get; set; }
}
}
\ No newline at end of file
diff --git a/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/InformacoesIbsCbs/InformacoesCbs/gCBS.cs b/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/InformacoesIbsCbs/InformacoesCbs/gCBS.cs
index e6efe4d81..768d4d741 100644
--- a/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/InformacoesIbsCbs/InformacoesCbs/gCBS.cs
+++ b/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/InformacoesIbsCbs/InformacoesCbs/gCBS.cs
@@ -39,7 +39,7 @@ public class gCBS
private decimal _vCbs;
///
- /// UB56 - Alíquota da CBS
+ /// UB56 - Alíquota da CBS (em percentual)
///
public decimal pCBS
{
@@ -47,15 +47,6 @@ public decimal pCBS
set => _pCbs = value.Arredondar(4);
}
- ///
- /// UB67 - Valor da CBS
- ///
- public decimal vCBS
- {
- get => _vCbs.Arredondar(2);
- set => _vCbs = value.Arredondar(2);
- }
-
///
/// UB59 - Grupo de Informações do Diferimento
///
@@ -70,5 +61,14 @@ public decimal vCBS
/// UB64 - Grupo de informações da redução da alíquota
///
public gRed gRed { get; set; }
+
+ ///
+ /// UB67 - Valor da CBS
+ ///
+ public decimal vCBS
+ {
+ get => _vCbs.Arredondar(2);
+ set => _vCbs = value.Arredondar(2);
+ }
}
}
\ No newline at end of file
diff --git a/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/InformacoesIbsCbs/InformacoesCbs/gCBSCredPres.cs b/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/InformacoesIbsCbs/InformacoesCbs/gCBSCredPres.cs
index bce695ab9..4ee4b1c17 100644
--- a/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/InformacoesIbsCbs/InformacoesCbs/gCBSCredPres.cs
+++ b/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/InformacoesIbsCbs/InformacoesCbs/gCBSCredPres.cs
@@ -36,16 +36,11 @@ namespace NFe.Classes.Informacoes.Detalhe.Tributacao.Compartilhado.InformacoesIb
public class gCBSCredPres
{
private decimal _pCredPres;
- private decimal _vCredPres;
- private decimal _vCredPresCondSus;
+ private decimal? _vCredPres;
+ private decimal? _vCredPresCondSus;
///
- /// UB79 - Código de Classificação do Crédito Presumido
- ///
- public int cCredPres { get; set; }
-
- ///
- /// UB80 - Percentual do Crédito Presumido
+ /// UB128 - Percentual do Crédito Presumido
///
public decimal pCredPres
{
@@ -54,21 +49,24 @@ public decimal pCredPres
}
///
- /// UB81 - Valor do Crédito Presumido
+ /// UB129 - Valor do Crédito Presumido
///
- public decimal vCredPres
+ public decimal? vCredPres
{
get => _vCredPres.Arredondar(2);
- set => _vCredPres = value.Arredondar(2);
+ set => _vCredPres = value ?? value.Arredondar(2);
}
///
- /// UB82 - Valor do Crédito Presumido em condição suspensiva
+ /// UB130 - Valor do Crédito Presumido em condição suspensiva
///
- public decimal vCredPresCondSus
+ public decimal? vCredPresCondSus
{
get => _vCredPresCondSus.Arredondar(2);
set => _vCredPresCondSus = value.Arredondar(2);
}
+
+ public bool ShouldSerializevCredPres() => vCredPres.HasValue;
+ public bool ShouldSerializevCredPresCondSus() => vCredPresCondSus.HasValue;
}
}
\ No newline at end of file
diff --git a/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/InformacoesIbsCbs/InformacoesIbs/gCredPresIBSZFM.cs b/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/InformacoesIbsCbs/InformacoesIbs/gCredPresIBSZFM.cs
index d56c17cec..c43778fbb 100644
--- a/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/InformacoesIbsCbs/InformacoesIbs/gCredPresIBSZFM.cs
+++ b/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/InformacoesIbsCbs/InformacoesIbs/gCredPresIBSZFM.cs
@@ -31,6 +31,9 @@
/* Rua Comendador Francisco josé da Cunha, 111 - Itabaiana - SE - 49500-000 */
/********************************************************************************/
+using System;
+using System.Xml.Serialization;
+using DFe.Utils;
using NFe.Classes.Informacoes.Detalhe.Tributacao.Compartilhado.Tipos;
namespace NFe.Classes.Informacoes.Detalhe.Tributacao.Compartilhado.InformacoesIbsCbs.InformacoesIbs
@@ -40,12 +43,28 @@ public class gCredPresIBSZFM
private decimal? _vCredPresIbsZfm;
///
- /// UB110 - Tipo de classificação de acordo com o art. 450, § 1º, da LC 214/25 para o cálculo do crédito presumido na ZFM
+ /// UB132 - Ano e mês de referência do período de apuração (AAAA-MM)
+ ///
+ [XmlIgnore]
+ public DateTime? competApur { get; set; }
+
+ ///
+ /// Proxy para competApur no formato AAAA-MM (somente ano e mês)
+ ///
+ [XmlElement(ElementName = "competApur")]
+ public string ProxyCompetApur
+ {
+ get => competApur.ParaDataAnoEMesString();
+ set => competApur = DateTime.Parse(value);
+ }
+
+ ///
+ /// UB133 - Tipo de classificação de acordo com o art. 450, § 1º, da LC 214/25 para o cálculo do crédito presumido na ZFM
///
public ClassificacaoCreditoPresumidoIbsZfmTipos tpCredPresIBSZFM { get; set; }
///
- /// UB111 - Valor do crédito presumido calculado sobre o saldo devedor apurado
+ /// UB134 - Valor do crédito presumido calculado sobre o saldo devedor apurado
///
public decimal? vCredPresIBSZFM
{
diff --git a/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/InformacoesIbsCbs/InformacoesIbs/gIBSCredPres.cs b/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/InformacoesIbsCbs/InformacoesIbs/gIBSCredPres.cs
index 04c1b5a9c..8fadde45c 100644
--- a/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/InformacoesIbsCbs/InformacoesIbs/gIBSCredPres.cs
+++ b/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/InformacoesIbsCbs/InformacoesIbs/gIBSCredPres.cs
@@ -36,16 +36,11 @@ namespace NFe.Classes.Informacoes.Detalhe.Tributacao.Compartilhado.InformacoesIb
public class gIBSCredPres
{
private decimal _pCredPres;
- private decimal _vCredPres;
- private decimal _vCredPresCondSus;
-
- ///
- /// UB74 - Código de Classificação do Crédito Presumido
- ///
- public int cCredPres { get; set; }
+ private decimal? _vCredPres;
+ private decimal? _vCredPresCondSus;
///
- /// UB75 - Percentual do Crédito Presumido
+ /// UB124 - Percentual do Crédito Presumido
///
public decimal pCredPres
{
@@ -54,21 +49,24 @@ public decimal pCredPres
}
///
- /// UB76 - Valor do Crédito Presumido
+ /// UB125 - Valor do Crédito Presumido
///
- public decimal vCredPres
+ public decimal? vCredPres
{
get => _vCredPres.Arredondar(2);
set => _vCredPres = value.Arredondar(2);
}
///
- /// UB77 - Valor do Crédito Presumido em condição suspensiva
+ /// UB126 - Valor do Crédito Presumido em condição suspensiva
///
- public decimal vCredPresCondSus
+ public decimal? vCredPresCondSus
{
get => _vCredPresCondSus.Arredondar(2);
set => _vCredPresCondSus = value.Arredondar(2);
}
+
+ public bool ShouldSerializevCredPres() => vCredPres.HasValue;
+ public bool ShouldSerializevCredPresCondSus() => vCredPresCondSus.HasValue;
}
}
\ No newline at end of file
diff --git a/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/InformacoesIbsCbs/InformacoesIbs/gIBSMun.cs b/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/InformacoesIbsCbs/InformacoesIbs/gIBSMun.cs
index 823d12760..3e47d48a1 100644
--- a/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/InformacoesIbsCbs/InformacoesIbs/gIBSMun.cs
+++ b/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/InformacoesIbsCbs/InformacoesIbs/gIBSMun.cs
@@ -39,7 +39,7 @@ public class gIBSMun
private decimal _vIbsMun;
///
- /// UB37 - Alíquota do IBS de competência do Município
+ /// UB37 - Alíquota do IBS de competência do Município (em percentual)
///
public decimal pIBSMun
{
@@ -47,15 +47,6 @@ public decimal pIBSMun
set => _pIbsMun = value.Arredondar(4);
}
- ///
- /// UB54 - Valor do IBS de competência do Município
- ///
- public decimal vIBSMun
- {
- get => _vIbsMun.Arredondar(2);
- set => _vIbsMun = value.Arredondar(2);
- }
-
///
/// UB40 - Grupo de Informações do Diferimento
///
@@ -70,5 +61,14 @@ public decimal vIBSMun
/// UB45 - Grupo de informações da redução da alíquota
///
public gRed gRed { get; set; }
+
+ ///
+ /// UB54 - Valor do IBS de competência do Município
+ ///
+ public decimal vIBSMun
+ {
+ get => _vIbsMun.Arredondar(2);
+ set => _vIbsMun = value.Arredondar(2);
+ }
}
}
\ No newline at end of file
diff --git a/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/InformacoesIbsCbs/InformacoesIbs/gIBSUF.cs b/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/InformacoesIbsCbs/InformacoesIbs/gIBSUF.cs
index d30f66f54..759015d40 100644
--- a/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/InformacoesIbsCbs/InformacoesIbs/gIBSUF.cs
+++ b/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/InformacoesIbsCbs/InformacoesIbs/gIBSUF.cs
@@ -39,7 +39,7 @@ public class gIBSUF
private decimal _vIbsUf;
///
- /// UB18 - Alíquota do IBS de competência das UF
+ /// UB18 - Alíquota do IBS de competência das UF (em percentual)
///
public decimal pIBSUF
{
diff --git a/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/InformacoesIbsCbs/gAjusteCompet.cs b/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/InformacoesIbsCbs/gAjusteCompet.cs
new file mode 100644
index 000000000..623e402c0
--- /dev/null
+++ b/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/InformacoesIbsCbs/gAjusteCompet.cs
@@ -0,0 +1,79 @@
+/********************************************************************************/
+/* Projeto: Biblioteca ZeusNFe */
+/* Biblioteca C# para emissão de Nota Fiscal Eletrônica - NFe e Nota Fiscal de */
+/* Consumidor Eletrônica - NFC-e (http://www.nfe.fazenda.gov.br) */
+/* */
+/* Direitos Autorais Reservados (c) 2014 Adenilton Batista da Silva */
+/* Zeusdev Tecnologia LTDA ME */
+/* */
+/* Você pode obter a última versão desse arquivo no GitHub */
+/* localizado em https://github.com/adeniltonbs/Zeus.Net.NFe.NFCe */
+/* */
+/* */
+/* Esta biblioteca é software livre; você pode redistribuí-la e/ou modificá-la */
+/* sob os termos da Licença Pública Geral Menor do GNU conforme publicada pela */
+/* Free Software Foundation; tanto a versão 2.1 da Licença, ou (a seu critério) */
+/* qualquer versão posterior. */
+/* */
+/* Esta biblioteca é distribuída na expectativa de que seja útil, porém, SEM */
+/* NENHUMA GARANTIA; nem mesmo a garantia implícita de COMERCIABILIDADE OU */
+/* ADEQUAÇÃO A UMA FINALIDADE ESPECÍFICA. Consulte a Licença Pública Geral Menor*/
+/* do GNU para mais detalhes. (Arquivo LICENÇA.TXT ou LICENSE.TXT) */
+/* */
+/* Você deve ter recebido uma cópia da Licença Pública Geral Menor do GNU junto*/
+/* com esta biblioteca; se não, escreva para a Free Software Foundation, Inc., */
+/* no endereço 59 Temple Street, Suite 330, Boston, MA 02111-1307 USA. */
+/* Você também pode obter uma copia da licença em: */
+/* http://www.opensource.org/licenses/lgpl-license.php */
+/* */
+/* Zeusdev Tecnologia LTDA ME - adenilton@zeusautomacao.com.br */
+/* http://www.zeusautomacao.com.br/ */
+/* Rua Comendador Francisco josé da Cunha, 111 - Itabaiana - SE - 49500-000 */
+/********************************************************************************/
+
+using System;
+using System.Xml.Serialization;
+using DFe.Utils;
+
+namespace NFe.Classes.Informacoes.Detalhe.Tributacao.Compartilhado.InformacoesIbsCbs
+{
+ public class gAjusteCompet
+ {
+ private decimal _vIBS;
+ private decimal _vCBS;
+
+ ///
+ /// UB113 - Ano e mês de referência do período de apuração (AAAA-MM)
+ ///
+ [XmlIgnore]
+ public DateTime? competApur { get; set; }
+
+ ///
+ /// Proxy para competApur no formato AAAA-MM (somente ano e mês)
+ ///
+ [XmlElement(ElementName = "competApur")]
+ public string ProxyCompetApur
+ {
+ get => competApur.ParaDataAnoEMesString();
+ set => competApur = DateTime.Parse(value);
+ }
+
+ ///
+ /// UB114 - Valor do IBS
+ ///
+ public decimal vIBS
+ {
+ get => _vIBS.Arredondar(2);
+ set => _vIBS = value;
+ }
+
+ ///
+ /// UB115 - Valor do CBS
+ ///
+ public decimal vCBS
+ {
+ get => _vCBS.Arredondar(2);
+ set => _vCBS = value;
+ }
+ }
+}
\ No newline at end of file
diff --git a/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/InformacoesIbsCbs/gCredPresOper.cs b/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/InformacoesIbsCbs/gCredPresOper.cs
new file mode 100644
index 000000000..206f81aac
--- /dev/null
+++ b/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/InformacoesIbsCbs/gCredPresOper.cs
@@ -0,0 +1,67 @@
+/********************************************************************************/
+/* Projeto: Biblioteca ZeusNFe */
+/* Biblioteca C# para emissão de Nota Fiscal Eletrônica - NFe e Nota Fiscal de */
+/* Consumidor Eletrônica - NFC-e (http://www.nfe.fazenda.gov.br) */
+/* */
+/* Direitos Autorais Reservados (c) 2014 Adenilton Batista da Silva */
+/* Zeusdev Tecnologia LTDA ME */
+/* */
+/* Você pode obter a última versão desse arquivo no GitHub */
+/* localizado em https://github.com/adeniltonbs/Zeus.Net.NFe.NFCe */
+/* */
+/* */
+/* Esta biblioteca é software livre; você pode redistribuí-la e/ou modificá-la */
+/* sob os termos da Licença Pública Geral Menor do GNU conforme publicada pela */
+/* Free Software Foundation; tanto a versão 2.1 da Licença, ou (a seu critério) */
+/* qualquer versão posterior. */
+/* */
+/* Esta biblioteca é distribuída na expectativa de que seja útil, porém, SEM */
+/* NENHUMA GARANTIA; nem mesmo a garantia implícita de COMERCIABILIDADE OU */
+/* ADEQUAÇÃO A UMA FINALIDADE ESPECÍFICA. Consulte a Licença Pública Geral Menor*/
+/* do GNU para mais detalhes. (Arquivo LICENÇA.TXT ou LICENSE.TXT) */
+/* */
+/* Você deve ter recebido uma cópia da Licença Pública Geral Menor do GNU junto*/
+/* com esta biblioteca; se não, escreva para a Free Software Foundation, Inc., */
+/* no endereço 59 Temple Street, Suite 330, Boston, MA 02111-1307 USA. */
+/* Você também pode obter uma copia da licença em: */
+/* http://www.opensource.org/licenses/lgpl-license.php */
+/* */
+/* Zeusdev Tecnologia LTDA ME - adenilton@zeusautomacao.com.br */
+/* http://www.zeusautomacao.com.br/ */
+/* Rua Comendador Francisco josé da Cunha, 111 - Itabaiana - SE - 49500-000 */
+/********************************************************************************/
+
+using NFe.Classes.Informacoes.Detalhe.Tributacao.Compartilhado.InformacoesIbsCbs.InformacoesCbs;
+using NFe.Classes.Informacoes.Detalhe.Tributacao.Compartilhado.InformacoesIbsCbs.InformacoesIbs;
+
+namespace NFe.Classes.Informacoes.Detalhe.Tributacao.Compartilhado.InformacoesIbsCbs
+{
+ public class gCredPresOper
+ {
+ private decimal _vBCCredPres;
+
+ ///
+ /// UB121 - Valor da Base de Cálculo do Crédito Presumido da Operação
+ ///
+ public decimal vBCCredPres
+ {
+ get => _vBCCredPres.Arredondar(2);
+ set => _vBCCredPres = value;
+ }
+
+ ///
+ /// UB122 - Código de Classificação do Crédito Presumido
+ ///
+ public string cCredPres { get; set; }
+
+ ///
+ /// UB123 - Grupo de Informações do Crédito Presumido referente ao IBS
+ ///
+ public gIBSCredPres gIBSCredPres { get; set; }
+
+ ///
+ /// UB127 - Grupo de Informações do Crédito Presumido referente a CBS
+ ///
+ public gCBSCredPres gCBSCredPres { get; set; }
+ }
+}
\ No newline at end of file
diff --git a/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/InformacoesIbsCbs/gEstornoCred.cs b/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/InformacoesIbsCbs/gEstornoCred.cs
new file mode 100644
index 000000000..35370da00
--- /dev/null
+++ b/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/InformacoesIbsCbs/gEstornoCred.cs
@@ -0,0 +1,59 @@
+/********************************************************************************/
+/* Projeto: Biblioteca ZeusNFe */
+/* Biblioteca C# para emissão de Nota Fiscal Eletrônica - NFe e Nota Fiscal de */
+/* Consumidor Eletrônica - NFC-e (http://www.nfe.fazenda.gov.br) */
+/* */
+/* Direitos Autorais Reservados (c) 2014 Adenilton Batista da Silva */
+/* Zeusdev Tecnologia LTDA ME */
+/* */
+/* Você pode obter a última versão desse arquivo no GitHub */
+/* localizado em https://github.com/adeniltonbs/Zeus.Net.NFe.NFCe */
+/* */
+/* */
+/* Esta biblioteca é software livre; você pode redistribuí-la e/ou modificá-la */
+/* sob os termos da Licença Pública Geral Menor do GNU conforme publicada pela */
+/* Free Software Foundation; tanto a versão 2.1 da Licença, ou (a seu critério) */
+/* qualquer versão posterior. */
+/* */
+/* Esta biblioteca é distribuída na expectativa de que seja útil, porém, SEM */
+/* NENHUMA GARANTIA; nem mesmo a garantia implícita de COMERCIABILIDADE OU */
+/* ADEQUAÇÃO A UMA FINALIDADE ESPECÍFICA. Consulte a Licença Pública Geral Menor*/
+/* do GNU para mais detalhes. (Arquivo LICENÇA.TXT ou LICENSE.TXT) */
+/* */
+/* Você deve ter recebido uma cópia da Licença Pública Geral Menor do GNU junto*/
+/* com esta biblioteca; se não, escreva para a Free Software Foundation, Inc., */
+/* no endereço 59 Temple Street, Suite 330, Boston, MA 02111-1307 USA. */
+/* Você também pode obter uma copia da licença em: */
+/* http://www.opensource.org/licenses/lgpl-license.php */
+/* */
+/* Zeusdev Tecnologia LTDA ME - adenilton@zeusautomacao.com.br */
+/* http://www.zeusautomacao.com.br/ */
+/* Rua Comendador Francisco josé da Cunha, 111 - Itabaiana - SE - 49500-000 */
+/********************************************************************************/
+
+namespace NFe.Classes.Informacoes.Detalhe.Tributacao.Compartilhado.InformacoesIbsCbs
+{
+ public class gEstornoCred
+ {
+ private decimal _vIBSEstCred;
+ private decimal _vCBSEstCred;
+
+ ///
+ /// UB117 - Valor do IBS a ser estornado
+ ///
+ public decimal vIBSEstCred
+ {
+ get => _vIBSEstCred.Arredondar(2);
+ set => _vIBSEstCred = value;
+ }
+
+ ///
+ /// UB118 - Valor do CBS a ser estornado
+ ///
+ public decimal vCBSEstCred
+ {
+ get => _vCBSEstCred.Arredondar(2);
+ set => _vCBSEstCred = value;
+ }
+ }
+}
\ No newline at end of file
diff --git a/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/InformacoesIbsCbs/gIBSCBS.cs b/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/InformacoesIbsCbs/gIBSCBS.cs
index 15308193a..ae6ec6e83 100644
--- a/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/InformacoesIbsCbs/gIBSCBS.cs
+++ b/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/InformacoesIbsCbs/gIBSCBS.cs
@@ -86,22 +86,10 @@ public decimal vIBS
[XmlElement(Order = 6)]
public gTribRegular gTribRegular { get; set; }
- ///
- /// UB73 - Grupo de Informações do Crédito Presumido referente ao IBS
- ///
- [XmlElement(Order = 7)]
- public gIBSCredPres gIBSCredPres { get; set; }
-
- ///
- /// UB78 - Grupo de Informações do Crédito Presumido referente a CBS
- ///
- [XmlElement(Order = 8)]
- public gCBSCredPres gCBSCredPres { get; set; }
-
///
/// UB82a - Grupo de informações da composição do valor do IBS e da CBS em compras governamentais
///
- [XmlElement(Order = 9)]
+ [XmlElement(Order = 7)]
public gTribCompraGov gTribCompraGov { get; set; }
}
}
\ No newline at end of file
diff --git a/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/InformacoesIbsCbs/gRed.cs b/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/InformacoesIbsCbs/gRed.cs
index 3e5d511c1..e8edb3946 100644
--- a/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/InformacoesIbsCbs/gRed.cs
+++ b/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/InformacoesIbsCbs/gRed.cs
@@ -48,7 +48,7 @@ public decimal pRedAliq
}
///
- /// Alíquota Efetiva que será aplicada a Base de Cálculo
+ /// Alíquota Efetiva que será aplicada a Base de Cálculo (em percentual)
///
public decimal pAliqEfet
{
diff --git a/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/InformacoesIbsCbs/gTribCompraGov.cs b/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/InformacoesIbsCbs/gTribCompraGov.cs
index fc0ef091d..7144dcfb7 100644
--- a/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/InformacoesIbsCbs/gTribCompraGov.cs
+++ b/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/InformacoesIbsCbs/gTribCompraGov.cs
@@ -43,7 +43,7 @@ public class gTribCompraGov
private decimal _vTribCbs;
///
- /// UB82b - Alíquota do IBS de competência do Estado
+ /// UB82b - Alíquota do IBS de competência do Estado (em percentual)
///
public decimal pAliqIBSUF
{
@@ -61,7 +61,7 @@ public decimal vTribIBSUF
}
///
- /// UB82d - Alíquota do IBS de competência do Município
+ /// UB82d - Alíquota do IBS de competência do Município (em percentual)
///
public decimal pAliqIBSMun
{
@@ -79,7 +79,7 @@ public decimal vTribIBSMun
}
///
- /// UB82f - Alíquota da CBS
+ /// UB82f - Alíquota da CBS (em percentual)
///
public decimal pAliqCBS
{
diff --git a/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/InformacoesIbsCbs/gTribRegular.cs b/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/InformacoesIbsCbs/gTribRegular.cs
index c95f4c6e5..ddc92eb1f 100644
--- a/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/InformacoesIbsCbs/gTribRegular.cs
+++ b/NFe.Classes/Informacoes/Detalhe/Tributacao/Compartilhado/InformacoesIbsCbs/gTribRegular.cs
@@ -55,7 +55,7 @@ public class gTribRegular
public string cClassTribReg { get; set; }
///
- /// UB71 - Valor da alíquota do IBS da UF
+ /// UB71 - Valor da alíquota do IBS da UF (em percentual)
///
public decimal pAliqEfetRegIBSUF
{
@@ -73,7 +73,7 @@ public decimal vTribRegIBSUF
}
///
- /// UB72a - Valor da alíquota do IBS do Município
+ /// UB72a - Valor da alíquota do IBS do Município (em percentual)
///
public decimal pAliqEfetRegIBSMun
{
@@ -91,7 +91,7 @@ public decimal vTribRegIBSMun
}
///
- /// UB72c - Valor da alíquota da CBS
+ /// UB72c - Valor da alíquota da CBS (em percentual)
///
public decimal pAliqEfetRegCBS
{
diff --git a/NFe.Classes/Informacoes/Detalhe/Tributacao/Federal/IS.cs b/NFe.Classes/Informacoes/Detalhe/Tributacao/Federal/IS.cs
index 04ed3469f..3a649a812 100644
--- a/NFe.Classes/Informacoes/Detalhe/Tributacao/Federal/IS.cs
+++ b/NFe.Classes/Informacoes/Detalhe/Tributacao/Federal/IS.cs
@@ -67,7 +67,7 @@ public decimal vBCIS
}
///
- /// UB06 - Alíquota do Imposto Seletivo
+ /// UB06 - Alíquota do Imposto Seletivo (em percentual)
///
[XmlElement(Order = 4)]
public decimal pIS
@@ -77,7 +77,7 @@ public decimal pIS
}
///
- /// UB07 - Alíquota específica por unidade de medida apropriada
+ /// UB07 - Alíquota específica por unidade de medida apropriada (em percentual)
///
[XmlElement(Order = 5)]
public decimal? pISEspec
diff --git a/NFe.Classes/Informacoes/Detalhe/prod.cs b/NFe.Classes/Informacoes/Detalhe/prod.cs
index 1a5ff53bb..7ddcdd50d 100644
--- a/NFe.Classes/Informacoes/Detalhe/prod.cs
+++ b/NFe.Classes/Informacoes/Detalhe/prod.cs
@@ -134,6 +134,11 @@ public bool indEscalaSpecified
///
[XmlElement("gCred")]
public List gCred { get; set; }
+
+ ///
+ /// I05K - Classificação para subapuração do IBS na ZFM
+ ///
+ public tpCredPresIBSZFM? tpCredPresIBSZFM { get; set; }
///
/// I06 - Código EX TIPI (3 posições)
@@ -354,5 +359,7 @@ public bool ShouldSerializevOutro()
}
public bool ShouldSerializeindBemMovelUsado() => indBemMovelUsado.HasValue;
+
+ public bool ShouldSerializetpCredPresIBSZFM() => tpCredPresIBSZFM.HasValue;
}
}
diff --git a/NFe.Classes/Informacoes/Detalhe/prodTipos.cs b/NFe.Classes/Informacoes/Detalhe/prodTipos.cs
index f82804425..c6b6fd337 100644
--- a/NFe.Classes/Informacoes/Detalhe/prodTipos.cs
+++ b/NFe.Classes/Informacoes/Detalhe/prodTipos.cs
@@ -387,4 +387,35 @@ public enum IndBemMovelUsado
[XmlEnum("1")]
BemMovelUsado
}
+
+ ///
+ /// Classificação para subapuração do IBS na ZFM. Classificação conforme percentuais definidos no art. 450, § 1º, da LC 214/25 para o cálculo do crédito presumido
+ /// 0 - Sem Crédito Presumido>
+ /// 1 - Bens de consumo final (55%)>
+ /// 2 - Bens de capital (75%)>
+ /// 3 - Bens intermediários (90,25%)>
+ /// 4 - Bens de informática e outros definidos em legislação (100%)>
+ ///
+ public enum tpCredPresIBSZFM
+ {
+ [Description("Sem Crédito Presumido")]
+ [XmlEnum("0")]
+ SemCreditoPresumido,
+
+ [Description("Bens de consumo final (55%)")]
+ [XmlEnum("1")]
+ BensDeConsumoFinal,
+
+ [Description("Bens de capital (75%)")]
+ [XmlEnum("2")]
+ BensDeCapital,
+
+ [Description("Bens intermediários (90,25%)")]
+ [XmlEnum("3")]
+ BensIntermediarios,
+
+ [Description("Bens de informática e outros definidos em legislação (100%)")]
+ [XmlEnum("4")]
+ BensDeInformaticaEOutros
+ }
}
\ No newline at end of file
diff --git a/NFe.Classes/Informacoes/Identificacao/Tipos/ideTipos.cs b/NFe.Classes/Informacoes/Identificacao/Tipos/ideTipos.cs
index 1c064f4a1..065164a7e 100644
--- a/NFe.Classes/Informacoes/Identificacao/Tipos/ideTipos.cs
+++ b/NFe.Classes/Informacoes/Identificacao/Tipos/ideTipos.cs
@@ -521,9 +521,10 @@ public enum refMod
/// 2 - Anulação de Crédito por Saídas Imunes/Isentas
/// 3 - Débitos de notas fiscais não processadas na apuração
/// 4 - Multa e juros
- /// 5 - Transferência de crédito de sucessão
+ /// 5 - Transferência de crédito na sucessão
/// 6 - Pagamento antecipado
/// 7 - Perda em estoque
+ /// 8 - Desenquadramento do SN
///
public enum TpNotaDebito
{
@@ -556,9 +557,9 @@ public enum TpNotaDebito
MultaJuros,
///
- /// 05 - Transferência de crédito de sucessão
+ /// 05 - Transferência de crédito na sucessão
///
- [Description("Transferência de crédito de sucessão")]
+ [Description("Transferência de crédito na sucessão")]
[XmlEnum("05")]
TfCreditoSucessao,
@@ -574,27 +575,45 @@ public enum TpNotaDebito
///
[Description("Perda em estoque")]
[XmlEnum("07")]
- PerdaEstoque
+ PerdaEstoque,
+
+ ///
+ /// 08 - Desenquadramento do SN
+ ///
+ [Description("Desenquadramento do SN")]
+ [XmlEnum("08")]
+ DesenquadramentoSn
}
///
/// Tipo de Nota de Crédito
- /// 1 - Multa e juros
- /// 2 - Apropriação de crédito presumido de IBS sobre o saldo devedor na ZFM (art. 450, § 1º, LC 214/25)
+ /// 01 - Multa e juros
+ /// 02 - Apropriação de crédito presumido de IBS sobre o saldo devedor na ZFM (art. 450, § 1º, LC 214/25)
+ /// 03 - Retorno por recusa na entrega ou por não localização do destinatário na tentativa de entrega
+ /// 04 - Redução de valores
+ /// 05 - Transferência de crédito na sucessão;
///
public enum TpNotaCredito
{
[Description("Multa e juros")]
- [XmlEnum("1")]
+ [XmlEnum("01")]
MultaJuros,
[Description("Apropriação de crédito presumido de IBS sobre o saldo devedor na ZFM (art. 450, § 1º, LC 214/25)")]
- [XmlEnum("2")]
+ [XmlEnum("02")]
ApropriacaoDeCredito,
- [Description("Retorno")]
- [XmlEnum("3")]
- Retorno
+ [Description("Retorno por recusa na entrega ou por não localização do destinatário na tentativa de entrega")]
+ [XmlEnum("03")]
+ RetornoPorRecusaOuNaoLocalizacaoDoDestinatario,
+
+ [Description("Redução de valores")]
+ [XmlEnum("04")]
+ ReducaoDeValores,
+
+ [Description("Transferência de crédito na sucessão;")]
+ [XmlEnum("05")]
+ TfCreditoSucessao
}
///
diff --git a/NFe.Classes/Informacoes/Identificacao/ide.cs b/NFe.Classes/Informacoes/Identificacao/ide.cs
index 3f1bbcbff..2e0d77a09 100644
--- a/NFe.Classes/Informacoes/Identificacao/ide.cs
+++ b/NFe.Classes/Informacoes/Identificacao/ide.cs
@@ -151,7 +151,23 @@ public string ProxydhSaiEnt
get { return dhSaiEnt.ParaDataHoraStringUtc(); }
set { dhSaiEnt = DateTimeOffset.Parse(value); }
}
+
+ ///
+ /// B10a - Data da previsão de entrega ou disponibilização do bem.
+ ///
+ [XmlIgnore]
+ public DateTime? dPrevEntrega { get; set; }
+ ///
+ /// Proxy para dPrevEntrega no formato AAAA-MM-DD (somente data)
+ ///
+ [XmlElement(ElementName = "dPrevEntrega")]
+ public string ProxydPrevEntrega
+ {
+ get => dPrevEntrega.ParaDataString();
+ set => dPrevEntrega = DateTime.Parse(value);
+ }
+
///
/// B11 - Tipo do Documento Fiscal
///
diff --git a/NFe.Classes/Informacoes/Total/IbsCbs/IBSCBSTot.cs b/NFe.Classes/Informacoes/Total/IbsCbs/IBSCBSTot.cs
index 766516d5b..40b5c5d9d 100644
--- a/NFe.Classes/Informacoes/Total/IbsCbs/IBSCBSTot.cs
+++ b/NFe.Classes/Informacoes/Total/IbsCbs/IBSCBSTot.cs
@@ -66,5 +66,11 @@ public decimal vBCIBSCBS
/// W57 - Grupo total da Monofasia
///
public gMono gMono { get; set; }
+
+ ///
+ /// W59e - Grupo total do Estorno de Crédito
+ ///
+ [XmlElement("gEstornoCred")]
+ public gEstornoCredTotal gEstornoCred { get; set; }
}
}
\ No newline at end of file
diff --git a/NFe.Classes/Informacoes/Total/IbsCbs/gEstornoCredTotal.cs b/NFe.Classes/Informacoes/Total/IbsCbs/gEstornoCredTotal.cs
new file mode 100644
index 000000000..68a9e9f55
--- /dev/null
+++ b/NFe.Classes/Informacoes/Total/IbsCbs/gEstornoCredTotal.cs
@@ -0,0 +1,59 @@
+/********************************************************************************/
+/* Projeto: Biblioteca ZeusNFe */
+/* Biblioteca C# para emissão de Nota Fiscal Eletrônica - NFe e Nota Fiscal de */
+/* Consumidor Eletrônica - NFC-e (http://www.nfe.fazenda.gov.br) */
+/* */
+/* Direitos Autorais Reservados (c) 2014 Adenilton Batista da Silva */
+/* Zeusdev Tecnologia LTDA ME */
+/* */
+/* Você pode obter a última versão desse arquivo no GitHub */
+/* localizado em https://github.com/adeniltonbs/Zeus.Net.NFe.NFCe */
+/* */
+/* */
+/* Esta biblioteca é software livre; você pode redistribuí-la e/ou modificá-la */
+/* sob os termos da Licença Pública Geral Menor do GNU conforme publicada pela */
+/* Free Software Foundation; tanto a versão 2.1 da Licença, ou (a seu critério) */
+/* qualquer versão posterior. */
+/* */
+/* Esta biblioteca é distribuída na expectativa de que seja útil, porém, SEM */
+/* NENHUMA GARANTIA; nem mesmo a garantia implícita de COMERCIABILIDADE OU */
+/* ADEQUAÇÃO A UMA FINALIDADE ESPECÍFICA. Consulte a Licença Pública Geral Menor*/
+/* do GNU para mais detalhes. (Arquivo LICENÇA.TXT ou LICENSE.TXT) */
+/* */
+/* Você deve ter recebido uma cópia da Licença Pública Geral Menor do GNU junto*/
+/* com esta biblioteca; se não, escreva para a Free Software Foundation, Inc., */
+/* no endereço 59 Temple Street, Suite 330, Boston, MA 02111-1307 USA. */
+/* Você também pode obter uma copia da licença em: */
+/* http://www.opensource.org/licenses/lgpl-license.php */
+/* */
+/* Zeusdev Tecnologia LTDA ME - adenilton@zeusautomacao.com.br */
+/* http://www.zeusautomacao.com.br/ */
+/* Rua Comendador Francisco josé da Cunha, 111 - Itabaiana - SE - 49500-000 */
+/********************************************************************************/
+
+namespace NFe.Classes.Informacoes.Total.IbsCbs
+{
+ public class gEstornoCredTotal
+ {
+ private decimal _vIBSEstCred;
+ private decimal _vCBSEstCred;
+
+ ///
+ /// W59F - Valor total do IBS estornado
+ ///
+ public decimal vIBSEstCred
+ {
+ get => _vIBSEstCred.Arredondar(2);
+ set => _vIBSEstCred = value;
+ }
+
+ ///
+ /// W59G - Valor total do CBS estornado
+ ///
+ public decimal vCBSEstCred
+ {
+ get => _vCBSEstCred.Arredondar(2);
+ set => _vCBSEstCred = value;
+ }
+ }
+}
\ No newline at end of file
diff --git a/NFe.Classes/Servicos/Evento/detEvento.cs b/NFe.Classes/Servicos/Evento/detEvento.cs
index f030c48f9..ac2cfa1d7 100644
--- a/NFe.Classes/Servicos/Evento/detEvento.cs
+++ b/NFe.Classes/Servicos/Evento/detEvento.cs
@@ -366,7 +366,7 @@ public bool ShouldSerializetpAutorizacao()
#region Informação de efetivo pagamento integral para liberar crédito presumido do adquirente
///
- /// P23 - Indicador de efetiva quitação do pagamento integral referente a NFe referenciada
+ /// P23 - Indicador de efetiva quitação do pagamento integral da operação referente a NFe referenciada
///
public IndicadorDeQuitacaoDoPagamento? indQuitacao { get; set; }
@@ -537,6 +537,26 @@ public bool ShouldSerializecMotivo()
#endregion
+ #region Atualização da Data de Previsão de Entrega
+
+ ///
+ /// P23 - Data da previsão de entrega ou disponibilização do bem. Formato: “AAAA-MM-DD”.
+ ///
+ [XmlIgnore]
+ public DateTime? dPrevEntrega { get; set; }
+
+ ///
+ /// Proxy para dPrevEntrega no formato "AAAA-MM-DD" (somente data).
+ ///
+ [XmlElement("dPrevEntrega")]
+ public string ProxydPrevEntrega
+ {
+ get => dPrevEntrega.ParaDataString();
+ set => dPrevEntrega = DateTime.Parse(value);
+ }
+
+ #endregion
+
#endregion
}
}
\ No newline at end of file
diff --git a/NFe.Classes/Servicos/Tipos/NFeServicosTipos.cs b/NFe.Classes/Servicos/Tipos/NFeServicosTipos.cs
index 2940e5bb7..40881ea10 100644
--- a/NFe.Classes/Servicos/Tipos/NFeServicosTipos.cs
+++ b/NFe.Classes/Servicos/Tipos/NFeServicosTipos.cs
@@ -159,12 +159,12 @@ public enum ServicoNFe
ConsultaGtin,
///
- /// Serviço destinado a permitir que o emitente da NFe informe o efetivo pagamento integral a fim de liberar crédito presumido do adquirente
+ /// Serviço destinado a permitir que o emitente da NFe informe o efetivo pagamento integral da operação a fim de liberar crédito presumido do adquirente
///
RecepcaoEventoInformacaoDeEfetivoPagamentoIntegralParaLiberarCreditoPresumidoDoAdquirente,
///
- /// Serviço destinado a evento a ser gerado pelo adquirente em relação às notas fiscais de aquisição de emissão de terceiros e que lhe gerem o direito à apropriação de crédito presumido
+ /// Serviço destinado a evento a ser gerado pelo destinatário da NF-e em relação às notas fiscais de aquisição de emissão de terceiros e que lhe gerem o direito à apropriação de crédito presumido
///
RecepcaoEventoSolicitacaoDeApropriacaoDeCreditoPresumido,
@@ -245,7 +245,12 @@ public enum ServicoNFe
///
/// Serviço para permitir ao fornecedor informar que um pagamento antecipado não teve o respectivo fornecimento realizado
///
- RecepcaoEventoFornecimentoNaoRealizadoComPagamentoAntecipado
+ RecepcaoEventoFornecimentoNaoRealizadoComPagamentoAntecipado,
+
+ ///
+ /// Serviço para permitir ao fornecedor atualizar a data da previsão de entrega ou disponibilização do bem ao adquirente, de forma a remover o débito do mês em que foi previsto inicialmente.
+ ///
+ RecepcaoEventoAtualizacaoDataPrevisaoDeEntrega
}
///
@@ -287,6 +292,7 @@ public enum IndicadorSincronizacao
/// 112110 - Informação de efetivo pagamento integral para liberar crédito presumido do adquirente
/// 112120 - Importação em ALC/ZFM não convertida em isenção
/// 112140 - Fornecimento não realizado com pagamento antecipado
+ /// 112150 - Atualização da Data de Previsão de Entrega
/// 210200 – Confirmação da Operação
/// 210210 – Ciência da Emissão
/// 210220 – Desconhecimento da Operação
@@ -411,6 +417,13 @@ public enum NFeTipoEvento
[XmlEnum("112140")]
TeNfeFornecimentoNaoRealizadoComPagamentoAntecipado = 112140,
+ ///
+ /// 112150 - Atualização da Data de Previsão de Entrega
+ ///
+ [Description("Atualização da Data de Previsão de Entrega")]
+ [XmlEnum("112150")]
+ TeNfeAtualizacaoDaDataDePrevisaoDeEntrega = 112150,
+
///
/// 211110 - Solicitação de Apropriação de crédito presumido
///
diff --git a/NFe.Servicos/ServicoNfeFactory.cs b/NFe.Servicos/ServicoNfeFactory.cs
index 6f121d8ca..b068c4621 100644
--- a/NFe.Servicos/ServicoNfeFactory.cs
+++ b/NFe.Servicos/ServicoNfeFactory.cs
@@ -301,6 +301,7 @@ public static INfeServico CriaWsdlOutros(ServicoNFe servico, ConfiguracaoServico
case ServicoNFe.RecepcaoEventoPerecimentoPerdaRouboOuFurtoDuranteOTransporteContratadoPeloAdquirente:
case ServicoNFe.RecepcaoEventoPerecimentoPerdaRouboOuFurtoDuranteOTransporteContratadoPeloFornecedor:
case ServicoNFe.RecepcaoEventoFornecimentoNaoRealizadoComPagamentoAntecipado:
+ case ServicoNFe.RecepcaoEventoAtualizacaoDataPrevisaoDeEntrega:
return new RecepcaoEvento4(url, certificado, cfg.TimeOut);
}
diff --git a/NFe.Servicos/ServicosNFe.cs b/NFe.Servicos/ServicosNFe.cs
index 87cab5de9..8784da3f6 100644
--- a/NFe.Servicos/ServicosNFe.cs
+++ b/NFe.Servicos/ServicosNFe.cs
@@ -1219,7 +1219,7 @@ public RetornoRecepcaoEvento RecepcaoEventoCancConciliacaoFinanceira(int idlote,
}
///
- /// Serviço para evento informação de efetivo pagamento integral para liberar crédito presumido do adquirente
+ /// Serviço para evento informação de efetivo pagamento integral da operação para liberar crédito presumido do adquirente
///
/// Nº do lote
/// sequencia do evento
@@ -1256,7 +1256,7 @@ public RetornoRecepcaoEvento RecepcaoEventoInformacaoDeEfetivoPagamentoIntegralP
}
///
- /// Serviço para evento informação de efetivo pagamento integral para liberar crédito presumido do adquirente
+ /// Serviço para evento a ser gerado pelo destinatário da NF-e em relação às notas fiscais de aquisição de emissão de terceiros e que lhe gerem o direito à apropriação de crédito presumido.
///
/// Nº do lote
/// sequencia do evento
@@ -1867,6 +1867,43 @@ public RetornoRecepcaoEvento RecepcaoEventoFornecimentoNaoRealizadoComPagamentoA
return retornoRecepcaoEvento;
}
+
+ ///
+ /// Serviço para evento de atualização da data de previsão de entrega
+ ///
+ /// Nº do lote
+ /// sequencia do evento
+ ///
+ ///
+ /// Data prevista para entrega
+ ///
+ ///
+ ///
+ ///
+ public RetornoRecepcaoEvento RecepcaoEventoAtualizacaoDaDataDePrevisaoDeEntrega(int idLote,
+ int sequenciaEvento,
+ string cpfCnpj,
+ string chaveNFe,
+ DateTime dataPrevistaEntrega,
+ Estado? ufAutor = null,
+ string versaoAplicativo = null,
+ DateTimeOffset? dataHoraEvento = null)
+ {
+ const ServicoNFe servicoNfe = ServicoNFe.RecepcaoEventoAtualizacaoDataPrevisaoDeEntrega;
+ const NFeTipoEvento nfeTipoEvento = NFeTipoEvento.TeNfeAtualizacaoDaDataDePrevisaoDeEntrega;
+ var versaoServicoRecepcao = _cFgServico.VersaoRecepcaoEventosDeApuracaoDoIbsECbs;
+ var versaoServicoRecepcaoString = servicoNfe.VersaoServicoParaString(versaoServicoRecepcao);
+
+ var detalhesEvento = ObterDetalhesEvento(versaoServicoRecepcaoString, versaoAplicativo, nfeTipoEvento, ufAutor, TipoAutor.taEmpresaEmitente);
+ detalhesEvento.dPrevEntrega = dataPrevistaEntrega;
+
+ var informacoesEventoEnv = ObterInformacoesEventoEnv(sequenciaEvento, chaveNFe, cpfCnpj, versaoServicoRecepcaoString, cOrgao: Estado.SVRS, dataHoraEvento, nfeTipoEvento, detalhesEvento);
+ var evento = ObterEvento(versaoServicoRecepcaoString, informacoesEventoEnv);
+
+ var retornoRecepcaoEvento = EnviarEObterRetornoRecepcaoEvento(idLote, servicoNfe, versaoServicoRecepcao, deveAssinar: true, evento);
+
+ return retornoRecepcaoEvento;
+ }
private detEvento ObterDetalhesEvento(string versaoServico, string versaoAplicativo, NFeTipoEvento nfeTipoEvento, Estado? cOrgaoAutor, TipoAutor tipoAutor)
{
diff --git a/NFe.Utils/Conversao.cs b/NFe.Utils/Conversao.cs
index 7dc5ea847..5adaad42b 100644
--- a/NFe.Utils/Conversao.cs
+++ b/NFe.Utils/Conversao.cs
@@ -70,7 +70,8 @@ public static string VersaoServicoParaString(this ServicoNFe servicoNFe, VersaoS
|| servicoNFe == ServicoNFe.RecepcaoEventoImportacaoEmAlcZfmNaoConvertidaEmIsencao
|| servicoNFe == ServicoNFe.RecepcaoEventoPerecimentoPerdaRouboOuFurtoDuranteOTransporteContratadoPeloAdquirente
|| servicoNFe == ServicoNFe.RecepcaoEventoPerecimentoPerdaRouboOuFurtoDuranteOTransporteContratadoPeloFornecedor
- || servicoNFe == ServicoNFe.RecepcaoEventoFornecimentoNaoRealizadoComPagamentoAntecipado)
+ || servicoNFe == ServicoNFe.RecepcaoEventoFornecimentoNaoRealizadoComPagamentoAntecipado
+ || servicoNFe == ServicoNFe.RecepcaoEventoAtualizacaoDataPrevisaoDeEntrega)
{
return "1.00";
}
diff --git a/NFe.Utils/Enderecos/Enderecador.cs b/NFe.Utils/Enderecos/Enderecador.cs
index 140de180d..f0c826296 100644
--- a/NFe.Utils/Enderecos/Enderecador.cs
+++ b/NFe.Utils/Enderecos/Enderecador.cs
@@ -1691,7 +1691,8 @@ private static void AdicionarEnderecosDosServicosDosEventosDeApuracaoDoIbsECbs(A
ServicoNFe.RecepcaoEventoImportacaoEmAlcZfmNaoConvertidaEmIsencao,
ServicoNFe.RecepcaoEventoPerecimentoPerdaRouboOuFurtoDuranteOTransporteContratadoPeloAdquirente,
ServicoNFe.RecepcaoEventoPerecimentoPerdaRouboOuFurtoDuranteOTransporteContratadoPeloFornecedor,
- ServicoNFe.RecepcaoEventoFornecimentoNaoRealizadoComPagamentoAntecipado
+ ServicoNFe.RecepcaoEventoFornecimentoNaoRealizadoComPagamentoAntecipado,
+ ServicoNFe.RecepcaoEventoAtualizacaoDataPrevisaoDeEntrega
};
var urlsParaOsServicosDosEventosDeApuracaoDoIbsECbs = new Dictionary
@@ -1789,6 +1790,7 @@ public static void CarregarEnderecos()
case ServicoNFe.RecepcaoEventoPerecimentoPerdaRouboOuFurtoDuranteOTransporteContratadoPeloAdquirente:
case ServicoNFe.RecepcaoEventoPerecimentoPerdaRouboOuFurtoDuranteOTransporteContratadoPeloFornecedor:
case ServicoNFe.RecepcaoEventoFornecimentoNaoRealizadoComPagamentoAntecipado:
+ case ServicoNFe.RecepcaoEventoAtualizacaoDataPrevisaoDeEntrega:
return cfgServico.VersaoRecepcaoEventosDeApuracaoDoIbsECbs;
}
return null;
diff --git a/NFe.Utils/Validacao/Validador.cs b/NFe.Utils/Validacao/Validador.cs
index 1cfa2b7b0..80e25ef92 100644
--- a/NFe.Utils/Validacao/Validador.cs
+++ b/NFe.Utils/Validacao/Validador.cs
@@ -161,6 +161,8 @@ internal static string ObterArquivoSchema(ServicoNFe servicoNFe, VersaoServico v
return "e112130_v1.00.xsd";
case ServicoNFe.RecepcaoEventoFornecimentoNaoRealizadoComPagamentoAntecipado:
return "e112140_v1.00.xsd";
+ case ServicoNFe.RecepcaoEventoAtualizacaoDataPrevisaoDeEntrega:
+ return "e112150_v1.00.xsd";
}
return null;
}