pix-utils
Version:
Set of tools to parse, generate and validate payments of Brazil Instant Payment System (Pix)
37 lines • 3.1 kB
JavaScript
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==