Quando for emitido um CT-e (modelo 57) com o Tipo do CT-e (campo: tpCTe) igual de '0' - Normal ou '3' - Substituição e o Tipo de Serviço (campo: tpServ) for igual a '1' - Subcontratação ou '2' - Redespacho ou '3' - Redespacho Intermediário, mas NÃO for informado o Grupo de Documentos Anteriores (campo: docAnt), haverá a rejeição pelo motivo 521 - Os documentos de transporte anterior devem ser informados para os tipos de serviço Subcontratação, Redespacho e Redespacho Intermediário.
Exceções e Observações
Para esta regra de validação não há exceção.
Regra de Validação da Sefaz

Exemplo
No exemplo abaixo, foi emitido um CT-e com Tipo do CT-e (campo: tpCTe) igual de '0' - Normal e com o Tipo de Serviço (campo: tpServ) igual a '3' - Redespacho Intermediário, mas NÃO for informado o Grupo de Documentos Anteriores (campo: docAnt) . Nessa situação o CT-e foi rejeitado pelo motivo 521.
Trecho do XML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
|
< infCte Id = "CTe33200707385111000102575010000008271708297287" versao = "3.00" >
< ide >
< cUF >33</ cUF >
< cCT >70829728</ cCT >
< CFOP >6932</ CFOP >
< natOp >TRANSPORTE RODOVIARIO</ natOp >
< mod >57</ mod >
< serie >501</ serie >
< nCT >827</ nCT >
< dhEmi >2020-07-22T13:53:00-03:00</ dhEmi >
< tpImp >1</ tpImp >
< tpEmis >1</ tpEmis >
< cDV >7</ cDV >
< tpAmb >2</ tpAmb >
<!-- Tipo do CT-e -->
< tpCTe >0</ tpCTe >
< procEmi >0</ procEmi >
< verProc >Oobj-DFe</ verProc >
< cMunEnv >3304557</ cMunEnv >
< xMunEnv >Rio de Janeiro</ xMunEnv >
< UFEnv >RJ</ UFEnv >
< modal >01</ modal >
<!-- Tipo de Serviço -->
< tpServ >3</ tpServ >
< cMunIni >2307650</ cMunIni >
< xMunIni >MARACANAU</ xMunIni >
< UFIni >CE</ UFIni >
< cMunFim >1508050</ cMunFim >
< xMunFim >TRAIRAO</ xMunFim >
< UFFim >PA</ UFFim >
< retira >1</ retira >
< indIEToma >1</ indIEToma >
< toma3 >
< toma >0</ toma >
</ toma3 >
</ ide >
[...]
< infCTeNorm >
< infCarga >
< vCarga >1000.09</ vCarga >
< proPred >TESTE DE PRODUTO</ proPred >
< infQ >
< cUnid >03</ cUnid >
< tpMed >PESO BRUTO</ tpMed >
< qCarga >10.0000</ qCarga >
</ infQ >
</ infCarga >
< infModal versaoModal = "3.00" >
[...]
</ infModal >
</ infCTeNorm >
</ infCte >
|
Como resolver?
Para resolver o exemplo, basta informar o Grupo de Documentos Anteriores (campo: docAnt).
É importante se atentar que o campo docAnt é um grupo de informações composto por vários subcampos.
Abaixo exemplo de XML com a correção:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
|
< infCte Id = "CTe33200707385111000102575010000008271708297287" versao = "3.00" >
< ide >
< cUF >33</ cUF >
< cCT >70829728</ cCT >
< CFOP >6932</ CFOP >
< natOp >TRANSPORTE RODOVIARIO</ natOp >
< mod >57</ mod >
< serie >501</ serie >
< nCT >827</ nCT >
< dhEmi >2020-07-22T13:53:00-03:00</ dhEmi >
< tpImp >1</ tpImp >
< tpEmis >1</ tpEmis >
< cDV >7</ cDV >
< tpAmb >2</ tpAmb >
<!-- Tipo do CT-e -->
< tpCTe >0</ tpCTe >
< procEmi >0</ procEmi >
< verProc >Oobj-DFe</ verProc >
< cMunEnv >3304557</ cMunEnv >
< xMunEnv >Rio de Janeiro</ xMunEnv >
< UFEnv >RJ</ UFEnv >
< modal >01</ modal >
<!-- Tipo de Serviço -->
< tpServ >3</ tpServ >
< cMunIni >2307650</ cMunIni >
< xMunIni >MARACANAU</ xMunIni >
< UFIni >CE</ UFIni >
< cMunFim >1508050</ cMunFim >
< xMunFim >TRAIRAO</ xMunFim >
< UFFim >PA</ UFFim >
< retira >1</ retira >
< indIEToma >1</ indIEToma >
< toma3 >
< toma >0</ toma >
</ toma3 >
</ ide >
[...]
< infCTeNorm >
< infCarga >
< vCarga >1000.09</ vCarga >
< proPred >TESTE DE PRODUTO</ proPred >
< infQ >
< cUnid >03</ cUnid >
< tpMed >PESO BRUTO</ tpMed >
< qCarga >10.0000</ qCarga >
</ infQ >
</ infCarga >
<!-- Grupo de Documentos Anteriores -->
< docAnt >
< emiDocAnt >
< CNPJ >07385111000102</ CNPJ >
< xNome >CT-E EMITIDO EM AMBIENTE DE HOMOLOGACAO - SEM VALOR FISCAL</ xNome >
< idDocAnt >
< idDocAntPap >
< tpDoc >07</ tpDoc >
< serie >72</ serie >
< nDoc >48</ nDoc >
< dEmi >2013-12-13</ dEmi >
</ idDocAntPap >
</ idDocAnt >
</ emiDocAnt >
</ docAnt >
< infModal versaoModal = "3.00" >
[...]
</ infModal >
</ infCTeNorm >
</ infCte >
|