UNPKG

pago46

Version:

package javascript for integration with plataform of pago46 to pay with cash.

30 lines (25 loc) 864 B
'use strict' const crypto = require('crypto') let get_concatenated_payload = (payload) => { let concatenatedParams = '' for (let key in payload) { concatenatedParams += '&'+ key + '=' + encodeURIComponent(payload[key]); } return concatenatedParams } const sign_request = (method, path, merchant_key, merchant_secret, payload) => { let date = + new Date() let concatenatedParams = get_concatenated_payload(payload) let requestPath = encodeURIComponent(path) let encrypt_base = `${merchant_key}&${String(date)}&${method}&${requestPath}${concatenatedParams}` const hash = crypto.createHmac('sha256', merchant_secret) .update(encrypt_base) .digest('hex') return { hash: hash, date: String(date) } } module.exports = { sign_request: sign_request }