@genesis-tech/genesispay-seller 0.8.0 → 0.10.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/CHANGELOG.md +69 -38
- package/README.md +77 -40
- package/dist/client.d.ts +18 -15
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +56 -39
- package/dist/client.js.map +1 -1
- package/dist/customers.d.ts +2 -2
- package/dist/customers.d.ts.map +1 -1
- package/dist/customers.js +5 -5
- package/dist/customers.js.map +1 -1
- package/dist/errors.d.ts +9 -9
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +18 -18
- package/dist/errors.js.map +1 -1
- package/dist/genesispay-settlement.d.ts +30 -0
- package/dist/genesispay-settlement.d.ts.map +1 -0
- package/dist/genesispay-settlement.js +103 -0
- package/dist/genesispay-settlement.js.map +1 -0
- package/dist/index.d.ts +5 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -4
- package/dist/index.js.map +1 -1
- package/dist/invoices.d.ts +2 -2
- package/dist/invoices.d.ts.map +1 -1
- package/dist/invoices.js +7 -7
- package/dist/invoices.js.map +1 -1
- package/dist/mandate-gate.d.ts +5 -5
- package/dist/mandate-gate.d.ts.map +1 -1
- package/dist/mandate-gate.js +4 -4
- package/dist/mandate-gate.js.map +1 -1
- package/dist/mandates.d.ts +4 -4
- package/dist/mandates.d.ts.map +1 -1
- package/dist/mandates.js +9 -9
- package/dist/mandates.js.map +1 -1
- package/dist/payment-gate.js +1 -1
- package/dist/payment-gate.js.map +1 -1
- package/dist/plans.d.ts +2 -2
- package/dist/plans.d.ts.map +1 -1
- package/dist/plans.js +6 -6
- package/dist/plans.js.map +1 -1
- package/dist/products.d.ts +80 -0
- package/dist/products.d.ts.map +1 -0
- package/dist/products.js +154 -0
- package/dist/products.js.map +1 -0
- package/dist/resource.d.ts +2 -2
- package/dist/resource.d.ts.map +1 -1
- package/dist/resource.js +1 -1
- package/dist/resource.js.map +1 -1
- package/dist/webhooks.d.ts +25 -25
- package/dist/webhooks.d.ts.map +1 -1
- package/dist/webhooks.js +30 -29
- package/dist/webhooks.js.map +1 -1
- package/package.json +2 -2
package/dist/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEtD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAExD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEtD,OAAO,KAAK,EAAe,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAGvE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAaxD,OAAO,KAAK,EAAE,qBAAqB,EAAE,
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/client.js
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { GenesisPayConfigError, GenesisPayNetworkSafetyError, GenesisPayValidationError, throwForErrorResponse, } from "./errors.js";
|
|
2
2
|
import { createMandatesResource } from "./mandates.js";
|
|
3
3
|
import { createCustomersResource } from "./customers.js";
|
|
4
4
|
import { createInvoicesResource } from "./invoices.js";
|
|
5
5
|
import { createPaymentGate } from "./payment-gate.js";
|
|
6
|
-
import { DEFAULT_FACILITATOR_BASE_URL,
|
|
6
|
+
import { DEFAULT_FACILITATOR_BASE_URL, genesisPaySettlement } from "./genesispay-settlement.js";
|
|
7
7
|
import { createPlansResource } from "./plans.js";
|
|
8
|
+
import { createProductsResource } from "./products.js";
|
|
8
9
|
import { resolvePaymentGateNetwork } from "./networks.js";
|
|
9
10
|
import { parseUsdcAmountToMinorUnits } from "./usdc-amount.js";
|
|
10
11
|
import { asRecord, oneOf, optionalMetadata, optionalString, requiredString, toCount, } from "./resource.js";
|
|
@@ -12,14 +13,20 @@ import { constructEvent } from "./webhooks.js";
|
|
|
12
13
|
// The error classes live in ./errors.js (shared with every future resource:
|
|
13
14
|
// plans, mandates, …) and are re-exported here so existing imports from
|
|
14
15
|
// "./client.js" keep working.
|
|
15
|
-
export {
|
|
16
|
+
export { GenesisPayConfigError, GenesisPayNetworkSafetyError, GenesisPayNotFoundError, GenesisPayRateLimitError, GenesisPayValidationError, } from "./errors.js";
|
|
16
17
|
/**
|
|
17
|
-
* Production GenesisPay facilitator
|
|
18
|
-
*
|
|
19
|
-
*
|
|
20
|
-
*
|
|
18
|
+
* Production GenesisPay facilitator. Hardcoded so a live key always resolves to
|
|
19
|
+
* our facilitator with zero config, mirroring the test default.
|
|
20
|
+
*
|
|
21
|
+
* This is the custom domain, deliberately, not the Railway-generated hostname.
|
|
22
|
+
* The generated form is derived from the service name, so it breaks the moment
|
|
23
|
+
* the service is renamed — and `peerpay-app-production.up.railway.app`, which
|
|
24
|
+
* this used to point at, never existed at all: production has exactly one
|
|
25
|
+
* domain, `genesispay.finance`. Every zero-config live key resolved to a dead
|
|
26
|
+
* host until this line was fixed. Point it at a domain we own, not at one
|
|
27
|
+
* Railway generates for us.
|
|
21
28
|
*/
|
|
22
|
-
const PRODUCTION_FACILITATOR_BASE_URL = "https://
|
|
29
|
+
const PRODUCTION_FACILITATOR_BASE_URL = "https://genesispay.finance";
|
|
23
30
|
// Both facilitator URLs are hardcoded so the key mode alone routes to the right
|
|
24
31
|
// GenesisPay facilitator; an explicit `baseUrl` still overrides for self-host/staging.
|
|
25
32
|
const MODE_BASE_URLS = {
|
|
@@ -32,7 +39,7 @@ const MODE_BASE_URLS = {
|
|
|
32
39
|
* able to leave the caller without the one fact that matters: the endpoint is
|
|
33
40
|
* gated on the *key mode*, and a live key can never mint a payment.
|
|
34
41
|
*/
|
|
35
|
-
const SIMULATE_PAYMENT_LIVE_KEY_HINT = "simulate-payment only works with a test-mode key (
|
|
42
|
+
const SIMULATE_PAYMENT_LIVE_KEY_HINT = "simulate-payment only works with a test-mode key (gp_sk_test_…); this client " +
|
|
36
43
|
"is using a live key, and live keys can only record real, on-chain payments.";
|
|
37
44
|
/** Which networks each key mode may legitimately resolve to (fail-closed guard). */
|
|
38
45
|
const MODE_NETWORKS = {
|
|
@@ -40,18 +47,18 @@ const MODE_NETWORKS = {
|
|
|
40
47
|
live: ["base"],
|
|
41
48
|
};
|
|
42
49
|
function parseKeyMode(apiKey) {
|
|
43
|
-
if (apiKey.startsWith("
|
|
50
|
+
if (apiKey.startsWith("gp_sk_live_"))
|
|
44
51
|
return "live";
|
|
45
|
-
if (apiKey.startsWith("
|
|
46
|
-
return "test"; //
|
|
47
|
-
throw new
|
|
52
|
+
if (apiKey.startsWith("gp_sk_"))
|
|
53
|
+
return "test"; // gp_sk_test_… and legacy gp_sk_<32>
|
|
54
|
+
throw new GenesisPayConfigError("apiKey must be a GenesisPay seller key (gp_sk_test_… or gp_sk_live_…).");
|
|
48
55
|
}
|
|
49
56
|
function normalizeBaseUrl(url) {
|
|
50
57
|
const trimmed = url.trim().replace(/\/+$/, "");
|
|
51
58
|
const isHttps = /^https:\/\//i.test(trimmed);
|
|
52
59
|
const isLocalHttp = /^http:\/\/(localhost|127\.0\.0\.1)(:\d+)?(\/|$)/i.test(trimmed);
|
|
53
60
|
if (!isHttps && !isLocalHttp) {
|
|
54
|
-
throw new
|
|
61
|
+
throw new GenesisPayConfigError(`baseUrl must be https (got "${trimmed}").`);
|
|
55
62
|
}
|
|
56
63
|
return trimmed;
|
|
57
64
|
}
|
|
@@ -183,10 +190,10 @@ function amountsDisagree(a, b) {
|
|
|
183
190
|
function resolveCheckoutAmount(input) {
|
|
184
191
|
const { amount, amountUsdc } = input;
|
|
185
192
|
if (amount === undefined && amountUsdc === undefined) {
|
|
186
|
-
throw new
|
|
193
|
+
throw new GenesisPayValidationError('checkout.create requires `amount` — a decimal string in the link\'s asset, e.g. "5.00".', [{ path: "amount", message: "amount is required." }]);
|
|
187
194
|
}
|
|
188
195
|
if (amount !== undefined && amountUsdc !== undefined && amountsDisagree(amount, amountUsdc)) {
|
|
189
|
-
throw new
|
|
196
|
+
throw new GenesisPayValidationError(`checkout.create got amount "${amount}" and the deprecated amountUsdc "${amountUsdc}", ` +
|
|
190
197
|
"which are different amounts. Set `amount` on its own.", [{ path: "amount", message: "amount and amountUsdc disagree." }]);
|
|
191
198
|
}
|
|
192
199
|
return (amount ?? amountUsdc);
|
|
@@ -203,12 +210,14 @@ function paymentUnavailableResponse(error) {
|
|
|
203
210
|
message: `Payment is temporarily unavailable: ${describeError(error)}`,
|
|
204
211
|
}, { status: 503 });
|
|
205
212
|
}
|
|
206
|
-
export class
|
|
213
|
+
export class GenesisPay {
|
|
207
214
|
mode;
|
|
208
215
|
baseUrl;
|
|
209
216
|
checkout;
|
|
210
217
|
/** Subscription plans and their hosted `checkoutUrl` — see ./plans.ts. */
|
|
211
218
|
plans;
|
|
219
|
+
/** The merchant's catalogue and its canonical payment links — see ./products.ts. */
|
|
220
|
+
products;
|
|
212
221
|
/** Reusable billing contacts for one-off invoices. */
|
|
213
222
|
customers;
|
|
214
223
|
/** Draft, finalize, deliver, and collect one-off invoices. */
|
|
@@ -243,13 +252,13 @@ export class PeerPay {
|
|
|
243
252
|
constructor(options) {
|
|
244
253
|
const apiKey = options.apiKey?.trim();
|
|
245
254
|
if (!apiKey) {
|
|
246
|
-
throw new
|
|
255
|
+
throw new GenesisPayConfigError("apiKey (gp_sk_test_… / gp_sk_live_…) is required.");
|
|
247
256
|
}
|
|
248
257
|
this.apiKey = apiKey;
|
|
249
258
|
this.mode = parseKeyMode(apiKey);
|
|
250
259
|
const chosen = options.baseUrl?.trim() || MODE_BASE_URLS[this.mode];
|
|
251
260
|
if (!chosen) {
|
|
252
|
-
throw new
|
|
261
|
+
throw new GenesisPayConfigError(`GenesisPay ${this.mode} base URL is not configured yet; pass baseUrl explicitly.`);
|
|
253
262
|
}
|
|
254
263
|
this.baseUrl = normalizeBaseUrl(chosen);
|
|
255
264
|
this.fetchFn = options.fetchFn ?? fetch;
|
|
@@ -263,6 +272,9 @@ export class PeerPay {
|
|
|
263
272
|
// Both resources get the same bound request seam, so their errors go
|
|
264
273
|
// through the one shared mapper in ./errors.ts like checkout's do.
|
|
265
274
|
this.plans = createPlansResource(this.request, (wallet, what) => this.assertPinnedDestination(wallet, what));
|
|
275
|
+
// Shares the client's own link mapper so the minted link's shape cannot
|
|
276
|
+
// drift from `checkout.create`'s.
|
|
277
|
+
this.products = createProductsResource(this.request, (wallet, what) => this.assertPinnedDestination(wallet, what), (raw) => toCheckoutLink(raw));
|
|
266
278
|
this.mandates = createMandatesResource(this.request);
|
|
267
279
|
this.customers = createCustomersResource(this.request);
|
|
268
280
|
this.invoices = createInvoicesResource(this.request);
|
|
@@ -296,7 +308,7 @@ export class PeerPay {
|
|
|
296
308
|
}
|
|
297
309
|
gate(config) {
|
|
298
310
|
const innerGates = new Map();
|
|
299
|
-
const defaultSettle =
|
|
311
|
+
const defaultSettle = genesisPaySettlement({
|
|
300
312
|
facilitatorBaseUrl: this.baseUrl,
|
|
301
313
|
apiKey: this.apiKey,
|
|
302
314
|
fetchFn: this.fetchFn,
|
|
@@ -352,10 +364,10 @@ export class PeerPay {
|
|
|
352
364
|
});
|
|
353
365
|
}
|
|
354
366
|
catch (error) {
|
|
355
|
-
throw new
|
|
367
|
+
throw new GenesisPayConfigError(`Failed to reach GenesisPay to resolve the seller: ${describeError(error)}`);
|
|
356
368
|
}
|
|
357
369
|
if (!response.ok) {
|
|
358
|
-
// 401/403/500 land on
|
|
370
|
+
// 401/403/500 land on GenesisPayConfigError with the key/base-URL hint; a
|
|
359
371
|
// 429 on the seller lookup is a rate limit like any other, not a broken key.
|
|
360
372
|
await throwForErrorResponse(response, {
|
|
361
373
|
operation: "GET /api/v1/seller",
|
|
@@ -373,24 +385,24 @@ export class PeerPay {
|
|
|
373
385
|
// system they always do (both come from the deployment network at creation);
|
|
374
386
|
// a disagreement means key/DB corruption or a spoofed response — fail closed.
|
|
375
387
|
if (config.mode !== this.mode) {
|
|
376
|
-
throw new
|
|
388
|
+
throw new GenesisPayNetworkSafetyError(`Key mode "${this.mode}" does not match the server-resolved mode "${config.mode}".`);
|
|
377
389
|
}
|
|
378
390
|
// (2) Mode↔network: a live key must never resolve to a testnet, and vice
|
|
379
391
|
// versa. Checked before the asset table so an unknown/foreign network name
|
|
380
392
|
// surfaces as a typed safety error instead of a generic lookup throw.
|
|
381
393
|
if (!MODE_NETWORKS[this.mode].includes(net.networkName)) {
|
|
382
|
-
throw new
|
|
394
|
+
throw new GenesisPayNetworkSafetyError(`A ${this.mode} key must not resolve to network "${net.networkName}".`);
|
|
383
395
|
}
|
|
384
396
|
// (3) Asset integrity: the backend-reported USDC/chainId must match the
|
|
385
397
|
// SDK's own native-USDC table for that (now-known) network.
|
|
386
398
|
const known = resolvePaymentGateNetwork(net.networkName);
|
|
387
399
|
if (known.chainId !== net.chainId ||
|
|
388
400
|
known.usdcAddress.toLowerCase() !== String(net.usdcAddress).toLowerCase()) {
|
|
389
|
-
throw new
|
|
401
|
+
throw new GenesisPayNetworkSafetyError(`Backend network is inconsistent for "${net.networkName}" (chainId ${net.chainId}, usdc ${net.usdcAddress}).`);
|
|
390
402
|
}
|
|
391
403
|
// (4) Optional local pin on the payout wallet.
|
|
392
404
|
if (this.expectedPayTo && config.payTo && config.payTo.toLowerCase() !== this.expectedPayTo) {
|
|
393
|
-
throw new
|
|
405
|
+
throw new GenesisPayNetworkSafetyError(`Resolved payTo does not match expectedPayTo.`);
|
|
394
406
|
}
|
|
395
407
|
}
|
|
396
408
|
/**
|
|
@@ -406,10 +418,15 @@ export class PeerPay {
|
|
|
406
418
|
assertPinnedDestination(wallet, what) {
|
|
407
419
|
if (!this.expectedPayTo)
|
|
408
420
|
return;
|
|
409
|
-
if (typeof wallet !== "string" || !wallet)
|
|
410
|
-
|
|
421
|
+
if (typeof wallet !== "string" || !wallet) {
|
|
422
|
+
// Fail CLOSED. A response that omits the destination is exactly the
|
|
423
|
+
// response the pin cannot vouch for — an intermediary that strips the
|
|
424
|
+
// field must not read as "matches". Silently returning here made the
|
|
425
|
+
// guarantee bypassable by omission.
|
|
426
|
+
throw new GenesisPayNetworkSafetyError(`The ${what} response carried no destinationWallet to check against expectedPayTo.`);
|
|
427
|
+
}
|
|
411
428
|
if (wallet.toLowerCase() !== this.expectedPayTo) {
|
|
412
|
-
throw new
|
|
429
|
+
throw new GenesisPayNetworkSafetyError(`The ${what} was created with a destinationWallet that does not match expectedPayTo.`);
|
|
413
430
|
}
|
|
414
431
|
}
|
|
415
432
|
/**
|
|
@@ -433,11 +450,11 @@ export class PeerPay {
|
|
|
433
450
|
});
|
|
434
451
|
}
|
|
435
452
|
catch (error) {
|
|
436
|
-
throw new
|
|
453
|
+
throw new GenesisPayConfigError(`Failed to reach GenesisPay to ${options.action}: ${describeError(error)}`);
|
|
437
454
|
}
|
|
438
455
|
if (!response.ok) {
|
|
439
|
-
// Shared mapping: 422 →
|
|
440
|
-
// 429 →
|
|
456
|
+
// Shared mapping: 422 → GenesisPayValidationError (with the field issues),
|
|
457
|
+
// 429 → GenesisPayRateLimitError (with Retry-After), 404 → NotFound, rest → Config.
|
|
441
458
|
await throwForErrorResponse(response, {
|
|
442
459
|
operation: options.operation,
|
|
443
460
|
notFoundMessage: options.notFoundMessage,
|
|
@@ -474,19 +491,19 @@ export class PeerPay {
|
|
|
474
491
|
});
|
|
475
492
|
const link = asRecord(body)?.link;
|
|
476
493
|
if (!link || typeof link.payUrl !== "string" || !link.payUrl) {
|
|
477
|
-
throw new
|
|
494
|
+
throw new GenesisPayConfigError(`GenesisPay link created but no payUrl in response: ${JSON.stringify(body)}`);
|
|
478
495
|
}
|
|
479
496
|
this.assertPinnedDestination(link.destinationWallet, "checkout link");
|
|
480
497
|
return toCheckoutLink(link);
|
|
481
498
|
}
|
|
482
499
|
/**
|
|
483
500
|
* Fetch the current state of a checkout link. `paid` is the field to poll on;
|
|
484
|
-
* an unknown publicId raises `
|
|
501
|
+
* an unknown publicId raises `GenesisPayNotFoundError`, never a config error.
|
|
485
502
|
*/
|
|
486
503
|
async retrieveCheckout(publicId) {
|
|
487
504
|
const id = publicId?.trim();
|
|
488
505
|
if (!id) {
|
|
489
|
-
throw new
|
|
506
|
+
throw new GenesisPayConfigError("checkout.retrieve(publicId) requires the publicId returned by checkout.create().");
|
|
490
507
|
}
|
|
491
508
|
const body = await this.request({
|
|
492
509
|
path: `/api/v1/links/${encodeURIComponent(id)}`,
|
|
@@ -496,7 +513,7 @@ export class PeerPay {
|
|
|
496
513
|
});
|
|
497
514
|
const link = asRecord(body)?.link;
|
|
498
515
|
if (!link || typeof link.publicId !== "string" || !link.publicId) {
|
|
499
|
-
throw new
|
|
516
|
+
throw new GenesisPayConfigError(`GenesisPay returned no link for publicId "${id}": ${JSON.stringify(body)}`);
|
|
500
517
|
}
|
|
501
518
|
return toCheckoutSession(link);
|
|
502
519
|
}
|
|
@@ -504,7 +521,7 @@ export class PeerPay {
|
|
|
504
521
|
async simulateCheckoutPayment(publicId, opts) {
|
|
505
522
|
const id = publicId?.trim();
|
|
506
523
|
if (!id) {
|
|
507
|
-
throw new
|
|
524
|
+
throw new GenesisPayConfigError("checkout.simulatePayment(publicId) requires the publicId returned by checkout.create().");
|
|
508
525
|
}
|
|
509
526
|
const body = await this.request({
|
|
510
527
|
method: "POST",
|
|
@@ -525,7 +542,7 @@ export class PeerPay {
|
|
|
525
542
|
const record = asRecord(body);
|
|
526
543
|
const link = record?.link;
|
|
527
544
|
if (!link || typeof link.publicId !== "string" || !link.publicId) {
|
|
528
|
-
throw new
|
|
545
|
+
throw new GenesisPayConfigError(`GenesisPay simulated a payment on "${id}" but returned no link: ${JSON.stringify(body)}`);
|
|
529
546
|
}
|
|
530
547
|
// The attempt is not an optional detail here the way an unknown field would
|
|
531
548
|
// be: without it the merged session would report `paid: false` right after
|
|
@@ -533,7 +550,7 @@ export class PeerPay {
|
|
|
533
550
|
// older backend — the endpoint and the field shipped together.
|
|
534
551
|
const [attempt] = toCheckoutAttempts([record?.attempt]);
|
|
535
552
|
if (!attempt) {
|
|
536
|
-
throw new
|
|
553
|
+
throw new GenesisPayConfigError(`GenesisPay simulated a payment on "${id}" but returned no attempt: ${JSON.stringify(body)}`);
|
|
537
554
|
}
|
|
538
555
|
return toSimulatedCheckoutSession(link, attempt);
|
|
539
556
|
}
|
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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"}
|
package/dist/customers.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type
|
|
1
|
+
import { type GenesisPayRequest } from "./resource.js";
|
|
2
2
|
export type Customer = {
|
|
3
3
|
id: string;
|
|
4
4
|
publicId: string;
|
|
@@ -36,6 +36,6 @@ export interface CustomersResource {
|
|
|
36
36
|
update(publicId: string, input: CustomerUpdateInput): Promise<Customer>;
|
|
37
37
|
archive(publicId: string): Promise<Customer>;
|
|
38
38
|
}
|
|
39
|
-
export declare function createCustomersResource(request:
|
|
39
|
+
export declare function createCustomersResource(request: GenesisPayRequest): CustomersResource;
|
|
40
40
|
export declare function toCustomer(raw: Record<string, unknown>): Customer;
|
|
41
41
|
//# sourceMappingURL=customers.d.ts.map
|
package/dist/customers.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"customers.d.ts","sourceRoot":"","sources":["../src/customers.ts"],"names":[],"mappings":"AAGA,OAAO,EAKL,KAAK,
|
|
1
|
+
{"version":3,"file":"customers.d.ts","sourceRoot":"","sources":["../src/customers.ts"],"names":[],"mappings":"AAGA,OAAO,EAKL,KAAK,iBAAiB,EACvB,MAAM,eAAe,CAAC;AAEvB,MAAM,MAAM,QAAQ,GAAG;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC;IACxC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACnC,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;AAE/D,MAAM,WAAW,iBAAiB;IAChC,MAAM,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IACtD,IAAI,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC9C,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IACxE,OAAO,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;CAC9C;AAED,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,iBAAiB,GAAG,iBAAiB,CAoDrF;AAmCD,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,QAAQ,CAkBjE"}
|
package/dist/customers.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
// `
|
|
2
|
-
import {
|
|
1
|
+
// `genesispay.customers.*` — reusable billing contacts over `/api/v1/customers`.
|
|
2
|
+
import { GenesisPayConfigError } from "./errors.js";
|
|
3
3
|
import { asRecord, optionalMetadata, optionalString, requiredString, } from "./resource.js";
|
|
4
4
|
export function createCustomersResource(request) {
|
|
5
5
|
return {
|
|
@@ -12,7 +12,7 @@ export function createCustomersResource(request) {
|
|
|
12
12
|
});
|
|
13
13
|
const rows = asRecord(body)?.customers;
|
|
14
14
|
if (!Array.isArray(rows)) {
|
|
15
|
-
throw new
|
|
15
|
+
throw new GenesisPayConfigError(`GenesisPay GET /api/v1/customers returned no customers array: ${JSON.stringify(body)}`);
|
|
16
16
|
}
|
|
17
17
|
return rows
|
|
18
18
|
.map(asRecord)
|
|
@@ -43,14 +43,14 @@ async function customerRequest(request, method, path, body, action) {
|
|
|
43
43
|
});
|
|
44
44
|
const raw = asRecord(asRecord(response)?.customer);
|
|
45
45
|
if (!raw?.publicId) {
|
|
46
|
-
throw new
|
|
46
|
+
throw new GenesisPayConfigError(`GenesisPay ${method} ${path} returned no customer: ${JSON.stringify(response)}`);
|
|
47
47
|
}
|
|
48
48
|
return toCustomer(raw);
|
|
49
49
|
}
|
|
50
50
|
function requirePublicId(publicId, method) {
|
|
51
51
|
const id = publicId?.trim();
|
|
52
52
|
if (!id) {
|
|
53
|
-
throw new
|
|
53
|
+
throw new GenesisPayConfigError(`${method}(publicId) requires the publicId returned by customers.create().`);
|
|
54
54
|
}
|
|
55
55
|
return id;
|
|
56
56
|
}
|
package/dist/customers.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"customers.js","sourceRoot":"","sources":["../src/customers.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"customers.js","sourceRoot":"","sources":["../src/customers.ts"],"names":[],"mappings":"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"}
|
package/dist/errors.d.ts
CHANGED
|
@@ -1,22 +1,22 @@
|
|
|
1
1
|
/** Missing/invalid key, unresolvable prod URL, or unreachable backend. */
|
|
2
|
-
export declare class
|
|
2
|
+
export declare class GenesisPayConfigError extends Error {
|
|
3
3
|
constructor(message: string);
|
|
4
4
|
}
|
|
5
5
|
/**
|
|
6
6
|
* The requested resource does not exist (HTTP 404). Kept separate from
|
|
7
|
-
* `
|
|
7
|
+
* `GenesisPayConfigError` on purpose: polling `checkout.retrieve()` for an unknown
|
|
8
8
|
* publicId is an ordinary application case and must stay distinguishable from
|
|
9
9
|
* "the key is broken / the backend is unreachable".
|
|
10
10
|
*/
|
|
11
|
-
export declare class
|
|
11
|
+
export declare class GenesisPayNotFoundError extends Error {
|
|
12
12
|
constructor(message: string);
|
|
13
13
|
}
|
|
14
14
|
/** Asset-integrity, mode↔network, or expectedPayTo-pin mismatch — a money-safety stop. */
|
|
15
|
-
export declare class
|
|
15
|
+
export declare class GenesisPayNetworkSafetyError extends Error {
|
|
16
16
|
constructor(message: string);
|
|
17
17
|
}
|
|
18
18
|
/** One rejected field, as the API reports it. `path` is dot-joined ("metadata.orderId"). */
|
|
19
|
-
export type
|
|
19
|
+
export type GenesisPayValidationIssue = {
|
|
20
20
|
path: string;
|
|
21
21
|
message: string;
|
|
22
22
|
};
|
|
@@ -28,9 +28,9 @@ export type PeerPayValidationIssue = {
|
|
|
28
28
|
* metadata keys and a malformed wallet must not look the same to a caller that
|
|
29
29
|
* wants to surface the offending field back to its own user.
|
|
30
30
|
*/
|
|
31
|
-
export declare class
|
|
32
|
-
readonly issues:
|
|
33
|
-
constructor(message: string, issues?:
|
|
31
|
+
export declare class GenesisPayValidationError extends Error {
|
|
32
|
+
readonly issues: GenesisPayValidationIssue[];
|
|
33
|
+
constructor(message: string, issues?: GenesisPayValidationIssue[]);
|
|
34
34
|
}
|
|
35
35
|
/**
|
|
36
36
|
* The API key exceeded its rate limit (HTTP 429).
|
|
@@ -40,7 +40,7 @@ export declare class PeerPayValidationError extends Error {
|
|
|
40
40
|
* a caller sleeping on a made-up number is worse than one that backs off with
|
|
41
41
|
* its own policy.
|
|
42
42
|
*/
|
|
43
|
-
export declare class
|
|
43
|
+
export declare class GenesisPayRateLimitError extends Error {
|
|
44
44
|
readonly retryAfterSeconds: number | null;
|
|
45
45
|
constructor(message: string, retryAfterSeconds: number | null);
|
|
46
46
|
}
|
package/dist/errors.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AASA,0EAA0E;AAC1E,qBAAa,
|
|
1
|
+
{"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AASA,0EAA0E;AAC1E,qBAAa,qBAAsB,SAAQ,KAAK;gBAClC,OAAO,EAAE,MAAM;CAI5B;AAED;;;;;GAKG;AACH,qBAAa,uBAAwB,SAAQ,KAAK;gBACpC,OAAO,EAAE,MAAM;CAI5B;AAED,0FAA0F;AAC1F,qBAAa,4BAA6B,SAAQ,KAAK;gBACzC,OAAO,EAAE,MAAM;CAI5B;AAED,4FAA4F;AAC5F,MAAM,MAAM,yBAAyB,GAAG;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF;;;;;;;GAOG;AACH,qBAAa,yBAA0B,SAAQ,KAAK;IAClD,QAAQ,CAAC,MAAM,EAAE,yBAAyB,EAAE,CAAC;gBAEjC,OAAO,EAAE,MAAM,EAAE,MAAM,GAAE,yBAAyB,EAAO;CAKtE;AAED;;;;;;;GAOG;AACH,qBAAa,wBAAyB,SAAQ,KAAK;IACjD,QAAQ,CAAC,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;gBAE9B,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,GAAG,IAAI;CAK9D;AAED,MAAM,MAAM,4BAA4B,GAAG;IACzC,mEAAmE;IACnE,SAAS,EAAE,MAAM,CAAC;IAClB,kEAAkE;IAClE,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,8EAA8E;IAC9E,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAUF;;;;;;GAMG;AACH,wBAAsB,qBAAqB,CACzC,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,4BAA4B,GACpC,OAAO,CAAC,KAAK,CAAC,CA4ChB"}
|
package/dist/errors.js
CHANGED
|
@@ -3,33 +3,33 @@
|
|
|
3
3
|
// One rule, one place: `throwForErrorResponse` is the single mapper from a
|
|
4
4
|
// non-OK `Response` to an error class, so every method (checkout today, plans
|
|
5
5
|
// and mandates tomorrow) fails the same way. A method that hand-rolls its own
|
|
6
|
-
// `throw new
|
|
6
|
+
// `throw new GenesisPayConfigError(...)` for a non-OK status is a bug — 422 and
|
|
7
7
|
// 429 carry information (which field is wrong, how long to wait) that a generic
|
|
8
8
|
// config error throws away.
|
|
9
9
|
/** Missing/invalid key, unresolvable prod URL, or unreachable backend. */
|
|
10
|
-
export class
|
|
10
|
+
export class GenesisPayConfigError extends Error {
|
|
11
11
|
constructor(message) {
|
|
12
12
|
super(message);
|
|
13
|
-
this.name = "
|
|
13
|
+
this.name = "GenesisPayConfigError";
|
|
14
14
|
}
|
|
15
15
|
}
|
|
16
16
|
/**
|
|
17
17
|
* The requested resource does not exist (HTTP 404). Kept separate from
|
|
18
|
-
* `
|
|
18
|
+
* `GenesisPayConfigError` on purpose: polling `checkout.retrieve()` for an unknown
|
|
19
19
|
* publicId is an ordinary application case and must stay distinguishable from
|
|
20
20
|
* "the key is broken / the backend is unreachable".
|
|
21
21
|
*/
|
|
22
|
-
export class
|
|
22
|
+
export class GenesisPayNotFoundError extends Error {
|
|
23
23
|
constructor(message) {
|
|
24
24
|
super(message);
|
|
25
|
-
this.name = "
|
|
25
|
+
this.name = "GenesisPayNotFoundError";
|
|
26
26
|
}
|
|
27
27
|
}
|
|
28
28
|
/** Asset-integrity, mode↔network, or expectedPayTo-pin mismatch — a money-safety stop. */
|
|
29
|
-
export class
|
|
29
|
+
export class GenesisPayNetworkSafetyError extends Error {
|
|
30
30
|
constructor(message) {
|
|
31
31
|
super(message);
|
|
32
|
-
this.name = "
|
|
32
|
+
this.name = "GenesisPayNetworkSafetyError";
|
|
33
33
|
}
|
|
34
34
|
}
|
|
35
35
|
/**
|
|
@@ -40,11 +40,11 @@ export class PeerPayNetworkSafetyError extends Error {
|
|
|
40
40
|
* metadata keys and a malformed wallet must not look the same to a caller that
|
|
41
41
|
* wants to surface the offending field back to its own user.
|
|
42
42
|
*/
|
|
43
|
-
export class
|
|
43
|
+
export class GenesisPayValidationError extends Error {
|
|
44
44
|
issues;
|
|
45
45
|
constructor(message, issues = []) {
|
|
46
46
|
super(message);
|
|
47
|
-
this.name = "
|
|
47
|
+
this.name = "GenesisPayValidationError";
|
|
48
48
|
this.issues = issues;
|
|
49
49
|
}
|
|
50
50
|
}
|
|
@@ -56,11 +56,11 @@ export class PeerPayValidationError extends Error {
|
|
|
56
56
|
* a caller sleeping on a made-up number is worse than one that backs off with
|
|
57
57
|
* its own policy.
|
|
58
58
|
*/
|
|
59
|
-
export class
|
|
59
|
+
export class GenesisPayRateLimitError extends Error {
|
|
60
60
|
retryAfterSeconds;
|
|
61
61
|
constructor(message, retryAfterSeconds) {
|
|
62
62
|
super(message);
|
|
63
|
-
this.name = "
|
|
63
|
+
this.name = "GenesisPayRateLimitError";
|
|
64
64
|
this.retryAfterSeconds = retryAfterSeconds;
|
|
65
65
|
}
|
|
66
66
|
}
|
|
@@ -77,27 +77,27 @@ export async function throwForErrorResponse(response, options) {
|
|
|
77
77
|
const suffix = detail ? `: ${detail}` : "";
|
|
78
78
|
const hint = options.hint ? ` ${options.hint}` : "";
|
|
79
79
|
if (response.status === 404) {
|
|
80
|
-
throw new
|
|
80
|
+
throw new GenesisPayNotFoundError(options.notFoundMessage ??
|
|
81
81
|
`GenesisPay ${options.operation} returned 404 (not found)${suffix}${hint}`);
|
|
82
82
|
}
|
|
83
83
|
// 422 is a rejected *body*; 400 with `issues[]` is a rejected *query string*
|
|
84
84
|
// (`GET /api/v1/mandates` answers that way). Both mean "your input was wrong,
|
|
85
|
-
// here are the fields", so both become
|
|
85
|
+
// here are the fields", so both become GenesisPayValidationError — a caller that
|
|
86
86
|
// wants to show the offending parameter must not have to branch on status.
|
|
87
87
|
//
|
|
88
88
|
// The `issues.length` gate is what keeps this narrow: a 400 without structured
|
|
89
89
|
// detail ("Request body must be JSON.", "startingAfter is not a mandate of this
|
|
90
|
-
// account.") stays a
|
|
90
|
+
// account.") stays a GenesisPayConfigError exactly as before, so nothing that was
|
|
91
91
|
// a config error yesterday changes class today.
|
|
92
92
|
if (response.status === 422 || (response.status === 400 && body.issues.length > 0)) {
|
|
93
|
-
throw new
|
|
93
|
+
throw new GenesisPayValidationError(`GenesisPay ${options.operation} rejected the input (${response.status})${suffix}`, body.issues);
|
|
94
94
|
}
|
|
95
95
|
if (response.status === 429) {
|
|
96
96
|
const retryAfterSeconds = parseRetryAfterSeconds(response.headers?.get("retry-after") ?? null);
|
|
97
97
|
const wait = retryAfterSeconds === null ? "" : ` Retry after ${retryAfterSeconds}s.`;
|
|
98
|
-
throw new
|
|
98
|
+
throw new GenesisPayRateLimitError(`GenesisPay ${options.operation} was rate limited (429)${suffix}${wait}`, retryAfterSeconds);
|
|
99
99
|
}
|
|
100
|
-
throw new
|
|
100
|
+
throw new GenesisPayConfigError(`GenesisPay ${options.operation} failed: ${response.status}${suffix}${hint}`.trim());
|
|
101
101
|
}
|
|
102
102
|
async function readErrorBody(response) {
|
|
103
103
|
const text = (await response.text().catch(() => "")).trim();
|