ghinfe 0.6.0 → 0.6.2
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/.env.example +24 -15
- package/LICENSE +21 -21
- package/README.md +491 -413
- package/docs/developer-guide.html +421 -421
- package/docs/openapi.yaml +428 -428
- package/examples/dce-homologacao.js +141 -0
- package/examples/emitir-nfce.js +51 -51
- package/examples/emitir-nfe.js +83 -83
- package/examples/emitir-nfse.js +46 -46
- package/examples/endpoints-sefaz.js +14 -14
- package/examples/eventos-nfe.js +49 -49
- package/examples/gerar-chave.js +25 -25
- package/examples/gerar-dace.js +59 -0
- package/examples/gerar-danfe.js +75 -75
- package/examples/gerar-dce.js +58 -0
- package/examples/layouts-nfse.js +51 -51
- package/examples/mock-sefaz.js +52 -52
- package/examples/nfse-eventos.js +57 -57
- package/examples/reforma-ibscbs.js +27 -27
- package/examples/reforma-nfe-xml.js +52 -52
- package/examples/status-sefaz.js +12 -12
- package/examples/validar-xsd.js +48 -48
- package/package.json +59 -68
- package/schemas/dce/PL_DCe_100a_NT2024.001/consulta/consSitDCeTiposBasico_v1.00.xsd +123 -0
- package/schemas/dce/PL_DCe_100a_NT2024.001/consulta/consSitDCe_v1.00.xsd +10 -0
- package/schemas/dce/PL_DCe_100a_NT2024.001/consulta/consStatServDCeTiposBasico_v1.00.xsd +110 -0
- package/schemas/dce/PL_DCe_100a_NT2024.001/consulta/consStatServDCe_v1.00.xsd +10 -0
- package/schemas/dce/PL_DCe_100a_NT2024.001/consulta/dceTiposBasico_v1.00.xsd +1388 -0
- package/schemas/dce/PL_DCe_100a_NT2024.001/consulta/retConsSitDCe_v1.00.xsd +10 -0
- package/schemas/dce/PL_DCe_100a_NT2024.001/consulta/retConsStatServDCe_v1.00.xsd +10 -0
- package/schemas/dce/PL_DCe_100a_NT2024.001/consulta/tiposGeralDCe_v1.00.xsd +712 -0
- package/schemas/dce/PL_DCe_100a_NT2024.001/consulta/xmldsig-core-schema_v1.01.xsd +98 -0
- package/schemas/dce/PL_DCe_100a_NT2024.001/dceTiposBasico_v1.00.xsd +1410 -0
- package/schemas/dce/PL_DCe_100a_NT2024.001/dce_v1.00.xsd +10 -0
- package/schemas/dce/PL_DCe_100a_NT2024.001/evento/evCancDCe_v1.00.xsd +36 -0
- package/schemas/dce/PL_DCe_100a_NT2024.001/evento/eventoDCeTiposBasico_v1.00.xsd +283 -0
- package/schemas/dce/PL_DCe_100a_NT2024.001/evento/eventoDCe_v1.00.xsd +9 -0
- package/schemas/dce/PL_DCe_100a_NT2024.001/evento/procEventoDCe_v1.00.xsd +10 -0
- package/schemas/dce/PL_DCe_100a_NT2024.001/evento/retEventoDCe_v1.00.xsd +9 -0
- package/schemas/dce/PL_DCe_100a_NT2024.001/evento/tiposGeralDCe_v1.00.xsd +712 -0
- package/schemas/dce/PL_DCe_100a_NT2024.001/evento/xmldsig-core-schema_v1.01.xsd +98 -0
- package/schemas/dce/PL_DCe_100a_NT2024.001/procDCe_v1.00.xsd +37 -0
- package/schemas/dce/PL_DCe_100a_NT2024.001/retDCe_v1.00.xsd +9 -0
- package/schemas/dce/PL_DCe_100a_NT2024.001/tiposGeralDCe_v1.00.xsd +712 -0
- package/schemas/dce/PL_DCe_100a_NT2024.001/xmldsig-core-schema_v1.01.xsd +98 -0
- package/schemas/nfe/PL_009_V4/enviNFe_v3.10.xsd +8 -8
- package/schemas/nfe/PL_009_V4/xmldsig-core-schema_v1.01.xsd +97 -97
- package/scripts/download-schemas.js +39 -39
- package/scripts/test-xsd.js +34 -34
- package/src/api/server.js +316 -316
- package/src/constants/sefaz.js +69 -69
- package/src/danfe/DanfeService.js +205 -205
- package/src/danfe/xml-extract.js +69 -69
- package/src/dce/builders/DCeEventoXmlBuilder.js +86 -0
- package/src/dce/builders/DCeXmlBuilder.js +345 -0
- package/src/dce/constants/dce.js +87 -0
- package/src/dce/dace/DaceService.js +356 -0
- package/src/dce/dace/dace-extract.js +114 -0
- package/src/dce/services/DCeService.js +263 -0
- package/src/dce/services/DCeSoapService.js +235 -0
- package/src/dce/services/DCeXmlService.js +67 -0
- package/src/dce/types/DCeDocument.js +106 -0
- package/src/dce/utils/qrcode.utils.js +59 -0
- package/src/errors/GhinfeError.js +13 -13
- package/src/errors/SefazError.js +25 -25
- package/src/errors/XsdValidationError.js +15 -15
- package/src/index.js +84 -60
- package/src/nfce/builders/NFCeXmlBuilder.js +178 -178
- package/src/nfce/constants/qrcode.js +26 -26
- package/src/nfce/services/NFCeService.js +188 -188
- package/src/nfce/services/NFCeXmlService.js +38 -38
- package/src/nfce/types/NFCeDocument.js +42 -42
- package/src/nfce/utils/qrcode.utils.js +92 -92
- package/src/nfe/builders/NFeEventoXmlBuilder.js +110 -110
- package/src/nfe/builders/NFeXmlBuilder.js +215 -215
- package/src/nfe/mocks/sefaz-responses.js +195 -195
- package/src/nfe/services/NFeEventoService.js +95 -95
- package/src/nfe/services/NFeService.js +196 -196
- package/src/nfe/services/NFeSignService.js +127 -111
- package/src/nfe/services/NFeSoapService.js +437 -437
- package/src/nfe/services/NFeXmlService.js +41 -41
- package/src/nfe/services/NFeXsdService.js +56 -56
- package/src/nfe/types/NFeDocument.js +92 -92
- package/src/nfe/types/NFeEvento.js +44 -44
- package/src/nfse/NFSeMunicipioResolver.js +42 -42
- package/src/nfse/builders/NFSeEventoXmlBuilder.js +92 -92
- package/src/nfse/builders/NFSeXmlBuilder.js +16 -16
- package/src/nfse/constants/municipios.js +82 -82
- package/src/nfse/layouts/adapters.js +202 -202
- package/src/nfse/mocks/nfse-responses.js +142 -142
- package/src/nfse/services/NFSeService.js +191 -191
- package/src/nfse/services/NFSeSoapService.js +232 -232
- package/src/nfse/services/NFSeXmlService.js +12 -12
- package/src/nfse/types/NFSeDocument.js +54 -54
- package/src/queue/NFCeQueue.js +63 -63
- package/src/queue/NFSeQueue.js +59 -59
- package/src/queue/NFeQueue.js +76 -76
- package/src/reforma/ibscbs.js +175 -175
- package/src/sefaz/SefazEndpointResolver.js +95 -95
- package/src/sefaz/ca/icp-brasil-raiz-v10.pem +38 -0
- package/src/sefaz/endpoints.registry.js +205 -205
- package/src/sefaz/httpsAgent.js +33 -0
- package/src/shared/fiscal.helpers.js +53 -53
- package/src/utils/certificate.utils.js +69 -47
- package/src/utils/chave.utils.js +205 -117
- package/src/utils/code128.utils.js +67 -0
- package/src/utils/date.utils.js +26 -26
- package/src/utils/xml.utils.js +44 -44
- package/src/validation/XsdValidator.js +133 -114
- package/src/validation/schemas.js +18 -14
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="utf-8"?>
|
|
2
|
+
<!-- ***************************************************-->
|
|
3
|
+
<!-- *** Schema específico para assinaturas XML ***-->
|
|
4
|
+
<!-- *** a partir de certificados do padrão (X509) ***-->
|
|
5
|
+
<!-- *** ICP-Brasil - Projeto Nota Fiscal Eletrônica ***-->
|
|
6
|
+
<!-- ***************************************************-->
|
|
7
|
+
<!-- Schema for XML Signatures-->
|
|
8
|
+
<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" targetNamespace="http://www.w3.org/2000/09/xmldsig#" elementFormDefault="qualified" attributeFormDefault="unqualified" version="0.1">
|
|
9
|
+
<element name="Signature" type="ds:SignatureType"/>
|
|
10
|
+
<complexType name="SignatureType">
|
|
11
|
+
<sequence>
|
|
12
|
+
<element name="SignedInfo" type="ds:SignedInfoType"/>
|
|
13
|
+
<element name="SignatureValue" type="ds:SignatureValueType"/>
|
|
14
|
+
<element name="KeyInfo" type="ds:KeyInfoType"/>
|
|
15
|
+
</sequence>
|
|
16
|
+
<attribute name="Id" type="ID" use="optional"/>
|
|
17
|
+
</complexType>
|
|
18
|
+
<complexType name="SignatureValueType">
|
|
19
|
+
<simpleContent>
|
|
20
|
+
<extension base="base64Binary">
|
|
21
|
+
<attribute name="Id" type="ID" use="optional"/>
|
|
22
|
+
</extension>
|
|
23
|
+
</simpleContent>
|
|
24
|
+
</complexType>
|
|
25
|
+
<complexType name="SignedInfoType">
|
|
26
|
+
<sequence>
|
|
27
|
+
<element name="CanonicalizationMethod">
|
|
28
|
+
<complexType>
|
|
29
|
+
<attribute name="Algorithm" type="anyURI" use="required" fixed="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/>
|
|
30
|
+
</complexType>
|
|
31
|
+
</element>
|
|
32
|
+
<element name="SignatureMethod">
|
|
33
|
+
<complexType>
|
|
34
|
+
<attribute name="Algorithm" type="anyURI" use="required" fixed="http://www.w3.org/2000/09/xmldsig#rsa-sha1"/>
|
|
35
|
+
</complexType>
|
|
36
|
+
</element>
|
|
37
|
+
<element name="Reference" type="ds:ReferenceType"/>
|
|
38
|
+
</sequence>
|
|
39
|
+
<attribute name="Id" type="ID" use="optional"/>
|
|
40
|
+
</complexType>
|
|
41
|
+
<complexType name="ReferenceType">
|
|
42
|
+
<sequence>
|
|
43
|
+
<element name="Transforms" type="ds:TransformsType">
|
|
44
|
+
<!-- Garante a unicidade do atributo -->
|
|
45
|
+
<unique name="unique_Transf_Alg">
|
|
46
|
+
<selector xpath="./*"/>
|
|
47
|
+
<field xpath="@Algorithm"/>
|
|
48
|
+
</unique>
|
|
49
|
+
</element>
|
|
50
|
+
<element name="DigestMethod">
|
|
51
|
+
<complexType>
|
|
52
|
+
<attribute name="Algorithm" type="anyURI" use="required" fixed="http://www.w3.org/2000/09/xmldsig#sha1"/>
|
|
53
|
+
</complexType>
|
|
54
|
+
</element>
|
|
55
|
+
<element name="DigestValue" type="ds:DigestValueType"/>
|
|
56
|
+
</sequence>
|
|
57
|
+
<attribute name="Id" type="ID" use="optional"/>
|
|
58
|
+
<attribute name="URI" use="required">
|
|
59
|
+
<simpleType>
|
|
60
|
+
<restriction base="anyURI">
|
|
61
|
+
<minLength value="2"/>
|
|
62
|
+
</restriction>
|
|
63
|
+
</simpleType>
|
|
64
|
+
</attribute>
|
|
65
|
+
<attribute name="Type" type="anyURI" use="optional"/>
|
|
66
|
+
</complexType>
|
|
67
|
+
<complexType name="TransformsType">
|
|
68
|
+
<sequence>
|
|
69
|
+
<element name="Transform" type="ds:TransformType" minOccurs="2" maxOccurs="2"/>
|
|
70
|
+
</sequence>
|
|
71
|
+
</complexType>
|
|
72
|
+
<complexType name="TransformType">
|
|
73
|
+
<sequence minOccurs="0" maxOccurs="unbounded">
|
|
74
|
+
<element name="XPath" type="string"/>
|
|
75
|
+
</sequence>
|
|
76
|
+
<attribute name="Algorithm" type="ds:TTransformURI" use="required"/>
|
|
77
|
+
</complexType>
|
|
78
|
+
<complexType name="KeyInfoType">
|
|
79
|
+
<sequence>
|
|
80
|
+
<element name="X509Data" type="ds:X509DataType"/>
|
|
81
|
+
</sequence>
|
|
82
|
+
<attribute name="Id" type="ID" use="optional"/>
|
|
83
|
+
</complexType>
|
|
84
|
+
<complexType name="X509DataType">
|
|
85
|
+
<sequence>
|
|
86
|
+
<element name="X509Certificate" type="base64Binary"/>
|
|
87
|
+
</sequence>
|
|
88
|
+
</complexType>
|
|
89
|
+
<simpleType name="DigestValueType">
|
|
90
|
+
<restriction base="base64Binary"/>
|
|
91
|
+
</simpleType>
|
|
92
|
+
<simpleType name="TTransformURI">
|
|
93
|
+
<restriction base="anyURI">
|
|
94
|
+
<enumeration value="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/>
|
|
95
|
+
<enumeration value="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/>
|
|
96
|
+
</restriction>
|
|
97
|
+
</simpleType>
|
|
98
|
+
</schema>
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<!-- edited with XMLSpy v2014 rel. 2 (http://www.altova.com) by private (private) -->
|
|
3
|
+
<xs:schema xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://www.portalfiscal.inf.br/dce" targetNamespace="http://www.portalfiscal.inf.br/dce" elementFormDefault="qualified" attributeFormDefault="unqualified">
|
|
4
|
+
<xs:include schemaLocation="dceTiposBasico_v1.00.xsd"/>
|
|
5
|
+
<xs:element name="dceProc">
|
|
6
|
+
<xs:annotation>
|
|
7
|
+
<xs:documentation>DCe processada</xs:documentation>
|
|
8
|
+
</xs:annotation>
|
|
9
|
+
<xs:complexType>
|
|
10
|
+
<xs:sequence>
|
|
11
|
+
<xs:element name="DCe" type="TDCe"/>
|
|
12
|
+
<xs:element name="protDCe" type="TProtDCe"/>
|
|
13
|
+
</xs:sequence>
|
|
14
|
+
<xs:attribute name="versao" type="TVerDCe" use="required"/>
|
|
15
|
+
<xs:attribute name="ipTransmissor" type="TIPv4" use="optional">
|
|
16
|
+
<xs:annotation>
|
|
17
|
+
<xs:documentation>IP do transmissor do documento fiscal para o ambiente autorizador</xs:documentation>
|
|
18
|
+
</xs:annotation>
|
|
19
|
+
</xs:attribute>
|
|
20
|
+
<xs:attribute name="nPortaCon" use="optional">
|
|
21
|
+
<xs:annotation>
|
|
22
|
+
<xs:documentation>Porta de origem utilizada na conexão (De 0 a 65535)</xs:documentation>
|
|
23
|
+
</xs:annotation>
|
|
24
|
+
<xs:simpleType>
|
|
25
|
+
<xs:restriction base="xs:string">
|
|
26
|
+
<xs:pattern value="[0-9]{1,5}"/>
|
|
27
|
+
</xs:restriction>
|
|
28
|
+
</xs:simpleType>
|
|
29
|
+
</xs:attribute>
|
|
30
|
+
<xs:attribute name="dhConexao" type="TDateTimeUTC" use="optional">
|
|
31
|
+
<xs:annotation>
|
|
32
|
+
<xs:documentation>Data e Hora da Conexão de Origem</xs:documentation>
|
|
33
|
+
</xs:annotation>
|
|
34
|
+
</xs:attribute>
|
|
35
|
+
</xs:complexType>
|
|
36
|
+
</xs:element>
|
|
37
|
+
</xs:schema>
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
<!-- edited with XMLSpy v2014 rel. 2 (http://www.altova.com) by private (private) -->
|
|
2
|
+
<xs:schema xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns="http://www.portalfiscal.inf.br/dce" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.portalfiscal.inf.br/dce" elementFormDefault="qualified" attributeFormDefault="unqualified">
|
|
3
|
+
<xs:include schemaLocation="dceTiposBasico_v1.00.xsd"/>
|
|
4
|
+
<xs:element name="retDCe" type="TRetDCe">
|
|
5
|
+
<xs:annotation>
|
|
6
|
+
<xs:documentation>Schema XML de validação do retorno da DCe</xs:documentation>
|
|
7
|
+
</xs:annotation>
|
|
8
|
+
</xs:element>
|
|
9
|
+
</xs:schema>
|