DocumentBagInterface
extends
OptionsAwareInterface, JsonSerializable
in
Interfaz para el contenedor de un documento.
Table of Contents
Methods
- getAlias() : string
- Entrega el alias del tipo de documento que contiene la bolsa.
- getBuilderOptions() : array<string, 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, mixed>|null
- Obtiene los datos del documento.
- getDataReader() : ArrayReader|null
- Obtiene un lector de los datos del documento o `null` si no se pueden generar.
- getDocument() : DocumentInterface|null
- Obtiene el documento tributario electrónico.
- getDocumentAuth() : array<string, mixed>|null
- Obtiene los datos de la autorización del emisor para emitir DTE.
- getDocumentData() : array<string, mixed>|null
- Obtiene los datos del documento agregando los datos específicos de LibreDTE.
- getDocumentExtra() : array<string, 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, 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.
- getLibredteDataReader() : ArrayReader|null
- Obtiene un lector de los datos de LibreDTE que están asociados al documento o `null` si no están asignados.
- getNormalizedData() : array<string, mixed>|null
- Obtiene los datos normalizados del documento.
- getNormalizedDataReader() : ArrayReader|null
- Obtiene un lector de los datos normalizados del documento o `null` si no están asignados.
- getNormalizerOptions() : array<string, mixed>
- Obtiene las opciones del normalizador del documento.
- getParsedData() : array<string, mixed>|null
- Obtiene los datos procesados (parseados) del documento.
- getParsedDataReader() : ArrayReader|null
- Obtiene un lector de los datos procesados (parseados) del documento o `null` si no están asignados.
- getParserOptions() : array<string, mixed>
- Obtiene las opciones del procesador (parser) del documento.
- getReceptor() : ReceptorInterface|null
- Obtiene el receptor del documento.
- getRendererOptions() : array<string, mixed>
- Obtiene las opciones del renderizador del documento.
- getSanitizerOptions() : array<string, mixed>
- Obtiene las opciones del sanitizador del documento.
- getTimbre() : array<string, mixed>|null
- Obtiene el timbre del documento.
- getTipoDocumento() : TipoDocumentoInterface|null
- getValidatorOptions() : array<string, mixed>
- Obtiene las opciones del validador del documento.
- getXmlDocument() : XmlDocumentInterface|null
- Obtiene el documento XML.
- getXmlReader() : XPathReader|null
- Obtiene un lector del documento XML o `null` si no está asignado.
- requireCaf() : CafInterface
- Obtiene el CAF o falla si no está asignado.
- requireCertificate() : CertificateInterface
- Obtiene el certificado o falla si no está asignado.
- requireData() : array<string, mixed>
- Obtiene los datos del documento o falla si no se pueden generar.
- requireDataReader() : ArrayReader
- Obtiene un lector de los datos del documento o falla si no se pueden generar.
- requireDocument() : DocumentInterface
- Obtiene el documento tributario electrónico o falla si no está asignado.
- requireEmisor() : EmisorInterface
- Obtiene el emisor del documento o falla si no está asignado.
- requireInputData() : string
- Obtiene los datos de entrada del documento o falla si no están asignados.
- requireNormalizedData() : array<string, mixed>
- Obtiene los datos normalizados del documento o falla si no están asignados.
- requireNormalizedDataReader() : ArrayReader
- Obtiene un lector de los datos normalizados del documento o falla si no están asignados.
- requireTipoDocumento() : TipoDocumentoInterface
- Obtiene el tipo de documento tributario electrónico o falla si no está asignado.
- requireXmlDocument() : XmlDocumentInterface
- Obtiene el documento XML o falla si no está asignado.
- requireXmlReader() : XPathReader
- Obtiene un lector del documento XML o falla si no está asignado.
- 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.
- toArray() : array<string|int, mixed>
- Entrega los datos de la bolsa como un arreglo.
- 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.
Methods
getAlias()
Entrega el alias del tipo de documento que contiene la bolsa.
public
getAlias() : string
Return values
stringgetBuilderOptions()
Obtiene las opciones del constructor del documento.
public
getBuilderOptions() : array<string, mixed>
Return values
array<string, mixed>getCaf()
Obtiene el CAF para timbrar el documento.
public
getCaf() : CafInterface|null
Return values
CafInterface|nullgetCertificate()
Obtiene el certificado para firmar el documento.
public
getCertificate() : CertificateInterface|null
Return values
CertificateInterface|nullgetCodigoTipoDocumento()
public
getCodigoTipoDocumento() : int|null
Tags
Return values
int|nullgetData()
Obtiene los datos del documento.
public
getData() : array<string, mixed>|null
Los datos se arman en un nodo DTE con los datos normalizados. Si está disponible además se agrega el timbre.
Estos datos no incluyen la firma electrónica.
Tampoco se incluyen datos específicos de LibreDTE. Si se necesitan los datos del documento completo, con los datos específicos de LibreDTE, usar el método getDocumentData().
Return values
array<string, mixed>|nullgetDataReader()
Obtiene un lector de los datos del documento o `null` si no se pueden generar.
public
getDataReader() : ArrayReader|null
El lector es una instantánea de los datos: se debe pedir uno nuevo después de modificarlos para leer los cambios.
Return values
ArrayReader|nullgetDocument()
Obtiene el documento tributario electrónico.
public
getDocument() : DocumentInterface|null
Return values
DocumentInterface|nullgetDocumentAuth()
Obtiene los datos de la autorización del emisor para emitir DTE.
public
getDocumentAuth() : array<string, mixed>|null
Return values
array<string, mixed>|nullgetDocumentData()
Obtiene los datos del documento agregando los datos específicos de LibreDTE.
public
getDocumentData() : array<string, mixed>|null
Si se quieren solo los datos del documento, sin los agregados de LibreDTE se deben extrar directamente del DTE.
Por otro lado, si se quieren los datos normalizados preparados para firma se debe utilizar getData().
Return values
array<string, mixed>|nullgetDocumentExtra()
Obtiene los datos extras del documento.
public
getDocumentExtra() : array<string, mixed>|null
Esto entregará todos los datos extras del documento menos aquellos que
son parte de los datos que se agregan a la estructura de datos del
documento tributario para completar tags entre diferentes tipos de
documentos. O sea, todo lo extra, menos el índice dte.
Return values
array<string, mixed>|nullgetDocumentStamp()
Obtiene el timbre del DTE.
public
getDocumentStamp() : string|null
Return values
string|nullgetDocumentType()
Obtiene el tipo de documento tributario electrónico.
public
getDocumentType() : TipoDocumentoInterface|null
Return values
TipoDocumentoInterface|nullgetDocumentTypeId()
Obtiene el código numérico del documento tributario electrónico.
public
getDocumentTypeId() : int|null
Return values
int|nullgetEmisor()
Obtiene el emisor del documento.
public
getEmisor() : EmisorInterface|null
Return values
EmisorInterface|nullgetFolio()
Obtiene el folio del documento.
public
getFolio() : int|string|null
Cuando el folio es un entero se asume que es un folio oficial del SII.
Cuando es un folio alfanumérico (string) se asume que es un folio de una cotización de LibreDTE.
Cuando el folio no existe (falta, o es null, false o 0) se
entregará null.
El folio puede provenir del documento normalizado (si existe) o del documento parseado (si aun no se normaliza).
Return values
int|string|nullgetId()
Entrega el ID del documento.
public
getId() : string
Return values
stringgetInputData()
Obtiene los datos de entrada del documento.
public
getInputData() : string|null
Return values
string|nullgetLibredteData()
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, mixed>|null
Return values
array<string, mixed>|nullgetLibredteDataReader()
Obtiene un lector de los datos de LibreDTE que están asociados al documento o `null` si no están asignados.
public
getLibredteDataReader() : ArrayReader|null
El lector es una instantánea de los datos: se debe pedir uno nuevo después de modificarlos para leer los cambios.
Return values
ArrayReader|nullgetNormalizedData()
Obtiene los datos normalizados del documento.
public
getNormalizedData() : array<string, mixed>|null
Return values
array<string, mixed>|nullgetNormalizedDataReader()
Obtiene un lector de los datos normalizados del documento o `null` si no están asignados.
public
getNormalizedDataReader() : ArrayReader|null
El lector es una instantánea de los datos: se debe pedir uno nuevo después de modificarlos para leer los cambios.
Return values
ArrayReader|nullgetNormalizerOptions()
Obtiene las opciones del normalizador del documento.
public
getNormalizerOptions() : array<string, mixed>
Return values
array<string, mixed>getParsedData()
Obtiene los datos procesados (parseados) del documento.
public
getParsedData() : array<string, mixed>|null
Return values
array<string, mixed>|nullgetParsedDataReader()
Obtiene un lector de los datos procesados (parseados) del documento o `null` si no están asignados.
public
getParsedDataReader() : ArrayReader|null
El lector es una instantánea de los datos: se debe pedir uno nuevo después de modificarlos para leer los cambios.
Return values
ArrayReader|nullgetParserOptions()
Obtiene las opciones del procesador (parser) del documento.
public
getParserOptions() : array<string, mixed>
Return values
array<string, mixed>getReceptor()
Obtiene el receptor del documento.
public
getReceptor() : ReceptorInterface|null
Return values
ReceptorInterface|nullgetRendererOptions()
Obtiene las opciones del renderizador del documento.
public
getRendererOptions() : array<string, mixed>
Return values
array<string, mixed>getSanitizerOptions()
Obtiene las opciones del sanitizador del documento.
public
getSanitizerOptions() : array<string, mixed>
Return values
array<string, mixed>getTimbre()
Obtiene el timbre del documento.
public
getTimbre() : array<string, mixed>|null
Este es el nodo TED del documento.
Return values
array<string, mixed>|nullgetTipoDocumento()
public
getTipoDocumento() : TipoDocumentoInterface|null
Tags
Return values
TipoDocumentoInterface|nullgetValidatorOptions()
Obtiene las opciones del validador del documento.
public
getValidatorOptions() : array<string, mixed>
Return values
array<string, mixed>getXmlDocument()
Obtiene el documento XML.
public
getXmlDocument() : XmlDocumentInterface|null
Return values
XmlDocumentInterface|nullgetXmlReader()
Obtiene un lector del documento XML o `null` si no está asignado.
public
getXmlReader() : XPathReader|null
El lector lee el documento XML cada vez que se le pide un dato, por lo que ve los cambios que se hagan en el documento.
Return values
XPathReader|nullrequireCaf()
Obtiene el CAF o falla si no está asignado.
public
requireCaf() : CafInterface
Tags
Return values
CafInterfacerequireCertificate()
Obtiene el certificado o falla si no está asignado.
public
requireCertificate() : CertificateInterface
Tags
Return values
CertificateInterfacerequireData()
Obtiene los datos del documento o falla si no se pueden generar.
public
requireData() : array<string, mixed>
Tags
Return values
array<string, mixed>requireDataReader()
Obtiene un lector de los datos del documento o falla si no se pueden generar.
public
requireDataReader() : ArrayReader
El lector es una instantánea de los datos: se debe pedir uno nuevo después de modificarlos para leer los cambios.
Tags
Return values
ArrayReaderrequireDocument()
Obtiene el documento tributario electrónico o falla si no está asignado.
public
requireDocument() : DocumentInterface
Tags
Return values
DocumentInterfacerequireEmisor()
Obtiene el emisor del documento o falla si no está asignado.
public
requireEmisor() : EmisorInterface
Tags
Return values
EmisorInterfacerequireInputData()
Obtiene los datos de entrada del documento o falla si no están asignados.
public
requireInputData() : string
Tags
Return values
stringrequireNormalizedData()
Obtiene los datos normalizados del documento o falla si no están asignados.
public
requireNormalizedData() : array<string, mixed>
Tags
Return values
array<string, mixed>requireNormalizedDataReader()
Obtiene un lector de los datos normalizados del documento o falla si no están asignados.
public
requireNormalizedDataReader() : ArrayReader
El lector es una instantánea de los datos: se debe pedir uno nuevo después de modificarlos para leer los cambios.
Tags
Return values
ArrayReaderrequireTipoDocumento()
Obtiene el tipo de documento tributario electrónico o falla si no está asignado.
public
requireTipoDocumento() : TipoDocumentoInterface
Tags
Return values
TipoDocumentoInterfacerequireXmlDocument()
Obtiene el documento XML o falla si no está asignado.
public
requireXmlDocument() : XmlDocumentInterface
Tags
Return values
XmlDocumentInterfacerequireXmlReader()
Obtiene un lector del documento XML o falla si no está asignado.
public
requireXmlReader() : XPathReader
El lector lee el documento XML cada vez que se le pide un dato, por lo que ve los cambios que se hagan en el documento.
Tags
Return values
XPathReadersetCaf()
Asigna el CAF para timbrar el documento.
public
setCaf(CafInterface|null $caf) : static
Parameters
- $caf : CafInterface|null
Return values
staticsetCertificate()
Asigna el certificado para firmar el documento.
public
setCertificate(CertificateInterface|null $certificate) : static
Parameters
- $certificate : CertificateInterface|null
Return values
staticsetDocument()
Asigna el documento tributario electrónico.
public
setDocument(DocumentInterface|null $document) : static
Parameters
- $document : DocumentInterface|null
Return values
staticsetDocumentType()
Asigna el tipo de documento tributario electrónico.
public
setDocumentType(TipoDocumentoInterface|null $documentType) : static
Parameters
- $documentType : TipoDocumentoInterface|null
Return values
staticsetEmisor()
Asigna el emisor del documento.
public
setEmisor(EmisorInterface|null $emisor) : static
Parameters
- $emisor : EmisorInterface|null
Return values
staticsetFolio()
Asigna el folio numérico al documento.
public
setFolio(int $folio) : static
El folio se asignará a los datos normalizados si existen o bien a los datos parseados si aun no se normaliza.
Parameters
- $folio : int
Return values
staticsetInputData()
Asignar los datos de entrada del documento.
public
setInputData(string|array<string, mixed>|stdClass|null $inputData) : static
Si los datos no son string se serializan como JSON.
Parameters
- $inputData : string|array<string, mixed>|stdClass|null
Return values
staticsetLibredteData()
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, mixed>|null $libredteData) : static
Parameters
- $libredteData : array<string, mixed>|null
Return values
staticsetNormalizedData()
Asigna los datos normalizados del documento.
public
setNormalizedData(array<string, mixed>|null $normalizedData) : static
Parameters
- $normalizedData : array<string, mixed>|null
Return values
staticsetParsedData()
Asigna los datos procesados (parseados) del documento.
public
setParsedData(array<string, mixed>|null $parsedData) : static
Parameters
- $parsedData : array<string, mixed>|null
Return values
staticsetReceptor()
Asigna el receptor del documento.
public
setReceptor(ReceptorInterface|null $receptor) : static
Parameters
- $receptor : ReceptorInterface|null
Return values
staticsetTimbre()
Asigna el timbre del documento.
public
setTimbre(array<string, mixed>|null $timbre) : static
Este es el nodo TED del documento.
Parameters
- $timbre : array<string, mixed>|null
Return values
staticsetTipoDocumento()
public
setTipoDocumento(TipoDocumentoInterface|null $documentType) : static
Parameters
- $documentType : TipoDocumentoInterface|null
Tags
Return values
staticsetXmlDocument()
Asigna el documento XML.
public
setXmlDocument(XmlDocumentInterface|null $xml) : static
Parameters
- $xml : XmlDocumentInterface|null
Return values
statictoArray()
Entrega los datos de la bolsa como un arreglo.
public
toArray() : array<string|int, mixed>
Return values
array<string|int, mixed>withCaf()
Retorna una nueva bolsa con los datos del DTE e incluye un archivo CAF.
public
withCaf(CafInterface $caf) : DocumentBagInterface
Las bolsas no se pueden reutilizar una vez se normalizaron, porque ya se generó el DTE. Este método sirve para agregar a una bolsa sin CAF el CAF y tener una nueva bolsa sin el DTE para volver a construir y timbrar.
Parameters
- $caf : CafInterface
Return values
DocumentBagInterfacewithCertificate()
Retorna una nueva bolsa con los datos del DTE e incluye un certificado.
public
withCertificate(CertificateInterface $certificate) : DocumentBagInterface
Las bolsas no se pueden reutilizar una vez se normalizaron, porque ya se generó el DTE. Este método sirve para agregar a una bolsa sin certificado digital el certificado y tener una nueva bolsa sin el DTE para volver a construir y firmar.
Parameters
- $certificate : CertificateInterface