@movelabs/pix-sicoob
Version:
Cliente PIX para integração com API do Sicoob - Sistema de Cobranças e Pagamentos Instantâneos
113 lines • 4.2 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.webhookPixPayloadSchema = exports.listPixResponseSchema = exports.cobResponseWithPixSchema = exports.pixSchema = exports.listPixQuerySchema = exports.cobResponseSchema = exports.cobPayloadSchema = exports.CalendarioSchema = exports.valorSchema = exports.devedorSchema = exports.infoAdicionalSchema = void 0;
const zod_1 = require("zod");
exports.infoAdicionalSchema = zod_1.z.object({
nome: zod_1.z.string(),
valor: zod_1.z.string(),
});
exports.devedorSchema = zod_1.z.object({
nome: zod_1.z.string(),
cpf: zod_1.z.string().optional(),
cnpj: zod_1.z.string().optional(),
});
exports.valorSchema = zod_1.z.object({
original: zod_1.z
.string()
.regex(/^\d+\.\d{2}$/, "Valor deve ser numérico com duas casas decimais separadas por ponto"),
modalidadeAlteracao: zod_1.z.number().optional(),
});
exports.CalendarioSchema = zod_1.z.object({
criacao: zod_1.z.string().optional(),
expiracao: zod_1.z.number(),
});
exports.cobPayloadSchema = zod_1.z.object({
calendario: exports.CalendarioSchema,
devedor: exports.devedorSchema.optional(),
valor: exports.valorSchema,
chave: zod_1.z.string(),
txid: zod_1.z.string().optional(),
solicitacaoPagador: zod_1.z.string().optional(),
infoAdicionais: zod_1.z.array(exports.infoAdicionalSchema).optional(),
});
exports.cobResponseSchema = zod_1.z.object({
calendario: exports.CalendarioSchema,
devedor: exports.devedorSchema.optional(),
status: zod_1.z.string(),
txid: zod_1.z.string(),
revisao: zod_1.z.number(),
location: zod_1.z.string(),
valor: exports.valorSchema,
chave: zod_1.z.string(),
infoAdicionais: zod_1.z.array(exports.infoAdicionalSchema).optional(),
brcode: zod_1.z.string(),
});
exports.listPixQuerySchema = zod_1.z.object({
inicio: zod_1.z.string().datetime(),
fim: zod_1.z.string().datetime(),
cpf: zod_1.z.string().optional(),
cnpj: zod_1.z.string().optional(),
locationPresente: zod_1.z.boolean().optional(),
status: zod_1.z.string().optional(),
"paginacao.paginaAtual": zod_1.z.number().optional(),
"paginacao.itensPorPagina": zod_1.z.number().optional(),
});
exports.pixSchema = zod_1.z.object({
endToEndId: zod_1.z.string(),
txid: zod_1.z.string(),
valor: zod_1.z.string(),
horario: zod_1.z.string().datetime(),
nomePagador: zod_1.z.string().optional(),
pagador: zod_1.z
.object({
nome: zod_1.z.string(),
cpf: zod_1.z.string(),
})
.optional(),
devolucoes: zod_1.z.array(zod_1.z.any()),
});
exports.cobResponseWithPixSchema = zod_1.z.object({
brcode: zod_1.z.string(),
txid: zod_1.z.string(),
calendario: exports.CalendarioSchema,
status: zod_1.z.string(),
devedor: exports.devedorSchema,
chave: zod_1.z.string(),
valor: exports.valorSchema,
permiteAlteracao: zod_1.z.boolean(),
infoAdicionais: zod_1.z.array(exports.infoAdicionalSchema),
payloadURL: zod_1.z.string(),
pix: zod_1.z.array(exports.pixSchema),
});
exports.listPixResponseSchema = zod_1.z.object({
parametros: zod_1.z.object({
inicio: zod_1.z.string().datetime(),
fim: zod_1.z.string().datetime(),
cpf: zod_1.z.string().optional(),
cnpj: zod_1.z.string().optional(),
locationPresente: zod_1.z.boolean().optional(),
status: zod_1.z.string().optional(),
paginacao: zod_1.z.object({
paginaAtual: zod_1.z.number(),
itensPorPagina: zod_1.z.number(),
quantidadeDePaginas: zod_1.z.number(),
quantidadeTotalDeItens: zod_1.z.number(),
}),
}),
cobs: zod_1.z.array(exports.cobResponseWithPixSchema),
});
const webhookPayload = {
pix: [
{
endToEndId: "E0000000020250429165342751287687",
txid: "TR32QW5QQBDTZL036328721745945595545",
valor: "1.00",
horario: "2025-04-29T16:54:02.017Z",
devolucoes: [],
},
],
};
exports.webhookPixPayloadSchema = zod_1.z.object({
pix: zod_1.z.array(exports.pixSchema),
});
//# sourceMappingURL=types.js.map