@vonpay/checkout-node 0.1.3 → 0.3.0
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.
- package/dist/client.d.ts +10 -0
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +115 -6
- package/dist/client.js.map +1 -1
- package/dist/error-help.d.ts +11 -0
- package/dist/error-help.d.ts.map +1 -0
- package/dist/error-help.js +165 -0
- package/dist/error-help.js.map +1 -0
- package/dist/errors.d.ts +14 -0
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +18 -0
- package/dist/errors.js.map +1 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/types.d.ts +34 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/client.d.ts
CHANGED
|
@@ -2,6 +2,16 @@ import type { VonPayCheckoutConfig, CreateSessionParams, CheckoutSession, Sessio
|
|
|
2
2
|
export declare class VonPayCheckout {
|
|
3
3
|
private readonly config;
|
|
4
4
|
constructor(config: VonPayCheckoutConfig | string);
|
|
5
|
+
/**
|
|
6
|
+
* Invoke the configured errorReporter callback, swallowing any throw from
|
|
7
|
+
* the integrator's reporter so an observability bug never breaks an SDK
|
|
8
|
+
* call. When no reporter is configured, falls back to a structured
|
|
9
|
+
* `console.warn` line so integrators get minimum-viable visibility for
|
|
10
|
+
* free (set `VONPAY_QUIET=1` to silence; auto-skipped under NODE_ENV=test).
|
|
11
|
+
*/
|
|
12
|
+
private reportError;
|
|
13
|
+
/** Strip query string from a URL for safe inclusion in error context (no PII via search params). */
|
|
14
|
+
private static safeUrl;
|
|
5
15
|
private request;
|
|
6
16
|
/** Retry delay: uses Retry-After on 429 (capped at 60s), otherwise exponential backoff (1s, 5s) with jitter */
|
|
7
17
|
private getRetryDelay;
|
package/dist/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,oBAAoB,EACpB,mBAAmB,EACnB,eAAe,EACf,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,cAAc,EAGd,YAAY,
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,oBAAoB,EACpB,mBAAmB,EACnB,eAAe,EACf,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,cAAc,EAGd,YAAY,EAGb,MAAM,YAAY,CAAC;AAkHpB,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiB;gBAE5B,MAAM,EAAE,oBAAoB,GAAG,MAAM;IAejD;;;;;;OAMG;IACH,OAAO,CAAC,WAAW;IA6CnB,oGAAoG;IACpG,OAAO,CAAC,MAAM,CAAC,OAAO;YAKR,OAAO;IAsIrB,+GAA+G;IAC/G,OAAO,CAAC,aAAa;IASrB,QAAQ;yBAEI,mBAAmB,YACjB,cAAc,KACvB,OAAO,CAAC,eAAe,CAAC;QAa3B,iIAAiI;yBAC1G,MAAM,KAAG,OAAO,CAAC,aAAa,CAAC;2BAS7B,mBAAmB,KAAG,OAAO,CAAC,YAAY,CAAC;MAYpE;IAEF,QAAQ;QACN;;;;;;;WAOG;mCAEQ,MAAM,GAAG,MAAM,aACb,MAAM,UACT,MAAM,KACb,OAAO;QAWV;;;;;;;;WAQG;kCAEQ,MAAM,GAAG,MAAM,aACb,MAAM,UACT,MAAM,aACH,MAAM,KAChB,YAAY;QA2Cf;;;;;;;;;;;;;;;;;;;WAmBG;oCAEQ,MAAM,GAAG,MAAM,mBACP,MAAM,UACf,MAAM,KACb,YAAY;MAkEf;IAEI,MAAM,IAAI,OAAO,CAAC,YAAY,CAAC;IAarC;;;;;;;;;;;;;;;;OAgBG;IACH,MAAM,CAAC,qBAAqB,CAC1B,MAAM,EAAE,YAAY,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC7C,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE;QACR,kBAAkB,CAAC,EAAE,MAAM,CAAC;QAC5B,eAAe,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;QAClC,aAAa,CAAC,EAAE,MAAM,CAAC;KACxB,GACA,OAAO;IA2BV,OAAO,CAAC,MAAM,CAAC,uBAAuB;CAkEvC"}
|
package/dist/client.js
CHANGED
|
@@ -34,6 +34,7 @@ function resolveConfig(config) {
|
|
|
34
34
|
baseUrl: config.baseUrl?.replace(/\/+$/, "") ?? DEFAULT_BASE_URL,
|
|
35
35
|
maxRetries: config.maxRetries ?? DEFAULT_MAX_RETRIES,
|
|
36
36
|
timeout: config.timeout ?? DEFAULT_TIMEOUT,
|
|
37
|
+
errorReporter: config.errorReporter,
|
|
37
38
|
};
|
|
38
39
|
}
|
|
39
40
|
function sleep(ms) {
|
|
@@ -108,6 +109,61 @@ export class VonPayCheckout {
|
|
|
108
109
|
VALID_KEY_PREFIXES.join(", "));
|
|
109
110
|
}
|
|
110
111
|
}
|
|
112
|
+
/**
|
|
113
|
+
* Invoke the configured errorReporter callback, swallowing any throw from
|
|
114
|
+
* the integrator's reporter so an observability bug never breaks an SDK
|
|
115
|
+
* call. When no reporter is configured, falls back to a structured
|
|
116
|
+
* `console.warn` line so integrators get minimum-viable visibility for
|
|
117
|
+
* free (set `VONPAY_QUIET=1` to silence; auto-skipped under NODE_ENV=test).
|
|
118
|
+
*/
|
|
119
|
+
reportError(err, partial) {
|
|
120
|
+
const reporter = this.config.errorReporter;
|
|
121
|
+
const ctx = { ...partial, sdkVersion: SDK_VERSION };
|
|
122
|
+
if (reporter) {
|
|
123
|
+
try {
|
|
124
|
+
reporter(err, ctx);
|
|
125
|
+
}
|
|
126
|
+
catch (reporterErr) {
|
|
127
|
+
if (typeof console !== "undefined" && typeof console.warn === "function") {
|
|
128
|
+
console.warn("[vonpay] errorReporter threw; suppressing:", reporterErr instanceof Error ? reporterErr.message : String(reporterErr));
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
return;
|
|
132
|
+
}
|
|
133
|
+
// Default reporter — log a structured line to stderr so any log aggregator
|
|
134
|
+
// captures it without explicit wiring. Skip in test envs (test runners
|
|
135
|
+
// already surface errors) and when the integrator opts out via env.
|
|
136
|
+
if (process.env.NODE_ENV === "test" ||
|
|
137
|
+
process.env.VONPAY_QUIET === "1") {
|
|
138
|
+
return;
|
|
139
|
+
}
|
|
140
|
+
if (typeof console !== "undefined" && typeof console.warn === "function") {
|
|
141
|
+
const summary = {
|
|
142
|
+
method: ctx.method,
|
|
143
|
+
sdkVersion: ctx.sdkVersion,
|
|
144
|
+
};
|
|
145
|
+
if (ctx.url)
|
|
146
|
+
summary.url = ctx.url;
|
|
147
|
+
if (ctx.status !== undefined)
|
|
148
|
+
summary.status = ctx.status;
|
|
149
|
+
if (ctx.requestId)
|
|
150
|
+
summary.requestId = ctx.requestId;
|
|
151
|
+
if (ctx.code)
|
|
152
|
+
summary.code = ctx.code;
|
|
153
|
+
if (ctx.attempt !== undefined)
|
|
154
|
+
summary.attempt = ctx.attempt;
|
|
155
|
+
if (err instanceof VonPayError) {
|
|
156
|
+
summary.retryable = err.retryable;
|
|
157
|
+
summary.nextAction = err.nextAction;
|
|
158
|
+
}
|
|
159
|
+
console.warn(`[vonpay] ${err.message} ${JSON.stringify(summary)}`);
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
/** Strip query string from a URL for safe inclusion in error context (no PII via search params). */
|
|
163
|
+
static safeUrl(url) {
|
|
164
|
+
const q = url.indexOf("?");
|
|
165
|
+
return q === -1 ? url : url.slice(0, q);
|
|
166
|
+
}
|
|
111
167
|
async request(method, path, options) {
|
|
112
168
|
let url = `${this.config.baseUrl}${path}`;
|
|
113
169
|
if (options?.query) {
|
|
@@ -164,10 +220,26 @@ export class VonPayCheckout {
|
|
|
164
220
|
lastError = new VonPayError(response.status, errorData, requestId, rateLimit);
|
|
165
221
|
// Only retry on retryable status codes
|
|
166
222
|
if (!RETRYABLE_STATUS_CODES.has(response.status)) {
|
|
223
|
+
this.reportError(lastError, {
|
|
224
|
+
method: options?.reporterMethod ?? `${method} ${path}`,
|
|
225
|
+
url: VonPayCheckout.safeUrl(url),
|
|
226
|
+
status: response.status,
|
|
227
|
+
requestId,
|
|
228
|
+
code: errorData.code,
|
|
229
|
+
attempt,
|
|
230
|
+
});
|
|
167
231
|
throw lastError;
|
|
168
232
|
}
|
|
169
233
|
// Don't retry if we've exhausted attempts
|
|
170
234
|
if (attempt === this.config.maxRetries) {
|
|
235
|
+
this.reportError(lastError, {
|
|
236
|
+
method: options?.reporterMethod ?? `${method} ${path}`,
|
|
237
|
+
url: VonPayCheckout.safeUrl(url),
|
|
238
|
+
status: response.status,
|
|
239
|
+
requestId,
|
|
240
|
+
code: errorData.code,
|
|
241
|
+
attempt,
|
|
242
|
+
});
|
|
171
243
|
throw lastError;
|
|
172
244
|
}
|
|
173
245
|
}
|
|
@@ -180,6 +252,11 @@ export class VonPayCheckout {
|
|
|
180
252
|
lastError =
|
|
181
253
|
err instanceof Error ? err : new Error("Unknown fetch error");
|
|
182
254
|
if (attempt === this.config.maxRetries) {
|
|
255
|
+
this.reportError(lastError, {
|
|
256
|
+
method: options?.reporterMethod ?? `${method} ${path}`,
|
|
257
|
+
url: VonPayCheckout.safeUrl(url),
|
|
258
|
+
attempt,
|
|
259
|
+
});
|
|
183
260
|
throw lastError;
|
|
184
261
|
}
|
|
185
262
|
}
|
|
@@ -201,18 +278,20 @@ export class VonPayCheckout {
|
|
|
201
278
|
const { data } = await this.request("POST", "/v1/sessions", {
|
|
202
279
|
body: params,
|
|
203
280
|
idempotencyKey: options?.idempotencyKey,
|
|
281
|
+
reporterMethod: "sessions.create",
|
|
204
282
|
});
|
|
205
283
|
return data;
|
|
206
284
|
},
|
|
207
285
|
/** Retrieve the current state of a checkout session. Requires a secret key (vp_sk_*). Publishable keys are rejected with 403. */
|
|
208
286
|
get: async (sessionId) => {
|
|
209
|
-
const { data } = await this.request("GET", `/v1/sessions/${encodeURIComponent(sessionId)}
|
|
287
|
+
const { data } = await this.request("GET", `/v1/sessions/${encodeURIComponent(sessionId)}`, { reporterMethod: "sessions.get" });
|
|
210
288
|
return data;
|
|
211
289
|
},
|
|
212
290
|
validate: async (params) => {
|
|
213
291
|
const { data } = await this.request("POST", "/v1/sessions", {
|
|
214
292
|
body: params,
|
|
215
293
|
query: { dry_run: "true" },
|
|
294
|
+
reporterMethod: "sessions.validate",
|
|
216
295
|
});
|
|
217
296
|
return data;
|
|
218
297
|
},
|
|
@@ -249,21 +328,33 @@ export class VonPayCheckout {
|
|
|
249
328
|
const now = Date.now();
|
|
250
329
|
if (isNaN(eventTime) ||
|
|
251
330
|
Math.abs(now - eventTime) > WEBHOOK_TIMESTAMP_TOLERANCE_SECONDS * 1000) {
|
|
252
|
-
|
|
331
|
+
const err = new VonPayError(401, {
|
|
253
332
|
error: "Webhook timestamp outside tolerance (±5 minutes)",
|
|
254
333
|
code: "webhook_invalid_signature",
|
|
255
334
|
fix: "Ensure server clock is synchronized and process webhooks promptly",
|
|
256
335
|
docs: "https://docs.vonpay.com/reference/webhooks#signature-verification",
|
|
257
336
|
});
|
|
337
|
+
this.reportError(err, {
|
|
338
|
+
method: "webhooks.constructEvent",
|
|
339
|
+
status: 401,
|
|
340
|
+
code: err.code,
|
|
341
|
+
});
|
|
342
|
+
throw err;
|
|
258
343
|
}
|
|
259
344
|
// Verify HMAC signature
|
|
260
345
|
if (!this.webhooks.verifySignature(payload, signature, secret)) {
|
|
261
|
-
|
|
346
|
+
const err = new VonPayError(401, {
|
|
262
347
|
error: "Webhook signature verification failed",
|
|
263
348
|
code: "webhook_invalid_signature",
|
|
264
349
|
fix: "Ensure you are using your merchant API key (vp_sk_*) as the secret",
|
|
265
350
|
docs: "https://docs.vonpay.com/reference/webhooks#signature-verification",
|
|
266
351
|
});
|
|
352
|
+
this.reportError(err, {
|
|
353
|
+
method: "webhooks.constructEvent",
|
|
354
|
+
status: 401,
|
|
355
|
+
code: err.code,
|
|
356
|
+
});
|
|
357
|
+
throw err;
|
|
267
358
|
}
|
|
268
359
|
const jsonText = typeof payload === "string" ? payload : payload.toString("utf8");
|
|
269
360
|
return JSON.parse(jsonText);
|
|
@@ -291,22 +382,34 @@ export class VonPayCheckout {
|
|
|
291
382
|
constructEventV2: (payload, signatureHeader, secret) => {
|
|
292
383
|
const parsed = parseV2SignatureHeader(signatureHeader);
|
|
293
384
|
if (!parsed) {
|
|
294
|
-
|
|
385
|
+
const err = new VonPayError(401, {
|
|
295
386
|
error: "Webhook v2 signature header malformed — expected 't=<sec>,v2=<hex>'",
|
|
296
387
|
code: "webhook_invalid_signature",
|
|
297
388
|
fix: "Ensure the server is emitting v2 signatures and the X-VonPay-Signature header is forwarded intact",
|
|
298
389
|
docs: "https://docs.vonpay.com/reference/webhooks#signature-verification",
|
|
299
390
|
});
|
|
391
|
+
this.reportError(err, {
|
|
392
|
+
method: "webhooks.constructEventV2",
|
|
393
|
+
status: 401,
|
|
394
|
+
code: err.code,
|
|
395
|
+
});
|
|
396
|
+
throw err;
|
|
300
397
|
}
|
|
301
398
|
const { t, v2 } = parsed;
|
|
302
399
|
const nowSec = Math.floor(Date.now() / 1000);
|
|
303
400
|
if (Math.abs(nowSec - t) > WEBHOOK_TIMESTAMP_TOLERANCE_SECONDS) {
|
|
304
|
-
|
|
401
|
+
const err = new VonPayError(401, {
|
|
305
402
|
error: "Webhook timestamp outside tolerance (±5 minutes)",
|
|
306
403
|
code: "webhook_invalid_signature",
|
|
307
404
|
fix: "Ensure server clock is synchronized and process webhooks promptly",
|
|
308
405
|
docs: "https://docs.vonpay.com/reference/webhooks#signature-verification",
|
|
309
406
|
});
|
|
407
|
+
this.reportError(err, {
|
|
408
|
+
method: "webhooks.constructEventV2",
|
|
409
|
+
status: 401,
|
|
410
|
+
code: err.code,
|
|
411
|
+
});
|
|
412
|
+
throw err;
|
|
310
413
|
}
|
|
311
414
|
const payloadBytes = typeof payload === "string" ? Buffer.from(payload, "utf8") : payload;
|
|
312
415
|
const signed = Buffer.concat([
|
|
@@ -320,12 +423,18 @@ export class VonPayCheckout {
|
|
|
320
423
|
const providedBuf = Buffer.from(v2, "hex");
|
|
321
424
|
if (providedBuf.length !== expectedBuf.length ||
|
|
322
425
|
!timingSafeEqual(providedBuf, expectedBuf)) {
|
|
323
|
-
|
|
426
|
+
const err = new VonPayError(401, {
|
|
324
427
|
error: "Webhook v2 signature verification failed",
|
|
325
428
|
code: "webhook_invalid_signature",
|
|
326
429
|
fix: "Ensure you are using your merchant API key (vp_sk_*) as the secret",
|
|
327
430
|
docs: "https://docs.vonpay.com/reference/webhooks#signature-verification",
|
|
328
431
|
});
|
|
432
|
+
this.reportError(err, {
|
|
433
|
+
method: "webhooks.constructEventV2",
|
|
434
|
+
status: 401,
|
|
435
|
+
code: err.code,
|
|
436
|
+
});
|
|
437
|
+
throw err;
|
|
329
438
|
}
|
|
330
439
|
const jsonText = typeof payload === "string" ? payload : payload.toString("utf8");
|
|
331
440
|
return JSON.parse(jsonText);
|
package/dist/client.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { ErrorCode } from "./types.js";
|
|
2
|
+
export type NextAction = "fix_input" | "rotate_key" | "wait_and_retry" | "contact_support" | "ignore";
|
|
3
|
+
export interface ErrorHelp {
|
|
4
|
+
retryable: boolean;
|
|
5
|
+
nextAction: NextAction;
|
|
6
|
+
llmHint: string;
|
|
7
|
+
}
|
|
8
|
+
export declare const ERROR_HELP: Record<ErrorCode, ErrorHelp>;
|
|
9
|
+
/** Return the help entry for a given ErrorCode. Returns a fallback entry for unknown codes. */
|
|
10
|
+
export declare function helpFor(code: ErrorCode | string): ErrorHelp;
|
|
11
|
+
//# sourceMappingURL=error-help.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"error-help.d.ts","sourceRoot":"","sources":["../src/error-help.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAE5C,MAAM,MAAM,UAAU,GAClB,WAAW,GACX,YAAY,GACZ,gBAAgB,GAChB,iBAAiB,GACjB,QAAQ,CAAC;AAEb,MAAM,WAAW,SAAS;IACxB,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,UAAU,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,eAAO,MAAM,UAAU,EAAE,MAAM,CAAC,SAAS,EAAE,SAAS,CAmKnD,CAAC;AAEF,+FAA+F;AAC/F,wBAAgB,OAAO,CAAC,IAAI,EAAE,SAAS,GAAG,MAAM,GAAG,SAAS,CAQ3D"}
|
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
// Error-help mapping table — the single source of truth for programmatic
|
|
2
|
+
// recovery hints attached to VonPayError. Used by:
|
|
3
|
+
// - VonPayError constructor (synthesizes `retryable`, `nextAction`, `llmHint`)
|
|
4
|
+
// - The MCP `diagnose_error` tool (returns this entry verbatim)
|
|
5
|
+
// - The /troubleshooting docs page (renders this entry per code)
|
|
6
|
+
//
|
|
7
|
+
// `llmHint` is intentionally 1-3 sentences. It's structured for an LLM agent
|
|
8
|
+
// reading an error and deciding what to do next, NOT for a human reading a
|
|
9
|
+
// stack trace. The human-friendly string is `fix` on the error envelope.
|
|
10
|
+
//
|
|
11
|
+
// `nextAction` is the agent's branch table:
|
|
12
|
+
// - "fix_input" — the request was malformed; agent must change the request before retry
|
|
13
|
+
// - "rotate_key" — the key is bad; agent must surface to a human or use a refresh-key flow
|
|
14
|
+
// - "wait_and_retry" — transient; agent should backoff and retry
|
|
15
|
+
// - "contact_support" — server-side merchant config issue; agent must surface to a human
|
|
16
|
+
// - "ignore" — terminal but expected (card decline, session-already-completed, etc.)
|
|
17
|
+
export const ERROR_HELP = {
|
|
18
|
+
auth_missing_bearer: {
|
|
19
|
+
retryable: false,
|
|
20
|
+
nextAction: "fix_input",
|
|
21
|
+
llmHint: "The Authorization header is missing. The SDK adds it automatically when constructed with a valid key — this error implies the SDK was bypassed. Check the SDK was constructed and that the integrator isn't manually proxying requests without forwarding the Authorization header.",
|
|
22
|
+
},
|
|
23
|
+
auth_invalid_key: {
|
|
24
|
+
retryable: false,
|
|
25
|
+
nextAction: "rotate_key",
|
|
26
|
+
llmHint: "The API key is malformed or does not exist. Three common causes: (1) the env var that holds the key is unset or misnamed (check VON_PAY_SECRET_KEY), (2) the key has rotated past its 24h grace window (regenerate at /dashboard/developers/api-keys), (3) test/live mode mismatch (test keys cannot hit live endpoints and vice versa). Do NOT retry the same key; it will fail identically.",
|
|
27
|
+
},
|
|
28
|
+
auth_key_expired: {
|
|
29
|
+
retryable: false,
|
|
30
|
+
nextAction: "rotate_key",
|
|
31
|
+
llmHint: "The previous key has rotated past its 24h grace window. Surface a 'rotate your API key' action to the human; the previous key will not work again. New keys are generated at app.vonpay.com/dashboard/developers/api-keys. Retrying with the same key will fail identically.",
|
|
32
|
+
},
|
|
33
|
+
auth_key_type_forbidden: {
|
|
34
|
+
retryable: false,
|
|
35
|
+
nextAction: "fix_input",
|
|
36
|
+
llmHint: "A publishable key (vp_pk_*) was used on a server-only endpoint, OR a sandbox key was used against live and vice versa. Switch to the secret key (vp_sk_*) for server calls. Publishable keys are browser-safe but cannot retrieve session details or process refunds.",
|
|
37
|
+
},
|
|
38
|
+
auth_merchant_inactive: {
|
|
39
|
+
retryable: false,
|
|
40
|
+
nextAction: "contact_support",
|
|
41
|
+
llmHint: "The merchant account is disabled or suspended. The integrator must contact Von Payments support — this is not a code-fix issue. Do not retry; surface a clear support-contact message to the human.",
|
|
42
|
+
},
|
|
43
|
+
auth_service_unavailable: {
|
|
44
|
+
retryable: true,
|
|
45
|
+
nextAction: "wait_and_retry",
|
|
46
|
+
llmHint: "The authentication service is transiently unavailable. The SDK will already auto-retry on this; if you're seeing this exposed, retry has been exhausted. Wait 30-60 seconds and retry; if the failure persists for >5 min, escalate.",
|
|
47
|
+
},
|
|
48
|
+
session_not_found: {
|
|
49
|
+
retryable: false,
|
|
50
|
+
nextAction: "fix_input",
|
|
51
|
+
llmHint: "The session ID does not exist. Check that the ID is being passed correctly (no truncation, no URL-encoding double-trip) and that the key being used is for the same merchant that created the session. Session IDs are merchant-scoped.",
|
|
52
|
+
},
|
|
53
|
+
session_expired: {
|
|
54
|
+
retryable: false,
|
|
55
|
+
nextAction: "fix_input",
|
|
56
|
+
llmHint: "The session passed its 30-minute TTL. Create a new session with sessions.create() using the original parameters. Sessions cannot be extended; the merchant must call sessions.create() afresh.",
|
|
57
|
+
},
|
|
58
|
+
session_wrong_state: {
|
|
59
|
+
retryable: false,
|
|
60
|
+
nextAction: "ignore",
|
|
61
|
+
llmHint: "The session is in a state that disallows this operation (e.g., trying to retrieve a session that's already completed). Treat as terminal; surface the current session state to the user instead of retrying.",
|
|
62
|
+
},
|
|
63
|
+
session_integrity_error: {
|
|
64
|
+
retryable: false,
|
|
65
|
+
nextAction: "contact_support",
|
|
66
|
+
llmHint: "Internal session state is inconsistent — a 500-class server bug. Capture the requestId from the error and report to Von Payments support. Do not retry; the corrupt state will not self-heal.",
|
|
67
|
+
},
|
|
68
|
+
validation_error: {
|
|
69
|
+
retryable: false,
|
|
70
|
+
nextAction: "fix_input",
|
|
71
|
+
llmHint: "Request body failed schema validation. The error message will name the failing field. Fix the field shape (correct type, length, format) before retrying. Common: amount as string instead of integer; currency lowercase instead of ISO 4217 uppercase.",
|
|
72
|
+
},
|
|
73
|
+
validation_missing_field: {
|
|
74
|
+
retryable: false,
|
|
75
|
+
nextAction: "fix_input",
|
|
76
|
+
llmHint: "A required field is missing from the request body. The error message will name the missing field. Add it to the request and retry. Don't include null — omit or supply a real value.",
|
|
77
|
+
},
|
|
78
|
+
validation_invalid_amount: {
|
|
79
|
+
retryable: false,
|
|
80
|
+
nextAction: "fix_input",
|
|
81
|
+
llmHint: "Amount is not a positive integer or exceeds maximum. Two pitfalls: (1) sending in major units (e.g., 14.99 for $14.99 — must be 1499 in minor units), (2) sending negative or zero. The amount must be a positive integer in the smallest currency unit (cents for USD, pence for GBP, etc.).",
|
|
82
|
+
},
|
|
83
|
+
merchant_not_configured: {
|
|
84
|
+
retryable: false,
|
|
85
|
+
nextAction: "contact_support",
|
|
86
|
+
llmHint: "The merchant is missing required configuration (e.g., payment provider credentials are not bound). The integrator cannot fix this from the API; surface a 'contact your account manager' action. The fix is on the merchant-app side.",
|
|
87
|
+
},
|
|
88
|
+
merchant_not_onboarded: {
|
|
89
|
+
retryable: false,
|
|
90
|
+
nextAction: "contact_support",
|
|
91
|
+
llmHint: "The merchant application is pending_approval or denied — live-key creation is blocked. The merchant must complete KYC + contract review before live keys can be used. For sandbox/test mode, the merchant should already have access; if seeing this on a test key, escalate.",
|
|
92
|
+
},
|
|
93
|
+
rate_limit_exceeded: {
|
|
94
|
+
retryable: true,
|
|
95
|
+
nextAction: "wait_and_retry",
|
|
96
|
+
llmHint: "Per-IP rate limit exceeded (10 req/60s on POST /v1/sessions). Read the Retry-After header and back off accordingly. The SDK auto-retries with exponential backoff; if seeing this exposed, retries are exhausted. Wait the full Retry-After window, do NOT retry sooner.",
|
|
97
|
+
},
|
|
98
|
+
rate_limit_exceeded_per_key: {
|
|
99
|
+
retryable: true,
|
|
100
|
+
nextAction: "wait_and_retry",
|
|
101
|
+
llmHint: "Per-API-key rate limit (30 session-creates/min). For high-throughput integrators, contact support for a higher ceiling — DO NOT work around by rotating keys (that creates more problems). Wait the Retry-After window and retry.",
|
|
102
|
+
},
|
|
103
|
+
provider_unavailable: {
|
|
104
|
+
retryable: true,
|
|
105
|
+
nextAction: "wait_and_retry",
|
|
106
|
+
llmHint: "The upstream payment provider is not responding. The SDK auto-retries with backoff; if seeing this exposed, retries are exhausted. Wait 30-60 seconds. If the issue persists across multiple sessions, the underlying provider may be having an incident — check the Von Payments status page.",
|
|
107
|
+
},
|
|
108
|
+
provider_attestation_failed: {
|
|
109
|
+
retryable: false,
|
|
110
|
+
nextAction: "fix_input",
|
|
111
|
+
llmHint: "The payment provider rejected the browser-side token (Vora attestation handoff failed). This usually means the buyer's browser session expired or the token was tampered with. Have the buyer restart the checkout session; do not retry the same session.",
|
|
112
|
+
},
|
|
113
|
+
provider_charge_failed: {
|
|
114
|
+
retryable: false,
|
|
115
|
+
nextAction: "ignore",
|
|
116
|
+
llmHint: "The card was declined or the charge was rejected by the upstream provider. This is a buyer-side outcome (insufficient funds, card blocked, etc.), not an integration bug. Show the decline UI; do not retry the same payment.",
|
|
117
|
+
},
|
|
118
|
+
internal_error: {
|
|
119
|
+
retryable: true,
|
|
120
|
+
nextAction: "wait_and_retry",
|
|
121
|
+
llmHint: "Unexpected server error on Von Payments side. Capture the requestId and retry once with backoff; if persistent, report to support with the requestId.",
|
|
122
|
+
},
|
|
123
|
+
webhook_missing_signature: {
|
|
124
|
+
retryable: false,
|
|
125
|
+
nextAction: "fix_input",
|
|
126
|
+
llmHint: "The webhook request is missing the X-VonPay-Signature header. Real Von Payments webhooks always carry this header; if you're seeing this, either (1) a non-Vonpay caller is hitting your webhook URL, OR (2) a proxy/middleware is stripping the header. Check your reverse proxy config — Cloudflare and AWS API Gateway sometimes strip x-* headers without a config rule.",
|
|
127
|
+
},
|
|
128
|
+
webhook_invalid_signature: {
|
|
129
|
+
retryable: false,
|
|
130
|
+
nextAction: "fix_input",
|
|
131
|
+
llmHint: "Webhook HMAC verification failed. Three common causes ranked by frequency: (1) using the wrong secret — the SDK expects your API key (vp_sk_*) NOT a separate webhook secret, (2) the body was JSON-parsed before signature verification (must use the RAW body bytes, not re-stringified JSON), (3) the timestamp is outside the 5-minute replay window. Check the SDK call passes req.text() / request.body in raw form.",
|
|
132
|
+
},
|
|
133
|
+
webhook_not_configured: {
|
|
134
|
+
retryable: false,
|
|
135
|
+
nextAction: "contact_support",
|
|
136
|
+
llmHint: "Webhook verification secret is not configured on the server side — a Von Payments operational issue. Contact support with the requestId. Don't retry; the config has to be fixed before any webhook will verify.",
|
|
137
|
+
},
|
|
138
|
+
origin_forbidden: {
|
|
139
|
+
retryable: false,
|
|
140
|
+
nextAction: "fix_input",
|
|
141
|
+
llmHint: "The request origin is not in the merchant's allowed origins list. Add the calling origin (your app's URL) to the merchant's CORS allowlist at app.vonpay.com/dashboard/developers/origins. Do not bypass via server-side proxy as a fix; configure the origin properly.",
|
|
142
|
+
},
|
|
143
|
+
transaction_verification_failed: {
|
|
144
|
+
retryable: false,
|
|
145
|
+
nextAction: "contact_support",
|
|
146
|
+
llmHint: "The transaction could not be verified with the payment provider — usually a reconciliation failure between Von Payments and the upstream processor. Capture the requestId and contact support; this is not a retry-can-fix issue.",
|
|
147
|
+
},
|
|
148
|
+
unsupported_media_type: {
|
|
149
|
+
retryable: false,
|
|
150
|
+
nextAction: "fix_input",
|
|
151
|
+
llmHint: "Content-Type header is missing or not application/json. The SDK sets this automatically; if seeing this, an HTTP middleware is rewriting the header. Check your reverse proxy / API gateway is not stripping or transforming Content-Type.",
|
|
152
|
+
},
|
|
153
|
+
};
|
|
154
|
+
/** Return the help entry for a given ErrorCode. Returns a fallback entry for unknown codes. */
|
|
155
|
+
export function helpFor(code) {
|
|
156
|
+
const entry = ERROR_HELP[code];
|
|
157
|
+
if (entry)
|
|
158
|
+
return entry;
|
|
159
|
+
return {
|
|
160
|
+
retryable: false,
|
|
161
|
+
nextAction: "contact_support",
|
|
162
|
+
llmHint: `Unknown error code "${code}". This may indicate a newer server version than this SDK supports — upgrade @vonpay/checkout-node to the latest, or capture the full error response and contact support.`,
|
|
163
|
+
};
|
|
164
|
+
}
|
|
165
|
+
//# sourceMappingURL=error-help.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"error-help.js","sourceRoot":"","sources":["../src/error-help.ts"],"names":[],"mappings":"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"}
|
package/dist/errors.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { ErrorCode, VonPayErrorData, RateLimitInfo } from "./types.js";
|
|
2
|
+
import { type NextAction } from "./error-help.js";
|
|
2
3
|
export declare class VonPayError extends Error {
|
|
3
4
|
readonly status: number;
|
|
4
5
|
readonly code: ErrorCode;
|
|
@@ -6,6 +7,19 @@ export declare class VonPayError extends Error {
|
|
|
6
7
|
readonly docs: string;
|
|
7
8
|
readonly requestId?: string;
|
|
8
9
|
readonly rateLimit?: RateLimitInfo;
|
|
10
|
+
/** True when retrying the same call may succeed (network errors, 429, 5xx). False for input errors and terminal states. */
|
|
11
|
+
readonly retryable: boolean;
|
|
12
|
+
/**
|
|
13
|
+
* Programmatic decision-helper for agent / LLM consumers.
|
|
14
|
+
* - "fix_input" — request was malformed; change input before retry
|
|
15
|
+
* - "rotate_key" — surface to a human or use a refresh-key flow
|
|
16
|
+
* - "wait_and_retry" — transient; backoff and retry
|
|
17
|
+
* - "contact_support" — server-side merchant config; surface to a human
|
|
18
|
+
* - "ignore" — terminal but expected (card decline, etc.)
|
|
19
|
+
*/
|
|
20
|
+
readonly nextAction: NextAction;
|
|
21
|
+
/** LLM-friendly 1-3 sentence diagnostic; complements the human-imperative `fix`. */
|
|
22
|
+
readonly llmHint: string;
|
|
9
23
|
constructor(status: number, data: VonPayErrorData, requestId?: string, rateLimit?: RateLimitInfo);
|
|
10
24
|
}
|
|
11
25
|
//# sourceMappingURL=errors.d.ts.map
|
package/dist/errors.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC5E,OAAO,EAAW,KAAK,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE3D,qBAAa,WAAY,SAAQ,KAAK;IACpC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,SAAS,CAAC,EAAE,aAAa,CAAC;IACnC,2HAA2H;IAC3H,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;IAC5B;;;;;;;OAOG;IACH,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IAChC,oFAAoF;IACpF,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;gBAGvB,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,eAAe,EACrB,SAAS,CAAC,EAAE,MAAM,EAClB,SAAS,CAAC,EAAE,aAAa;CAe5B"}
|
package/dist/errors.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { helpFor } from "./error-help.js";
|
|
1
2
|
export class VonPayError extends Error {
|
|
2
3
|
status;
|
|
3
4
|
code;
|
|
@@ -5,6 +6,19 @@ export class VonPayError extends Error {
|
|
|
5
6
|
docs;
|
|
6
7
|
requestId;
|
|
7
8
|
rateLimit;
|
|
9
|
+
/** True when retrying the same call may succeed (network errors, 429, 5xx). False for input errors and terminal states. */
|
|
10
|
+
retryable;
|
|
11
|
+
/**
|
|
12
|
+
* Programmatic decision-helper for agent / LLM consumers.
|
|
13
|
+
* - "fix_input" — request was malformed; change input before retry
|
|
14
|
+
* - "rotate_key" — surface to a human or use a refresh-key flow
|
|
15
|
+
* - "wait_and_retry" — transient; backoff and retry
|
|
16
|
+
* - "contact_support" — server-side merchant config; surface to a human
|
|
17
|
+
* - "ignore" — terminal but expected (card decline, etc.)
|
|
18
|
+
*/
|
|
19
|
+
nextAction;
|
|
20
|
+
/** LLM-friendly 1-3 sentence diagnostic; complements the human-imperative `fix`. */
|
|
21
|
+
llmHint;
|
|
8
22
|
constructor(status, data, requestId, rateLimit) {
|
|
9
23
|
super(data.error);
|
|
10
24
|
this.name = "VonPayError";
|
|
@@ -14,6 +28,10 @@ export class VonPayError extends Error {
|
|
|
14
28
|
this.docs = data.docs;
|
|
15
29
|
this.requestId = requestId;
|
|
16
30
|
this.rateLimit = rateLimit;
|
|
31
|
+
const help = helpFor(data.code);
|
|
32
|
+
this.retryable = help.retryable;
|
|
33
|
+
this.nextAction = help.nextAction;
|
|
34
|
+
this.llmHint = help.llmHint;
|
|
17
35
|
}
|
|
18
36
|
}
|
|
19
37
|
//# sourceMappingURL=errors.js.map
|
package/dist/errors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAmB,MAAM,iBAAiB,CAAC;AAE3D,MAAM,OAAO,WAAY,SAAQ,KAAK;IAC3B,MAAM,CAAS;IACf,IAAI,CAAY;IAChB,GAAG,CAAS;IACZ,IAAI,CAAS;IACb,SAAS,CAAU;IACnB,SAAS,CAAiB;IACnC,2HAA2H;IAClH,SAAS,CAAU;IAC5B;;;;;;;OAOG;IACM,UAAU,CAAa;IAChC,oFAAoF;IAC3E,OAAO,CAAS;IAEzB,YACE,MAAc,EACd,IAAqB,EACrB,SAAkB,EAClB,SAAyB;QAEzB,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAClB,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC;QAC1B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACtB,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;QACpB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;QACtB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAChC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAChC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QAClC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;IAC9B,CAAC;CACF"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
export { VonPayCheckout } from "./client.js";
|
|
2
|
-
export type { VonPayCheckoutConfig, CreateSessionParams, LineItem, CheckoutSession, SessionState, SessionStatus, ShippingAddress, DryRunResult, WebhookEvent, WebhookSessionSucceeded, WebhookSessionFailed, WebhookSessionExpired, WebhookRefundCreated, HealthStatus, ErrorCode, VonPayErrorData, RequestOptions, RateLimitInfo, ReturnParams, } from "./types.js";
|
|
2
|
+
export type { VonPayCheckoutConfig, CreateSessionParams, LineItem, CheckoutSession, SessionState, SessionStatus, ShippingAddress, DryRunResult, WebhookEvent, WebhookSessionSucceeded, WebhookSessionFailed, WebhookSessionExpired, WebhookRefundCreated, HealthStatus, ErrorCode, VonPayErrorData, RequestOptions, RateLimitInfo, ReturnParams, ErrorReporter, ErrorReporterContext, } from "./types.js";
|
|
3
3
|
export { VonPayError } from "./errors.js";
|
|
4
|
+
export { ERROR_HELP, helpFor } from "./error-help.js";
|
|
5
|
+
export type { ErrorHelp, NextAction } from "./error-help.js";
|
|
4
6
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,YAAY,EACV,oBAAoB,EACpB,mBAAmB,EACnB,QAAQ,EACR,eAAe,EACf,YAAY,EACZ,aAAa,EACb,eAAe,EACf,YAAY,EACZ,YAAY,EACZ,uBAAuB,EACvB,oBAAoB,EACpB,qBAAqB,EACrB,oBAAoB,EACpB,YAAY,EACZ,SAAS,EACT,eAAe,EACf,cAAc,EACd,aAAa,EACb,YAAY,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,YAAY,EACV,oBAAoB,EACpB,mBAAmB,EACnB,QAAQ,EACR,eAAe,EACf,YAAY,EACZ,aAAa,EACb,eAAe,EACf,YAAY,EACZ,YAAY,EACZ,uBAAuB,EACvB,oBAAoB,EACpB,qBAAqB,EACrB,oBAAoB,EACpB,YAAY,EACZ,SAAS,EACT,eAAe,EACf,cAAc,EACd,aAAa,EACb,YAAY,EACZ,aAAa,EACb,oBAAoB,GACrB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AACtD,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC"}
|
package/dist/index.js
CHANGED
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAwB7C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC"}
|
package/dist/types.d.ts
CHANGED
|
@@ -4,6 +4,40 @@ export interface VonPayCheckoutConfig {
|
|
|
4
4
|
baseUrl?: string;
|
|
5
5
|
maxRetries?: number;
|
|
6
6
|
timeout?: number;
|
|
7
|
+
/**
|
|
8
|
+
* Optional callback invoked when the SDK throws or catches an error. Lets
|
|
9
|
+
* integrators wire the SDK's failure surface into their own observability
|
|
10
|
+
* stack (Sentry, Datadog, etc.) without the SDK ever phoning home.
|
|
11
|
+
*
|
|
12
|
+
* Fires synchronously, fire-and-forget. If the callback throws, the SDK
|
|
13
|
+
* swallows the error (with a console.warn) and continues — an observability
|
|
14
|
+
* bug must not break the SDK call.
|
|
15
|
+
*
|
|
16
|
+
* The callback is NOT a hot path for `verifySignature` or
|
|
17
|
+
* `verifyReturnSignature` (they return boolean, never throw). It IS invoked
|
|
18
|
+
* on `sessions.*` API failures, `constructEvent` / `constructEventV2`
|
|
19
|
+
* verification failures, and final-retry network/timeout exhaustion.
|
|
20
|
+
*/
|
|
21
|
+
errorReporter?: ErrorReporter;
|
|
22
|
+
}
|
|
23
|
+
/** Signature for the optional error-reporting callback. */
|
|
24
|
+
export type ErrorReporter = (error: Error, context: ErrorReporterContext) => void;
|
|
25
|
+
/** Diagnostic context passed to `errorReporter`. */
|
|
26
|
+
export interface ErrorReporterContext {
|
|
27
|
+
/** SDK method that produced the error (e.g. `"sessions.create"`, `"webhooks.constructEvent"`). */
|
|
28
|
+
method: string;
|
|
29
|
+
/** SDK package version. */
|
|
30
|
+
sdkVersion: string;
|
|
31
|
+
/** Origin + path of the request that failed (no query string, no PII). */
|
|
32
|
+
url?: string;
|
|
33
|
+
/** HTTP status code, when the error originated from an API response. */
|
|
34
|
+
status?: number;
|
|
35
|
+
/** Server-assigned request id (`X-Request-Id` header) for correlation. */
|
|
36
|
+
requestId?: string;
|
|
37
|
+
/** Server error code, when from an API response (`auth_invalid_key`, `validation_error`, etc.). */
|
|
38
|
+
code?: string;
|
|
39
|
+
/** Retry attempt number (0-indexed; 0 = first try). Only set on `request()` failures. */
|
|
40
|
+
attempt?: number;
|
|
7
41
|
}
|
|
8
42
|
export interface CreateSessionParams {
|
|
9
43
|
amount: number;
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|