DocumentResponseWorker
extends AbstractWorker
in package
implements
DocumentResponseWorkerInterface
Worker "billing.exchange.document_response".
Genera los XML de respuesta al intercambio de DTE:
EnvioRecibos: recibo de mercaderías o servicios (acción ERM).RespuestaDTE: acuse de recibo del envío o resultado de validación.
Attributes
- #[Worker]
- $name: 'document_response'
- $component: 'exchange'
- $package: 'billing'
Table of Contents
Interfaces
- DocumentResponseWorkerInterface
- Interfaz para `DocumentResponseWorker`.
Properties
- $buildEnvioRecibosJob : BuildEnvioRecibosJob
- $buildRespuestaEnvioJob : BuildRespuestaEnvioJob
- $signatureService : SignatureServiceInterface
- $xmlService : XmlServiceInterface
Methods
- __construct() : mixed
- buildEnvioRecibos() : EnvioRecibos
- Construye el XML `EnvioRecibos` firmado.
- buildRespuestaEnvio() : RespuestaEnvio
- Construye el XML `RespuestaDTE` firmado.
- validateSchema() : XmlDocumentInterface
- Valida el esquema XSD del documento de respuesta.
- validateSignature() : array<string|int, SignatureValidationResultInterface>
- Valida la(s) firma(s) electrónica(s) del documento de respuesta.
- toXmlDocument() : XmlDocument
- Convierte la fuente en un `XmlDocument`.
Properties
$buildEnvioRecibosJob
private
BuildEnvioRecibosJob
$buildEnvioRecibosJob
$buildRespuestaEnvioJob
private
BuildRespuestaEnvioJob
$buildRespuestaEnvioJob
$signatureService
private
SignatureServiceInterface
$signatureService
$xmlService
private
XmlServiceInterface
$xmlService
Methods
__construct()
public
__construct(BuildEnvioRecibosJob $buildEnvioRecibosJob, BuildRespuestaEnvioJob $buildRespuestaEnvioJob, XmlServiceInterface $xmlService, SignatureServiceInterface $signatureService) : mixed
Parameters
- $buildEnvioRecibosJob : BuildEnvioRecibosJob
- $buildRespuestaEnvioJob : BuildRespuestaEnvioJob
- $xmlService : XmlServiceInterface
- $signatureService : SignatureServiceInterface
buildEnvioRecibos()
Construye el XML `EnvioRecibos` firmado.
public
buildEnvioRecibos(ExchangeDocumentBag $bag) : EnvioRecibos
Parameters
- $bag : ExchangeDocumentBag
-
Bolsa con la carátula y los recibos.
Attributes
- #[Operation]
- $parameters: ['bag' => ['example' => ['tipo' => TipoDocumentoRespuesta::ENVIO_RECIBOS, 'caratula' => ['RutResponde' => '76192083-9', 'RutRecibe' => '88888888-8'], 'data' => [['TipoDoc' => 33, 'Folio' => 1, 'FchEmis' => '2024-01-15', 'RUTEmisor' => '88888888-8', 'RUTRecep' => '76192083-9', 'MntTotal' => 100000, 'Recinto' => 'Oficina central', 'RutFirma' => '76192083-9']], 'certificate' => ['certificate' => '', 'privateKey' => '']]]]
Return values
EnvioRecibos —El EnvioRecibos construido y firmado.
buildRespuestaEnvio()
Construye el XML `RespuestaDTE` firmado.
public
buildRespuestaEnvio(ExchangeDocumentBag $bag) : RespuestaEnvio
Parameters
- $bag : ExchangeDocumentBag
-
Bolsa con la carátula y las respuestas.
Attributes
- #[Operation]
- $parameters: ['bag' => ['example' => ['tipo' => TipoDocumentoRespuesta::RESPUESTA_ENVIO, 'caratula' => ['RutResponde' => '76192083-9', 'RutRecibe' => '88888888-8', 'IdRespuesta' => 1], 'data' => ['resultado_dte' => [['TipoDTE' => 33, 'Folio' => 1, 'FchEmis' => '2024-01-15', 'RUTEmisor' => '88888888-8', 'RUTRecep' => '76192083-9', 'MntTotal' => 100000, 'CodEnvio' => 1, 'EstadoDTE' => 0, 'EstadoDTEGlosa' => 'ACEPTADO OK']]], 'certificate' => ['certificate' => '', 'privateKey' => '']]]]
Return values
RespuestaEnvio —El RespuestaDTE construido y firmado.
validateSchema()
Valida el esquema XSD del documento de respuesta.
public
validateSchema(AbstractExchangeDocument|XmlDocumentInterface|string $source) : XmlDocumentInterface
Parameters
- $source : AbstractExchangeDocument|XmlDocumentInterface|string
-
Origen a validar: el documento de respuesta ya construido (
EnvioRecibosoRespuestaEnvio), o su XML ya construido (como documento o como string).
Attributes
- #[Operation]
- $parameters: ['source' => ['example' => '']]
Return values
XmlDocumentInterface —El documento XML validado.
validateSignature()
Valida la(s) firma(s) electrónica(s) del documento de respuesta.
public
validateSignature(AbstractExchangeDocument|XmlDocumentInterface|string $source) : array<string|int, SignatureValidationResultInterface>
Parameters
- $source : AbstractExchangeDocument|XmlDocumentInterface|string
-
Origen a validar: el documento de respuesta ya construido (
EnvioRecibosoRespuestaEnvio), o su XML ya construido (como documento o como string).
Attributes
- #[Operation]
- $parameters: ['source' => ['example' => '']]
Return values
array<string|int, SignatureValidationResultInterface> —El resultado de validar cada firma electrónica encontrada en el documento.
toXmlDocument()
Convierte la fuente en un `XmlDocument`.
private
toXmlDocument(AbstractExchangeDocument|XmlDocumentInterface|string $source) : XmlDocument
Parameters
- $source : AbstractExchangeDocument|XmlDocumentInterface|string