-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathdps_doc.xml
More file actions
167 lines (139 loc) · 6.22 KB
/
dps_doc.xml
File metadata and controls
167 lines (139 loc) · 6.22 KB
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
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
<?xml version="1.0" encoding="UTF-8"?>
<!--
DPS (Declaração de Prestação de Serviço) — EXEMPLO DOCUMENTACIONAL / HOMOLOGAÇÃO
Município: Joinville/SC (IBGE 4209102)
Serviço: Desenvolvimento de software
Ideia do fluxo:
1) Você ENVIA a DPS (este XML) para recepção.
2) O Ambiente Nacional valida e, se aprovar, GERA a NFS-e.
3) Na NFS-e autorizada (XML diferente), aparecem os valores calculados como vBC e vISSQN.
Observações importantes deste exemplo:
- Mantemos o namespace oficial do Ambiente Nacional.
- Incluímos tanto o atributo Id quanto a tag <id> (mesmo valor).
- Em tribMun na DPS, você informa REGRAS (incidência, retenção, alíquota),
mas NÃO envia vISSQN e NÃO envia base de cálculo (isso vem na NFS-e).
-->
<DPS xmlns="http://www.sped.fazenda.gov.br/nfse" versao="1.00">
<!--
infDPS: bloco principal da DPS.
O atributo Id é case-sensitive e costuma ser usado na assinatura digital (URI="#...").
Regra: não use id="..." minúsculo aqui; use apenas Id="...".
-->
<infDPS Id="DPS420910228318834200010400900000000000000001">
<!--
id (tag): identificador do documento no conteúdo.
Regra comum: deve ser igual ao atributo Id.
Regra de negócio: geralmente composto por "DPS" + cLocEmi + tipoInscrição + inscrição + série + nDPS (com padding).
-->
<!-- <id>DPS420910228318834200010400900000000000000001</id> -->
<!-- tpAmb: 1=Produção | 2=Homologação -->
<tpAmb>2</tpAmb>
<!-- dhEmi: data/hora de emissão (ISO 8601). "Z" = UTC -->
<dhEmi>2026-02-14T00:37:00-03:00</dhEmi>
<!-- verAplic: identificação do sistema emissor -->
<verAplic>invoiceflow-1.0</verAplic>
<!--
serie: série do documento (faixa e formato dependem do manual).
Aqui: 00900 (5 dígitos).
-->
<serie>00900</serie>
<!--
nDPS: número da DPS (sequencial por série/emitente).
Observação: no Id geralmente vai com 15 dígitos (padding), mas o campo em si pode aceitar "1".
-->
<nDPS>1</nDPS>
<!-- dCompet: data de competência do serviço -->
<dCompet>2026-02-14</dCompet>
<!-- tpEmit: tipo de emissão (enum do manual; aqui usamos 1 como no seu teste) -->
<tpEmit>1</tpEmit>
<!-- cLocEmi: município de emissão (IBGE). Joinville/SC = 4209102 -->
<cLocEmi>4209102</cLocEmi>
<!-- =========================
PRESTADOR (quem presta)
========================= -->
<prest>
<!-- CNPJ do prestador -->
<CNPJ>83188342000104</CNPJ>
<!-- Regime tributário do prestador (enums do manual) -->
<regTrib>
<!-- opSimpNac: optante do Simples Nacional (ex.: 1=Sim, 2=Não — confirme no seu manual) -->
<opSimpNac>1</opSimpNac>
<!-- regEspTrib: regime especial (0 quando não aplicável) -->
<regEspTrib>0</regEspTrib>
</regTrib>
</prest>
<!-- ======================
TOMADOR (quem contrata)
====================== -->
<toma>
<!-- Identificação do tomador (CPF ou CNPJ; aqui CNPJ) -->
<CNPJ>18452135000153</CNPJ>
<!-- Razão social / nome -->
<xNome>H2T COMERCIO DE PRODUTOS E EQUIPAMENTOS LTDA - ME</xNome>
<!--
Observação: alguns fluxos exigem endereço/contato do tomador.
Só inclua se o XSD/município exigir, para manter o “teste simples”.
-->
</toma>
<!-- ==================
SERVIÇO PRESTADO
================== -->
<serv>
<!-- Local da prestação -->
<locPrest>
<!-- Município IBGE onde o serviço é considerado prestado -->
<cLocPrestacao>4209102</cLocPrestacao>
</locPrest>
<cServ>
<!-- Código de tributação nacional (tabela do Ambiente Nacional) -->
<cTribNac>010701</cTribNac>
<!-- Descrição do serviço (texto livre; descreva bem o que foi feito e período) -->
<xDescServ>2 (DOIS) USUARIOS DEMANDER.</xDescServ>
</cServ>
</serv>
<!-- ==========
VALORES
========== -->
<valores>
<!-- Valor do serviço prestado -->
<vServPrest>
<vServ>130.00</vServ>
</vServPrest>
<!--
trib: regras tributárias declaradas na DPS.
IMPORTANTE: Na DPS você declara as regras (incidência, retenção, alíquota),
mas NÃO manda o valor calculado do imposto (vISSQN) nem base (vBC/vCalc).
Esses valores aparecem na NFS-e autorizada.
-->
<trib>
<tribMun>
<!-- tribISSQN: indica incidência de ISS (enum do manual; aqui "1") -->
<tribISSQN>1</tribISSQN>
<!-- tpRetISSQN: retenção do ISS (enum do manual; aqui "1" conforme seu cenário) -->
<tpRetISSQN>1</tpRetISSQN>
<!-- pAliq: alíquota (quando aplicável) -->
<!-- <pAliq>2.00</pAliq> -->
<!--
NÃO INCLUIR na DPS (em geral):
<vCalc>...</vCalc> (não previsto no seu leiaute para este ponto)
<vISSQN>...</vISSQN> (valor calculado — aparece na NFS-e, não na DPS)
-->
</tribMun>
<!-- Transparência de tributos (totais estimados). Se não usar, mantém 0.00 -->
<totTrib>
<vTotTrib>
<vTotTribFed>0.00</vTotTribFed>
<vTotTribEst>0.00</vTotTribEst>
<!-- Aqui você pode manter estimativa municipal (ex.: o ISS estimado) se o manual permitir -->
<vTotTribMun>2.60</vTotTribMun>
</vTotTrib>
<!-- <pTotTrib>
<pTotTribFed>0.00</pTotTribFed>
<pTotTribEst>0.00</pTotTribEst>
<pTotTribMun>2.00</pTotTribMun>
</pTotTrib> -->
</totTrib>
</trib>
</valores>
</infDPS>
</DPS>