@alexssmusica/node-pdf-nfe 1.0.51 → 1.0.52
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +310 -310
- package/lib/application/helpers/generate-pdf/nfe/cria-layout.d.ts +1 -1
- package/lib/application/helpers/generate-pdf/nfe/cria-layout.js +61 -365
- package/lib/application/helpers/generate-pdf/nfe/cria-layout.js.map +1 -1
- package/lib/application/helpers/generate-pdf/nfe/default.d.ts +2 -1
- package/lib/application/helpers/generate-pdf/nfe/default.js +4 -3
- package/lib/application/helpers/generate-pdf/nfe/default.js.map +1 -1
- package/lib/application/helpers/generate-pdf/nfe/gerar-itens.d.ts +1 -1
- package/lib/application/helpers/generate-pdf/nfe/gerar-itens.js +27 -27
- package/lib/application/helpers/generate-pdf/nfe/gerar-itens.js.map +1 -1
- package/lib/application/helpers/generate-pdf/nfe/get-dados-adicionais.d.ts +2 -0
- package/lib/application/helpers/generate-pdf/nfe/get-dados-adicionais.js +24 -0
- package/lib/application/helpers/generate-pdf/nfe/get-dados-adicionais.js.map +1 -0
- package/lib/application/helpers/generate-pdf/nfe/get-dados-emitente.d.ts +2 -0
- package/lib/application/helpers/generate-pdf/nfe/get-dados-emitente.js +82 -0
- package/lib/application/helpers/generate-pdf/nfe/get-dados-emitente.js.map +1 -0
- package/lib/application/helpers/generate-pdf/nfe/get-destinatario-remetente.d.ts +2 -0
- package/lib/application/helpers/generate-pdf/nfe/get-destinatario-remetente.js +52 -0
- package/lib/application/helpers/generate-pdf/nfe/get-destinatario-remetente.js.map +1 -0
- package/lib/application/helpers/generate-pdf/nfe/get-fatura-duplicata.d.ts +2 -0
- package/lib/application/helpers/generate-pdf/nfe/get-fatura-duplicata.js +42 -0
- package/lib/application/helpers/generate-pdf/nfe/get-fatura-duplicata.js.map +1 -0
- package/lib/application/helpers/generate-pdf/nfe/get-homologacao.d.ts +2 -0
- package/lib/application/helpers/generate-pdf/nfe/get-homologacao.js +25 -0
- package/lib/application/helpers/generate-pdf/nfe/get-homologacao.js.map +1 -0
- package/lib/application/helpers/generate-pdf/nfe/get-imposto.d.ts +2 -0
- package/lib/application/helpers/generate-pdf/nfe/get-imposto.js +54 -0
- package/lib/application/helpers/generate-pdf/nfe/get-imposto.js.map +1 -0
- package/lib/application/helpers/generate-pdf/nfe/get-iss.d.ts +2 -0
- package/lib/application/helpers/generate-pdf/nfe/get-iss.js +33 -0
- package/lib/application/helpers/generate-pdf/nfe/get-iss.js.map +1 -0
- package/lib/application/helpers/generate-pdf/nfe/get-menu-itens.d.ts +2 -0
- package/lib/application/helpers/generate-pdf/nfe/get-menu-itens.js +46 -0
- package/lib/application/helpers/generate-pdf/nfe/get-menu-itens.js.map +1 -0
- package/lib/application/helpers/generate-pdf/nfe/get-recibo.d.ts +2 -0
- package/lib/application/helpers/generate-pdf/nfe/get-recibo.js +55 -0
- package/lib/application/helpers/generate-pdf/nfe/get-recibo.js.map +1 -0
- package/lib/application/helpers/generate-pdf/nfe/get-transporte.d.ts +2 -0
- package/lib/application/helpers/generate-pdf/nfe/get-transporte.js +84 -0
- package/lib/application/helpers/generate-pdf/nfe/get-transporte.js.map +1 -0
- package/lib/application/helpers/generate-pdf/nfe/linha-horizontal-tracejada.js +1 -1
- package/lib/application/helpers/generate-pdf/nfe/options-doc.js.map +1 -1
- package/lib/application/helpers/xsd/consReciNFe_v4.00.xsd +9 -9
- package/lib/application/helpers/xsd/consSitNFe_v4.00.xsd +9 -9
- package/lib/application/helpers/xsd/consStatServ_v4.00.xsd +9 -9
- package/lib/application/helpers/xsd/enviNFe_v4.00.xsd +9 -9
- package/lib/application/helpers/xsd/inutNFe_v4.00.xsd +9 -9
- package/lib/application/helpers/xsd/leiauteConsSitNFe_v4.00.xsd +503 -503
- package/lib/application/helpers/xsd/leiauteConsStatServ_v4.00.xsd +98 -98
- package/lib/application/helpers/xsd/leiauteInutNFe_v4.00.xsd +193 -193
- package/lib/application/helpers/xsd/nfe_v4.00.xsd +9 -9
- package/lib/application/helpers/xsd/procInutNFe_v4.00.xsd +9 -9
- package/lib/application/helpers/xsd/procNFe_v4.00.xsd +9 -9
- package/lib/application/helpers/xsd/retConsReciNFe_v4.00.xsd +9 -9
- package/lib/application/helpers/xsd/retConsSitNFe_v4.00.xsd +9 -9
- package/lib/application/helpers/xsd/retConsStatServ_v4.00.xsd +9 -9
- package/lib/application/helpers/xsd/retEnviNFe_v4.00.xsd +9 -9
- package/lib/application/helpers/xsd/retInutNFe_v4.00.xsd +9 -9
- package/lib/application/helpers/xsd/tiposBasico_v4.00.xsd +589 -589
- package/lib/domain/contracts/repos/generate-pdf.d.ts +126 -1
- package/lib/domain/contracts/repos/nfe-proc.d.ts +2 -1
- package/lib/domain/use-cases/pdf/index.js +11 -7
- package/lib/domain/use-cases/pdf/index.js.map +1 -1
- package/lib/domain/use-cases/pdf/pdf-NFCe.js +4 -4
- package/lib/domain/use-cases/pdf/pdf-NFe.js +3 -5
- package/lib/domain/use-cases/pdf/pdf-NFe.js.map +1 -1
- package/lib/testes/pdf/pdf.js +6 -2
- package/lib/testes/pdf/pdf.js.map +1 -1
- package/lib/tsconfig-build.tsbuildinfo +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,310 +1,310 @@
|
|
|
1
|
-
# node-dfe
|
|
2
|
-
Biblioteca para geração/integração de NF-e/NFC-e em aplicações node.js
|
|
3
|
-
|
|
4
|
-
## Instalação
|
|
5
|
-
basta instalar através do comando
|
|
6
|
-
```npm install node-nfe-fce```
|
|
7
|
-
```yarn add node-nfe-fce```
|
|
8
|
-
|
|
9
|
-
## Requisitos
|
|
10
|
-
```Somente Certificado A1 é aceito```
|
|
11
|
-
```Ter instalado o JAVA pois percisa para fazer a validacao XSD```
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
## Exemplo
|
|
16
|
-
```javascript
|
|
17
|
-
import {carregaCertificado, statusServico, emitir, cancelar, inutilizar, cartaCorrecao, gerarPDF} from 'node-nfe-nfce'
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
const keypem = carregaCertificado({ path: env.CERTIFICATE_PATH, password: env.CERTIFICATE_PASSWORD })
|
|
21
|
-
const cert = {
|
|
22
|
-
pfx: fs.readFileSync(env.CERTIFICATE_PATH),
|
|
23
|
-
pem: keypem.pem,
|
|
24
|
-
key: keypem.key,
|
|
25
|
-
password: env.CERTIFICATE_PASSWORD
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
const emit: TNFeInfNFeEmit = {
|
|
29
|
-
CNPJ: '00000000000000',
|
|
30
|
-
xNome: 'NOME DA EMPRESA',
|
|
31
|
-
xFant: 'NOME FANSASIA DA EMPRESA',
|
|
32
|
-
enderEmit: {
|
|
33
|
-
xLgr: 'Rua Teste',
|
|
34
|
-
nro: '123',
|
|
35
|
-
xCpl: undefined,
|
|
36
|
-
xBairro: 'Bairro Teste',
|
|
37
|
-
cMun: '3504602',
|
|
38
|
-
xMun: 'BADY BASSITT',
|
|
39
|
-
UF: 'SP',
|
|
40
|
-
CEP: '15115000',
|
|
41
|
-
cPais: '1058',
|
|
42
|
-
xPais: 'BRASIL',
|
|
43
|
-
fone: undefined
|
|
44
|
-
},
|
|
45
|
-
IE: '195000888999',
|
|
46
|
-
IM: '000888999',
|
|
47
|
-
CRT: '1',
|
|
48
|
-
iEST: undefined,
|
|
49
|
-
CNAE: undefined
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
const empresa: Empresa = {
|
|
53
|
-
certificado: cert,
|
|
54
|
-
idCSC: env.DADOS_ID_CSC,
|
|
55
|
-
CSC: env.DADOS_CSC
|
|
56
|
-
}
|
|
57
|
-
|
|
58
|
-
const configuracoes = {
|
|
59
|
-
empresa: {
|
|
60
|
-
pem: cert.pem,
|
|
61
|
-
key: cert.key,
|
|
62
|
-
password: 'SUA SENHA',
|
|
63
|
-
idCSC: 'SEU_ID_CSC',
|
|
64
|
-
CSC: 'SEU CSC'
|
|
65
|
-
},
|
|
66
|
-
geral: {
|
|
67
|
-
versao: '4.00',
|
|
68
|
-
ambiente: '2',
|
|
69
|
-
modelo: '55'
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
const dest: TNFeInfNFeDest = {
|
|
74
|
-
idEstrangeiro: undefined,
|
|
75
|
-
CNPJ: undefined,
|
|
76
|
-
CPF: '00000000000',
|
|
77
|
-
xNome: 'DESTINATARIO TESTE',
|
|
78
|
-
enderDest: {
|
|
79
|
-
xLgr: 'RUA DOS PALMARES',
|
|
80
|
-
nro: '1231',
|
|
81
|
-
xCpl: 'casa 5',
|
|
82
|
-
xBairro: 'NOME DO BAIRRO',
|
|
83
|
-
cMun: '4303103',
|
|
84
|
-
xMun: 'CACHOEIRINHA',
|
|
85
|
-
UF: 'RS',
|
|
86
|
-
CEP: '15025120'
|
|
87
|
-
},
|
|
88
|
-
indIEDest: '9',
|
|
89
|
-
email: 'test@test.com'
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
const transp: TNFeInfNFeTransp = {
|
|
93
|
-
modFrete: '9'
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
-
const infAdic: TNFeInfNFeInfAdic = {
|
|
97
|
-
infCpl: 'INFORMACAO COMPLEMENTAR FEITA PARA APARECER NA NFE/NFCE',
|
|
98
|
-
infAdFisco: undefined,
|
|
99
|
-
obsCont: [],
|
|
100
|
-
obsFisco: [],
|
|
101
|
-
procRef: []
|
|
102
|
-
}
|
|
103
|
-
|
|
104
|
-
const det_list: TNFeInfNFeDet[] = []
|
|
105
|
-
const valorProduto = 31.80
|
|
106
|
-
let valorTotalProdutos = 0
|
|
107
|
-
for (let i = 1; i <= 1; i++) {
|
|
108
|
-
valorTotalProdutos += valorProduto
|
|
109
|
-
det_list.push({
|
|
110
|
-
$: { nItem: String(i) },
|
|
111
|
-
prod: {
|
|
112
|
-
cProd: '84233',
|
|
113
|
-
cEAN: '7898221456293',
|
|
114
|
-
xProd: 'PRODUTO TESTE',
|
|
115
|
-
NCM: '85164000',
|
|
116
|
-
CEST: undefined,
|
|
117
|
-
cNPJFab: undefined,
|
|
118
|
-
cBenef: undefined,
|
|
119
|
-
eXTIPI: undefined,
|
|
120
|
-
CFOP: '5102',
|
|
121
|
-
uCom: 'SAC',
|
|
122
|
-
qCom: '1.0000',
|
|
123
|
-
vUnCom: valorProduto.toFixed(2),
|
|
124
|
-
vProd: valorProduto.toFixed(2),
|
|
125
|
-
cEANTrib: '7898221456293',
|
|
126
|
-
uTrib: 'SAC',
|
|
127
|
-
qTrib: '1.0000',
|
|
128
|
-
vUnTrib: valorProduto.toFixed(2),
|
|
129
|
-
vFrete: '',
|
|
130
|
-
vSeg: '',
|
|
131
|
-
vDesc: '',
|
|
132
|
-
vOutro: '',
|
|
133
|
-
indTot: '1',
|
|
134
|
-
xPed: '',
|
|
135
|
-
nItemPed: ''
|
|
136
|
-
},
|
|
137
|
-
imposto: {
|
|
138
|
-
vTotTrib: 0,
|
|
139
|
-
ICMS: {
|
|
140
|
-
ICMSSN102: {
|
|
141
|
-
orig: '0',
|
|
142
|
-
CSOSN: '102'
|
|
143
|
-
}
|
|
144
|
-
},
|
|
145
|
-
PIS: {
|
|
146
|
-
PISOutr: {
|
|
147
|
-
CST: '99',
|
|
148
|
-
vBC: 0,
|
|
149
|
-
pPIS: 0,
|
|
150
|
-
vPIS: 0
|
|
151
|
-
}
|
|
152
|
-
},
|
|
153
|
-
COFINS: {
|
|
154
|
-
COFINSOutr: {
|
|
155
|
-
CST: '99',
|
|
156
|
-
vBC: 0,
|
|
157
|
-
pCOFINS: 0,
|
|
158
|
-
vCOFINS: 0
|
|
159
|
-
}
|
|
160
|
-
}
|
|
161
|
-
}
|
|
162
|
-
})
|
|
163
|
-
}
|
|
164
|
-
|
|
165
|
-
const detPag: TNFeInfNFePagDetPag[] = []
|
|
166
|
-
const pagItem: TNFeInfNFePagDetPag = {
|
|
167
|
-
indPag: '0',
|
|
168
|
-
tPag: '01',
|
|
169
|
-
vPag: valorTotalProdutos.toFixed(2),
|
|
170
|
-
xPag: undefined,
|
|
171
|
-
card: undefined
|
|
172
|
-
}
|
|
173
|
-
detPag.push(pagItem)
|
|
174
|
-
|
|
175
|
-
const pag: TNFeInfNFePag = {
|
|
176
|
-
detPag,
|
|
177
|
-
vTroco: '0'
|
|
178
|
-
}
|
|
179
|
-
|
|
180
|
-
const ICMSTot: TNFeInfNFeTotalICMSTot = {
|
|
181
|
-
vBC: '0.00',
|
|
182
|
-
vICMS: '0.00',
|
|
183
|
-
vICMSDeson: '0.00',
|
|
184
|
-
vFCP: '0.00',
|
|
185
|
-
vBCST: '0.00',
|
|
186
|
-
vST: '0.00',
|
|
187
|
-
vFCPST: '0.00',
|
|
188
|
-
vFCPSTRet: '0.00',
|
|
189
|
-
vProd: valorTotalProdutos.toFixed(2),
|
|
190
|
-
vFrete: '0.00',
|
|
191
|
-
vSeg: '0.00',
|
|
192
|
-
vDesc: '0.00',
|
|
193
|
-
vII: '0.00',
|
|
194
|
-
vIPI: '0.00',
|
|
195
|
-
vIPIDevol: '0.00',
|
|
196
|
-
vPIS: '0.00',
|
|
197
|
-
vCOFINS: '0.00',
|
|
198
|
-
vOutro: '0.00',
|
|
199
|
-
vNF: valorTotalProdutos.toFixed(2)
|
|
200
|
-
}
|
|
201
|
-
|
|
202
|
-
const ide: IdeInput = {
|
|
203
|
-
cUF: '35',
|
|
204
|
-
natOp: 'VENDA',
|
|
205
|
-
mod: '55',
|
|
206
|
-
serie: '1',
|
|
207
|
-
nNF: '16',
|
|
208
|
-
dhEmi: '',
|
|
209
|
-
tpNF: '1',
|
|
210
|
-
idDest: '1',
|
|
211
|
-
cMunFG: '3504602',
|
|
212
|
-
tpImp: '1',
|
|
213
|
-
tpEmis: '1',
|
|
214
|
-
tpAmb: '2',
|
|
215
|
-
finNFe: '1',
|
|
216
|
-
indFinal: '1',
|
|
217
|
-
indPres: '1',
|
|
218
|
-
procEmi: '0',
|
|
219
|
-
verProc: 'NODE-NFE TEST 1.0',
|
|
220
|
-
}
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
const pag: TNFeInfNFePag = {
|
|
224
|
-
detPag,
|
|
225
|
-
vTroco: '0'
|
|
226
|
-
}
|
|
227
|
-
|
|
228
|
-
const ICMSTot: TNFeInfNFeTotalICMSTot = {
|
|
229
|
-
vBC: '0.00',
|
|
230
|
-
vICMS: '0.00',
|
|
231
|
-
vICMSDeson: '0.00',
|
|
232
|
-
vFCP: '0.00',
|
|
233
|
-
vBCST: '0.00',
|
|
234
|
-
vST: '0.00',
|
|
235
|
-
vFCPST: '0.00',
|
|
236
|
-
vFCPSTRet: '0.00',
|
|
237
|
-
vProd: valorTotalProdutos.toFixed(2),
|
|
238
|
-
vFrete: '0.00',
|
|
239
|
-
vSeg: '0.00',
|
|
240
|
-
vDesc: '0.00',
|
|
241
|
-
vII: '0.00',
|
|
242
|
-
vIPI: '0.00',
|
|
243
|
-
vIPIDevol: '0.00',
|
|
244
|
-
vPIS: '0.00',
|
|
245
|
-
vCOFINS: '0.00',
|
|
246
|
-
vOutro: '0.00',
|
|
247
|
-
vNF: valorTotalProdutos.toFixed(2)
|
|
248
|
-
}
|
|
249
|
-
|
|
250
|
-
const nfe: NFeBase = {
|
|
251
|
-
ide,
|
|
252
|
-
emit,
|
|
253
|
-
dest,
|
|
254
|
-
det_list,
|
|
255
|
-
total: { ICMSTot },
|
|
256
|
-
transp,
|
|
257
|
-
pag,
|
|
258
|
-
infAdic
|
|
259
|
-
}
|
|
260
|
-
|
|
261
|
-
const result = await emitir({ documento: nfe, configuracoes })
|
|
262
|
-
const response = inspect(result, false, null)
|
|
263
|
-
console.log('Resultado: \n\n' + response)
|
|
264
|
-
|
|
265
|
-
const result = await cancelar({
|
|
266
|
-
chNFe: '35230400000000000000550010000000071458222950',
|
|
267
|
-
nProt: '135230009995798',
|
|
268
|
-
xJust: 'TESTE DE CANCELAMENTO',
|
|
269
|
-
configuracoes
|
|
270
|
-
})
|
|
271
|
-
const response = inspect(result, false, null)
|
|
272
|
-
console.log('Resultado: \n\n' + response)
|
|
273
|
-
|
|
274
|
-
const result = await cartaCorrecao({
|
|
275
|
-
chNFe: '35230400000000000000550010000000071458222950',
|
|
276
|
-
nProt: '135230009999798',
|
|
277
|
-
xCorrecao: 'TESTE DE CARTA DE CORRECAO EM HOMOLOCAO',
|
|
278
|
-
configuracoes
|
|
279
|
-
})
|
|
280
|
-
const response = inspect(result, false, null)
|
|
281
|
-
console.log('Resultado Carta Correção NFC-e: \n\n' + response)
|
|
282
|
-
|
|
283
|
-
const dados: Inutilizar = {
|
|
284
|
-
ano: 2023,
|
|
285
|
-
modelo: '55',
|
|
286
|
-
numeroInicial: 5,
|
|
287
|
-
numeroFinal: 5,
|
|
288
|
-
serie: 1,
|
|
289
|
-
xJustificativa: 'HOMOLOGACAO TESTE',
|
|
290
|
-
cUf: '35',
|
|
291
|
-
cnpj: '00000000000000'
|
|
292
|
-
}
|
|
293
|
-
const result = await inutilizar({ configuracao, dados })
|
|
294
|
-
console.log(result)
|
|
295
|
-
|
|
296
|
-
const result = await statusServico(configuracoes, '35')
|
|
297
|
-
const response = inspect(result, false, null)
|
|
298
|
-
console.log('Status: \n\n' + response)
|
|
299
|
-
```
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
## STATUS
|
|
303
|
-
Ainda estou organizando a biblioteca, fiz testes NFE/NFCE no estado de SP e tudo deu certo.
|
|
304
|
-
|
|
305
|
-
## O que acha de colaborar financeiramente com este projeto?
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
<a href='https://ko-fi.com/rodrigomarquigarcia' target='_blank'><img height='36' style='border:0px;height:36px;' src='https://cdn.ko-fi.com/cdn/kofi3.png?v=3' border='0' alt='Buy Me a Coffee at ko-fi.com' /></a>
|
|
309
|
-
|
|
310
|
-
|
|
1
|
+
# node-dfe
|
|
2
|
+
Biblioteca para geração/integração de NF-e/NFC-e em aplicações node.js
|
|
3
|
+
|
|
4
|
+
## Instalação
|
|
5
|
+
basta instalar através do comando
|
|
6
|
+
```npm install node-nfe-fce```
|
|
7
|
+
```yarn add node-nfe-fce```
|
|
8
|
+
|
|
9
|
+
## Requisitos
|
|
10
|
+
```Somente Certificado A1 é aceito```
|
|
11
|
+
```Ter instalado o JAVA pois percisa para fazer a validacao XSD```
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
## Exemplo
|
|
16
|
+
```javascript
|
|
17
|
+
import {carregaCertificado, statusServico, emitir, cancelar, inutilizar, cartaCorrecao, gerarPDF} from 'node-nfe-nfce'
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
const keypem = carregaCertificado({ path: env.CERTIFICATE_PATH, password: env.CERTIFICATE_PASSWORD })
|
|
21
|
+
const cert = {
|
|
22
|
+
pfx: fs.readFileSync(env.CERTIFICATE_PATH),
|
|
23
|
+
pem: keypem.pem,
|
|
24
|
+
key: keypem.key,
|
|
25
|
+
password: env.CERTIFICATE_PASSWORD
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
const emit: TNFeInfNFeEmit = {
|
|
29
|
+
CNPJ: '00000000000000',
|
|
30
|
+
xNome: 'NOME DA EMPRESA',
|
|
31
|
+
xFant: 'NOME FANSASIA DA EMPRESA',
|
|
32
|
+
enderEmit: {
|
|
33
|
+
xLgr: 'Rua Teste',
|
|
34
|
+
nro: '123',
|
|
35
|
+
xCpl: undefined,
|
|
36
|
+
xBairro: 'Bairro Teste',
|
|
37
|
+
cMun: '3504602',
|
|
38
|
+
xMun: 'BADY BASSITT',
|
|
39
|
+
UF: 'SP',
|
|
40
|
+
CEP: '15115000',
|
|
41
|
+
cPais: '1058',
|
|
42
|
+
xPais: 'BRASIL',
|
|
43
|
+
fone: undefined
|
|
44
|
+
},
|
|
45
|
+
IE: '195000888999',
|
|
46
|
+
IM: '000888999',
|
|
47
|
+
CRT: '1',
|
|
48
|
+
iEST: undefined,
|
|
49
|
+
CNAE: undefined
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
const empresa: Empresa = {
|
|
53
|
+
certificado: cert,
|
|
54
|
+
idCSC: env.DADOS_ID_CSC,
|
|
55
|
+
CSC: env.DADOS_CSC
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
const configuracoes = {
|
|
59
|
+
empresa: {
|
|
60
|
+
pem: cert.pem,
|
|
61
|
+
key: cert.key,
|
|
62
|
+
password: 'SUA SENHA',
|
|
63
|
+
idCSC: 'SEU_ID_CSC',
|
|
64
|
+
CSC: 'SEU CSC'
|
|
65
|
+
},
|
|
66
|
+
geral: {
|
|
67
|
+
versao: '4.00',
|
|
68
|
+
ambiente: '2',
|
|
69
|
+
modelo: '55'
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
const dest: TNFeInfNFeDest = {
|
|
74
|
+
idEstrangeiro: undefined,
|
|
75
|
+
CNPJ: undefined,
|
|
76
|
+
CPF: '00000000000',
|
|
77
|
+
xNome: 'DESTINATARIO TESTE',
|
|
78
|
+
enderDest: {
|
|
79
|
+
xLgr: 'RUA DOS PALMARES',
|
|
80
|
+
nro: '1231',
|
|
81
|
+
xCpl: 'casa 5',
|
|
82
|
+
xBairro: 'NOME DO BAIRRO',
|
|
83
|
+
cMun: '4303103',
|
|
84
|
+
xMun: 'CACHOEIRINHA',
|
|
85
|
+
UF: 'RS',
|
|
86
|
+
CEP: '15025120'
|
|
87
|
+
},
|
|
88
|
+
indIEDest: '9',
|
|
89
|
+
email: 'test@test.com'
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
const transp: TNFeInfNFeTransp = {
|
|
93
|
+
modFrete: '9'
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
const infAdic: TNFeInfNFeInfAdic = {
|
|
97
|
+
infCpl: 'INFORMACAO COMPLEMENTAR FEITA PARA APARECER NA NFE/NFCE',
|
|
98
|
+
infAdFisco: undefined,
|
|
99
|
+
obsCont: [],
|
|
100
|
+
obsFisco: [],
|
|
101
|
+
procRef: []
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
const det_list: TNFeInfNFeDet[] = []
|
|
105
|
+
const valorProduto = 31.80
|
|
106
|
+
let valorTotalProdutos = 0
|
|
107
|
+
for (let i = 1; i <= 1; i++) {
|
|
108
|
+
valorTotalProdutos += valorProduto
|
|
109
|
+
det_list.push({
|
|
110
|
+
$: { nItem: String(i) },
|
|
111
|
+
prod: {
|
|
112
|
+
cProd: '84233',
|
|
113
|
+
cEAN: '7898221456293',
|
|
114
|
+
xProd: 'PRODUTO TESTE',
|
|
115
|
+
NCM: '85164000',
|
|
116
|
+
CEST: undefined,
|
|
117
|
+
cNPJFab: undefined,
|
|
118
|
+
cBenef: undefined,
|
|
119
|
+
eXTIPI: undefined,
|
|
120
|
+
CFOP: '5102',
|
|
121
|
+
uCom: 'SAC',
|
|
122
|
+
qCom: '1.0000',
|
|
123
|
+
vUnCom: valorProduto.toFixed(2),
|
|
124
|
+
vProd: valorProduto.toFixed(2),
|
|
125
|
+
cEANTrib: '7898221456293',
|
|
126
|
+
uTrib: 'SAC',
|
|
127
|
+
qTrib: '1.0000',
|
|
128
|
+
vUnTrib: valorProduto.toFixed(2),
|
|
129
|
+
vFrete: '',
|
|
130
|
+
vSeg: '',
|
|
131
|
+
vDesc: '',
|
|
132
|
+
vOutro: '',
|
|
133
|
+
indTot: '1',
|
|
134
|
+
xPed: '',
|
|
135
|
+
nItemPed: ''
|
|
136
|
+
},
|
|
137
|
+
imposto: {
|
|
138
|
+
vTotTrib: 0,
|
|
139
|
+
ICMS: {
|
|
140
|
+
ICMSSN102: {
|
|
141
|
+
orig: '0',
|
|
142
|
+
CSOSN: '102'
|
|
143
|
+
}
|
|
144
|
+
},
|
|
145
|
+
PIS: {
|
|
146
|
+
PISOutr: {
|
|
147
|
+
CST: '99',
|
|
148
|
+
vBC: 0,
|
|
149
|
+
pPIS: 0,
|
|
150
|
+
vPIS: 0
|
|
151
|
+
}
|
|
152
|
+
},
|
|
153
|
+
COFINS: {
|
|
154
|
+
COFINSOutr: {
|
|
155
|
+
CST: '99',
|
|
156
|
+
vBC: 0,
|
|
157
|
+
pCOFINS: 0,
|
|
158
|
+
vCOFINS: 0
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
})
|
|
163
|
+
}
|
|
164
|
+
|
|
165
|
+
const detPag: TNFeInfNFePagDetPag[] = []
|
|
166
|
+
const pagItem: TNFeInfNFePagDetPag = {
|
|
167
|
+
indPag: '0',
|
|
168
|
+
tPag: '01',
|
|
169
|
+
vPag: valorTotalProdutos.toFixed(2),
|
|
170
|
+
xPag: undefined,
|
|
171
|
+
card: undefined
|
|
172
|
+
}
|
|
173
|
+
detPag.push(pagItem)
|
|
174
|
+
|
|
175
|
+
const pag: TNFeInfNFePag = {
|
|
176
|
+
detPag,
|
|
177
|
+
vTroco: '0'
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
const ICMSTot: TNFeInfNFeTotalICMSTot = {
|
|
181
|
+
vBC: '0.00',
|
|
182
|
+
vICMS: '0.00',
|
|
183
|
+
vICMSDeson: '0.00',
|
|
184
|
+
vFCP: '0.00',
|
|
185
|
+
vBCST: '0.00',
|
|
186
|
+
vST: '0.00',
|
|
187
|
+
vFCPST: '0.00',
|
|
188
|
+
vFCPSTRet: '0.00',
|
|
189
|
+
vProd: valorTotalProdutos.toFixed(2),
|
|
190
|
+
vFrete: '0.00',
|
|
191
|
+
vSeg: '0.00',
|
|
192
|
+
vDesc: '0.00',
|
|
193
|
+
vII: '0.00',
|
|
194
|
+
vIPI: '0.00',
|
|
195
|
+
vIPIDevol: '0.00',
|
|
196
|
+
vPIS: '0.00',
|
|
197
|
+
vCOFINS: '0.00',
|
|
198
|
+
vOutro: '0.00',
|
|
199
|
+
vNF: valorTotalProdutos.toFixed(2)
|
|
200
|
+
}
|
|
201
|
+
|
|
202
|
+
const ide: IdeInput = {
|
|
203
|
+
cUF: '35',
|
|
204
|
+
natOp: 'VENDA',
|
|
205
|
+
mod: '55',
|
|
206
|
+
serie: '1',
|
|
207
|
+
nNF: '16',
|
|
208
|
+
dhEmi: '',
|
|
209
|
+
tpNF: '1',
|
|
210
|
+
idDest: '1',
|
|
211
|
+
cMunFG: '3504602',
|
|
212
|
+
tpImp: '1',
|
|
213
|
+
tpEmis: '1',
|
|
214
|
+
tpAmb: '2',
|
|
215
|
+
finNFe: '1',
|
|
216
|
+
indFinal: '1',
|
|
217
|
+
indPres: '1',
|
|
218
|
+
procEmi: '0',
|
|
219
|
+
verProc: 'NODE-NFE TEST 1.0',
|
|
220
|
+
}
|
|
221
|
+
|
|
222
|
+
|
|
223
|
+
const pag: TNFeInfNFePag = {
|
|
224
|
+
detPag,
|
|
225
|
+
vTroco: '0'
|
|
226
|
+
}
|
|
227
|
+
|
|
228
|
+
const ICMSTot: TNFeInfNFeTotalICMSTot = {
|
|
229
|
+
vBC: '0.00',
|
|
230
|
+
vICMS: '0.00',
|
|
231
|
+
vICMSDeson: '0.00',
|
|
232
|
+
vFCP: '0.00',
|
|
233
|
+
vBCST: '0.00',
|
|
234
|
+
vST: '0.00',
|
|
235
|
+
vFCPST: '0.00',
|
|
236
|
+
vFCPSTRet: '0.00',
|
|
237
|
+
vProd: valorTotalProdutos.toFixed(2),
|
|
238
|
+
vFrete: '0.00',
|
|
239
|
+
vSeg: '0.00',
|
|
240
|
+
vDesc: '0.00',
|
|
241
|
+
vII: '0.00',
|
|
242
|
+
vIPI: '0.00',
|
|
243
|
+
vIPIDevol: '0.00',
|
|
244
|
+
vPIS: '0.00',
|
|
245
|
+
vCOFINS: '0.00',
|
|
246
|
+
vOutro: '0.00',
|
|
247
|
+
vNF: valorTotalProdutos.toFixed(2)
|
|
248
|
+
}
|
|
249
|
+
|
|
250
|
+
const nfe: NFeBase = {
|
|
251
|
+
ide,
|
|
252
|
+
emit,
|
|
253
|
+
dest,
|
|
254
|
+
det_list,
|
|
255
|
+
total: { ICMSTot },
|
|
256
|
+
transp,
|
|
257
|
+
pag,
|
|
258
|
+
infAdic
|
|
259
|
+
}
|
|
260
|
+
|
|
261
|
+
const result = await emitir({ documento: nfe, configuracoes })
|
|
262
|
+
const response = inspect(result, false, null)
|
|
263
|
+
console.log('Resultado: \n\n' + response)
|
|
264
|
+
|
|
265
|
+
const result = await cancelar({
|
|
266
|
+
chNFe: '35230400000000000000550010000000071458222950',
|
|
267
|
+
nProt: '135230009995798',
|
|
268
|
+
xJust: 'TESTE DE CANCELAMENTO',
|
|
269
|
+
configuracoes
|
|
270
|
+
})
|
|
271
|
+
const response = inspect(result, false, null)
|
|
272
|
+
console.log('Resultado: \n\n' + response)
|
|
273
|
+
|
|
274
|
+
const result = await cartaCorrecao({
|
|
275
|
+
chNFe: '35230400000000000000550010000000071458222950',
|
|
276
|
+
nProt: '135230009999798',
|
|
277
|
+
xCorrecao: 'TESTE DE CARTA DE CORRECAO EM HOMOLOCAO',
|
|
278
|
+
configuracoes
|
|
279
|
+
})
|
|
280
|
+
const response = inspect(result, false, null)
|
|
281
|
+
console.log('Resultado Carta Correção NFC-e: \n\n' + response)
|
|
282
|
+
|
|
283
|
+
const dados: Inutilizar = {
|
|
284
|
+
ano: 2023,
|
|
285
|
+
modelo: '55',
|
|
286
|
+
numeroInicial: 5,
|
|
287
|
+
numeroFinal: 5,
|
|
288
|
+
serie: 1,
|
|
289
|
+
xJustificativa: 'HOMOLOGACAO TESTE',
|
|
290
|
+
cUf: '35',
|
|
291
|
+
cnpj: '00000000000000'
|
|
292
|
+
}
|
|
293
|
+
const result = await inutilizar({ configuracao, dados })
|
|
294
|
+
console.log(result)
|
|
295
|
+
|
|
296
|
+
const result = await statusServico(configuracoes, '35')
|
|
297
|
+
const response = inspect(result, false, null)
|
|
298
|
+
console.log('Status: \n\n' + response)
|
|
299
|
+
```
|
|
300
|
+
|
|
301
|
+
|
|
302
|
+
## STATUS
|
|
303
|
+
Ainda estou organizando a biblioteca, fiz testes NFE/NFCE no estado de SP e tudo deu certo.
|
|
304
|
+
|
|
305
|
+
## O que acha de colaborar financeiramente com este projeto?
|
|
306
|
+
|
|
307
|
+
|
|
308
|
+
<a href='https://ko-fi.com/rodrigomarquigarcia' target='_blank'><img height='36' style='border:0px;height:36px;' src='https://cdn.ko-fi.com/cdn/kofi3.png?v=3' border='0' alt='Buy Me a Coffee at ko-fi.com' /></a>
|
|
309
|
+
|
|
310
|
+
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import { type GeneratePdf } from '../../../../domain/contracts/repos';
|
|
2
|
-
export declare function criaLayout({ pathLogo, nf, ajusteX, ajusteY, doc, margemEsquerda, margemTopo, larguraDoFormulario, margemDireita, folha }: GeneratePdf.
|
|
2
|
+
export declare function criaLayout({ pathLogo, nf, ajusteX, ajusteY, doc, margemEsquerda, margemTopo, larguraDoFormulario, margemDireita, folha }: GeneratePdf.InputCriaLayout): Promise<void>;
|