@veriko-mx/sdk 0.4.3

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 (86) hide show
  1. package/CHANGELOG.md +186 -0
  2. package/LICENSE +21 -0
  3. package/README.md +566 -0
  4. package/dist/cjs/client.d.ts +128 -0
  5. package/dist/cjs/client.d.ts.map +1 -0
  6. package/dist/cjs/client.js +145 -0
  7. package/dist/cjs/client.js.map +1 -0
  8. package/dist/cjs/errors.d.ts +110 -0
  9. package/dist/cjs/errors.d.ts.map +1 -0
  10. package/dist/cjs/errors.js +133 -0
  11. package/dist/cjs/errors.js.map +1 -0
  12. package/dist/cjs/generated/openapi.d.ts +8404 -0
  13. package/dist/cjs/generated/openapi.d.ts.map +1 -0
  14. package/dist/cjs/generated/openapi.js +7 -0
  15. package/dist/cjs/generated/openapi.js.map +1 -0
  16. package/dist/cjs/http.d.ts +75 -0
  17. package/dist/cjs/http.d.ts.map +1 -0
  18. package/dist/cjs/http.js +237 -0
  19. package/dist/cjs/http.js.map +1 -0
  20. package/dist/cjs/index.d.ts +35 -0
  21. package/dist/cjs/index.d.ts.map +1 -0
  22. package/dist/cjs/index.js +91 -0
  23. package/dist/cjs/index.js.map +1 -0
  24. package/dist/cjs/internal.d.ts +40 -0
  25. package/dist/cjs/internal.d.ts.map +1 -0
  26. package/dist/cjs/internal.js +92 -0
  27. package/dist/cjs/internal.js.map +1 -0
  28. package/dist/cjs/package.json +3 -0
  29. package/dist/cjs/pagination.d.ts +41 -0
  30. package/dist/cjs/pagination.d.ts.map +1 -0
  31. package/dist/cjs/pagination.js +66 -0
  32. package/dist/cjs/pagination.js.map +1 -0
  33. package/dist/cjs/resources.d.ts +522 -0
  34. package/dist/cjs/resources.d.ts.map +1 -0
  35. package/dist/cjs/resources.js +1361 -0
  36. package/dist/cjs/resources.js.map +1 -0
  37. package/dist/cjs/types.d.ts +559 -0
  38. package/dist/cjs/types.d.ts.map +1 -0
  39. package/dist/cjs/types.js +117 -0
  40. package/dist/cjs/types.js.map +1 -0
  41. package/dist/cjs/webhooks.d.ts +54 -0
  42. package/dist/cjs/webhooks.d.ts.map +1 -0
  43. package/dist/cjs/webhooks.js +116 -0
  44. package/dist/cjs/webhooks.js.map +1 -0
  45. package/dist/esm/client.d.ts +128 -0
  46. package/dist/esm/client.d.ts.map +1 -0
  47. package/dist/esm/client.js +141 -0
  48. package/dist/esm/client.js.map +1 -0
  49. package/dist/esm/errors.d.ts +110 -0
  50. package/dist/esm/errors.d.ts.map +1 -0
  51. package/dist/esm/errors.js +117 -0
  52. package/dist/esm/errors.js.map +1 -0
  53. package/dist/esm/generated/openapi.d.ts +8404 -0
  54. package/dist/esm/generated/openapi.d.ts.map +1 -0
  55. package/dist/esm/generated/openapi.js +6 -0
  56. package/dist/esm/generated/openapi.js.map +1 -0
  57. package/dist/esm/http.d.ts +75 -0
  58. package/dist/esm/http.d.ts.map +1 -0
  59. package/dist/esm/http.js +229 -0
  60. package/dist/esm/http.js.map +1 -0
  61. package/dist/esm/index.d.ts +35 -0
  62. package/dist/esm/index.d.ts.map +1 -0
  63. package/dist/esm/index.js +33 -0
  64. package/dist/esm/index.js.map +1 -0
  65. package/dist/esm/internal.d.ts +40 -0
  66. package/dist/esm/internal.d.ts.map +1 -0
  67. package/dist/esm/internal.js +82 -0
  68. package/dist/esm/internal.js.map +1 -0
  69. package/dist/esm/package.json +3 -0
  70. package/dist/esm/pagination.d.ts +41 -0
  71. package/dist/esm/pagination.d.ts.map +1 -0
  72. package/dist/esm/pagination.js +62 -0
  73. package/dist/esm/pagination.js.map +1 -0
  74. package/dist/esm/resources.d.ts +522 -0
  75. package/dist/esm/resources.d.ts.map +1 -0
  76. package/dist/esm/resources.js +1346 -0
  77. package/dist/esm/resources.js.map +1 -0
  78. package/dist/esm/types.d.ts +559 -0
  79. package/dist/esm/types.d.ts.map +1 -0
  80. package/dist/esm/types.js +109 -0
  81. package/dist/esm/types.js.map +1 -0
  82. package/dist/esm/webhooks.d.ts +54 -0
  83. package/dist/esm/webhooks.d.ts.map +1 -0
  84. package/dist/esm/webhooks.js +109 -0
  85. package/dist/esm/webhooks.js.map +1 -0
  86. package/package.json +78 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,117 @@
