opf-validator-beta 0.0.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (94) hide show
  1. package/README.md +557 -0
  2. package/dist/consent/index.d.ts +9 -0
  3. package/dist/consent/index.d.ts.map +1 -0
  4. package/dist/consent/index.js +12 -0
  5. package/dist/consent/index.js.map +1 -0
  6. package/dist/consent/package.json +6 -0
  7. package/dist/consent/successResponses/index.d.ts +89 -0
  8. package/dist/consent/successResponses/index.d.ts.map +1 -0
  9. package/dist/consent/successResponses/index.js +6 -0
  10. package/dist/consent/successResponses/index.js.map +1 -0
  11. package/dist/consent/validators/createConsent.d.ts +33 -0
  12. package/dist/consent/validators/createConsent.d.ts.map +1 -0
  13. package/dist/consent/validators/createConsent.js +206 -0
  14. package/dist/consent/validators/createConsent.js.map +1 -0
  15. package/dist/consent/validators/createConsentExtensions.d.ts +33 -0
  16. package/dist/consent/validators/createConsentExtensions.d.ts.map +1 -0
  17. package/dist/consent/validators/createConsentExtensions.js +194 -0
  18. package/dist/consent/validators/createConsentExtensions.js.map +1 -0
  19. package/dist/index.d.ts +7 -0
  20. package/dist/index.d.ts.map +1 -0
  21. package/dist/index.js +54 -0
  22. package/dist/index.js.map +7 -0
  23. package/dist/payments/index.d.ts +11 -0
  24. package/dist/payments/index.d.ts.map +1 -0
  25. package/dist/payments/index.js +18 -0
  26. package/dist/payments/index.js.map +1 -0
  27. package/dist/payments/package.json +6 -0
  28. package/dist/payments/successResponses/index.d.ts +129 -0
  29. package/dist/payments/successResponses/index.d.ts.map +1 -0
  30. package/dist/payments/successResponses/index.js +6 -0
  31. package/dist/payments/successResponses/index.js.map +1 -0
  32. package/dist/payments/validators/createPaymentConsent.d.ts +66 -0
  33. package/dist/payments/validators/createPaymentConsent.d.ts.map +1 -0
  34. package/dist/payments/validators/createPaymentConsent.js +509 -0
  35. package/dist/payments/validators/createPaymentConsent.js.map +1 -0
  36. package/dist/payments/validators/createPixPayment.d.ts +35 -0
  37. package/dist/payments/validators/createPixPayment.d.ts.map +1 -0
  38. package/dist/payments/validators/createPixPayment.js +343 -0
  39. package/dist/payments/validators/createPixPayment.js.map +1 -0
  40. package/dist/payments/validators/patchPixPayment.d.ts +40 -0
  41. package/dist/payments/validators/patchPixPayment.d.ts.map +1 -0
  42. package/dist/payments/validators/patchPixPayment.js +192 -0
  43. package/dist/payments/validators/patchPixPayment.js.map +1 -0
  44. package/dist/recurring-payments/index.d.ts +13 -0
  45. package/dist/recurring-payments/index.d.ts.map +1 -0
  46. package/dist/recurring-payments/index.js +17 -0
  47. package/dist/recurring-payments/index.js.map +1 -0
  48. package/dist/recurring-payments/package.json +6 -0
  49. package/dist/recurring-payments/successResponses/index.d.ts +175 -0
  50. package/dist/recurring-payments/successResponses/index.d.ts.map +1 -0
  51. package/dist/recurring-payments/successResponses/index.js +6 -0
  52. package/dist/recurring-payments/successResponses/index.js.map +1 -0
  53. package/dist/recurring-payments/validators/createRecurringConsent.d.ts +96 -0
  54. package/dist/recurring-payments/validators/createRecurringConsent.d.ts.map +1 -0
  55. package/dist/recurring-payments/validators/createRecurringConsent.js +664 -0
  56. package/dist/recurring-payments/validators/createRecurringConsent.js.map +1 -0
  57. package/dist/recurring-payments/validators/createRecurringRetryPixPayment.d.ts +19 -0
  58. package/dist/recurring-payments/validators/createRecurringRetryPixPayment.d.ts.map +1 -0
  59. package/dist/recurring-payments/validators/createRecurringRetryPixPayment.js +42 -0
  60. package/dist/recurring-payments/validators/createRecurringRetryPixPayment.js.map +1 -0
  61. package/dist/recurring-payments/validators/patchPixPayment.d.ts +38 -0
  62. package/dist/recurring-payments/validators/patchPixPayment.d.ts.map +1 -0
  63. package/dist/recurring-payments/validators/patchPixPayment.js +124 -0
  64. package/dist/recurring-payments/validators/patchPixPayment.js.map +1 -0
  65. package/dist/recurring-payments/validators/patchRecurringConsent.d.ts +87 -0
  66. package/dist/recurring-payments/validators/patchRecurringConsent.d.ts.map +1 -0
  67. package/dist/recurring-payments/validators/patchRecurringConsent.js +558 -0
  68. package/dist/recurring-payments/validators/patchRecurringConsent.js.map +1 -0
  69. package/dist/utils/index.d.ts +9 -0
  70. package/dist/utils/index.d.ts.map +1 -0
  71. package/dist/utils/index.js +25 -0
  72. package/dist/utils/index.js.map +1 -0
  73. package/dist/utils/openFinanceErrors.d.ts +90 -0
  74. package/dist/utils/openFinanceErrors.d.ts.map +1 -0
  75. package/dist/utils/openFinanceErrors.js +114 -0
  76. package/dist/utils/openFinanceErrors.js.map +1 -0
  77. package/dist/utils/package.json +6 -0
  78. package/dist/utils/paymentErrors.d.ts +9 -0
  79. package/dist/utils/paymentErrors.d.ts.map +1 -0
  80. package/dist/utils/paymentErrors.js +13 -0
  81. package/dist/utils/paymentErrors.js.map +1 -0
  82. package/dist/utils/successResponses.d.ts +52 -0
  83. package/dist/utils/successResponses.d.ts.map +1 -0
  84. package/dist/utils/successResponses.js +6 -0
  85. package/dist/utils/successResponses.js.map +1 -0
  86. package/dist/utils/validateHeaderParameters.d.ts +51 -0
  87. package/dist/utils/validateHeaderParameters.d.ts.map +1 -0
  88. package/dist/utils/validateHeaderParameters.js +197 -0
  89. package/dist/utils/validateHeaderParameters.js.map +1 -0
  90. package/dist/utils/validationHelpers.d.ts +89 -0
  91. package/dist/utils/validationHelpers.d.ts.map +1 -0
  92. package/dist/utils/validationHelpers.js +374 -0
  93. package/dist/utils/validationHelpers.js.map +1 -0
  94. package/package.json +30 -0
