LibreDTE

DocumentBag
in package
implements DocumentBagInterface uses OptionsAwareTrait

Contenedor de datos del documento tributario electrónico.

Permite "mover" un documento, junto a otros datos asociados, por métodos de manera sencilla y, sobre todo, extensible.

Table of Contents

Interfaces

DocumentBagInterface
Interfaz para el contenedor de un documento.

Properties

$optionsSchema  : array<string|int, mixed>
Reglas de esquema de las opciones del documento.
$caf  : CafInterface|null
Código de Asignación de Folios (CAF) para timbrar el Documento Tributario Electrónico (DTE) que se generará.
$certificate  : CertificateInterface|null
Certificado digital (firma electrónica) para la firma del documento.
$data  : array<string|int, mixed>|null
Arreglo con los datos normalizados consolidados con el timbre y la firma si existen en la bolsa.
$document  : DocumentInterface|null
Entidad con el documento tributario electrónico generado.
$documentType  : TipoDocumentoInterface|null
Entidad que representa al tipo de documento tributario que está contenido en esta bolsa.
$emisor  : EmisorInterface|null
Emisor del documento tributario.
$inputData  : string|null
Datos originales de entrada que se utilizarán para construir el documento tributario.
$libredteData  : array<string|int, mixed>|null
Datos de LibreDTE asociados al documento tributario.
$normalizedData  : array<string|int, mixed>|null
Datos normalizados del documento tributario.
$parsedData  : array<string|int, mixed>|null
Datos de entrada procesados (parseados).
$receptor  : ReceptorInterface|null
Receptor del documento tributario.
$timbre  : array<string|int, mixed>|null
Arreglo con la estructura del nodo TED del documento.
$xmlDocument  : XmlInterface|null
Instancia del documento XML asociada al DTE.

Methods

__construct()  : mixed
Constructor del contenedor.
getAlias()  : string
Entrega el alias del tipo de documento que contiene la bolsa.
getBuilderOptions()  : array<string|int, mixed>
Obtiene las opciones del constructor del documento.
getCaf()  : CafInterface|null
Obtiene el CAF para timbrar el documento.
getCertificate()  : CertificateInterface|null
Obtiene el certificado para firmar el documento.
getCodigoTipoDocumento()  : int|null
getData()  : array<string|int, mixed>|null
Obtiene los datos del documento.
getDocument()  : DocumentInterface|null
Obtiene el documento tributario electrónico.
getDocumentAuth()  : array<string|int, mixed>|null
Obtiene los datos de la autorización del emisor para emitir DTE.
getDocumentData()  : array<string|int, mixed>|null
Obtiene los datos del documento agregando los datos específicos de LibreDTE.
getDocumentExtra()  : array<string|int, mixed>|null
Obtiene los datos extras del documento.
getDocumentStamp()  : string|null
Obtiene el timbre del DTE.
getDocumentType()  : TipoDocumentoInterface|null
Obtiene el tipo de documento tributario electrónico.
getDocumentTypeId()  : int|null
Obtiene el código numérico del documento tributario electrónico.
getEmisor()  : EmisorInterface|null
Obtiene el emisor del documento.
getFolio()  : int|string|null
Obtiene el folio del documento.
getId()  : string
Entrega el ID del documento.
getInputData()  : string|null
Obtiene los datos de entrada del documento.
getLibredteData()  : array<string|int, mixed>|null
Obtiene los datos de LibreDTE que están asociados al documento pero no son parte de la estructura oficial que utiliza el SII.
getNormalizedData()  : array<string|int, mixed>|null
Obtiene los datos normalizados del documento.
getNormalizerOptions()  : array<string|int, mixed>
Obtiene las opciones del normalizador del documento.
getParsedData()  : array<string|int, mixed>|null
Obtiene los datos procesados (parseados) del documento.
getParserOptions()  : array<string|int, mixed>
Obtiene las opciones del procesador (parser) del documento.
getReceptor()  : ReceptorInterface|null
Obtiene el receptor del documento.
getRendererOptions()  : array<string|int, mixed>
Obtiene las opciones del renderizador del documento.
getSanitizerOptions()  : array<string|int, mixed>
Obtiene las opciones del sanitizador del documento.
getTimbre()  : array<string|int, mixed>|null
Obtiene el timbre del documento.
getTipoDocumento()  : TipoDocumentoInterface|null
getValidatorOptions()  : array<string|int, mixed>
Obtiene las opciones del validador del documento.
getXmlDocument()  : XmlInterface|null
Obtiene el documento XML.
setCaf()  : static
Asigna el CAF para timbrar el documento.
setCertificate()  : static
Asigna el certificado para firmar el documento.
setDocument()  : static
Asigna el documento tributario electrónico.
setDocumentType()  : static
Asigna el tipo de documento tributario electrónico.
setEmisor()  : static
Asigna el emisor del documento.
setFolio()  : static
Asigna el folio numérico al documento.
setInputData()  : static
Asignar los datos de entrada del documento.
setLibredteData()  : static
Asigna los datos de LibreDTE que están asociados al documento pero no son parte de la estructura oficial que utiliza el SII.
setNormalizedData()  : static
Asigna los datos normalizados del documento.
setParsedData()  : static
Asigna los datos procesados (parseados) del documento.
setReceptor()  : static
Asigna el receptor del documento.
setTimbre()  : static
Asigna el timbre del documento.
setTipoDocumento()  : static
setXmlDocument()  : static
Asigna el documento XML.
withCaf()  : DocumentBagInterface
Retorna una nueva bolsa con los datos del DTE e incluye un archivo CAF.
withCertificate()  : DocumentBagInterface
Retorna una nueva bolsa con los datos del DTE e incluye un certificado.