1
+ "use strict";
2
+ /**
3
+ * Tipos del dominio.
4
+ *
5
+ * Los que describen lo que viaja por el cable salen del spec de OpenAPI, no se
6
+ * escriben a mano: `src/generated/openapi.ts` lo genera `openapi-typescript`
7
+ * desde `spec/openapi.yaml`, que es copia de la versión pública publicada en
8
+ * https://docs.veriko.mx/openapi.yaml.
9
+ *
10
+ * Este archivo pone nombres cortos sobre esos tipos y añade los que el SDK
11
+ * necesita y el spec no describe, como la forma de una entrega de webhook.
12
+ */
13
+ Object.defineProperty(exports, "__esModule", { value: true });
14
+ exports.IMPORT_TERMINAL_STATUSES = exports.IMPORT_TEMPLATE_FORMATS = exports.WEBHOOK_EVENTS = exports.EXPORT_FORMATS = exports.CEP_FORMATS = exports.TERMINAL_STATUSES = exports.RETRYABLE_OUTCOMES = exports.OCR_VALIDATION_REQUEST_FIELDS = exports.VALIDATION_REQUEST_FIELDS = void 0;
15
+ exports.isTerminal = isTerminal;
16
+ exports.isSettled = isSettled;
17
+ exports.hasCep = hasCep;
18
+ exports.isImportTerminal = isImportTerminal;
19
+ exports.isImportSettled = isImportSettled;
20
+ /**
21
+ * Los campos de `ValidationRequest`, para el candado que los compara con el
22
+ * spec. El orden es el del spec.
23
+ */
24
+ exports.VALIDATION_REQUEST_FIELDS = [
25
+ 'fecha',
26
+ 'monto',
27
+ 'clave_rastreo',
28
+ 'referencia_numerica',
29
+ 'emisor',
30
+ 'receptor',
31
+ 'cuenta_beneficiaria',
32
+ 'receptor_participante',
33
+ 'retry_policy',
34
+ ];
35
+ /** Los campos de `OcrValidationRequest`, para el candado que los compara con el spec. */
36
+ exports.OCR_VALIDATION_REQUEST_FIELDS = [
37
+ 'image',
38
+ 'image_url',
39
+ 'cuenta_beneficiaria',
40
+ 'retry_policy',
41
+ ];
42
+ /** Veredictos que admiten reintento automático. */
43
+ exports.RETRYABLE_OUTCOMES = ['not_found', 'cep_unavailable', 'error'];
44
+ /** Estados en los que una validación ya no cambia por sí sola. */
45
+ exports.TERMINAL_STATUSES = [
46
+ 'valid',
47
+ 'not_found',
48
+ 'cep_unavailable',
49
+ 'invalid',
50
+ 'returned',
51
+ 'failed',
52
+ 'error',
53
+ ];
54
+ /** `true` cuando el estado ya no va a cambiar sin una acción externa. */
55
+ function isTerminal(status) {
56
+ return exports.TERMINAL_STATUSES.includes(status);
57
+ }
58
+ /**
59
+ * `true` cuando el veredicto ya no va a cambiar, ni por reintentos.
60
+ *
61
+ * `isTerminal()` mira sólo el estado. Un `not_found` es terminal para la consulta
62
+ * que lo produjo, pero si la validación tiene un ciclo de reintentos en marcha la
63
+ * API va a volver a preguntar a Banxico, y el veredicto puede cambiar. Ésta es la
64
+ * condición que espera `waitFor()`.
65
+ */
66
+ function isSettled(validation) {
67
+ if (!isTerminal(validation.attributes.status))
68
+ return false;
69
+ const state = validation.attributes.retry_state;
70
+ const cycleAlive = state?.enabled === true &&
71
+ (state.terminal_state === undefined ||
72
+ state.terminal_state === null ||
73
+ state.terminal_state === 'pending');
74
+ return !cycleAlive;
75
+ }
76
+ /**
77
+ * `true` cuando hay comprobante que descargar.
78
+ *
79
+ * Se deriva de `links.cep_xml`, que es lo que publica el servidor. Un
80
+ * `returned` nacido de `cep_unavailable` no lo trae.
81
+ */
82
+ function hasCep(validation) {
83
+ return Boolean(validation.links?.cep_xml);
84
+ }
85
+ /** Formatos en los que la API entrega el comprobante. */
86
+ exports.CEP_FORMATS = ['xml', 'pdf'];
87
+ /** Formatos de las exportaciones. */
88
+ exports.EXPORT_FORMATS = ['csv', 'xlsx'];
89
+ /** Tipos de evento que emiten los webhooks salientes. */
90
+ exports.WEBHOOK_EVENTS = [
91
+ 'validation.completed',
92
+ 'validation.failed',
93
+ 'validation.error',
94
+ 'validation.retry.scheduled',
95
+ 'validation.retry.resolved',
96
+ 'validation.retry.exhausted',
97
+ 'validation_import.completed',
98
+ ];
99
+ /** Formatos de la plantilla de importación. */
100
+ exports.IMPORT_TEMPLATE_FORMATS = ['csv', 'xlsx', 'xls', 'txt', 'json'];
101
+ /** Estados finales de una importación de beneficiarios. */
102
+ exports.IMPORT_TERMINAL_STATUSES = ['completed', 'failed', 'cancelled'];
103
+ /** `true` cuando el trabajo terminó, con éxito o no. */
104
+ function isImportTerminal(status) {
105
+ return exports.IMPORT_TERMINAL_STATUSES.includes(status);
106
+ }
107
+ /**
108
+ * `true` cuando el trabajo ya no avanza por sí solo.
109
+ *
110
+ * Cubre `preview_ready`, donde el avance se detiene a esperar la revisión, y los
111
+ * estados finales. Es lo que espera `importWait()`.
112
+ */
113
+ function isImportSettled(job) {
114
+ const status = job.attributes?.status;
115
+ return status === 'preview_ready' || isImportTerminal(status);
116
+ }
117
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;GAUG;;;AA2HH,gCAEC;AAUD,8BASC;AAQD,wBAEC;AAkcD,4CAEC;AAQD,0CAGC;AAnjBD;;;GAGG;AACU,QAAA,yBAAyB,GAAG;IACvC,OAAO;IACP,OAAO;IACP,eAAe;IACf,qBAAqB;IACrB,QAAQ;IACR,UAAU;IACV,qBAAqB;IACrB,uBAAuB;IACvB,cAAc;CACN,CAAC;AAoBX,yFAAyF;AAC5E,QAAA,6BAA6B,GAAG;IAC3C,OAAO;IACP,WAAW;IACX,qBAAqB;IACrB,cAAc;CACN,CAAC;AAcX,mDAAmD;AACtC,QAAA,kBAAkB,GAAG,CAAC,WAAW,EAAE,iBAAiB,EAAE,OAAO,CAAU,CAAC;AAErF,kEAAkE;AACrD,QAAA,iBAAiB,GAAG;IAC/B,OAAO;IACP,WAAW;IACX,iBAAiB;IACjB,SAAS;IACT,UAAU;IACV,QAAQ;IACR,OAAO;CACC,CAAC;AAEX,yEAAyE;AACzE,SAAgB,UAAU,CAAC,MAA0B;IACnD,OAAO,yBAAiB,CAAC,QAAQ,CAAC,MAA4C,CAAC,CAAC;AAClF,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,SAAS,CAAC,UAAsB;IAC9C,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC;QAAE,OAAO,KAAK,CAAC;IAC5D,MAAM,KAAK,GAAG,UAAU,CAAC,UAAU,CAAC,WAAW,CAAC;IAChD,MAAM,UAAU,GACd,KAAK,EAAE,OAAO,KAAK,IAAI;QACvB,CAAC,KAAK,CAAC,cAAc,KAAK,SAAS;YACjC,KAAK,CAAC,cAAc,KAAK,IAAI;YAC7B,KAAK,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC;IACxC,OAAO,CAAC,UAAU,CAAC;AACrB,CAAC;AAED;;;;;GAKG;AACH,SAAgB,MAAM,CAAC,UAAsB;IAC3C,OAAO,OAAO,CAAC,UAAU,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;AAC5C,CAAC;AAQD,yDAAyD;AAC5C,QAAA,WAAW,GAAG,CAAC,KAAK,EAAE,KAAK,CAAU,CAAC;AAGnD,qCAAqC;AACxB,QAAA,cAAc,GAAG,CAAC,KAAK,EAAE,MAAM,CAAU,CAAC;AAkBvD,yDAAyD;AAC5C,QAAA,cAAc,GAAG;IAC5B,sBAAsB;IACtB,mBAAmB;IACnB,kBAAkB;IAClB,4BAA4B;IAC5B,2BAA2B;IAC3B,4BAA4B;IAC5B,6BAA6B;CACrB,CAAC;AAkZX,+CAA+C;AAClC,QAAA,uBAAuB,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,CAAU,CAAC;AAGtF,2DAA2D;AAC9C,QAAA,wBAAwB,GAAG,CAAC,WAAW,EAAE,QAAQ,EAAE,WAAW,CAAU,CAAC;AAEtF,wDAAwD;AACxD,SAAgB,gBAAgB,CAAC,MAA0B;IACzD,OAAO,gCAAwB,CAAC,QAAQ,CAAC,MAAmD,CAAC,CAAC;AAChG,CAAC;AAED;;;;;GAKG;AACH,SAAgB,eAAe,CAAC,GAAyB;IACvD,MAAM,MAAM,GAAG,GAAG,CAAC,UAAU,EAAE,MAAM,CAAC;IACtC,OAAO,MAAM,KAAK,eAAe,IAAI,gBAAgB,CAAC,MAAM,CAAC,CAAC;AAChE,CAAC"}
@@ -0,0 +1,54 @@
1
+ /**
2
+ * Verificación de la firma de un webhook.
3
+ *
4
+ * Cada entrega llega firmada con HMAC-SHA256 del cuerpo, usando el secreto que
5
+ * devolvió `POST /v1/webhooks` al registrar el endpoint. La firma viaja en
6
+ * hexadecimal, prefijada por el algoritmo:
7
+ *
8
+ * X-Webhook-Signature: sha256=<hex>
9
+ *
10
+ * Lo que se firma es el cuerpo tal como llegó. Interpretar el JSON y volver a
11
+ * serializarlo cambia los bytes, porque el orden de las claves, los espacios y
12
+ * el escape de los caracteres no ASCII no se conservan, y la firma deja de
13
+ * cuadrar. En Express, eso significa `express.raw()` en la ruta del webhook.
14
+ *
15
+ * @see https://docs.veriko.mx/es/concepts/webhooks-architecture
16
+ */
17
+ import type { WebhookEvent } from './types.js';
18
+ /** Cabecera de la firma. Es genérica a propósito, no lleva el nombre de la marca. */
19
+ export declare const SIGNATURE_HEADER = "X-Webhook-Signature";
20
+ /** Las otras tres cabeceras de una entrega sí derivan del nombre del servicio. */
21
+ export declare const EVENT_HEADER = "X-Veriko-Event";
22
+ export declare const DELIVERY_ID_HEADER = "X-Veriko-Delivery-Id";
23
+ export declare const TIMESTAMP_HEADER = "X-Veriko-Timestamp";
24
+ type Payload = string | Uint8Array;
25
+ /** Devuelve el HMAC-SHA256 hexadecimal del cuerpo, sin el prefijo `sha256=`. */
26
+ export declare function computeSignature(payload: Payload, secret: string): string;
27
+ /**
28
+ * Comprueba la firma de una entrega. Devuelve `true` o `false`, sin lanzar.
29
+ *
30
+ * Acepta el valor de la cabecera con o sin el prefijo `sha256=`. La comparación
31
+ * es en tiempo constante, para no filtrar información por el tiempo de
32
+ * respuesta.
33
+ *
34
+ * @param payload El cuerpo crudo de la petición, sin reserializar.
35
+ * @param signature El valor de la cabecera `X-Webhook-Signature`.
36
+ * @param secret El secreto del endpoint, entregado al registrarlo.
37
+ */
38
+ export declare function verifyWebhook(payload: Payload, signature: string | null | undefined, secret: string): boolean;
39
+ /**
40
+ * Busca la cabecera de firma en cualquiera de sus grafías.
41
+ *
42
+ * Los nombres de cabecera no distinguen mayúsculas, y cada framework los
43
+ * entrega a su manera.
44
+ */
45
+ export declare function signatureFromHeaders(headers: Record<string, string | string[] | undefined>): string | undefined;
46
+ /**
47
+ * Verifica la firma y devuelve el evento ya interpretado.
48
+ *
49
+ * @throws {SignatureVerificationError} Si la firma no cuadra con el cuerpo. En
50
+ * ese caso el cuerpo no se interpreta.
51
+ */
52
+ export declare function parseWebhook(payload: Payload, signature: string | null | undefined, secret: string): WebhookEvent;
53
+ export {};
54
+ //# sourceMappingURL=webhooks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"webhooks.d.ts","sourceRoot":"","sources":["../../src/webhooks.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAKH,OAAO,KAAK,EAAc,YAAY,EAAE,MAAM,YAAY,CAAC;AAE3D,qFAAqF;AACrF,eAAO,MAAM,gBAAgB,wBAAwB,CAAC;AAEtD,kFAAkF;AAClF,eAAO,MAAM,YAAY,mBAAmB,CAAC;AAC7C,eAAO,MAAM,kBAAkB,yBAAyB,CAAC;AACzD,eAAO,MAAM,gBAAgB,uBAAuB,CAAC;AASrD,KAAK,OAAO,GAAG,MAAM,GAAG,UAAU,CAAC;AAMnC,gFAAgF;AAChF,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAEzE;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,aAAa,CAC3B,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EACpC,MAAM,EAAE,MAAM,GACb,OAAO,CAWT;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC,GACrD,MAAM,GAAG,SAAS,CAOpB;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAC1B,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EACpC,MAAM,EAAE,MAAM,GACb,YAAY,CA4Bd"}
@@ -0,0 +1,116 @@
1
+ "use strict";
2
+ /**
3
+ * Verificación de la firma de un webhook.
4
+ *
5
+ * Cada entrega llega firmada con HMAC-SHA256 del cuerpo, usando el secreto que
6
+ * devolvió `POST /v1/webhooks` al registrar el endpoint. La firma viaja en
7
+ * hexadecimal, prefijada por el algoritmo:
8
+ *
9
+ * X-Webhook-Signature: sha256=<hex>
10
+ *
11
+ * Lo que se firma es el cuerpo tal como llegó. Interpretar el JSON y volver a
12
+ * serializarlo cambia los bytes, porque el orden de las claves, los espacios y
13
+ * el escape de los caracteres no ASCII no se conservan, y la firma deja de
14
+ * cuadrar. En Express, eso significa `express.raw()` en la ruta del webhook.
15
+ *
16
+ * @see https://docs.veriko.mx/es/concepts/webhooks-architecture
17
+ */
18
+ Object.defineProperty(exports, "__esModule", { value: true });
19
+ exports.TIMESTAMP_HEADER = exports.DELIVERY_ID_HEADER = exports.EVENT_HEADER = exports.SIGNATURE_HEADER = void 0;
20
+ exports.computeSignature = computeSignature;
21
+ exports.verifyWebhook = verifyWebhook;
22
+ exports.signatureFromHeaders = signatureFromHeaders;
23
+ exports.parseWebhook = parseWebhook;
24
+ const node_crypto_1 = require("node:crypto");
25
+ const errors_js_1 = require("./errors.js");
26
+ /** Cabecera de la firma. Es genérica a propósito, no lleva el nombre de la marca. */
27
+ exports.SIGNATURE_HEADER = 'X-Webhook-Signature';
28
+ /** Las otras tres cabeceras de una entrega sí derivan del nombre del servicio. */
29
+ exports.EVENT_HEADER = 'X-Veriko-Event';
30
+ exports.DELIVERY_ID_HEADER = 'X-Veriko-Delivery-Id';
31
+ exports.TIMESTAMP_HEADER = 'X-Veriko-Timestamp';
32
+ const SIGNATURE_PREFIX = 'sha256=';
33
+ /** `true` cuando `data` es el recurso JSON:API de una validación. */
34
+ function isValidationResource(data) {
35
+ return typeof data === 'object' && data !== null && 'type' in data && data.type === 'validation';
36
+ }
37
+ function toBuffer(payload) {
38
+ return typeof payload === 'string' ? Buffer.from(payload, 'utf8') : Buffer.from(payload);
39
+ }
40
+ /** Devuelve el HMAC-SHA256 hexadecimal del cuerpo, sin el prefijo `sha256=`. */
41
+ function computeSignature(payload, secret) {
42
+ return (0, node_crypto_1.createHmac)('sha256', secret).update(toBuffer(payload)).digest('hex');
43
+ }
44
+ /**
45
+ * Comprueba la firma de una entrega. Devuelve `true` o `false`, sin lanzar.
46
+ *
47
+ * Acepta el valor de la cabecera con o sin el prefijo `sha256=`. La comparación
48
+ * es en tiempo constante, para no filtrar información por el tiempo de
49
+ * respuesta.
50
+ *
51
+ * @param payload El cuerpo crudo de la petición, sin reserializar.
52
+ * @param signature El valor de la cabecera `X-Webhook-Signature`.
53
+ * @param secret El secreto del endpoint, entregado al registrarlo.
54
+ */
55
+ function verifyWebhook(payload, signature, secret) {
56
+ if (!signature || !secret)
57
+ return false;
58
+ let received = signature.trim();
59
+ if (received.toLowerCase().startsWith(SIGNATURE_PREFIX)) {
60
+ received = received.slice(SIGNATURE_PREFIX.length);
61
+ }
62
+ const expected = computeSignature(payload, secret);
63
+ const receivedBuffer = Buffer.from(received.toLowerCase(), 'utf8');
64
+ const expectedBuffer = Buffer.from(expected, 'utf8');
65
+ if (receivedBuffer.length !== expectedBuffer.length)
66
+ return false;
67
+ return (0, node_crypto_1.timingSafeEqual)(receivedBuffer, expectedBuffer);
68
+ }
69
+ /**
70
+ * Busca la cabecera de firma en cualquiera de sus grafías.
71
+ *
72
+ * Los nombres de cabecera no distinguen mayúsculas, y cada framework los
73
+ * entrega a su manera.
74
+ */
75
+ function signatureFromHeaders(headers) {
76
+ const wanted = exports.SIGNATURE_HEADER.toLowerCase();
77
+ for (const [name, value] of Object.entries(headers)) {
78
+ if (name.toLowerCase() !== wanted)
79
+ continue;
80
+ return Array.isArray(value) ? value[0] : value;
81
+ }
82
+ return undefined;
83
+ }
84
+ /**
85
+ * Verifica la firma y devuelve el evento ya interpretado.
86
+ *
87
+ * @throws {SignatureVerificationError} Si la firma no cuadra con el cuerpo. En
88
+ * ese caso el cuerpo no se interpreta.
89
+ */
90
+ function parseWebhook(payload, signature, secret) {
91
+ if (!verifyWebhook(payload, signature, secret)) {
92
+ throw new errors_js_1.SignatureVerificationError('La firma de la entrega no cuadra con el cuerpo recibido. Revisa que el ' +
93
+ 'cuerpo sea el crudo, sin reserializar, y que el secreto sea el del ' +
94
+ 'endpoint que envía.');
95
+ }
96
+ const text = typeof payload === 'string' ? payload : new TextDecoder().decode(payload);
97
+ const parsed = JSON.parse(text);
98
+ if (!parsed || typeof parsed !== 'object') {
99
+ throw new errors_js_1.SignatureVerificationError('El cuerpo de la entrega no es un objeto JSON');
100
+ }
101
+ const document = parsed;
102
+ const data = document['data'];
103
+ const validation = isValidationResource(data) ? data : undefined;
104
+ const event = {
105
+ event: typeof document['event'] === 'string' ? document['event'] : '',
106
+ };
107
+ if (typeof document['timestamp'] === 'string')
108
+ event.timestamp = document['timestamp'];
109
+ if (validation)
110
+ event.data = validation;
111
+ if (document['meta'] && typeof document['meta'] === 'object') {
112
+ event.meta = document['meta'];
113
+ }
114
+ return event;
115
+ }
116
+ //# sourceMappingURL=webhooks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"webhooks.js","sourceRoot":"","sources":["../../src/webhooks.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,128 @@
1
+ /** El cliente: la entrada al SDK y las familias de operaciones. */
2
+ import { Transport, type RetryConfig } from './http.js';
3
+ import { Account, Beneficiaries, Billing, Catalog, Dashboard, Finance, Insights, Plans, Usage, Validations, Webhooks } from './resources.js';
4
+ import type { CepDocument, CepFormat, GetValidationOptions, ValidateTransferParams, Validation, ValidationWithEtag } from './types.js';
5
+ export declare const DEFAULT_BASE_URL = "https://api.veriko.mx/v1";
6
+ export declare const DEFAULT_TIMEOUT_MS = 30000;
7
+ export declare const API_KEY_ENV_VAR = "VERIKO_API_KEY";
8
+ export declare const BASE_URL_ENV_VAR = "VERIKO_BASE_URL";
9
+ /** La versión que viaja en el `User-Agent`. `test/client.test.ts` la compara con `package.json`. */
10
+ export declare const VERSION = "0.4.3";
11
+ export interface VerikoOptions {
12
+ /** La clave de API. Por omisión, `VERIKO_API_KEY`. */
13
+ apiKey?: string;
14
+ /** La raíz de la API. Por omisión, `VERIKO_BASE_URL` o producción. */
15
+ baseUrl?: string;
16
+ /** Milisegundos de espera por intento. */
17
+ timeoutMs?: number;
18
+ /**
19
+ * Reintentos automáticos además del primer intento. `0` los desactiva. Sólo
20
+ * se reintenta lo que admite reintento: los `5xx`, el `408` y el `429`.
21
+ */
22
+ maxRetries?: number;
23
+ /** `es` o `en`, para el idioma de `error.detail`. */
24
+ acceptLanguage?: string;
25
+ /** Configuración de reintentos completa. Gana sobre `maxRetries`. */
26
+ retry?: Partial<RetryConfig>;
27
+ userAgentSuffix?: string;
28
+ /** Transporte ya construido. Las pruebas lo usan para no salir a la red. */
29
+ transport?: Transport;
30
+ }
31
+ /**
32
+ * Cliente de la API de Veriko.
33
+ *
34
+ * La clave de API se lee de `options.apiKey` o, si no se pasa, de la variable de
35
+ * entorno `VERIKO_API_KEY`. Empieza con `veriko_` y se obtiene en el panel:
36
+ * https://app.veriko.mx
37
+ *
38
+ * Las operaciones se agrupan por familia:
39
+ *
40
+ * - `client.validations`: validar, consultar, reintentar y descargar.
41
+ * - `client.webhooks`: endpoints y su historial de entregas.
42
+ * - `client.catalog`: bancos y estado del servicio de Banxico.
43
+ * - `client.beneficiaries`: cuentas guardadas y su importación masiva.
44
+ * - `client.usage`: cuota, límites y registro de actividad.
45
+ * - `client.account`: perfil y política de reintentos predeterminada.
46
+ * - `client.dashboard`: resumen del panel.
47
+ * - `client.plans`: catálogo y comparación de planes públicos.
48
+ * - `client.insights`: métricas agregadas de la cuenta.
49
+ * - `client.finance`: resúmenes y descargas financieras.
50
+ * - `client.billing`: suscripción activa.
51
+ *
52
+ * Las tres de uso más frecuente están también en la raíz, como atajo:
53
+ *
54
+ * ```ts
55
+ * const client = new Veriko();
56
+ *
57
+ * const validation = await client.validateTransfer({
58
+ * fecha: '2025-03-15',
59
+ * monto: 15000.5,
60
+ * claveRastreo: 'MXBA20250315001234',
61
+ * cuentaBeneficiaria: '012180004412345678',
62
+ * });
63
+ * ```
64
+ */
65
+ export declare class Veriko {
66
+ private readonly transport;
67
+ /** Validar, consultar, reintentar y descargar. */
68
+ readonly validations: Validations;
69
+ /** Endpoints de webhook y su historial de entregas. */
70
+ readonly webhooks: Webhooks;
71
+ /** Catálogo de bancos y estado del servicio de Banxico. */
72
+ readonly catalog: Catalog;
73
+ /** Cuentas beneficiarias guardadas y su importación masiva. */
74
+ readonly beneficiaries: Beneficiaries;
75
+ /** Cuota, límites y registro de actividad. */
76
+ readonly usage: Usage;
77
+ /** Perfil y preferencias de la cuenta autenticada. */
78
+ readonly account: Account;
79
+ /** Resumen del panel. */
80
+ readonly dashboard: Dashboard;
81
+ /** Catálogo público de planes. */
82
+ readonly plans: Plans;
83
+ /** Métricas agregadas de la cuenta. */
84
+ readonly insights: Insights;
85
+ /** Resúmenes y descargas financieras. */
86
+ readonly finance: Finance;
87
+ /** Suscripción activa de la cuenta. */
88
+ readonly billing: Billing;
89
+ constructor(options?: VerikoOptions);
90
+ get baseUrl(): string;
91
+ /**
92
+ * Atajo de `client.validations.validate()`.
93
+ *
94
+ * Valida una transferencia SPEI contra el CEP de Banxico. `POST /v1/validate`.
95
+ * Devuelve el veredicto en `attributes.status`: `valid`, `not_found`,
96
+ * `cep_unavailable`, `returned` o `error`.
97
+ *
98
+ * La operación exige `claveRastreo` o `referenciaNumerica`. Enviar las dos
99
+ * precisa la búsqueda. La fecha es la de envío, en `YYYY-MM-DD`.
100
+ *
101
+ * Un `not_found` inmediato no equivale a una transferencia inexistente: un
102
+ * CEP tarda en publicarse. `retryPolicy` deja a la API consultando de nuevo y
103
+ * avisando por webhook cuando el veredicto cambia.
104
+ *
105
+ * Cada llamada consume cuota del plan, y se descuenta al aceptar la petición.
106
+ */
107
+ validateTransfer(params: ValidateTransferParams): Promise<Validation>;
108
+ /**
109
+ * Atajo de `client.validations.get()`.
110
+ *
111
+ * Lee una validación por su identificador. `GET /v1/validations/{id}`. Es la
112
+ * operación con la que se sigue una validación que quedó reintentando: el
113
+ * veredicto final aparece cuando `attributes.status` alcanza un estado
114
+ * terminal.
115
+ */
116
+ getValidation(validationId: string, options?: GetValidationOptions): Promise<ValidationWithEtag>;
117
+ /**
118
+ * Atajo de `client.validations.cep()`.
119
+ *
120
+ * Descarga el CEP oficial de una validación. `GET /v1/validations/{id}/cep`.
121
+ * Devuelve el archivo: el XML que emitió Banxico, con su sello digital y su
122
+ * cadena original, o el PDF equivalente.
123
+ */
124
+ getCep(validationId: string, options?: {
125
+ format?: CepFormat;
126
+ }): Promise<CepDocument>;
127
+ }
128
+ //# sourceMappingURL=client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"AAAA,mEAAmE;AAEnE,OAAO,EAAiB,SAAS,EAAE,KAAK,WAAW,EAAE,MAAM,WAAW,CAAC;AACvE,OAAO,EACL,OAAO,EACP,aAAa,EACb,OAAO,EACP,OAAO,EACP,SAAS,EACT,OAAO,EACP,QAAQ,EACR,KAAK,EACL,KAAK,EACL,WAAW,EACX,QAAQ,EACT,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EACV,WAAW,EACX,SAAS,EACT,oBAAoB,EACpB,sBAAsB,EACtB,UAAU,EACV,kBAAkB,EACnB,MAAM,YAAY,CAAC;AAEpB,eAAO,MAAM,gBAAgB,6BAA6B,CAAC;AAC3D,eAAO,MAAM,kBAAkB,QAAS,CAAC;AACzC,eAAO,MAAM,eAAe,mBAAmB,CAAC;AAChD,eAAO,MAAM,gBAAgB,oBAAoB,CAAC;AAElD,oGAAoG;AACpG,eAAO,MAAM,OAAO,UAAU,CAAC;AAE/B,MAAM,WAAW,aAAa;IAC5B,sDAAsD;IACtD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,sEAAsE;IACtE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,0CAA0C;IAC1C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,qDAAqD;IACrD,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,qEAAqE;IACrE,KAAK,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;IAC7B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,4EAA4E;IAC5E,SAAS,CAAC,EAAE,SAAS,CAAC;CACvB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,qBAAa,MAAM;IACjB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAY;IAEtC,kDAAkD;IAClD,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;IAClC,uDAAuD;IACvD,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B,2DAA2D;IAC3D,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,+DAA+D;IAC/D,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IACtC,8CAA8C;IAC9C,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;IACtB,sDAAsD;IACtD,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,yBAAyB;IACzB,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;IAC9B,kCAAkC;IAClC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;IACtB,uCAAuC;IACvC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAC5B,yCAAyC;IACzC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,uCAAuC;IACvC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;gBAEd,OAAO,GAAE,aAAkB;IA+BvC,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED;;;;;;;;;;;;;;;OAeG;IACH,gBAAgB,CAAC,MAAM,EAAE,sBAAsB,GAAG,OAAO,CAAC,UAAU,CAAC;IAIrE;;;;;;;OAOG;IACH,aAAa,CACX,YAAY,EAAE,MAAM,EACpB,OAAO,GAAE,oBAAyB,GACjC,OAAO,CAAC,kBAAkB,CAAC;IAI9B;;;;;;OAMG;IACH,MAAM,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,GAAE;QAAE,MAAM,CAAC,EAAE,SAAS,CAAA;KAAO,GAAG,OAAO,CAAC,WAAW,CAAC;CAGzF"}
@@ -0,0 +1,141 @@
1
+ /** El cliente: la entrada al SDK y las familias de operaciones. */
2
+ import { DEFAULT_RETRY, Transport } from './http.js';
3
+ import { Account, Beneficiaries, Billing, Catalog, Dashboard, Finance, Insights, Plans, Usage, Validations, Webhooks, } from './resources.js';
4
+ export const DEFAULT_BASE_URL = 'https://api.veriko.mx/v1';
5
+ export const DEFAULT_TIMEOUT_MS = 30_000;
6
+ export const API_KEY_ENV_VAR = 'VERIKO_API_KEY';
7
+ export const BASE_URL_ENV_VAR = 'VERIKO_BASE_URL';
8
+ /** La versión que viaja en el `User-Agent`. `test/client.test.ts` la compara con `package.json`. */
9
+ export const VERSION = '0.4.3';
10
+ /**
11
+ * Cliente de la API de Veriko.
12
+ *
13
+ * La clave de API se lee de `options.apiKey` o, si no se pasa, de la variable de
14
+ * entorno `VERIKO_API_KEY`. Empieza con `veriko_` y se obtiene en el panel:
15
+ * https://app.veriko.mx
16
+ *
17
+ * Las operaciones se agrupan por familia:
18
+ *
19
+ * - `client.validations`: validar, consultar, reintentar y descargar.
20
+ * - `client.webhooks`: endpoints y su historial de entregas.
21
+ * - `client.catalog`: bancos y estado del servicio de Banxico.
22
+ * - `client.beneficiaries`: cuentas guardadas y su importación masiva.
23
+ * - `client.usage`: cuota, límites y registro de actividad.
24
+ * - `client.account`: perfil y política de reintentos predeterminada.
25
+ * - `client.dashboard`: resumen del panel.
26
+ * - `client.plans`: catálogo y comparación de planes públicos.
27
+ * - `client.insights`: métricas agregadas de la cuenta.
28
+ * - `client.finance`: resúmenes y descargas financieras.
29
+ * - `client.billing`: suscripción activa.
30
+ *
31
+ * Las tres de uso más frecuente están también en la raíz, como atajo:
32
+ *
33
+ * ```ts
34
+ * const client = new Veriko();
35
+ *
36
+ * const validation = await client.validateTransfer({
37
+ * fecha: '2025-03-15',
38
+ * monto: 15000.5,
39
+ * claveRastreo: 'MXBA20250315001234',
40
+ * cuentaBeneficiaria: '012180004412345678',
41
+ * });
42
+ * ```
43
+ */
44
+ export class Veriko {
45
+ transport;
46
+ /** Validar, consultar, reintentar y descargar. */
47
+ validations;
48
+ /** Endpoints de webhook y su historial de entregas. */
49
+ webhooks;
50
+ /** Catálogo de bancos y estado del servicio de Banxico. */
51
+ catalog;
52
+ /** Cuentas beneficiarias guardadas y su importación masiva. */
53
+ beneficiaries;
54
+ /** Cuota, límites y registro de actividad. */
55
+ usage;
56
+ /** Perfil y preferencias de la cuenta autenticada. */
57
+ account;
58
+ /** Resumen del panel. */
59
+ dashboard;
60
+ /** Catálogo público de planes. */
61
+ plans;
62
+ /** Métricas agregadas de la cuenta. */
63
+ insights;
64
+ /** Resúmenes y descargas financieras. */
65
+ finance;
66
+ /** Suscripción activa de la cuenta. */
67
+ billing;
68
+ constructor(options = {}) {
69
+ const apiKey = options.apiKey ?? process.env[API_KEY_ENV_VAR] ?? '';
70
+ const suffix = options.userAgentSuffix ? ` ${options.userAgentSuffix}` : '';
71
+ this.transport =
72
+ options.transport ??
73
+ new Transport({
74
+ baseUrl: options.baseUrl ?? process.env[BASE_URL_ENV_VAR] ?? DEFAULT_BASE_URL,
75
+ apiKey,
76
+ timeoutMs: options.timeoutMs ?? DEFAULT_TIMEOUT_MS,
77
+ retry: {
78
+ ...DEFAULT_RETRY,
79
+ ...(options.maxRetries !== undefined ? { maxRetries: options.maxRetries } : {}),
80
+ ...options.retry,
81
+ },
82
+ userAgent: `veriko-js/${VERSION} (+https://github.com/veriko-mx-labs/veriko-js)${suffix}`,
83
+ acceptLanguage: options.acceptLanguage,
84
+ });
85
+ this.validations = new Validations(this.transport);
86
+ this.webhooks = new Webhooks(this.transport);
87
+ this.catalog = new Catalog(this.transport);
88
+ this.beneficiaries = new Beneficiaries(this.transport);
89
+ this.usage = new Usage(this.transport);
90
+ this.account = new Account(this.transport);
91
+ this.dashboard = new Dashboard(this.transport);
92
+ this.plans = new Plans(this.transport);
93
+ this.insights = new Insights(this.transport);
94
+ this.finance = new Finance(this.transport);
95
+ this.billing = new Billing(this.transport);
96
+ }
97
+ get baseUrl() {
98
+ return this.transport.baseUrl;
99
+ }
100
+ /**
101
+ * Atajo de `client.validations.validate()`.
102
+ *
103
+ * Valida una transferencia SPEI contra el CEP de Banxico. `POST /v1/validate`.
104
+ * Devuelve el veredicto en `attributes.status`: `valid`, `not_found`,
105
+ * `cep_unavailable`, `returned` o `error`.
106
+ *
107
+ * La operación exige `claveRastreo` o `referenciaNumerica`. Enviar las dos
108
+ * precisa la búsqueda. La fecha es la de envío, en `YYYY-MM-DD`.
109
+ *
110
+ * Un `not_found` inmediato no equivale a una transferencia inexistente: un
111
+ * CEP tarda en publicarse. `retryPolicy` deja a la API consultando de nuevo y
112
+ * avisando por webhook cuando el veredicto cambia.
113
+ *
114
+ * Cada llamada consume cuota del plan, y se descuenta al aceptar la petición.
115
+ */
116
+ validateTransfer(params) {
117
+ return this.validations.validate(params);
118
+ }
119
+ /**
120
+ * Atajo de `client.validations.get()`.
121
+ *
122
+ * Lee una validación por su identificador. `GET /v1/validations/{id}`. Es la
123
+ * operación con la que se sigue una validación que quedó reintentando: el
124
+ * veredicto final aparece cuando `attributes.status` alcanza un estado
125
+ * terminal.
126
+ */
127
+ getValidation(validationId, options = {}) {
128
+ return this.validations.get(validationId, options);
129
+ }
130
+ /**
131
+ * Atajo de `client.validations.cep()`.
132
+ *
133
+ * Descarga el CEP oficial de una validación. `GET /v1/validations/{id}/cep`.
134
+ * Devuelve el archivo: el XML que emitió Banxico, con su sello digital y su
135
+ * cadena original, o el PDF equivalente.
136
+ */
137
+ getCep(validationId, options = {}) {
138
+ return this.validations.cep(validationId, options);
139
+ }
140
+ }
141
+ //# sourceMappingURL=client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/client.ts"],"names":[],"mappings":"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"}