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.
19 lines (18 loc) • 792 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"));
function CrearHash(p12, infoAFirmar) {
var pkcs8bags = p12.getBags({ bagType: node_forge_1.default.pki.oids.pkcs8ShroudedKeyBag });
var pkcs8 = pkcs8bags[node_forge_1.default.pki.oids.pkcs8ShroudedKeyBag][0];
var key = pkcs8.key;
if (key == null) {
key = pkcs8.asn1;
}
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;