UNPKG

pix-utils

Version:

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

47 lines 5.24 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.createStaticPix = createStaticPix; exports.createDynamicPix = createDynamicPix; exports.createRecurrencePix = createRecurrencePix; const assembler_1 = require("./assembler"); const pixElements_1 = require("./types/pixElements"); const generateErrorObject_1 = require("./utils/generateErrorObject"); const defaultPixFields = { merchantCategoryCode: '0000', transactionCurrency: '986', countryCode: 'BR', }; const defaultStaticFields = Object.assign(Object.assign({}, defaultPixFields), { isTransactionUnique: false, txid: '***' }); function createStaticPix(params) { if (params.merchantName.length > 25) return (0, generateErrorObject_1.generateErrorObject)('merchantName character limit exceeded (> 25)'); if (params.txid && params.txid.length > 25) return (0, generateErrorObject_1.generateErrorObject)('txid character limit exceeded (> 25)'); if (params.merchantCity === '') return (0, generateErrorObject_1.generateErrorObject)('merchantCity is required'); if (params.merchantCity.length > 15) return (0, generateErrorObject_1.generateErrorObject)('merchantCity character limit exceeded (> 15)'); const elements = Object.assign(Object.assign({ type: pixElements_1.PixElementType.STATIC }, defaultStaticFields), params); return (0, assembler_1.generatePixObject)(elements); } function createDynamicPix(params) { if (params.merchantName.length > 25) return (0, generateErrorObject_1.generateErrorObject)('merchantName character limit exceeded (> 25)'); if (params.merchantCity === '') return (0, generateErrorObject_1.generateErrorObject)('merchantCity is required'); if (params.merchantCity.length > 15) return (0, generateErrorObject_1.generateErrorObject)('merchantCity character limit exceeded (> 15)'); const elements = Object.assign(Object.assign({ type: pixElements_1.PixElementType.DYNAMIC }, defaultStaticFields), params); return (0, assembler_1.generatePixObject)(elements); } function createRecurrencePix(params) { if (params.merchantName.length > 25) return (0, generateErrorObject_1.generateErrorObject)('merchantName character limit exceeded (> 25)'); if (params.merchantCity === '') return (0, generateErrorObject_1.generateErrorObject)('merchantCity is required'); if (params.merchantCity.length > 15) return (0, generateErrorObject_1.generateErrorObject)('merchantCity character limit exceeded (> 15)'); const elements = Object.assign(Object.assign(Object.assign({ type: pixElements_1.PixElementType.RECURRENCE }, defaultStaticFields), params), { url: undefined }); return (0, assembler_1.generatePixObject)(elements); } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3JlYXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NyZWF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQThCQSwwQ0FzQkM7QUFFRCw0Q0FtQkM7QUFFRCxrREFvQkM7QUEvRkQsMkNBQWdEO0FBTWhELHFEQVE2QjtBQUU3QixxRUFBa0U7QUFFbEUsTUFBTSxnQkFBZ0IsR0FBRztJQUN2QixvQkFBb0IsRUFBRSxNQUFNO0lBQzVCLG1CQUFtQixFQUFFLEtBQUs7SUFDMUIsV0FBVyxFQUFFLElBQUk7Q0FDbEIsQ0FBQztBQUVGLE1BQU0sbUJBQW1CLG1DQUNwQixnQkFBZ0IsS0FDbkIsbUJBQW1CLEVBQUUsS0FBSyxFQUMxQixJQUFJLEVBQUUsS0FBSyxHQUNaLENBQUM7QUFFRixTQUFnQixlQUFlLENBQzdCLE1BQTZCO0lBRTdCLElBQUksTUFBTSxDQUFDLFlBQVksQ0FBQyxNQUFNLEdBQUcsRUFBRTtRQUNqQyxPQUFPLElBQUEseUNBQW1CLEVBQUMsOENBQThDLENBQUMsQ0FBQztJQUU3RSxJQUFJLE1BQU0sQ0FBQyxJQUFJLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLEdBQUcsRUFBRTtRQUN4QyxPQUFPLElBQUEseUNBQW1CLEVBQUMsc0NBQXNDLENBQUMsQ0FBQztJQUVyRSxJQUFJLE1BQU0sQ0FBQyxZQUFZLEtBQUssRUFBRTtRQUM1QixPQUFPLElBQUEseUNBQW1CLEVBQUMsMEJBQTBCLENBQUMsQ0FBQztJQUV6RCxJQUFJLE1BQU0sQ0FBQyxZQUFZLENBQUMsTUFBTSxHQUFHLEVBQUU7UUFDakMsT0FBTyxJQUFBLHlDQUFtQixFQUFDLDhDQUE4QyxDQUFDLENBQUM7SUFFN0UsTUFBTSxRQUFRLEdBQUcsOEJBQ2YsSUFBSSxFQUFFLDRCQUFjLENBQUMsTUFBTSxJQUN4QixtQkFBbUIsR0FDbkIsTUFBTSxDQUNjLENBQUM7SUFFMUIsT0FBTyxJQUFBLDZCQUFpQixFQUFDLFFBQVEsQ0FBb0IsQ0FBQztBQUN4RCxDQUFDO0FBRUQsU0FBZ0IsZ0JBQWdCLENBQzlCLE1BQThCO0lBRTlCLElBQUksTUFBTSxDQUFDLFlBQVksQ0FBQyxNQUFNLEdBQUcsRUFBRTtRQUNqQyxPQUFPLElBQUEseUNBQW1CLEVBQUMsOENBQThDLENBQUMsQ0FBQztJQUU3RSxJQUFJLE1BQU0sQ0FBQyxZQUFZLEtBQUssRUFBRTtRQUM1QixPQUFPLElBQUEseUNBQW1CLEVBQUMsMEJBQTBCLENBQUMsQ0FBQztJQUV6RCxJQUFJLE1BQU0sQ0FBQyxZQUFZLENBQUMsTUFBTSxHQUFHLEVBQUU7UUFDakMsT0FBTyxJQUFBLHlDQUFtQixFQUFDLDhDQUE4QyxDQUFDLENBQUM7SUFFN0UsTUFBTSxRQUFRLEdBQUcsOEJBQ2YsSUFBSSxFQUFFLDRCQUFjLENBQUMsT0FBTyxJQUN6QixtQkFBbUIsR0FDbkIsTUFBTSxDQUNlLENBQUM7SUFFM0IsT0FBTyxJQUFBLDZCQUFpQixFQUFDLFFBQVEsQ0FBcUIsQ0FBQztBQUN6RCxDQUFDO0FBRUQsU0FBZ0IsbUJBQW1CLENBQ2pDLE1BQWlDO0lBRWpDLElBQUksTUFBTSxDQUFDLFlBQVksQ0FBQyxNQUFNLEdBQUcsRUFBRTtRQUNqQyxPQUFPLElBQUEseUNBQW1CLEVBQUMsOENBQThDLENBQUMsQ0FBQztJQUU3RSxJQUFJLE1BQU0sQ0FBQyxZQUFZLEtBQUssRUFBRTtRQUM1QixPQUFPLElBQUEseUNBQW1CLEVBQUMsMEJBQTBCLENBQUMsQ0FBQztJQUV6RCxJQUFJLE1BQU0sQ0FBQyxZQUFZLENBQUMsTUFBTSxHQUFHLEVBQUU7UUFDakMsT0FBTyxJQUFBLHlDQUFtQixFQUFDLDhDQUE4QyxDQUFDLENBQUM7SUFFN0UsTUFBTSxRQUFRLEdBQUcsNENBQ2YsSUFBSSxFQUFFLDRCQUFjLENBQUMsVUFBVSxJQUM1QixtQkFBbUIsR0FDbkIsTUFBTSxLQUNULEdBQUcsRUFBRSxTQUFTLEdBQ2EsQ0FBQztJQUU5QixPQUFPLElBQUEsNkJBQWlCLEVBQUMsUUFBUSxDQUF3QixDQUFDO0FBQzVELENBQUMifQ==