@veriko-mx/sdk 0.4.11 → 0.4.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 (45) hide show
  1. package/CHANGELOG.md +46 -0
  2. package/README.md +196 -38
  3. package/dist/cjs/client.d.ts +3 -2
  4. package/dist/cjs/client.d.ts.map +1 -1
  5. package/dist/cjs/client.js +3 -2
  6. package/dist/cjs/client.js.map +1 -1
  7. package/dist/cjs/generated/openapi.d.ts +1353 -195
  8. package/dist/cjs/generated/openapi.d.ts.map +1 -1
  9. package/dist/cjs/http.d.ts +2 -0
  10. package/dist/cjs/http.d.ts.map +1 -1
  11. package/dist/cjs/http.js +1 -1
  12. package/dist/cjs/http.js.map +1 -1
  13. package/dist/cjs/index.d.ts +1 -1
  14. package/dist/cjs/index.d.ts.map +1 -1
  15. package/dist/cjs/index.js.map +1 -1
  16. package/dist/cjs/resources.d.ts +104 -16
  17. package/dist/cjs/resources.d.ts.map +1 -1
  18. package/dist/cjs/resources.js +233 -34
  19. package/dist/cjs/resources.js.map +1 -1
  20. package/dist/cjs/types.d.ts +182 -22
  21. package/dist/cjs/types.d.ts.map +1 -1
  22. package/dist/cjs/types.js +6 -0
  23. package/dist/cjs/types.js.map +1 -1
  24. package/dist/esm/client.d.ts +3 -2
  25. package/dist/esm/client.d.ts.map +1 -1
  26. package/dist/esm/client.js +3 -2
  27. package/dist/esm/client.js.map +1 -1
  28. package/dist/esm/generated/openapi.d.ts +1353 -195
  29. package/dist/esm/generated/openapi.d.ts.map +1 -1
  30. package/dist/esm/http.d.ts +2 -0
  31. package/dist/esm/http.d.ts.map +1 -1
  32. package/dist/esm/http.js +1 -1
  33. package/dist/esm/http.js.map +1 -1
  34. package/dist/esm/index.d.ts +1 -1
  35. package/dist/esm/index.d.ts.map +1 -1
  36. package/dist/esm/index.js.map +1 -1
  37. package/dist/esm/resources.d.ts +104 -16
  38. package/dist/esm/resources.d.ts.map +1 -1
  39. package/dist/esm/resources.js +232 -34
  40. package/dist/esm/resources.js.map +1 -1
  41. package/dist/esm/types.d.ts +182 -22
  42. package/dist/esm/types.d.ts.map +1 -1
  43. package/dist/esm/types.js +6 -0
  44. package/dist/esm/types.js.map +1 -1
  45. package/package.json +1 -1
@@ -50,27 +50,89 @@ export function filtersToQuery(filters) {
50
50
  with_deleted: flag(filters.withDeleted),
51
51
  batch_id: filters.batchId,
52
52
  bank: filters.bank,
53
+ banks: joinList(filters.banks),
53
54
  amount_min: filters.amountMin,
54
55
  amount_max: filters.amountMax,
55
56
  client_ref: filters.clientRef,
56
57
  retry_state: filters.retryState,
57
58
  };
58
59
  }
