UNPKG

envio-comprobantes-sri

Version:

Envia comprobantes electronicos al SRI (Ecuador). Recibe un objeto JSON. Lo convierte a XML, lo firma, lo envía al servicio web del SRI y devuelve la respuesta.

27 lines (18 loc) 1.91 kB
### Envio de Comprobantes al SRI Este paquete proporciona la clase `EnvioComprobantesSRI` para firmar y enviar comprobantes electronicos. ### `EnvioComprobantesSRI` metodos - `constructor(cert_data, contribuyente_data)`: Recibe el certificado (la ruta y la clave, o el archivo en `Buffer` y la clave). Y recibe los datos del contribuyente emisor (el que está emitiendo el comprobante electrónico). La clase validará que los datos del certificado sean los mismos que del emisor. - `CertInfo()`: Obtiene los datos leidos del certificado. - `ContribuyenteData()` Permite leer los datos del contribuyente que se pasaron como argumento durante la creación de la clase (vease `constructor()`) - `AutorizarComprobanteSRI(documentType, data, reportProgress)`: En este proceso se recibe el tipo de documento (de momento solo se ha implementado `factura` y `notaCredito`), tambien recibe los datos estrcuturados por cada documento, y finalmente una funcion que va reportando las etapas por las que pasa el comprobante. ### manejo de Errores Esta ultima funcion recibe un archivo JSON como `data`, lo convierte a XML, luego lo firma con el certificado cargado, lo envia al SRI y solicita la autorizacion del mismo. Durante la funcion puede lanzarse una excepcion tipo `EnvioComprobantesSRIError` Si ocurre un error durante `constructor()` se lanzara una excepcion de tipo `CertificateRelatedError`, cualquier otro error, es una excepcion interna no controlada. ### Recomendaciones Este proyecto fue desarrollado en `typescript` y contiene las declaraciones las interfaces y clases utilizadas. Te recomiendo usar `Visual Studio Code` para obtener los tipos de datos esperados para cada funcion. ### Feedback Dispara tu feedback a `gosuetian@hotmail.es`! ### ToDo [ ] Implementacion de Retenciones [ ] Implementacion de Guias de Remision [ ] Implementacion de Liquidacion de Compras