Properties

$optionsSchema

Reglas de esquema de las opciones del documento.

protected array<string|int, mixed> $optionsSchema = ['builder' => ['types' => 'array', 'default' => []], 'normalizer' => ['types' => 'array', 'default' => []], 'parser' => ['types' => 'array', 'default' => []], 'renderer' => ['types' => 'array', 'default' => []], 'sanitizer' => ['types' => 'array', 'default' => []], 'validator' => ['types' => 'array', 'default' => []]]

Acá solo se indicarán los índices que deben pueden existir en las opciones. No se define el esquema de cada opción pues cada clase que utilice estas opciones deberá resolver y validar sus propias opciones.

$caf

Código de Asignación de Folios (CAF) para timbrar el Documento Tributario Electrónico (DTE) que se generará.

private CafInterface|null $caf

$certificate

Certificado digital (firma electrónica) para la firma del documento.

private CertificateInterface|null $certificate

$data

Arreglo con los datos normalizados consolidados con el timbre y la firma si existen en la bolsa.

private array<string|int, mixed>|null $data = null

$inputData

Datos originales de entrada que se utilizarán para construir el documento tributario.

private string|null $inputData

El formato de estos datos puede ser cualquiera soportado por los parsers.

$libredteData

Datos de LibreDTE asociados al documento tributario.

private array<string|int, mixed>|null $libredteData

Estos son datos que LibreDTE utiliza asociados al documento pero no son parte de la estructura oficial que utiliza el SII.

Por ejemplo se puede incluir:

  • Tags de facturas en PDF de boletas. Ejemplo: TermPagoGlosa.
  • Datos adicionales para los PDF. Ejemplo: historial.

$normalizedData

Datos normalizados del documento tributario.

private array<string|int, mixed>|null $normalizedData

Son los datos con todos sus campos necesarios ya determinados, calculados y validados.

La estructura de estos datos depende de los normalizadores.

Importante: si se desactiva la normalización este arreglo contendrá lo mismo que $parsedData pues no se tocarán los datos de entrada procesados.

$parsedData

Datos de entrada procesados (parseados).

private array<string|int, mixed>|null $parsedData

Están en el formato estándar de LibreDTE. Que es básicamente el oficial del SII.

Estos son los datos que se usarán para construir el documento. Estos datos no están normaliados, solo parseados.

$timbre

Arreglo con la estructura del nodo TED del documento.

private array<string|int, mixed>|null $timbre = null

$xmlDocument

Instancia del documento XML asociada al DTE.

private XmlInterface|null $xmlDocument

Methods

__construct()

Constructor del contenedor.

public __construct([string|array<string|int, mixed>|stdClass|null $inputData = null ][, array<string|int, mixed>|null $parsedData = null ][, array<string|int, mixed>|null $normalizedData = null ][, array<string|int, mixed>|null $libredteData = null ][, array<string|int, mixed>|DataContainerInterface $options = [] ][, XmlInterface|null $xmlDocument = null ][, CafInterface|null $caf = null ][, CertificateInterface|null $certificate = null ][, DocumentInterface|null $document = null ][, TipoDocumentoInterface|null $documentType = null ][, EmisorInterface|null $emisor = null ][, ReceptorInterface|null $receptor = null ]) : mixed

Recibe los datos en diferentes formatos para pasarlos a los setters que los normalizan y asignan al contenedor.

Parameters
$inputData : string|array<string|int, mixed>|stdClass|null = null
$parsedData : array<string|int, mixed>|null = null
$normalizedData : array<string|int, mixed>|null = null
$libredteData : array<string|int, mixed>|null = null
$options : array<string|int, mixed>|DataContainerInterface = []
$xmlDocument : XmlInterface|null = null
$caf : CafInterface|null = null
$certificate : CertificateInterface|null = null
$document : DocumentInterface|null = null
$documentType : TipoDocumentoInterface|null = null
$emisor : EmisorInterface|null = null
$receptor : ReceptorInterface|null = null

getAlias()

Entrega el alias del tipo de documento que contiene la bolsa.

public getAlias() : string
Return values
string

getBuilderOptions()

Obtiene las opciones del constructor del documento.

public getBuilderOptions() : array<string|int, mixed>
Return values
array<string|int, mixed>

getCertificate()

Obtiene el certificado para firmar el documento.

