pix-utils
Version:
Set of tools to parse, generate and validate payments of Brazil Instant Payment System (Pix)
63 lines • 5.09 kB
JavaScript
import axios from 'axios';
import { Buffer } from 'buffer';
import { generateErrorObject } from './utils/generateErrorObject';
import zeroPad from './utils/zeroPad';
export 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);
});
}
export async function fetchRecPayload({ url, }) {
return axios
.get(`https://${url}`)
.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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pY1BheWxvYWQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZHluYW1pY1BheWxvYWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUE0QyxNQUFNLE9BQU8sQ0FBQztBQUNqRSxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBR2hDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ2xFLE9BQU8sT0FBTyxNQUFNLGlCQUFpQixDQUFDO0FBa0N0QyxNQUFNLENBQUMsS0FBSyxVQUFVLFlBQVksQ0FBQyxFQUNqQyxHQUFHLEVBQ0gsR0FBRyxHQUFHLElBQUksSUFBSSxFQUFFLENBQUMsV0FBVyxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsRUFDL0MsTUFBTSxHQUFHLE9BQU8sR0FDRDtJQUNmLE1BQU0sWUFBWSxHQUF1QjtRQUN2QyxNQUFNLEVBQUU7WUFDTixHQUFHO1lBQ0gsTUFBTSxFQUFFLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO1NBQzNCO0tBQ0YsQ0FBQztJQUNGLE9BQU8sS0FBSztTQUNULEdBQUcsQ0FBQyxXQUFXLEdBQUcsRUFBRSxFQUFFLFlBQVksQ0FBQztTQUNuQyxJQUFJLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQWlCLEVBQUUsRUFBRTtRQUN4QyxJQUFJLE1BQU0sS0FBSyxHQUFHO1lBQUUsT0FBTyxtQkFBbUIsQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUNoRSxPQUFPLElBQUksQ0FBQztJQUNkLENBQUMsQ0FBQztTQUNELElBQUksQ0FBQyxDQUFDLEdBQVcsRUFBRSxFQUFFO1FBQ3BCLE1BQU0sS0FBSyxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDO1FBQ3RFLE1BQU0sUUFBUSxHQUFvQjtZQUNoQyxTQUFTLEVBQUUsR0FBRztZQUNkLEdBQUcsRUFBRTtnQkFDSCxHQUFHLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQztnQkFDYixPQUFPLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQztnQkFDakIsU0FBUyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUM7YUFDcEI7WUFDRCxNQUFNLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDdkMsT0FBTyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFlO1NBQ3ZELENBQUM7UUFDRixPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDLENBQUM7U0FDRCxLQUFLLENBQUMsQ0FBQyxLQUFLLEVBQUUsRUFBRTtRQUNmLE9BQU8sbUJBQW1CLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQzVDLENBQUMsQ0FBQyxDQUFDO0FBQ1AsQ0FBQztBQUVELE1BQU0sQ0FBQyxLQUFLLFVBQVUsZUFBZSxDQUFDLEVBQ3BDLEdBQUcsR0FDZTtJQUNsQixPQUFPLEtBQUs7U0FDVCxHQUFHLENBQUMsV0FBVyxHQUFHLEVBQUUsQ0FBQztTQUNyQixJQUFJLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQWlCLEVBQUUsRUFBRTtRQUN4QyxJQUFJLE1BQU0sS0FBSyxHQUFHO1lBQUUsT0FBTyxtQkFBbUIsQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUNoRSxPQUFPLElBQUksQ0FBQztJQUNkLENBQUMsQ0FBQztTQUNELElBQUksQ0FBQyxDQUFDLEdBQVcsRUFBRSxFQUFFO1FBQ3BCLE1BQU0sS0FBSyxHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDO1FBQ3RFLE1BQU0sUUFBUSxHQUF1QjtZQUNuQyxTQUFTLEVBQUUsR0FBRztZQUNkLEdBQUcsRUFBRTtnQkFDSCxHQUFHLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQztnQkFDYixPQUFPLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQztnQkFDakIsU0FBUyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUM7YUFDcEI7WUFDRCxNQUFNLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDdkMsT0FBTyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFrQjtTQUMxRCxDQUFDO1FBQ0YsT0FBTyxRQUFRLENBQUM7SUFDbEIsQ0FBQyxDQUFDO1NBQ0QsS0FBSyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7UUFDZixPQUFPLG1CQUFtQixDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUM1QyxDQUFDLENBQUMsQ0FBQztBQUNQLENBQUMifQ==