UNPKG

pix-utils

Version:

Set of tools to parse, generate and validate payments of Brazil Instant Payment System (Pix)

37 lines 3.1 kB
import axios from 'axios'; import { Buffer } from 'buffer'; import { generateErrorObject } from './utils/generateErrorObject'; import zeroPad from './utils/zeroPad'; export default async function fetchPayload({ url, DPP = new Date().toISOString().substring(0, 10), codMun = 5300108, }) { const axiosOptions = { params: { DPP, codMun: zeroPad(codMun, 7), }, }; return axios .get('https://' + url, axiosOptions) .then(({ data, status }) => { if (status !== 200) return generateErrorObject('Status != 200'); return data; }) .then((jws) => { const parts = jws.split('.').map((b64) => Buffer.from(b64, 'base64')); const pixFetch = { jwsString: jws, jws: { hdr: parts[0], payload: parts[1], signature: parts[2], }, header: JSON.parse(parts[0].toString()), payload: JSON.parse(parts[1].toString()), }; return pixFetch; }) .catch((error) => { return generateErrorObject(error.message); }); } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pY1BheWxvYWQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZHluYW1pY1BheWxvYWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUE0QyxNQUFNLE9BQU8sQ0FBQztBQUNqRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBR2hDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ2xFLE9BQU8sT0FBTyxNQUFNLGlCQUFpQixDQUFDO0FBbUJ0QyxNQUFNLENBQUMsT0FBTyxDQUFDLEtBQUssVUFBVSxZQUFZLENBQUMsRUFDekMsR0FBRyxFQUNILEdBQUcsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDLFdBQVcsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLEVBQy9DLE1BQU0sR0FBRyxPQUFPLEdBQ0Q7SUFDZixNQUFNLFlBQVksR0FBdUI7UUFDdkMsTUFBTSxFQUFFO1lBQ04sR0FBRztZQUNILE1BQU0sRUFBRSxPQUFPLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQztTQUMzQjtLQUNGLENBQUM7SUFDRixPQUFPLEtBQUs7U0FDVCxHQUFHLENBQUMsVUFBVSxHQUFHLEdBQUcsRUFBRSxZQUFZLENBQUM7U0FDbkMsSUFBSSxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFpQixFQUFFLEVBQUU7UUFDeEMsSUFBSSxNQUFNLEtBQUssR0FBRztZQUFFLE9BQU8sbUJBQW1CLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDaEUsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDLENBQUM7U0FDRCxJQUFJLENBQUMsQ0FBQyxHQUFXLEVBQUUsRUFBRTtRQUNwQixNQUFNLEtBQUssR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsUUFBUSxDQUFDLENBQUMsQ0FBQztRQUN0RSxNQUFNLFFBQVEsR0FBb0I7WUFDaEMsU0FBUyxFQUFFLEdBQUc7WUFDZCxHQUFHLEVBQUU7Z0JBQ0gsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUM7Z0JBQ2IsT0FBTyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUM7Z0JBQ2pCLFNBQVMsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDO2FBQ3BCO1lBQ0QsTUFBTSxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3ZDLE9BQU8sRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBZTtTQUN2RCxDQUFDO1FBQ0YsT0FBTyxRQUFRLENBQUM7SUFDbEIsQ0FBQyxDQUFDO1NBQ0QsS0FBSyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7UUFDZixPQUFPLG1CQUFtQixDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUM1QyxDQUFDLENBQUMsQ0FBQztBQUNQLENBQUMifQ==