60
+ /** Separa el endpoint, o la lista de endpoints, de los argumentos de una consulta de entregas. */
61
+ function deliveriesArguments(first, second) {
62
+ if (typeof first === 'string' || Array.isArray(first)) {
63
+ return [first, second ?? {}];
64
+ }
65
+ return [undefined, first ?? {}];
66
+ }
67
+ /** Uno o varios endpoints para el filtro `endpoint_id`, separados por comas. */
68
+ function endpointIds(webhookId) {
69
+ if (webhookId === undefined)
70
+ return undefined;
71
+ const ids = typeof webhookId === 'string' ? [webhookId] : webhookId;
72
+ return ids.map((id) => checkedId(id)).join(',');
73
+ }
74
+ /** Los filtros de una consulta de entregas, con el nombre y el valor que la API espera. */
75
+ export function deliveryFiltersToQuery(filters) {
76
+ const responseStatus = filters.responseStatus;
77
+ return {
78
+ status: joinList(filters.status),
79
+ event_type: joinList(filters.eventType),
80
+ response_status: responseStatus === undefined
81
+ ? undefined
82
+ : typeof responseStatus === 'object'
83
+ ? responseStatus.map(String).join(',')
84
+ : String(responseStatus),
85
+ validation_id: filters.validationId,
86
+ q: filters.q,
87
+ from: filters.from,
88
+ to: filters.to,
89
+ min_attempt: filters.minAttempt,
90
+ min_response_time_ms: filters.minResponseTimeMs,
91
+ };
92
+ }
93
+ function hasValues(query) {
94
+ return Object.values(query).some((value) => value !== undefined);
95
+ }
59
96
  function idempotencyHeader(key) {
60
97
  return { 'idempotency-key': key };
61
98
  }
99
+ /**
100
+ * La cuenta de la petición: una sola, o una lista de candidatas, nunca las dos.
101
+ *
102
+ * Cuántas candidatas admite la plataforma lo decide la API, que responde `422`
103
+ * con `cuentas_candidatas_invalidas` cuando la lista no cumple.
104
+ */
105
+ function accountFields(cuentaBeneficiaria, cuentasCandidatas) {
106
+ if (cuentasCandidatas === undefined) {
107
+ return cuentaBeneficiaria ? { cuenta_beneficiaria: cuentaBeneficiaria } : {};
108
+ }
109
+ if (cuentaBeneficiaria) {
110
+ throw new InvalidRequestError('Envía cuentaBeneficiaria o cuentasCandidatas, no las dos', {
111
+ status: 422,
112
+ code: 'cuenta_y_candidatas_excluyentes',
113
+ });
114
+ }
115
+ if (!Array.isArray(cuentasCandidatas)) {
116
+ throw new InvalidRequestError('cuentasCandidatas va como un arreglo de cuentas', {
117
+ status: 422,
118
+ code: 'cuentas_candidatas_invalidas',
119
+ });
120
+ }
121
+ return { cuentas_candidatas: cuentasCandidatas.slice() };
122
+ }
62
123
  /** El cuerpo de una validación por campos, con su comprobación previa. */
