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.
18 lines (17 loc) • 898 B
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const node_forge_1 = __importDefault(require("node-forge"));
const CertificateRelatedError_1 = __importDefault(require("./CertificateRelatedError"));
const SeleccionarCertificadoDeFirma_1 = __importDefault(require("./SeleccionarCertificadoDeFirma"));
function CrearHash(p12, infoAFirmar) {
var key = (0, SeleccionarCertificadoDeFirma_1.default)(p12).key;
if (!key)
throw new CertificateRelatedError_1.default("cert_bags_missing");
const md = node_forge_1.default.md.sha1.create();
md.update(infoAFirmar, 'utf8');
return Buffer.from(key.sign(md), "binary").toString("base64").match(/.{1,76}/g)?.join("\n");
}
exports.default = CrearHash;