Skip to main content

DTE/GUF Schema β€” XSD Reference

The DTE_Generico_v16.xsd file is Gosocket's internal XML schema describing the general structure of the GUF/DTE integration file. It is the canonical reference for understanding available nodes, their cardinality, and the xPaths the platform uses to transform the document into each tax authority's format.

⬇ Download DTE_Generico_v16.xsd


This schema is NOT the tax authority's XSD

DTE_Generico_v16.xsd is not the validation schema of any tax authority (SII, SUNAT, SAT, DIAN, etc.). It is a Gosocket-internal schema describing the structure of the integration file that the client sends to the API.

Validation of the document against the tax authority occurs after Gosocket transforms the GUF/DTE into each country's specific tax format.


What is this schema used for?​

UseDescription
Node referenceKnow which elements (xs:element) exist in the GUF, their exact name and position in the tree
xPathsIdentify the full path of each field to build mappings or XSLT transformations
CardinalityKnow which nodes are required (minOccurs="1") and which are optional (minOccurs="0")
Initial structureGenerate the skeleton of the integration file before adjusting it to the specific country

Important limitation: data types are not restrictive​

The types declared in this schema (xs:string, xs:dateTime, xs:decimal) are reference types, not strict restrictions. This is intentional, because the same field can have different formats depending on the country.

Example β€” FechaEmis field:

<!-- In the schema: -->
<xs:element name="FechaEmis" type="xs:dateTime" minOccurs="0">
<xs:annotation>
<xs:documentation>
Issue Date and Time of the DTE (dd-MM-yyyy HH:mm:ss).
The format varies by country β€” see the Gap Analysis.
</xs:documentation>
</xs:annotation>
</xs:element>

In practice, the actual format varies by country:

CountryFechaEmis format
Chile2026-04-15T10:13:45
Argentina2026-04-15
Mexico2026-04-15T10:13:45
Peru2026-04-15

Conclusion: Do not use this schema to validate the format of a field's value. Use it to know that a field exists and what its xPath is.


1. DTE_Generico_v16.xsd β†’ understand available nodes and general structure
↓
2. Gap Analysis (per country) β†’ confirm required fields, exact formats
and country-specific scenarios
↓
3. Actual GUF/DTE file β†’ build the integration XML adjusted to the country
↓
4. SendDocumentToAuthority β†’ send to Gosocket for transformation and certification

The examples in the previous section (DTE/GUF Examples by Country) show complete GUF files already refined per country.


Schema preview​

The schema defines more than 400 elements organized into sections such as Encabezado, Emisor, Receptor, Detalle, Subtotales, Impuestos, Referencias, Transporte, Personalizados and Complementos.

DTE_Generico_v16.xsd β€” Encabezado/IdDoc excerpt
<xs:complexType name="IdDocType">
<xs:sequence>
  <xs:element name="Tipo" type="xs:string">
    <xs:annotation>
      <xs:documentation>Document type code</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="Numero" type="xs:string" minOccurs="0">
    <xs:annotation>
      <xs:documentation>Document number or folio</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="NumeroInterno" type="xs:string" minOccurs="0">
    <xs:annotation>
      <xs:documentation>Issuer's internal number</xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="FechaEmis" type="xs:dateTime" minOccurs="0">
    <xs:annotation>
      <xs:documentation>
        Issue date and time of the DTE.
        Format varies by country β€” see the Gap Analysis.
      </xs:documentation>
    </xs:annotation>
  </xs:element>
  <xs:element name="TipoDespacho" type="xs:string" minOccurs="0"/>
  <xs:element name="IndTraslado" type="xs:string" minOccurs="0"/>
  <xs:element name="TpoImpresion" type="xs:string" minOccurs="0"/>
  <xs:element name="IndServicio" type="xs:integer" minOccurs="0"/>
  <xs:element name="MntBruto" type="xs:integer" minOccurs="0"/>
  <xs:element name="FmaPago" type="xs:integer" minOccurs="0"/>
  <xs:element name="FmaPagExp" type="xs:integer" minOccurs="0"/>
  <xs:element name="MntCancel" type="xs:decimal" minOccurs="0"/>
  <xs:element name="SaldoInsol" type="xs:decimal" minOccurs="0"/>
  <!-- ... more elements available in the full XSD -->
</xs:sequence>
</xs:complexType>

For more information

This schema is a complement to the Gap Analysis carried out during onboarding. Exact formats per country, required fields and country-specific scenarios are defined in that analysis.

For further guidance on how to apply this schema to your integration, contact the Implementation Consultant assigned to your project.