LibreDTE

DocumentBag
in package
implements DocumentBagInterface

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.
$normalizedData  : array<string|int, mixed>|null
Datos normalizados del documento tributario.
$options  : DataContainerInterface|null
Opciones para los workers asociados al documento.
$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.
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.
getId()  : string
Entrega el ID del documento.
getInputData()  : string|null
Obtiene los datos de entrada del documento.
getNormalizedData()  : array<string|int, mixed>|null
Obtiene los datos normalizados del documento.
getNormalizerOptions()  : array<string|int, mixed>
Obtiene las opciones del normalizador del documento.
getOptions()  : DataContainerInterface|null
Obtiene las opciones 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.
setInputData()  : static
Asignar los datos de entrada del documento.
setNormalizedData()  : static
Asigna los datos normalizados del documento.
setOptions()  : static
Asigna las opciones 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' => []]]

El formato del esquema es el utilizado por Symfony\Component\OptionsResolver\OptionsResolver.

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.

$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.

$options

Opciones para los workers asociados al documento.

private DataContainerInterface|null $options

Se definen los siguientes índices para las opciones:

  • builder: Opciones para los constructores.
  • normalizer: Opciones para los normalizadores.
  • parser: Opciones para los analizadores sintácticos.
  • renderer: Opciones para los renderizadores.
  • sanitizer: Opciones para los sanitizadores.
  • validator: Opciones para los validadores.

Se usarán las opciones por defecto en cada worker si no se indican los índices en el arreglo $options.

$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. Con algunas extensiones, como los datos "extras".

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>|DataContainerInterface|null $options = null ][, 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
$options : array<string|int, mixed>|DataContainerInterface|null = null
$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

getDocumentTypeId()

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

public getDocumentTypeId() : int|null
Return values
int|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

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>

getOptions()

Obtiene las opciones del documento.

public getOptions() : DataContainerInterface|null
Return values
DataContainerInterface|null

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

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

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

setOptions()

Asigna las opciones del documento.

public setOptions(array<string|int, mixed>|DataContainerInterface|null $options) : static
Parameters
$options : array<string|int, mixed>|DataContainerInterface|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