UNPKG

cashbill

Version:

A TypeScript library for making payments through CashBill gateway.

26 lines (25 loc) 865 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const crypto = require("crypto"); const utils_1 = require("../../utils"); const error_1 = require("../../error"); class NotificationModule extends utils_1.LibModule { consume(request) { if (!this.verify(request)) { throw new error_1.CashBillError('Verification failed.'); } return this.mapRequestToNotification(request); } verify(request) { const config = this.getConfig(); const expectedSign = crypto .createHash('md5') .update(request.cmd + request.args + config.secretPhrase) .digest('hex'); return request.sign === expectedSign; } mapRequestToNotification(request) { return { paymentId: request.args }; } } exports.NotificationModule = NotificationModule;