SiiLazyWorkerInterface
extends
WorkerInterface
in
Interfaz del lazy worker del SII.
Table of Contents
Methods
- authenticate() : string
- Obtiene un token de autenticación asociado al certificado digital.
- checkXmlDocumentSentStatus() : SiiCheckXmlDocumentSentStatusResponse
- Obtiene el estado actualizado del envío de un documento XML al SII.
- consumeWebservice() : XmlInterface
- Realiza una solicitud a un servicio web del SII mediante el uso de WSDL.
- requestXmlDocumentSentStatusByEmail() : SiiRequestXmlDocumentSentStatusByEmailResponse
- Solicita al SII que le envíe el estado del DTE mediente correo electrónico.
- sendXmlDocument() : int
- Realiza el envío de un documento XML al SII.
- validateDocument() : SiiValidateDocumentResponse
- Obtiene el estado de un documento en el SII.
- validateDocumentSignature() : SiiValidateDocumentSignatureResponse
- Obtiene el estado avanzado de un documento en el SII.
Methods
authenticate()
Obtiene un token de autenticación asociado al certificado digital.
public
authenticate(SiiRequestInterface $request) : string
El token se busca primero en la caché, si existe, se reutilizará, si no existe se solicitará uno nuevo al SII.
Parameters
- $request : SiiRequestInterface
-
Datos de la solicitud al SII.
Tags
Return values
string —El token asociado al certificado digital de la solicitud.
checkXmlDocumentSentStatus()
Obtiene el estado actualizado del envío de un documento XML al SII.
public
checkXmlDocumentSentStatus(SiiRequestInterface $request, int $trackId, string $company) : SiiCheckXmlDocumentSentStatusResponse
Este estado podría no ser el final, si no es un estado final se debe reintentar la consulta posteriormente al SII.
Referencia: https://www.sii.cl/factura_electronica/factura_mercado/estado_envio.pdf
Parameters
- $request : SiiRequestInterface
-
Datos de la solicitud al SII.
- $trackId : int
-
Número de seguimiento asignado al envío del XML.
- $company : string
-
RUT de la empresa emisora del XML que se envió.
Tags
Return values
SiiCheckXmlDocumentSentStatusResponseconsumeWebservice()
Realiza una solicitud a un servicio web del SII mediante el uso de WSDL.
public
consumeWebservice(SiiRequestInterface $request, string $service, string $function[, array<string|int, mixed>|int $args = [] ][, int|null $retry = null ]) : XmlInterface
Este método prepara y normaliza los datos recibidos y llama al método que realmente hace la consulta al SII: callServiceFunction().
Parameters
- $request : SiiRequestInterface
-
Datos de la solicitud al SII.
- $service : string
-
Nombre del servicio del SII que se consumirá.
- $function : string
-
Nombre de la función que se ejecutará en el servicio web del SII.
- $args : array<string|int, mixed>|int = []
-
Argumentos que se pasarán al servicio web.
- $retry : int|null = null
-
Intentos que se realizarán como máximo para obtener respuesta.
Tags
Return values
XmlInterface —Documento XML con la respuesta del servicio web.
requestXmlDocumentSentStatusByEmail()
Solicita al SII que le envíe el estado del DTE mediente correo electrónico.
public
requestXmlDocumentSentStatusByEmail(SiiRequestInterface $request, int $trackId, string $company) : SiiRequestXmlDocumentSentStatusByEmailResponse
El correo al que se informa el estado del DTE es el que está configurado en el SII, no siendo posible asignarlo mediante el servicio web.
La principal ventaja de utilizar este método es que el SII en el correo incluye los detalles de los rechazos, algo que no entrega a través del servicio web de consulta del estado del envío del XML al SII.
Referencia: https://www.sii.cl/factura_electronica/factura_mercado/OIFE2005_wsDTECorreo_MDE.pdf
Parameters
- $request : SiiRequestInterface
-
Datos de la solicitud al SII.
- $trackId : int
-
Número de seguimiento asignado al envío del XML.
- $company : string
-
RUT de la empresa emisora del documento.
Tags
Return values
SiiRequestXmlDocumentSentStatusByEmailResponsesendXmlDocument()
Realiza el envío de un documento XML al SII.
public
sendXmlDocument(SiiRequestInterface $request, XmlInterface $doc, string $company[, bool $compress = false ][, int|null $retry = null ]) : int
Parameters
- $request : SiiRequestInterface
-
Datos de la solicitud al SII.
- $doc : XmlInterface
-
Documento XML que se desea enviar al SII.
- $company : string
-
RUT de la empresa emisora del XML.
- $compress : bool = false
-
Indica si se debe enviar comprimido el XML.
- $retry : int|null = null
-
Intentos que se realizarán como máximo al enviar.
Tags
Return values
int —Número de seguimiento (Track ID) del envío del XML al SII.
validateDocument()
Obtiene el estado de un documento en el SII.
public
validateDocument(SiiRequestInterface $request, string $company, int $document, int $number, string $date, int $total, string $recipient) : SiiValidateDocumentResponse
Este estado solo se obtiene si el documento se encuentra aceptado por el SII, ya sea aceptado 100% OK o con reparos.
Este servicio valida que el documento exista en SII (esté aceptado) y además que los datos del documento proporcionados coincidan.
Referencia: https://www.sii.cl/factura_electronica/factura_mercado/estado_dte.pdf
Parameters
- $request : SiiRequestInterface
-
Datos de la solicitud al SII.
- $company : string
-
RUT de la empresa emisora del documento.
- $document : int
-
Tipo de documento tributario electrónico.
- $number : int
-
Folio del documento.
- $date : string
-
Fecha de emisión del documento, formato: AAAA-MM-DD.
- $total : int
-
Total del documento.
- $recipient : string
-
RUT del receptor del documento.
Tags
Return values
SiiValidateDocumentResponsevalidateDocumentSignature()
Obtiene el estado avanzado de un documento en el SII.
public
validateDocumentSignature(SiiRequestInterface $request, string $company, int $document, int $number, string $date, int $total, string $recipient, string $signature) : SiiValidateDocumentSignatureResponse
Este estado solo se obtiene si el documento se encuentra aceptado por el SII, ya sea aceptado 100% OK o con reparos.
Este servicio valida que el documento exista en SII (esté aceptado), que los datos del documento proporcionados coincidan. Finalmente, valida que la firma electrónica del documento coincida con la enviada al SII.
Referencia: https://www.sii.cl/factura_electronica/factura_mercado/OIFE2006_QueryEstDteAv_MDE.pdf
Parameters
- $request : SiiRequestInterface
-
Datos de la solicitud al SII.
- $company : string
-
RUT de la empresa emisora del documento.
- $document : int
-
Tipo de documento tributario electrónico.
- $number : int
-
Folio del documento.
- $date : string
-
Fecha de emisión del documento, formato: AAAA-MM-DD.
- $total : int
-
Total del documento.
- $recipient : string
-
RUT del receptor del documento.
- $signature : string
-
Tag DTE/Signature/SignatureValue del XML.