Skip to content

Commit e652e3c

Browse files
joaoroyosilvaclaude
andcommitted
Implementa NT 2026.002 - DANFE Simplificado Tipo 2
Suporte minimo para emissao da NF-e mod 55 com DANFE Simplificado Tipo 2 (Ajuste SINIEF 13/26): - tpImp=6 no enum do leiaute (PL_010_V1.30/leiauteNFe_v4.00.xsd); tpEmis=9 e indPres=4 ja existiam. - cStat 120 (Autorizado o uso da NF-e, com alerta) em storage/cstat.json e na lista de anexo de protocolo (Complements). Diff minimo; contingencia tpEmis=9 do mod 55 e responsabilidade do consumidor (sem alterar Factories/Contingency). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
1 parent 3b44ec9 commit e652e3c

4 files changed

Lines changed: 10 additions & 3 deletions

File tree

CHANGELOG.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ Todas as atualizações a partir de 30/05/2016 devem observar os princípios [Ma
99
## Notas da versão:
1010
Esta release quebra a compatibilidade com as versões anteriores e contêm várias mudanças em relação a forma de configuração e uso.
1111
### Added
12-
- Nothing
12+
- NT 2026.002 (DANFE Simplificado Tipo 2): tpImp=6 no leiaute (PL_010_V1.30), cStat 120 (autorizado com alerta) em storage/cstat.json e na lista de protocolo de Complements.
1313

1414
### Deprecated
1515
- Nothing

schemes/PL_010_V1.30/leiauteNFe_v4.00.xsd

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -138,7 +138,7 @@ Campo preenchido somente quando “indPres = 5 (Operação presencial, fora do e
138138
<xs:element name="tpImp">
139139
<xs:annotation>
140140
<xs:documentation>Formato de impressão do DANFE (0-sem DANFE;1-DANFe Retrato; 2-DANFe Paisagem;3-DANFe Simplificado;
141-
4-DANFe NFC-e;5-DANFe NFC-e em mensagem eletrônica)</xs:documentation>
141+
4-DANFe NFC-e;5-DANFe NFC-e em mensagem eletrônica;6-DANFe Simplificado Tipo 2 (NT 2026.002, Ajuste SINIEF 13/26))</xs:documentation>
142142
</xs:annotation>
143143
<xs:simpleType>
144144
<xs:restriction base="xs:string">
@@ -149,6 +149,7 @@ Campo preenchido somente quando “indPres = 5 (Operação presencial, fora do e
149149
<xs:enumeration value="3"/>
150150
<xs:enumeration value="4"/>
151151
<xs:enumeration value="5"/>
152+
<xs:enumeration value="6"/>
152153
</xs:restriction>
153154
</xs:simpleType>
154155
</xs:element>

src/Complements.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -258,7 +258,8 @@ protected static function addNFeProtocol(string $request, string $response): str
258258
//301 Uso denegado por irregularidade fiscal do emitente
259259
//302 Uso denegado por irregularidade fiscal do destinatário
260260
//303 Uso Denegado Destinatario nao habilitado a operar na UF
261-
$cstatpermit = ['100', '150', '110', '205', '301', '302', '303'];
261+
//120 Autorizado o uso da NF-e, com alerta (NT 2026.002)
262+
$cstatpermit = ['100', '150', '120', '110', '205', '301', '302', '303'];
262263
if (!in_array($cStat, $cstatpermit)) {
263264
throw DocumentsException::wrongDocument(4, "[$cStat] $xMotivo");
264265
}

storage/cstat.json

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,11 @@
7373
"msg": "SVC-RS desabilitada pela SEFAZ de Origem",
7474
"status": "0",
7575
"correct": "Conting\u00eancia indispon\u00edvel"
76+
}, {
77+
"cod": "120",
78+
"msg": "Autorizado o uso da NF-e, com alerta",
79+
"status": "1",
80+
"correct": ""
7681
}, {
7782
"cod": "124",
7883
"msg": "EPEC Autorizado",

0 commit comments

Comments
 (0)