@@ -0,0 +1,343 @@
1
+ "use strict";
2
+ /**
3
+ * Validações para CreatePixPayment
4
+ * Segue as regras especificadas no Open Finance Brasil para Criação de Pagamento PIX
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.validateCreatePixPayment = validateCreatePixPayment;
8
+ const openFinanceErrors_1 = require("../../utils/openFinanceErrors");
9
+ // Valid local instruments for PIX
10
+ const VALID_LOCAL_INSTRUMENTS = ["MANU", "DICT", "QRDN", "QRES", "INIC", "APES", "APDN"];
11
+ // Valid authorization flows
12
+ const VALID_AUTHORISATION_FLOWS = ["HYBRID_FLOW", "CIBA_FLOW", "FIDO_FLOW"];
13
+ // Account types
14
+ const VALID_ACCOUNT_TYPES = [
15
+ "CACC",
16
+ "SVGS",
17
+ "TRAD",
18
+ "ODSL",
19
+ "OTHR",
20
+ ];
21
+ /**
22
+ * Valida o payload de criação de pagamento PIX
23
+ */
24
+ function validateCreatePixPayment(payload) {
25
+ const errors = [];
26
+ // Validação: data deve existir e ser um array
27
+ if (!payload.data) {
28
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_NAO_INFORMADO("data"));
29
+ return { isValid: false, statusCode: (0, openFinanceErrors_1.getStatusCode)(errors), errors };
30
+ }
31
+ if (!Array.isArray(payload.data)) {
32
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO("data", "deve ser um array"));
33
+ return { isValid: false, statusCode: (0, openFinanceErrors_1.getStatusCode)(errors), errors };
34
+ }
35
+ if (payload.data.length === 0) {
36
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO("data", "deve conter pelo menos 1 item"));
37
+ return { isValid: false, statusCode: (0, openFinanceErrors_1.getStatusCode)(errors), errors };
38
+ }
39
+ // Validar cada item do array
40
+ payload.data.forEach((item, index) => {
41
+ const itemErrors = validatePixPaymentData(item, index);
42
+ errors.push(...itemErrors);
43
+ });
44
+ return {
45
+ isValid: errors.length === 0,
46
+ statusCode: (0, openFinanceErrors_1.getStatusCode)(errors),
47
+ errors,
48
+ };
49
+ }
50
+ /**
51
+ * Valida um item individual de pagamento PIX
52
+ */
53
+ function validatePixPaymentData(data, index) {
54
+ const errors = [];
55
+ const prefix = `data[${index}]`;
56
+ if (typeof data !== "object" || data === null) {
57
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO(prefix, "deve ser um objeto"));
58
+ return errors;
59
+ }
60
+ // endToEndId é obrigatório
61
+ if (!data.endToEndId) {
62
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_NAO_INFORMADO(`${prefix}.endToEndId`));
63
+ }
64
+ else if (typeof data.endToEndId !== "string") {
65
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO(`${prefix}.endToEndId`, "deve ser uma string"));
66
+ }
67
+ else {
68
+ const endToEndErrors = validateEndToEndId(data.endToEndId, prefix);
69
+ errors.push(...endToEndErrors);
70
+ }
71
+ // localInstrument é obrigatório
72
+ if (!data.localInstrument) {
73
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_NAO_INFORMADO(`${prefix}.localInstrument`));
74
+ }
75
+ else if (typeof data.localInstrument !== "string") {
76
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO(`${prefix}.localInstrument`, "deve ser uma string"));
77
+ }
78
+ else {
79
+ if (!VALID_LOCAL_INSTRUMENTS.includes(data.localInstrument)) {
80
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO(`${prefix}.localInstrument`, `deve ser um de: ${VALID_LOCAL_INSTRUMENTS.join(", ")}`));
81
+ }
82
+ // Validações condicionais baseadas em localInstrument
83
+ if (data.localInstrument === "MANU") {
84
+ // MANU não deve ter proxy
85
+ if (data.proxy) {
86
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO(`${prefix}.proxy`, "não deve ser preenchido quando localInstrument é MANU"));
87
+ }
88
+ }
89
+ else if (["INIC", "DICT", "APDN", "APES", "QRDN", "QRES"].includes(data.localInstrument)) {
90
+ // Estes instrumentos devem ter proxy
91
+ if (!data.proxy) {
92
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_NAO_INFORMADO(`${prefix}.proxy`));
93
+ }
94
+ else if (typeof data.proxy !== "string") {
95
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO(`${prefix}.proxy`, "deve ser uma string"));
96
+ }
97
+ else if (data.proxy.length > 77) {
98
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO(`${prefix}.proxy`, "deve ter no máximo 77 caracteres"));
99
+ }
100
+ }
101
+ // QRCode obrigatório para QRDN, APDN, QRES, APES
102
+ if (["QRDN", "APDN", "QRES", "APES"].includes(data.localInstrument)) {
103
+ if (!data.qrCode) {
104
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_NAO_INFORMADO(`${prefix}.qrCode`));
105
+ }
106
+ else if (typeof data.qrCode !== "string") {
107
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO(`${prefix}.qrCode`, "deve ser uma string"));
108
+ }
109
+ else if (data.qrCode.length > 512) {
110
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO(`${prefix}.qrCode`, "deve ter no máximo 512 caracteres"));
111
+ }
112
+ }
113
+ }
114
+ // payment é obrigatório
115
+ if (!data.payment) {
116
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_NAO_INFORMADO(`${prefix}.payment`));
117
+ }
118
+ else {
119
+ const paymentErrors = validatePaymentPix(data.payment, prefix);
120
+ errors.push(...paymentErrors);
121
+ }
122
+ // creditorAccount é obrigatório
123
+ if (!data.creditorAccount) {
124
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_NAO_INFORMADO(`${prefix}.creditorAccount`));
125
+ }
126
+ else {
127
+ const accountErrors = validateCreditorAccount(data.creditorAccount, prefix);
128
+ errors.push(...accountErrors);
129
+ }
130
+ // cnpjInitiator é obrigatório
131
+ if (!data.cnpjInitiator) {
132
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_NAO_INFORMADO(`${prefix}.cnpjInitiator`));
133
+ }
134
+ else if (typeof data.cnpjInitiator !== "string") {
135
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO(`${prefix}.cnpjInitiator`, "deve ser uma string"));
136
+ }
137
+ else {
138
+ const cnpjErrors = validateCnpj(data.cnpjInitiator, `${prefix}.cnpjInitiator`);
139
+ errors.push(...cnpjErrors);
140
+ }
141
+ // remittanceInformation (opcional)
142
+ if (data.remittanceInformation) {
143
+ if (typeof data.remittanceInformation !== "string") {
144
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO(`${prefix}.remittanceInformation`, "deve ser uma string"));
145
+ }
146
+ else if (data.remittanceInformation.length > 140) {
147
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO(`${prefix}.remittanceInformation`, "deve ter no máximo 140 caracteres"));
148
+ }
149
+ }
150
+ // authorisationFlow (opcional)
151
+ if (data.authorisationFlow) {
152
+ if (typeof data.authorisationFlow !== "string") {
153
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO(`${prefix}.authorisationFlow`, "deve ser uma string"));
154
+ }
155
+ else if (!VALID_AUTHORISATION_FLOWS.includes(data.authorisationFlow)) {
156
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO(`${prefix}.authorisationFlow`, `deve ser um de: ${VALID_AUTHORISATION_FLOWS.join(", ")}`));
157
+ }
158
+ }
159
+ // transactionIdentification (opcional)
160
+ if (data.transactionIdentification) {
161
+ if (typeof data.transactionIdentification !== "string") {
162
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO(`${prefix}.transactionIdentification`, "deve ser uma string"));
163
+ }
164
+ }
165
+ // consentId (opcional)
166
+ if (data.consentId) {
167
+ if (typeof data.consentId !== "string") {
168
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO(`${prefix}.consentId`, "deve ser uma string"));
169
+ }
170
+ else if (data.consentId.length > 256) {
171
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO(`${prefix}.consentId`, "deve ter no máximo 256 caracteres"));
172
+ }
173
+ else {
174
+ // Validar padrão URN
175
+ const urnPattern = /^urn:[a-zA-Z0-9][a-zA-Z0-9\-]{0,31}:[a-zA-Z0-9()+,\-.:=@;$_!*''%\/?#]+$/;
176
+ if (!urnPattern.test(data.consentId)) {
177
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO(`${prefix}.consentId`, "deve estar no formato URN válido"));
178
+ }
179
+ }
180
+ }
181
+ return errors;
182
+ }
183
+ /**
184
+ * Valida EndToEndId
185
+ */
186
+ function validateEndToEndId(endToEndId, prefix) {
187
+ const errors = [];
188
+ if (endToEndId.length !== 32) {
189
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO(`${prefix}.endToEndId`, "deve ter exatamente 32 caracteres"));
190
+ }
191
+ // Padrão: E + 8 chars + 4 dígitos + data/hora + 11 chars
192
+ const pattern = /^([E])([0-9A-Z]{8})([0-9]{4})(0[1-9]|1[0-2])(0[1-9]|[1-2][0-9]|3[0-1])(2[0-3]|[01][0-9])([0-5][0-9])([a-zA-Z0-9]{11})$/;
193
+ if (!pattern.test(endToEndId)) {
194
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO(`${prefix}.endToEndId`, "deve estar no formato ExxxxxxxxyyyyMMddHHmmkkkkkkkkkkk (case-sensitive)"));
195
+ }
196
+ return errors;
197
+ }
198
+ /**
199
+ * Valida objeto Payment PIX
200
+ */
201
+ function validatePaymentPix(payment, prefix) {
202
+ const errors = [];
203
+ if (typeof payment !== "object" || payment === null) {
204
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO(`${prefix}.payment`, "deve ser um objeto"));
205
+ return errors;
206
+ }
207
+ // amount é obrigatório
208
+ if (!payment.amount) {
209
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_NAO_INFORMADO(`${prefix}.payment.amount`));
210
+ }
211
+ else if (typeof payment.amount !== "string") {
212
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO(`${prefix}.payment.amount`, "deve ser uma string"));
213
+ }
214
+ else {
215
+ const amountErrors = validateAmount(payment.amount, `${prefix}.payment.amount`);
216
+ errors.push(...amountErrors);
217
+ }
218
+ // currency é obrigatório
219
+ if (!payment.currency) {
220
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_NAO_INFORMADO(`${prefix}.payment.currency`));
221
+ }
222
+ else if (typeof payment.currency !== "string") {
223
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO(`${prefix}.payment.currency`, "deve ser uma string"));
224
+ }
225
+ else {
226
+ if (payment.currency.length !== 3) {
227
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO(`${prefix}.payment.currency`, "deve ter exatamente 3 caracteres"));
228
+ }
229
+ if (!/^[A-Z]{3}$/.test(payment.currency)) {
230
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO(`${prefix}.payment.currency`, "deve ser um código ISO-4217 (3 letras maiúsculas, ex: BRL)"));
231
+ }
232
+ }
233
+ return errors;
234
+ }
235
+ /**
236
+ * Valida Amount
237
+ */
238
+ function validateAmount(amount, fieldName) {
239
+ const errors = [];
240
+ if (amount.length < 4 || amount.length > 19) {
241
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO(fieldName, "deve ter entre 4 e 19 caracteres"));
242
+ }
243
+ // Padrão: até 16 dígitos antes do ponto e 2 depois
244
+ const amountPattern = /^(\d{1,16}\.\d{2})$/;
245
+ if (!amountPattern.test(amount)) {
246
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO(fieldName, "deve estar no formato: número com até 16 dígitos antes do ponto e 2 dígitos após (ex: 100000.12)"));
247
+ }
248
+ return errors;
249
+ }
250
+ /**
251
+ * Valida CreditorAccount
252
+ */
253
+ function validateCreditorAccount(account, prefix) {
254
+ const errors = [];
255
+ if (typeof account !== "object" || account === null) {
256
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO(`${prefix}.creditorAccount`, "deve ser um objeto"));
257
+ return errors;
258
+ }
259
+ // ispb é obrigatório
260
+ if (!account.ispb) {
261
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_NAO_INFORMADO(`${prefix}.creditorAccount.ispb`));
262
+ }
263
+ else if (typeof account.ispb !== "string") {
264
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO(`${prefix}.creditorAccount.ispb`, "deve ser uma string"));
265
+ }
266
+ else {
267
+ const ispbErrors = validateIspb(account.ispb, `${prefix}.creditorAccount.ispb`);
268
+ errors.push(...ispbErrors);
269
+ }
270
+ // number é obrigatório
271
+ if (!account.number) {
272
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_NAO_INFORMADO(`${prefix}.creditorAccount.number`));
273
+ }
274
+ else if (typeof account.number !== "string") {
275
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO(`${prefix}.creditorAccount.number`, "deve ser uma string"));
276
+ }
277
+ else {
278
+ if (account.number.length < 1 || account.number.length > 20) {
279
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO(`${prefix}.creditorAccount.number`, "deve ter entre 1 e 20 caracteres"));
280
+ }
281
+ if (!/^\d{1,20}$/.test(account.number)) {
282
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO(`${prefix}.creditorAccount.number`, "deve conter apenas dígitos"));
283
+ }
284
+ }
285
+ // accountType é obrigatório
286
+ if (!account.accountType) {
287
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_NAO_INFORMADO(`${prefix}.creditorAccount.accountType`));
288
+ }
289
+ else if (typeof account.accountType !== "string") {
290
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO(`${prefix}.creditorAccount.accountType`, "deve ser uma string"));
291
+ }
292
+ else {
293
+ if (!VALID_ACCOUNT_TYPES.includes(account.accountType)) {
294
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO(`${prefix}.creditorAccount.accountType`, `deve ser um de: ${VALID_ACCOUNT_TYPES.join(", ")}`));
295
+ }
296
+ }
297
+ // issuer (opcional) - obrigatório para CACC e SVGS
298
+ if (account.issuer) {
299
+ if (typeof account.issuer !== "string") {
300
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO(`${prefix}.creditorAccount.issuer`, "deve ser uma string"));
301
+ }
302
+ else {
303
+ if (account.issuer.length < 1 || account.issuer.length > 4) {
304
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO(`${prefix}.creditorAccount.issuer`, "deve ter entre 1 e 4 caracteres"));
305
+ }
306
+ if (!/^\d{1,4}$/.test(account.issuer)) {
307
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO(`${prefix}.creditorAccount.issuer`, "deve conter apenas dígitos"));
308
+ }
309
+ }
310
+ }
311
+ else if (["CACC", "SVGS"].includes(account.accountType)) {
312
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_NAO_INFORMADO(`${prefix}.creditorAccount.issuer`));
313
+ }
314
+ return errors;
315
+ }
316
+ /**
317
+ * Valida ISPB
318
+ */
319
+ function validateIspb(ispb, fieldName) {
320
+ const errors = [];
321
+ if (ispb.length !== 8) {
322
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO(fieldName, "deve ter exatamente 8 caracteres"));
323
+ }
324
+ if (!/^[0-9A-Z]{8}$/.test(ispb)) {
325
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO(fieldName, "deve conter apenas números e letras maiúsculas"));
326
+ }
327
+ return errors;
328
+ }
329
+ /**
330
+ * Valida CNPJ
331
+ */
332
+ function validateCnpj(cnpj, fieldName) {
333
+ const errors = [];
334
+ if (cnpj.length !== 14) {
335
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO(fieldName, "deve ter exatamente 14 caracteres"));
336
+ }
337
+ const pattern = /^[0-9A-Z]{12}[0-9]{2}$/;
338
+ if (!pattern.test(cnpj)) {
339
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO(fieldName, "deve estar no padrão [0-9A-Z]{12}[0-9]{2}"));
340
+ }
341
+ return errors;
342
+ }
343
+ //# sourceMappingURL=createPixPayment.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createPixPayment.js","sourceRoot":"","sources":["../../../src/payments/validators/createPixPayment.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,40 @@
1
+ /**
2
+ * Validações para PatchPixPayment
3
+ * Segue as regras especificadas no Open Finance Brasil para Cancelamento de Pagamento PIX
4
+ */
5
+ import { ErrorDetail, ValidationResult } from "../../utils/openFinanceErrors";
6
+ interface PatchPixPaymentDocument {
7
+ identification: string;
8
+ rel: string;
9
+ }
10
+ interface PatchPixPaymentCancelledBy {
11
+ document: PatchPixPaymentDocument;
12
+ }
13
+ interface PatchPixPaymentCancellation {
14
+ cancelledBy: PatchPixPaymentCancelledBy;
15
+ }
16
+ interface PatchPixPaymentData {
17
+ status: string;
18
+ cancellation: PatchPixPaymentCancellation;
19
+ }
20
+ interface PatchPixPaymentPayload {
21
+ data: PatchPixPaymentData;
22
+ }
23
+ /**
24
+ * Valida o payload de cancelamento de pagamento PIX
25
+ */
26
+ export declare function validatePatchPixPayment(payload: any): ValidationResult;
27
+ /**
28
+ * Valida motivo do cancelamento (usado em respostas)
29
+ */
30
+ export declare function validateCancellationReason(reason: string): ErrorDetail[];
31
+ /**
32
+ * Valida origem do cancelamento (usado em respostas)
33
+ */
34
+ export declare function validateCancellationFrom(from: string): ErrorDetail[];
35
+ /**
36
+ * Valida data/hora de cancelamento (RFC-3339)
37
+ */
38
+ export declare function validateCancellationDateTime(dateTime: string): ErrorDetail[];
39
+ export { PatchPixPaymentPayload, PatchPixPaymentData, PatchPixPaymentCancellation, PatchPixPaymentCancelledBy, PatchPixPaymentDocument, };
40
+ //# sourceMappingURL=patchPixPayment.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"patchPixPayment.d.ts","sourceRoot":"","sources":["../../../src/payments/validators/patchPixPayment.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,WAAW,EACX,gBAAgB,EAIjB,MAAM,+BAA+B,CAAC;AAGvC,UAAU,uBAAuB;IAC/B,cAAc,EAAE,MAAM,CAAC;IACvB,GAAG,EAAE,MAAM,CAAC;CACb;AAED,UAAU,0BAA0B;IAClC,QAAQ,EAAE,uBAAuB,CAAC;CACnC;AAED,UAAU,2BAA2B;IACnC,WAAW,EAAE,0BAA0B,CAAC;CACzC;AAED,UAAU,mBAAmB;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,2BAA2B,CAAC;CAC3C;AAED,UAAU,sBAAsB;IAC9B,IAAI,EAAE,mBAAmB,CAAC;CAC3B;AAoBD;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,GAAG,GAAG,gBAAgB,CA2CtE;AAyJD;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,MAAM,GAAG,WAAW,EAAE,CAoBxE;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,EAAE,CAoBpE;AAED;;GAEG;AACH,wBAAgB,4BAA4B,CAAC,QAAQ,EAAE,MAAM,GAAG,WAAW,EAAE,CAwB5E;AAED,OAAO,EACL,sBAAsB,EACtB,mBAAmB,EACnB,2BAA2B,EAC3B,0BAA0B,EAC1B,uBAAuB,GACxB,CAAC"}
@@ -0,0 +1,192 @@
1
+ "use strict";
2
+ /**
3
+ * Validações para PatchPixPayment
4
+ * Segue as regras especificadas no Open Finance Brasil para Cancelamento de Pagamento PIX
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.validatePatchPixPayment = validatePatchPixPayment;
8
+ exports.validateCancellationReason = validateCancellationReason;
9
+ exports.validateCancellationFrom = validateCancellationFrom;
10
+ exports.validateCancellationDateTime = validateCancellationDateTime;
11
+ const openFinanceErrors_1 = require("../../utils/openFinanceErrors");
12
+ // Valid cancellation status values according to OFB spec
13
+ const VALID_CANCELLATION_STATUS = ["CANC"];
14
+ // Valid cancellation reason types
15
+ const VALID_CANCELLATION_REASONS = [
16
+ "USER",
17
+ "ACCOUNT",
18
+ "CREDITOR",
19
+ "CREDITOR_AGENT",
20
+ "DEBTOR",
21
+ "DEBTOR_AGENT",
22
+ "PAYMENT_FAILURE",
23
+ "COMPLIANCE",
24
+ ];
25
+ // Valid cancellation sources
26
+ const VALID_CANCELLATION_FROM = ["DEBTOR", "CREDITOR"];
27
+ /**
28
+ * Valida o payload de cancelamento de pagamento PIX
29
+ */
30
+ function validatePatchPixPayment(payload) {
31
+ const errors = [];
32
+ // Validação: data deve existir
33
+ if (!payload.data) {
34
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_NAO_INFORMADO("data"));
35
+ return { isValid: false, statusCode: (0, openFinanceErrors_1.getStatusCode)(errors), errors };
36
+ }
37
+ const data = payload.data;
38
+ // Validação: status é obrigatório
39
+ if (!data.status) {
40
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_NAO_INFORMADO("data.status"));
41
+ }
42
+ else if (typeof data.status !== "string") {
43
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO("data.status", "deve ser uma string"));
44
+ }
45
+ else {
46
+ // Validar status contra valores permitidos
47
+ if (!VALID_CANCELLATION_STATUS.includes(data.status)) {
48
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO("data.status", `deve ser um de: ${VALID_CANCELLATION_STATUS.join(", ")}`));
49
+ }
50
+ }
51
+ // Validação: cancellation é obrigatório
52
+ if (!data.cancellation) {
53
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_NAO_INFORMADO("data.cancellation"));
54
+ }
55
+ else {
56
+ const cancellationErrors = validateCancellation(data.cancellation);
57
+ errors.push(...cancellationErrors);
58
+ }
59
+ return {
60
+ isValid: errors.length === 0,
61
+ statusCode: (0, openFinanceErrors_1.getStatusCode)(errors),
62
+ errors,
63
+ };
64
+ }
65
+ /**
66
+ * Valida objeto Cancellation
67
+ */
68
+ function validateCancellation(cancellation) {
69
+ const errors = [];
70
+ if (typeof cancellation !== "object" || cancellation === null) {
71
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO("data.cancellation", "deve ser um objeto"));
72
+ return errors;
73
+ }
74
+ // cancelledBy é obrigatório
75
+ if (!cancellation.cancelledBy) {
76
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_NAO_INFORMADO("data.cancellation.cancelledBy"));
77
+ }
78
+ else {
79
+ const cancelledByErrors = validateCancelledBy(cancellation.cancelledBy);
80
+ errors.push(...cancelledByErrors);
81
+ }
82
+ return errors;
83
+ }
84
+ /**
85
+ * Valida objeto CancelledBy
86
+ */
87
+ function validateCancelledBy(cancelledBy) {
88
+ const errors = [];
89
+ if (typeof cancelledBy !== "object" || cancelledBy === null) {
90
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO("data.cancellation.cancelledBy", "deve ser um objeto"));
91
+ return errors;
92
+ }
93
+ // document é obrigatório
94
+ if (!cancelledBy.document) {
95
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_NAO_INFORMADO("data.cancellation.cancelledBy.document"));
96
+ }
97
+ else {
98
+ const documentErrors = validateDocument(cancelledBy.document);
99
+ errors.push(...documentErrors);
100
+ }
101
+ return errors;
102
+ }
103
+ /**
104
+ * Valida documento do usuário que cancelou
105
+ */
106
+ function validateDocument(document) {
107
+ const errors = [];
108
+ if (typeof document !== "object" || document === null) {
109
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO("data.cancellation.cancelledBy.document", "deve ser um objeto"));
110
+ return errors;
111
+ }
112
+ // identification é obrigatório
113
+ if (!document.identification) {
114
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_NAO_INFORMADO("data.cancellation.cancelledBy.document.identification"));
115
+ }
116
+ else if (typeof document.identification !== "string") {
117
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO("data.cancellation.cancelledBy.document.identification", "deve ser uma string"));
118
+ }
119
+ else {
120
+ // Validar maxLength: 11
121
+ if (document.identification.length > 11) {
122
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO("data.cancellation.cancelledBy.document.identification", "deve ter no máximo 11 caracteres"));
123
+ }
124
+ // Validar padrão: ^\d{11}$ (11 dígitos)
125
+ if (!/^\d{11}$/.test(document.identification)) {
126
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO("data.cancellation.cancelledBy.document.identification", "deve conter apenas 11 dígitos"));
127
+ }
128
+ }
129
+ // rel é obrigatório
130
+ if (!document.rel) {
131
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_NAO_INFORMADO("data.cancellation.cancelledBy.document.rel"));
132
+ }
133
+ else if (typeof document.rel !== "string") {
134
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO("data.cancellation.cancelledBy.document.rel", "deve ser uma string"));
135
+ }
136
+ else {
137
+ // Validar maxLength: 3
138
+ if (document.rel.length > 3) {
139
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO("data.cancellation.cancelledBy.document.rel", "deve ter no máximo 3 caracteres"));
140
+ }
141
+ // Validar padrão: ^[A-Z]{3}$ (3 letras maiúsculas)
142
+ if (!/^[A-Z]{3}$/.test(document.rel)) {
143
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO("data.cancellation.cancelledBy.document.rel", "deve conter 3 letras maiúsculas (ex: CPF)"));
144
+ }
145
+ }
146
+ return errors;
147
+ }
148
+ /**
149
+ * Valida motivo do cancelamento (usado em respostas)
150
+ */
151
+ function validateCancellationReason(reason) {
152
+ const errors = [];
153
+ if (!reason || typeof reason !== "string") {
154
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO("reason", "deve ser uma string não vazia"));
155
+ return errors;
156
+ }
157
+ if (!VALID_CANCELLATION_REASONS.includes(reason)) {
158
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO("reason", `deve ser um de: ${VALID_CANCELLATION_REASONS.join(", ")}`));
159
+ }
160
+ return errors;
161
+ }
162
+ /**
163
+ * Valida origem do cancelamento (usado em respostas)
164
+ */
165
+ function validateCancellationFrom(from) {
166
+ const errors = [];
167
+ if (!from || typeof from !== "string") {
168
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO("cancelledFrom", "deve ser uma string não vazia"));
169
+ return errors;
170
+ }
171
+ if (!VALID_CANCELLATION_FROM.includes(from)) {
172
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO("cancelledFrom", `deve ser um de: ${VALID_CANCELLATION_FROM.join(", ")}`));
173
+ }
174
+ return errors;
175
+ }
176
+ /**
177
+ * Valida data/hora de cancelamento (RFC-3339)
178
+ */
179
+ function validateCancellationDateTime(dateTime) {
180
+ const errors = [];
181
+ if (!dateTime || typeof dateTime !== "string") {
182
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO("cancelledAt", "deve ser uma data/hora válida em RFC-3339"));
183
+ return errors;
184
+ }
185
+ // Validar formato RFC-3339 básico
186
+ const rfc3339Pattern = /^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(.\d{3})?Z$/;
187
+ if (!rfc3339Pattern.test(dateTime)) {
188
+ errors.push(openFinanceErrors_1.CommonErrors.PARAMETRO_INVALIDO("cancelledAt", "deve estar no formato RFC-3339 (ex: 2023-12-22T10:30:00Z)"));
189
+ }
190
+ return errors;
191
+ }
192
+ //# sourceMappingURL=patchPixPayment.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"patchPixPayment.js","sourceRoot":"","sources":["../../../src/payments/validators/patchPixPayment.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Recurring Payments Module - Exports all validators and success responses
3
+ */
4
+ export { validateCreateRecurringConsent } from "./validators/createRecurringConsent";
5
+ export type { CreateRecurringConsentPayload } from "./validators/createRecurringConsent";
6
+ export { validatePatchRecurringConsent } from "./validators/patchRecurringConsent";
7
+ export type { PatchRecurringConsentPayload } from "./validators/patchRecurringConsent";
8
+ export { validateCreateRecurringRetryPixPayment } from "./validators/createRecurringRetryPixPayment";
9
+ export type { CreateRecurringRetryPixPaymentPayload } from "./validators/createRecurringRetryPixPayment";
10
+ export { validatePatchRecurringPixPayment } from "./validators/patchPixPayment";
11
+ export type { PatchRecurringPixPaymentPayload } from "./validators/patchPixPayment";
12
+ export type { CreateRecurringConsentSuccessResponse, GetRecurringConsentSuccessResponse, PatchRecurringConsentSuccessResponse, CreateRecurringPixPaymentSuccessResponse, GetRecurringPixPaymentSuccessResponse, CreateRecurringRetryPixPaymentSuccessResponse, PatchRecurringPixPaymentSuccessResponse, } from "./successResponses";
13
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/recurring-payments/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,8BAA8B,EAAE,MAAM,qCAAqC,CAAC;AACrF,YAAY,EAAE,6BAA6B,EAAE,MAAM,qCAAqC,CAAC;AAEzF,OAAO,EAAE,6BAA6B,EAAE,MAAM,oCAAoC,CAAC;AACnF,YAAY,EAAE,4BAA4B,EAAE,MAAM,oCAAoC,CAAC;AAGvF,OAAO,EAAE,sCAAsC,EAAE,MAAM,6CAA6C,CAAC;AACrG,YAAY,EAAE,qCAAqC,EAAE,MAAM,6CAA6C,CAAC;AAEzG,OAAO,EAAE,gCAAgC,EAAE,MAAM,8BAA8B,CAAC;AAChF,YAAY,EAAE,+BAA+B,EAAE,MAAM,8BAA8B,CAAC;AAGpF,YAAY,EACV,qCAAqC,EACrC,kCAAkC,EAClC,oCAAoC,EACpC,wCAAwC,EACxC,qCAAqC,EACrC,6CAA6C,EAC7C,uCAAuC,GACxC,MAAM,oBAAoB,CAAC"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ /**
3
+ * Recurring Payments Module - Exports all validators and success responses
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.validatePatchRecurringPixPayment = exports.validateCreateRecurringRetryPixPayment = exports.validatePatchRecurringConsent = exports.validateCreateRecurringConsent = void 0;
7
+ // Consent Validators
8
+ var createRecurringConsent_1 = require("./validators/createRecurringConsent");
9
+ Object.defineProperty(exports, "validateCreateRecurringConsent", { enumerable: true, get: function () { return createRecurringConsent_1.validateCreateRecurringConsent; } });
10
+ var patchRecurringConsent_1 = require("./validators/patchRecurringConsent");
11
+ Object.defineProperty(exports, "validatePatchRecurringConsent", { enumerable: true, get: function () { return patchRecurringConsent_1.validatePatchRecurringConsent; } });
12
+ // Payment Validators
13
+ var createRecurringRetryPixPayment_1 = require("./validators/createRecurringRetryPixPayment");
14
+ Object.defineProperty(exports, "validateCreateRecurringRetryPixPayment", { enumerable: true, get: function () { return createRecurringRetryPixPayment_1.validateCreateRecurringRetryPixPayment; } });
15
+ var patchPixPayment_1 = require("./validators/patchPixPayment");
16
+ Object.defineProperty(exports, "validatePatchRecurringPixPayment", { enumerable: true, get: function () { return patchPixPayment_1.validatePatchRecurringPixPayment; } });
17
+ //# sourceMappingURL=index.js.map