public getCertificate() : CertificateInterface|null
Return values
CertificateInterface|null

getCodigoTipoDocumento()

public getCodigoTipoDocumento() : int|null
Return values
int|null

getData()

Obtiene los datos del documento.

public getData() : array<string|int, mixed>|null
Return values
array<string|int, mixed>|null

getDocumentAuth()

Obtiene los datos de la autorización del emisor para emitir DTE.

public getDocumentAuth() : array<string|int, mixed>|null
Return values
array<string|int, mixed>|null

getDocumentData()

Obtiene los datos del documento agregando los datos específicos de LibreDTE.

public getDocumentData() : array<string|int, mixed>|null
Return values
array<string|int, mixed>|null

getDocumentExtra()

Obtiene los datos extras del documento.

public getDocumentExtra() : array<string|int, mixed>|null
Return values
array<string|int, mixed>|null

getDocumentStamp()

Obtiene el timbre del DTE.

public getDocumentStamp() : string|null
Return values
string|null

getDocumentTypeId()

Obtiene el código numérico del documento tributario electrónico.

public getDocumentTypeId() : int|null
Return values
int|null

getFolio()

Obtiene el folio del documento.

public getFolio() : int|string|null
Return values
int|string|null

getId()

Entrega el ID del documento.

public getId() : string
Return values
string

getInputData()

Obtiene los datos de entrada del documento.

public getInputData() : string|null
Return values
string|null

getLibredteData()

Obtiene los datos de LibreDTE que están asociados al documento pero no son parte de la estructura oficial que utiliza el SII.

public getLibredteData() : array<string|int, mixed>|null
Return values
array<string|int, mixed>|null

getNormalizedData()

Obtiene los datos normalizados del documento.

public getNormalizedData() : array<string|int, mixed>|null
Return values
array<string|int, mixed>|null

getNormalizerOptions()

Obtiene las opciones del normalizador del documento.

public getNormalizerOptions() : array<string|int, mixed>
Return values
array<string|int, mixed>

getParsedData()

Obtiene los datos procesados (parseados) del documento.

public getParsedData() : array<string|int, mixed>|null
Return values
array<string|int, mixed>|null

getParserOptions()

Obtiene las opciones del procesador (parser) del documento.

public getParserOptions() : array<string|int, mixed>
Return values
array<string|int, mixed>

getRendererOptions()

Obtiene las opciones del renderizador del documento.

public getRendererOptions() : array<string|int, mixed>
Return values
array<string|int, mixed>

getSanitizerOptions()

Obtiene las opciones del sanitizador del documento.

public getSanitizerOptions() : array<string|int, mixed>
Return values
array<string|int, mixed>

getTimbre()

Obtiene el timbre del documento.

public getTimbre() : array<string|int, mixed>|null
Return values
array<string|int, mixed>|null

getValidatorOptions()

Obtiene las opciones del validador del documento.

public getValidatorOptions() : array<string|int, mixed>
Return values
array<string|int, mixed>

getXmlDocument()

Obtiene el documento XML.

public getXmlDocument() : XmlInterface|null
Return values
XmlInterface|null

setCertificate()

Asigna el certificado para firmar el documento.

public setCertificate(CertificateInterface|null $certificate) : static
Parameters
$certificate : CertificateInterface|null
Return values
static

setFolio()

Asigna el folio numérico al documento.

public setFolio(int $folio) : static
Parameters
$folio : int
Return values
static

setInputData()

Asignar los datos de entrada del documento.

public setInputData(string|array<string|int, mixed>|stdClass|null $inputData) : static
Parameters
$inputData : string|array<string|int, mixed>|stdClass|null
Return values
static

setLibredteData()

Asigna los datos de LibreDTE que están asociados al documento pero no son parte de la estructura oficial que utiliza el SII.

public setLibredteData(array<string|int, mixed>|null $libredteData) : static
Parameters
$libredteData : array<string|int, mixed>|null
Return values
static

setNormalizedData()

Asigna los datos normalizados del documento.

public setNormalizedData(array<string|int, mixed>|null $normalizedData) : static
Parameters
$normalizedData : array<string|int, mixed>|null
Return values
static

setParsedData()

Asigna los datos procesados (parseados) del documento.

public setParsedData(array<string|int, mixed>|null $parsedData) : static
Parameters
$parsedData : array<string|int, mixed>|null
Return values
static

setTimbre()

Asigna el timbre del documento.

public setTimbre(array<string|int, mixed>|null $timbre) : static
Parameters
$timbre : array<string|int, mixed>|null
Return values
static

setXmlDocument()

Asigna el documento XML.

public setXmlDocument(XmlInterface|null $xmlDocument) : static
Parameters
$xmlDocument : XmlInterface|null
Return values
static

withCertificate()

Retorna una nueva bolsa con los datos del DTE e incluye un certificado.

public withCertificate(CertificateInterface $certificate) : DocumentBagInterface
Parameters
$certificate : CertificateInterface
Return values
DocumentBagInterface

        
On this page

Search results