63
124
  function directBody(params) {
64
125
  if (!params.claveRastreo && !params.referenciaNumerica) {
65
126
  throw new InvalidRequestError('Hace falta claveRastreo o referenciaNumerica para buscar la transferencia en el CEP', { status: 422, code: 'clave_or_ref_required' });
66
127
  }
67
- if (!params.cuentaBeneficiaria) {
68
- throw new InvalidRequestError('Hace falta cuentaBeneficiaria: la API no la busca entre los beneficiarios guardados', { status: 422, code: 'cuenta_required' });
128
+ if (params.cuentasCandidatas === undefined && !params.cuentaBeneficiaria) {
129
+ throw new InvalidRequestError('Hace falta cuentaBeneficiaria, o cuentasCandidatas cuando no se sabe cuál fue la cuenta: ' +
130
+ 'la API no la busca entre los beneficiarios guardados', { status: 422, code: 'cuenta_required' });
69
131
  }
70
132
  const body = {
71
133
  fecha: params.fecha,
72
134
  monto: typeof params.monto === 'string' ? Number(params.monto) : params.monto,
73
- cuenta_beneficiaria: params.cuentaBeneficiaria,
135
+ ...accountFields(params.cuentaBeneficiaria, params.cuentasCandidatas),
74
136
  };
75
137
  if (params.claveRastreo !== undefined)
76
138
  body.clave_rastreo = params.claveRastreo;
@@ -116,12 +178,17 @@ async function ocrBody(params) {
116
178
  body.image = await encodeImage(params.image);
117
179
  if (params.imageUrl)
118
180
  body.image_url = params.imageUrl;
119
- if (params.cuentaBeneficiaria)
120
- body.cuenta_beneficiaria = params.cuentaBeneficiaria;
181
+ Object.assign(body, accountFields(params.cuentaBeneficiaria || undefined, params.cuentasCandidatas));
121
182
  if (params.retryPolicy !== undefined)
122
183
  body.retry_policy = params.retryPolicy;
123
184
  if (params.clientRef !== undefined)
124
185
  body.client_ref = params.clientRef;
186
+ if (params.retainImage !== undefined)
187
+ body.retain_image = params.retainImage;
188
+ if (params.bancoEmisor !== undefined)
189
+ body.banco_emisor = params.bancoEmisor;
190
+ if (params.bancoReceptor !== undefined)
191
+ body.banco_receptor = params.bancoReceptor;
125
192
  return body;
126
193
  }
127
194
  function readQueued(response) {
@@ -171,7 +238,13 @@ async function exportFile(transport, path, format, query, fallbackName, extraAcc
171
238
  return toFile(response, `${fallbackName}.${format}`, response.headers['content-type'] ?? accept);
172
239
  }
173
240
  // ── Validaciones ────────────────────────────────────────────────────────────
174
- /** Validaciones SPEI: crearlas, seguirlas y descargar lo que producen. */
241
+ /**
242
+ * Validaciones SPEI: crearlas, seguirlas y descargar lo que producen.
243
+ *
244
+ * Una validación purgada con `executePurge()` responde `410` con
245
+ * `validation_purged` en el CEP, el comprobante, los reintentos y la revisión
246
+ * posterior.
247
+ */
175
248
  export class Validations {
176
249
  transport;
177
250
  constructor(transport) {
@@ -185,10 +258,15 @@ export class Validations {
185
258
  * volumen está `enqueue()`, que acepta la petición y deja el veredicto para
186
259
  * después.
187
260
  *
188
- * `cuentaBeneficiaria` es obligatoria: la API no la busca entre los
189
- * beneficiarios guardados. `clientRef` es una referencia propia, de 1 a 64
190
- * caracteres, que vuelve en `attributes.client_ref` y en los webhooks, y que
191
- * `list()` acepta como filtro exacto.
261
+ * La cuenta va en `cuentaBeneficiaria`, o en `cuentasCandidatas` cuando no se
262
+ * sabe cuál fue: de 2 a 3 cuentas en una sola validación y con una sola unidad
263
+ * de cuota. Se envía una de las dos, no las dos. La API no busca la cuenta
264
+ * entre los beneficiarios guardados. La cuenta que coincidió queda en
265
+ * `attributes.candidate_match`.
266
+ *
267
+ * `clientRef` es una referencia propia, de 1 a 64 caracteres, que vuelve en
268
+ * `attributes.client_ref` y en los webhooks, y que `list()` acepta como filtro
269
+ * exacto.
192
270
  */
193
271
  async validate(params) {
194
272
  const response = await this.post('/validate', directBody(params), params.idempotencyKey, false);
@@ -204,6 +282,15 @@ export class Validations {
204
282
  * `imageUrl` sirve para un comprobante ya publicado en HTTPS. Si se envían las
205
283
  * dos, la API sólo considera `image`.
206
284
  *
285
+ * `cuentasCandidatas` sustituye a `cuentaBeneficiaria` cuando la imagen no
286
+ * muestra la cuenta y no se sabe cuál fue: de 2 a 3 cuentas, con una sola
287
+ * unidad de cuota. Se envía una de las dos, no las dos.
288
+ *
289
+ * `retainImage` vale `true` por omisión: la plataforma conserva el archivo y
290
+ * `image()` lo sirve. Con `false` lo borra en cuanto la validación llega a un
291
+ * estado terminal del que ya no lo necesita, y `attributes.image_retained` es
292
+ * `false`.
293
+ *
207
294
  * `clientRef` es una referencia propia, de 1 a 64 caracteres, que vuelve en
208
295
  * `attributes.client_ref` y en los webhooks.
209
296
  */
@@ -394,7 +481,8 @@ export class Validations {
394
481
  /**
395
482
  * Descarga el comprobante de una validación por OCR: una imagen o un PDF.
396
483
  *
397
- * `GET /v1/validations/{id}/image`.
484
+ * `GET /v1/validations/{id}/image`. Responde `410` con `image_not_retained`
485
+ * cuando la validación se creó con `retainImage: false`.
398
486
  */
399
487
  async image(validationId) {
400
488
  const response = await this.transport.request({
@@ -468,6 +556,102 @@ export class Validations {
468
556
  });
469
557
  return readData(response, 'del envío');
470
558
  }
559
+ // Revisar el pago y borrar
560
+ /**
561
+ * Vuelve a consultar a Banxico el estado de pago de una validación `valid`.
562
+ *
563
+ * `POST /v1/validations/{id}/recheck`. No consume cuota. Un `valid` es el
564
+ * veredicto del momento de la consulta: Banxico puede reportar la devolución
565
+ * horas o días después. Si la reporta, la validación pasa a `returned`,
566
+ * conserva su CEP y la API emite el webhook `validation.returned`.
567
+ *
568
+ * Se consulta una `valid` creada hace 72 horas como máximo. Una `returned`
569
+ * responde su estado actual sin consultar a Banxico, con `checkedAt` en
570
+ * `null`. Cualquier otra, o una `valid` fuera de la ventana, responde `422` con
571
+ * `recheck_not_eligible` o `recheck_window_expired`.
572
+ *
573
+ * Cada validación admite una consulta cada 10 minutos: antes responde `429` con
574
+ * `recheck_rate_limited`, y `RateLimitError.retryAfter` trae los segundos que
575
+ * faltan. Si Banxico no entrega un estado legible responde `503` con
576
+ * `recheck_unavailable`, y la validación conserva su intervalo. Una validación
577
+ * purgada responde `410` con `validation_purged`. El SDK no reintenta esta
578
+ * llamada por su cuenta: cada una de esas respuestas ya trae su espera.
579
+ *
580
+ * @see https://docs.veriko.mx/es/concepts/cep-concept
581
+ */
582
+ async recheck(validationId) {
583
+ const response = await this.transport.request({
584
+ method: 'POST',
585
+ path: `/validations/${pathSegment(validationId)}/recheck`,
586
+ retry: false,
587
+ });
588
+ const document = readDocument(response);
589
+ const validation = document['data'];
590
+ if (!validation?.id) {
591
+ throw new ApiError('La respuesta no trae el recurso `data` de la validación', {
592
+ status: response.status,
593
+ headers: response.headers,
594
+ });
595
+ }
596
+ const recheck = readMeta(document)['recheck'];
597
+ return {
598
+ validation,
599
+ checkedAt: recheck?.checked_at ?? null,
600
+ changed: recheck?.changed === true,
601
+ previousStatus: recheck?.previous_status ?? 'valid',
602
+ };
603
+ }
604
+ /**
605
+ * Describe lo que borraría el borrado definitivo de una validación.
606
+ *
607
+ * `POST /v1/validations/{id}/purge/prepare`. No cambia nada: devuelve lo que se
608
+ * borraría, lo que conservaría la lápida y un `confirmation_token` de un solo
609
+ * uso, que caduca en `expires_in` segundos y que `executePurge()` exige.
610
+ *
611
+ * Sólo admite una validación propia en un estado terminal. Una validación en
612
+ * curso responde `409` con `purge_validation_in_progress`, y una ya purgada,
613
+ * `410` con `validation_purged`.
614
+ *
615
+ * @see https://docs.veriko.mx/es/how-to/purge-a-validation
616
+ */
617
+ async preparePurge(validationId) {
618
+ const response = await this.transport.request({
619
+ method: 'POST',
620
+ path: `/validations/${pathSegment(validationId)}/purge/prepare`,
621
+ });
622
+ return readData(response, 'de la preparación del borrado');
623
+ }
624
+ /**
625
+ * Borra de forma definitiva el contenido de una validación.
626
+ *
627
+ * `POST /v1/validations/{id}/purge/execute`. Es el segundo paso: el
628
+ * `confirmationToken` es el que devolvió `preparePurge()` para esta misma
629
+ * validación. **El borrado es irreversible** y no devuelve cuota. La validación
630
+ * queda como una lápida: conserva el veredicto, las fechas y el monto, y trae
631
+ * `attributes.purged_at`.
632
+ *
633
+ * Un token ausente, mal formado, vencido o de otra validación responde `422`;
634
+ * uno ya usado, `409` con `confirmation_token_already_used`. Si la respuesta no
635
+ * llega, `get()` dice si el borrado se completó: una validación purgada trae
636
+ * `purged_at`. El SDK no reintenta esta llamada por su cuenta.
637
+ *
638
+ * @see https://docs.veriko.mx/es/how-to/purge-a-validation
639
+ */
640
+ async executePurge(validationId, params) {
641
+ if (!params.confirmationToken) {
642
+ throw new InvalidRequestError('Hace falta confirmationToken: lo devuelve preparePurge()', {
643
+ status: 422,
644
+ code: 'confirmation_token_missing',
645
+ });
646
+ }
647
+ const response = await this.transport.request({
648
+ method: 'POST',
649
+ path: `/validations/${pathSegment(validationId)}/purge/execute`,
650
+ body: { confirmation_token: params.confirmationToken },
651
+ retry: false,
652
+ });
653
+ return readData(response, 'del borrado');
654
+ }
471
655
  }
472
656
  // ── Webhooks ────────────────────────────────────────────────────────────────
473
657
  /**
@@ -581,11 +765,10 @@ export class Webhooks {
581
765
  return readData(response, 'del endpoint');
582
766
  }
583
767
  async deliveries(first, second) {
584
- const webhookId = typeof first === 'string' ? first : undefined;
585
- const params = (typeof first === 'string' ? second : first) ?? {};
586
- const filtered = params.status !== undefined || params.eventType !== undefined;
768
+ const [webhookId, params] = deliveriesArguments(first, second);
769
+ const filters = deliveryFiltersToQuery(params);
587
770
  const paging = { page: params.page, per_page: params.perPage };
588
- const response = webhookId !== undefined && !filtered
771
+ const response = typeof webhookId === 'string' && !hasValues(filters)
589
772
  ? await this.transport.request({
590
773
  method: 'GET',
591
774
  path: `/webhooks/${pathSegment(webhookId)}/deliveries`,
@@ -594,41 +777,29 @@ export class Webhooks {
594
777
  : await this.transport.request({
595
778
  method: 'GET',
596
779
  path: '/webhooks/deliveries',
597
- query: {
598
- ...paging,
599
- endpoint_id: webhookId === undefined ? undefined : checkedId(webhookId),
600
- status: params.status,
601
- event_type: params.eventType,
602
- },
780
+ query: { ...paging, endpoint_id: endpointIds(webhookId), ...filters },
603
781
  });
604
782
  return parsePage(response);
605
783
  }
606
784
  iterDeliveries(first, second) {
607
- const webhookId = typeof first === 'string' ? first : undefined;
608
- const options = (typeof first === 'string' ? second : first) ?? {};
785
+ const [webhookId, options] = deliveriesArguments(first, second);
609
786
  const { maxPages, page, ...filters } = options;
610
787
  return iteratePages((number) => webhookId === undefined
611
788
  ? this.deliveries({ ...filters, page: number })
612
789
  : this.deliveries(webhookId, { ...filters, page: number }), { startPage: page ?? 1, maxPages });
613
790
  }
614
791
  exportDeliveries(first, second) {
615
- const webhookId = typeof first === 'string' ? first : undefined;
616
- const params = (typeof first === 'string' ? second : first) ?? {};
617
- const filtered = params.status !== undefined || params.eventType !== undefined;
792
+ const [webhookId, params] = deliveriesArguments(first, second);
793
+ const filters = deliveryFiltersToQuery(params);
618
794
  const format = params.format ?? 'csv';
619
- if (webhookId !== undefined && !filtered) {
795
+ if (typeof webhookId === 'string' && !hasValues(filters)) {
620
796
  return exportFile(this.transport, `/webhooks/${pathSegment(webhookId)}/deliveries/export`, format, { limit: params.limit }, `entregas-${webhookId}`);
621
797
  }
622
- return exportFile(this.transport, '/webhooks/deliveries/export', format, {
623
- limit: params.limit,
624
- endpoint_id: webhookId === undefined ? undefined : checkedId(webhookId),
625
- status: params.status,
626
- event_type: params.eventType,
627
- }, webhookId === undefined ? 'entregas' : `entregas-${webhookId}`);
798
+ return exportFile(this.transport, '/webhooks/deliveries/export', format, { limit: params.limit, endpoint_id: endpointIds(webhookId), ...filters }, typeof webhookId === 'string' ? `entregas-${webhookId}` : 'entregas');
628
799
  }
629
800
  }
630
801
  // ── Catálogo ────────────────────────────────────────────────────────────────
631
- /** Datos abiertos: el catálogo de bancos y el estado del servicio. */
802
+ /** Datos abiertos: el catálogo de bancos, el calendario SPEI y el estado del servicio. */
632
803
  export class Catalog {
633
804
  transport;
634
805
  constructor(transport) {
@@ -667,6 +838,33 @@ export class Catalog {
667
838
  });
668
839
  return readData(response, 'del BIN');
669
840
  }
841
+ /**
842
+ * Calendario de días inhábiles SPEI de un año, con la disposición de la que sale.
843
+ *
844
+ * `GET /v1/public/spei-calendar/{year}`. No consume cuota. Un año sin calendario
845
+ * se lanza como `NotFoundError` con `spei_calendar_year_not_covered`. Con
846
+ * `ifNoneMatch` la API responde `304` cuando el calendario no cambió, y el SDK lo
847
+ * lanza como `ApiError` con `status` 304. El `ETag` de cada lectura queda en
848
+ * `etag`, y los años con calendario, en `coveredYears`.
849
+ */
850
+ async speiCalendar(year, options = {}) {
851
+ const response = await this.transport.request({
852
+ method: 'GET',
853
+ path: `/public/spei-calendar/${pathSegment(String(year))}`,
854
+ headers: { 'if-none-match': options.ifNoneMatch },
855
+ });
856
+ if (response.status === 304)
857
+ throw notModified('El calendario', response);
858
+ const calendar = readData(response, 'del calendario');
859
+ const covered = readMeta(readDocument(response))['covered_years'];
860
+ calendar.coveredYears = Array.isArray(covered)
861
+ ? covered.filter((year) => typeof year === 'number')
862
+ : [];
863
+ const etag = response.headers['etag'];
864
+ if (etag)
865
+ calendar.etag = etag;
866
+ return calendar;
867
+ }
670
868
  /**
671
869
  * Estado del servicio de consulta de Banxico.
672
870
  *
@@ -1 +1 @@
1
- {"version":3,"file":"resources.js","sourceRoot":"","sources":["../../src/resources.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resources.js","sourceRoot":"","sources":["../../src/resources.ts"],"names":[],"mappings":"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"}