LibreDTE

DispatcherWorkerInterface extends WorkerInterface

Interfaz para el worker que maneja el envío de los documentos.

Table of Contents

Methods

create()  : DocumentEnvelopeInterface
Crea un sobre con los datos de la bolsa de un documento tributario.
createMany()  : DocumentEnvelopeInterface
Crea un sobre con los datos de varias bolsas de documentos tributarios.
loadXml()  : DocumentEnvelopeInterface
Realiza la carga del sobre de documentos desde un string XML.
normalize()  : DocumentEnvelopeInterface
Normaliza un sobre con datos de los documentos tributarios transferidos.
validate()  : XmlDocumentInterface
Realiza la validación del sobre de documentos tributarios.
validateSchema()  : XmlDocumentInterface
Valida el esquema del XML del sobre de documentos tributarios.
validateSignature()  : array<string|int, SignatureValidationResultInterface>
Valida la firma electrónica del sobre de documentos tributarios.

Methods

create()

Crea un sobre con los datos de la bolsa de un documento tributario.

public create(DocumentBagInterface $bag) : DocumentEnvelopeInterface
Parameters
$bag : DocumentBagInterface

Bolsa con los datos del documento a partir del cual se arma el sobre.

Tags
throws
DispatcherException

Si se agregan más tipos de documentos de los permitidos en el sobre, o si el certificado digital no está vigente al momento de firmar.

DocumentBagManagerException

Si no se determina un tipo de documento tributario válido para el documento de la bolsa.

Return values
DocumentEnvelopeInterface —

El sobre construido a partir de la bolsa.

createMany()

Crea un sobre con los datos de varias bolsas de documentos tributarios.

public createMany(array<string|int, DocumentBagInterface> $bags) : DocumentEnvelopeInterface

Todas las bolsas deben ser del mismo emisor — el certificado del sobre se toma de la primera bolsa, igual que asume ensureEmisor() con el emisor.

Parameters
$bags : array<string|int, DocumentBagInterface>

Bolsas con los datos de los documentos a partir de los cuales se arma el sobre.

Tags
throws
DispatcherException

Si $bags viene vacío, si se agregan más tipos de documentos de los permitidos en el sobre, o si el certificado digital no está vigente al momento de firmar.

DocumentBagManagerException

Si no se determina un tipo de documento tributario válido para el documento de alguna bolsa.

Return values
DocumentEnvelopeInterface —

El sobre construido a partir de las bolsas.

loadXml()

Realiza la carga del sobre de documentos desde un string XML.

public loadXml(XmlDocumentInterface|string $xml) : DocumentEnvelopeInterface
Parameters
$xml : XmlDocumentInterface|string

Datos del sobre de documentos tributarios.

Tags
throws
XmlParseException

Si el XML del sobre está vacío o mal formado.

DocumentBagManagerException

Si el sobre contiene un documento sin un tipo de documento tributario válido.

Return values
DocumentEnvelopeInterface —

El sobre reconstruido a partir del XML.

validateSchema()

Valida el esquema del XML del sobre de documentos tributarios.

public validateSchema(DocumentEnvelopeInterface|XmlDocumentInterface|string $source) : XmlDocumentInterface
Parameters
$source : DocumentEnvelopeInterface|XmlDocumentInterface|string

Origen a validar: el sobre ya construido, o su XML ya construido (como documento o como string).

Tags
throws
XmlException

Si la validación del esquema falla.

Return values
XmlDocumentInterface —

El XML del sobre, ya validado contra su esquema XSD.

validateSignature()

Valida la firma electrónica del sobre de documentos tributarios.

public validateSignature(DocumentEnvelopeInterface|XmlDocumentInterface|string $source) : array<string|int, SignatureValidationResultInterface>
Parameters
$source : DocumentEnvelopeInterface|XmlDocumentInterface|string

Origen a validar: el sobre ya construido, o su XML ya construido (como documento o como string).

Tags
throws
SignatureException

Si la validación de la firma falla.

Attributes
#[NoDiscard]
Return values
array<string|int, SignatureValidationResultInterface> —

El resultado de validar cada firma electrónica encontrada en el sobre.

On this page

Search results