@fantastic.dev/better-stripe 0.12.0 → 0.13.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 +13 -0
- package/README.md +64 -8
- package/dist/client/costRecovery-invoices.d.ts +38 -0
- package/dist/client/costRecovery-invoices.d.ts.map +1 -0
- package/dist/client/costRecovery-invoices.js +105 -0
- package/dist/client/costRecovery-invoices.js.map +1 -0
- package/dist/client/costRecovery.d.ts +43 -2
- package/dist/client/costRecovery.d.ts.map +1 -1
- package/dist/client/costRecovery.js +69 -2
- package/dist/client/costRecovery.js.map +1 -1
- package/dist/client/index.js +1 -1
- package/dist/client/index.js.map +1 -1
- package/dist/component/_generated/component.d.ts +78 -0
- package/dist/component/_generated/component.d.ts.map +1 -1
- package/dist/component/costRecovery/claims.d.ts.map +1 -1
- package/dist/component/costRecovery/claims.js +15 -8
- package/dist/component/costRecovery/claims.js.map +1 -1
- package/dist/component/costRecovery/completion.d.ts +6 -0
- package/dist/component/costRecovery/completion.d.ts.map +1 -1
- package/dist/component/costRecovery/helpers.d.ts +6 -0
- package/dist/component/costRecovery/helpers.d.ts.map +1 -1
- package/dist/component/costRecovery/mutations.d.ts +72 -0
- package/dist/component/costRecovery/mutations.d.ts.map +1 -1
- package/dist/component/costRecovery/mutations.js +57 -0
- package/dist/component/costRecovery/mutations.js.map +1 -1
- package/dist/component/costRecovery/queries.d.ts +6 -0
- package/dist/component/costRecovery/queries.d.ts.map +1 -1
- package/dist/component/costRecovery/reservations.d.ts +12 -0
- package/dist/component/costRecovery/reservations.d.ts.map +1 -1
- package/dist/component/costRecovery/schema.d.ts +44 -2
- package/dist/component/costRecovery/schema.d.ts.map +1 -1
- package/dist/component/costRecovery/schema.js +6 -0
- package/dist/component/costRecovery/schema.js.map +1 -1
- package/dist/component/schema.d.ts +17 -1
- package/dist/react/workflows/Collections.d.ts.map +1 -1
- package/dist/react/workflows/Collections.js +2 -1
- package/dist/react/workflows/Collections.js.map +1 -1
- package/dist/react/workflows/Refunds.d.ts +14 -3
- package/dist/react/workflows/Refunds.d.ts.map +1 -1
- package/dist/react/workflows/Refunds.js +58 -16
- package/dist/react/workflows/Refunds.js.map +1 -1
- package/dist/react/workflows/index.d.ts +3 -1
- package/dist/react/workflows/index.d.ts.map +1 -1
- package/dist/react/workflows/index.js +2 -1
- package/dist/react/workflows/index.js.map +1 -1
- package/dist/react/workflows/refund-preview.d.ts +16 -0
- package/dist/react/workflows/refund-preview.d.ts.map +1 -0
- package/dist/react/workflows/refund-preview.js +38 -0
- package/dist/react/workflows/refund-preview.js.map +1 -0
- package/docs/react-workflows.md +79 -4
- package/package.json +1 -1
- package/src/client/costRecovery-invoices.test.ts +401 -0
- package/src/client/costRecovery-invoices.transport.test.ts +107 -0
- package/src/client/costRecovery-invoices.ts +144 -0
- package/src/client/costRecovery.ts +107 -2
- package/src/client/index.ts +1 -1
- package/src/component/_generated/component.ts +99 -0
- package/src/component/costRecovery/claims.ts +18 -8
- package/src/component/costRecovery/mutations.ts +72 -0
- package/src/component/costRecovery/schema.ts +8 -0
- package/src/react/workflows/Collections.test.tsx +36 -0
- package/src/react/workflows/Collections.tsx +3 -1
- package/src/react/workflows/Refunds.currency.test.tsx +290 -0
- package/src/react/workflows/Refunds.tsx +115 -25
- package/src/react/workflows/index.ts +8 -1
- package/src/react/workflows/refund-preview.test.ts +65 -0
- package/src/react/workflows/refund-preview.ts +56 -0
package/CHANGELOG.md
CHANGED
|
@@ -14,6 +14,19 @@
|
|
|
14
14
|
- Remove internal tracker references from public documentation and add a
|
|
15
15
|
regression check that prevents their reintroduction.
|
|
16
16
|
|
|
17
|
+
## [0.13.0](https://github.com/FantasticDevHQ/better-stripe/compare/v0.12.0...v0.13.0) (2026-10-15)
|
|
18
|
+
|
|
19
|
+
### Features
|
|
20
|
+
|
|
21
|
+
- **recovery:** reconcile seller cost invoice adjustments ([#159](https://github.com/FantasticDevHQ/better-stripe/issues/159)) ([d1ffdbc](https://github.com/FantasticDevHQ/better-stripe/commit/d1ffdbcb224b6c31ae958c576a4bcd6ff4a0a4dd))
|
|
22
|
+
|
|
23
|
+
### Bug Fixes
|
|
24
|
+
|
|
25
|
+
- **example:** bind reversal inputs to original charge currency ([#160](https://github.com/FantasticDevHQ/better-stripe/issues/160)) ([6b86926](https://github.com/FantasticDevHQ/better-stripe/commit/6b86926c7d4a173babd2964d4eee086f61c48f63))
|
|
26
|
+
- **example:** reconcile unsettled disputed sources ([#161](https://github.com/FantasticDevHQ/better-stripe/issues/161)) ([9c732bd](https://github.com/FantasticDevHQ/better-stripe/commit/9c732bdc88555210d2172067e6bbf5d2fc513190))
|
|
27
|
+
- **react:** isolate refund preview amounts by currency and status ([#162](https://github.com/FantasticDevHQ/better-stripe/issues/162)) ([601d509](https://github.com/FantasticDevHQ/better-stripe/commit/601d50923dc98f212b29fd4e4e3d856dfffbda44))
|
|
28
|
+
- **react:** preserve original refund currency units ([#157](https://github.com/FantasticDevHQ/better-stripe/issues/157)) ([494827f](https://github.com/FantasticDevHQ/better-stripe/commit/494827f1cb35b0b0ca10b1c6da38a1095bb32500))
|
|
29
|
+
|
|
17
30
|
## [0.12.0](https://github.com/FantasticDevHQ/better-stripe/compare/v0.11.0...v0.12.0) (2026-10-15)
|
|
18
31
|
|
|
19
32
|
### Features
|
package/README.md
CHANGED
|
@@ -38,7 +38,7 @@ See the [customer preview setup and webhook migration guide](docs/accounts-v2-pr
|
|
|
38
38
|
|
|
39
39
|
## Status
|
|
40
40
|
|
|
41
|
-
**Version**: `0.
|
|
41
|
+
**Version**: `0.13.0` <!-- x-release-please-version --> (pre-1.0). API may change between minor versions until 1.0.
|
|
42
42
|
|
|
43
43
|
Used in production by its authors. Webhook pipeline is covered by unit tests and a live E2E harness (`npm run e2e:webhooks`) that fires real Stripe-signed events and asserts the ledger.
|
|
44
44
|
|
|
@@ -337,9 +337,10 @@ Methods named `get<Entity>` take the component document ID (exception: `getInvoi
|
|
|
337
337
|
|
|
338
338
|
### Durable recovery claims
|
|
339
339
|
|
|
340
|
-
`stripe.costRecovery` is a server-only
|
|
341
|
-
component.
|
|
342
|
-
|
|
340
|
+
`stripe.costRecovery` is a server-only recovery client backed by the Convex
|
|
341
|
+
component. Bookkeeping methods do not use Stripe credentials or move money.
|
|
342
|
+
Invoice methods use the configured Stripe client and must run in an action.
|
|
343
|
+
Your host authenticates the
|
|
343
344
|
caller, approves which costs are owed, authorizes the account and recovery scope,
|
|
344
345
|
and verifies provider outcomes before confirming collection. A recovery scope is
|
|
345
346
|
an application-defined liability boundary, such as one store. Amounts are signed
|
|
@@ -410,15 +411,70 @@ cumulative principal. This records a separate, source-linked rollback claim,
|
|
|
410
411
|
preserves the original costs and collection history, and rounds positive and
|
|
411
412
|
negative amounts symmetrically. Reinstated principal can reduce the rollback
|
|
412
413
|
again with a newer revision. This bookkeeping operation does not refund or
|
|
413
|
-
reverse a transfer.
|
|
414
|
-
|
|
414
|
+
reverse a transfer. For invoice groups, use the verified funding adapter below;
|
|
415
|
+
do not invent invoice payment allocations.
|
|
415
416
|
|
|
416
417
|
Use `balance(ctx, scope)` for exact maintained totals and
|
|
417
418
|
`listClaims(ctx, { ...scope, limit, cursor })` for paginated history. `getClaim`, `getGroup` and
|
|
418
419
|
`getReservation` resume durable workflows. Integrate these server callbacks with
|
|
419
420
|
the existing unstyled React `CostRecovery` display. These bookkeeping APIs leave
|
|
420
|
-
consent, provider fee policy and entitlement changes in the host
|
|
421
|
-
|
|
421
|
+
consent, provider fee policy and entitlement changes in the host.
|
|
422
|
+
|
|
423
|
+
### Invoice recovery adjustments
|
|
424
|
+
|
|
425
|
+
After authorizing the seller, invoice and liability scope, reserve with
|
|
426
|
+
`sourceKind: "invoice"` and `sourceId: invoiceId`. Allocate bounded batches and
|
|
427
|
+
seal the group before calling Stripe. Then attach exactly one signed adjustment
|
|
428
|
+
for the entire group:
|
|
429
|
+
|
|
430
|
+
```ts
|
|
431
|
+
const receipt = await recovery.attachInvoice(ctx, { ...scope, groupKey });
|
|
432
|
+
// Invoke from your invoice lifecycle reconciliation, and repeat bounded completion
|
|
433
|
+
// until isDone after payment or release.
|
|
434
|
+
const result = await recovery.reconcileInvoice(ctx, {
|
|
435
|
+
...scope,
|
|
436
|
+
groupKey,
|
|
437
|
+
releaseUncollectible: false,
|
|
438
|
+
});
|
|
439
|
+
```
|
|
440
|
+
|
|
441
|
+
The invoice must belong to the authorized customer account, use the same currency,
|
|
442
|
+
and be draft before a new item is created. The package stores its stable group
|
|
443
|
+
identity before the provider call, uses that identity as the idempotency key and
|
|
444
|
+
item metadata, and persists the resulting item ID. Every retry scans all items
|
|
445
|
+
on that exact invoice, recovering a successful creation even if the subsequent
|
|
446
|
+
database write failed or the provider idempotency key expired. A bound item that
|
|
447
|
+
has been deleted, changed or duplicated requires reconciliation; the package
|
|
448
|
+
never silently recreates it. Negative adjustments are credits. Items are not
|
|
449
|
+
discountable.
|
|
450
|
+
|
|
451
|
+
Your host must durably serialize provider operations for each group, including
|
|
452
|
+
attachment and any calls that finish or release it. Never release a reservation
|
|
453
|
+
after a timeout or unknown provider outcome. Draft and open invoices retain their
|
|
454
|
+
reservations, blocking recovery from a second payout. A verified paid invoice
|
|
455
|
+
commits collection; a verified void releases the obligation for a future boundary.
|
|
456
|
+
Uncollectible invoices stay reserved unless your explicit host policy passes
|
|
457
|
+
`releaseUncollectible: true`. Do not use that policy while another process might
|
|
458
|
+
retry payment on the original invoice. Subscription cancellation alone does not
|
|
459
|
+
prove its invoices were voided. These methods never attempt card fallback or
|
|
460
|
+
change a payout schedule.
|
|
461
|
+
|
|
462
|
+
For a collected invoice fully funded by one PaymentIntent, call
|
|
463
|
+
`rollbackInvoice(ctx, { ...scope, groupKey, revision })`. It checks the paid
|
|
464
|
+
invoice, completely paginates its payments, verifies the funding charge and its
|
|
465
|
+
refund/dispute transactions, retains the original funding economics, and records
|
|
466
|
+
a separate proportional rollback claim. Use a durable revision captured before
|
|
467
|
+
provider reconciliation, and retry the full read on revision conflicts. Original
|
|
468
|
+
cost claims remain intact. Multiple payments, partial allocations, mixed customer
|
|
469
|
+
credits and non-PaymentIntent funding return
|
|
470
|
+
`{ status: "not_ready", reason: "invoice_funding_allocation_required" }` without
|
|
471
|
+
changing claims. Provider processing costs can also return their documented
|
|
472
|
+
not-ready reasons. Those cases need a host-approved allocation policy rather than
|
|
473
|
+
guessed amounts. Invoice integration in the example is a separate migration.
|
|
474
|
+
|
|
475
|
+
Provider methods preserve the configured API version and propagate Stripe errors.
|
|
476
|
+
See Stripe's [invoice item creation](https://docs.stripe.com/api/invoiceitems/create)
|
|
477
|
+
and [invoice item pagination](https://docs.stripe.com/api/invoiceitems/list).
|
|
422
478
|
|
|
423
479
|
### Refund and dispute processing costs
|
|
424
480
|
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import type Stripe from "stripe";
|
|
2
|
+
import type { RecoveryGroup, RecoveryScope } from "./costRecovery.js";
|
|
3
|
+
export type RecoveryInvoiceOptions = RecoveryScope & {
|
|
4
|
+
groupKey: string;
|
|
5
|
+
};
|
|
6
|
+
/** One immutable item per sealed group. Host serializes provider operations per group. */
|
|
7
|
+
export declare function attachRecoveryInvoice(stripe: Stripe, group: RecoveryGroup | null, opts: RecoveryInvoiceOptions, bind: (invoiceItemId: string) => Promise<RecoveryGroup>, create?: boolean): Promise<{
|
|
8
|
+
group: RecoveryGroup;
|
|
9
|
+
invoiceItemId: string;
|
|
10
|
+
invoiceStatus: Stripe.Invoice.Status | null;
|
|
11
|
+
}>;
|
|
12
|
+
/** Refuse ambiguous cash/credit or multi-payment allocations instead of inventing economics. */
|
|
13
|
+
export declare function readInvoiceFunding(stripe: Stripe, group: RecoveryGroup): Promise<{
|
|
14
|
+
status: "not_ready";
|
|
15
|
+
paymentIntentId: string;
|
|
16
|
+
reason: import("./index.js").ProcessingCostNotReadyReason;
|
|
17
|
+
} | {
|
|
18
|
+
status: "ready";
|
|
19
|
+
paymentIntentId: string;
|
|
20
|
+
chargeId: string;
|
|
21
|
+
currency: string;
|
|
22
|
+
gross: number;
|
|
23
|
+
metadata: Record<string, string>;
|
|
24
|
+
processingFee: number;
|
|
25
|
+
refundFeeAdjustment: number;
|
|
26
|
+
disputeFeeAdjustment: number;
|
|
27
|
+
netFees: number;
|
|
28
|
+
refundedPrincipal: number;
|
|
29
|
+
disputedPrincipal: number;
|
|
30
|
+
principalReturned: number;
|
|
31
|
+
refunds: import("./index.js").ProcessingCostRecord[];
|
|
32
|
+
disputes: import("./index.js").ProcessingCostRecord[];
|
|
33
|
+
transactions: import("./index.js").ProcessingCostTransaction[];
|
|
34
|
+
} | {
|
|
35
|
+
status: "not_ready";
|
|
36
|
+
reason: "invoice_funding_allocation_required";
|
|
37
|
+
}>;
|
|
38
|
+
//# sourceMappingURL=costRecovery-invoices.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"costRecovery-invoices.d.ts","sourceRoot":"","sources":["../../src/client/costRecovery-invoices.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AACjC,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACtE,MAAM,MAAM,sBAAsB,GAAG,aAAa,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC;AAK1E,0FAA0F;AAC1F,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,aAAa,GAAG,IAAI,EAC3B,IAAI,EAAE,sBAAsB,EAC5B,IAAI,EAAE,CAAC,aAAa,EAAE,MAAM,KAAK,OAAO,CAAC,aAAa,CAAC,EACvD,MAAM,UAAO;;;;GAmFd;AAED,gGAAgG;AAChG,wBAAsB,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa;;;;;;;;;;;;;;;;;;;;;;YA8B/D,WAAW;YACX,qCAAqC;GAYlD"}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
import { getProcessingCostContext } from "./settlement/processingCosts.js";
|
|
2
|
+
const marker = "bsRecoveryGroup";
|
|
3
|
+
const id = (value) => typeof value === "string" ? value : value?.id;
|
|
4
|
+
/** One immutable item per sealed group. Host serializes provider operations per group. */
|
|
5
|
+
export async function attachRecoveryInvoice(stripe, group, opts, bind, create = true) {
|
|
6
|
+
if (!group ||
|
|
7
|
+
group.groupKey !== opts.groupKey ||
|
|
8
|
+
group.sourceKind !== "invoice" ||
|
|
9
|
+
group.accountId !== opts.accountId ||
|
|
10
|
+
group.scopeKey !== opts.scopeKey ||
|
|
11
|
+
group.currency !== opts.currency)
|
|
12
|
+
throw new Error("Recovery invoice scope does not match the authorized group.");
|
|
13
|
+
if (group.status === "open" ||
|
|
14
|
+
(create && ["released", "releasing"].includes(group.status)))
|
|
15
|
+
throw new Error("Invoice recovery group must be sealed and active.");
|
|
16
|
+
const invoice = await stripe.invoices.retrieve(group.sourceId);
|
|
17
|
+
if (invoice.id !== group.sourceId ||
|
|
18
|
+
invoice.customer_account !== group.accountId)
|
|
19
|
+
throw new Error("Recovery invoice ownership does not match.");
|
|
20
|
+
if (invoice.currency !== group.currency)
|
|
21
|
+
throw new Error("Recovery invoice currency does not match.");
|
|
22
|
+
let found;
|
|
23
|
+
for await (const item of stripe.invoiceItems.list({
|
|
24
|
+
invoice: invoice.id,
|
|
25
|
+
limit: 100,
|
|
26
|
+
})) {
|
|
27
|
+
if (item.metadata?.[marker] !== group._id)
|
|
28
|
+
continue;
|
|
29
|
+
if (found)
|
|
30
|
+
throw new Error("Duplicate recovery invoice items require reconciliation.");
|
|
31
|
+
if (id(item.invoice) !== invoice.id ||
|
|
32
|
+
item.customer_account !== group.accountId ||
|
|
33
|
+
item.currency !== group.currency ||
|
|
34
|
+
item.amount !== group.amount ||
|
|
35
|
+
item.discountable ||
|
|
36
|
+
(group.invoiceItemId && group.invoiceItemId !== item.id))
|
|
37
|
+
throw new Error("Recovery invoice item economics or identity do not match.");
|
|
38
|
+
found = item;
|
|
39
|
+
}
|
|
40
|
+
if (!found) {
|
|
41
|
+
if (group.invoiceItemId)
|
|
42
|
+
throw new Error("Bound recovery invoice item is missing; reconcile before retrying.");
|
|
43
|
+
if (!create)
|
|
44
|
+
throw new Error("Recovery invoice item is missing; no collection can be confirmed.");
|
|
45
|
+
if (group.status !== "sealed")
|
|
46
|
+
throw new Error("New recovery items require a sealed, uncompleted group.");
|
|
47
|
+
if (invoice.status !== "draft")
|
|
48
|
+
throw new Error("New recovery items require a draft invoice.");
|
|
49
|
+
found = await stripe.invoiceItems.create({
|
|
50
|
+
invoice: invoice.id,
|
|
51
|
+
customer_account: group.accountId,
|
|
52
|
+
currency: group.currency,
|
|
53
|
+
amount: group.amount,
|
|
54
|
+
discountable: false,
|
|
55
|
+
description: "Refund and dispute cost adjustment",
|
|
56
|
+
metadata: { [marker]: group._id },
|
|
57
|
+
}, { idempotencyKey: `better-stripe:recovery:${group._id}` });
|
|
58
|
+
}
|
|
59
|
+
const bound = group.invoiceItemId === found.id ? group : await bind(found.id);
|
|
60
|
+
return {
|
|
61
|
+
group: bound,
|
|
62
|
+
invoiceItemId: found.id,
|
|
63
|
+
invoiceStatus: invoice.status,
|
|
64
|
+
};
|
|
65
|
+
}
|
|
66
|
+
/** Refuse ambiguous cash/credit or multi-payment allocations instead of inventing economics. */
|
|
67
|
+
export async function readInvoiceFunding(stripe, group) {
|
|
68
|
+
const invoice = await stripe.invoices.retrieve(group.sourceId);
|
|
69
|
+
if (invoice.customer_account !== group.accountId ||
|
|
70
|
+
invoice.currency !== group.currency ||
|
|
71
|
+
invoice.status !== "paid")
|
|
72
|
+
throw new Error("Invoice funding ownership, currency or paid state does not match.");
|
|
73
|
+
const payments = [];
|
|
74
|
+
for await (const payment of stripe.invoicePayments.list({
|
|
75
|
+
invoice: group.sourceId,
|
|
76
|
+
limit: 100,
|
|
77
|
+
})) {
|
|
78
|
+
if (id(payment.invoice) !== group.sourceId ||
|
|
79
|
+
payment.currency !== group.currency)
|
|
80
|
+
throw new Error("Invoice payment identity or currency does not match.");
|
|
81
|
+
if (payment.status === "paid")
|
|
82
|
+
payments.push(payment);
|
|
83
|
+
}
|
|
84
|
+
const payment = payments[0];
|
|
85
|
+
if (payments.length !== 1 ||
|
|
86
|
+
payment?.payment.type !== "payment_intent" ||
|
|
87
|
+
!payment.payment.payment_intent ||
|
|
88
|
+
payment.amount_paid !== invoice.amount_paid)
|
|
89
|
+
return {
|
|
90
|
+
status: "not_ready",
|
|
91
|
+
reason: "invoice_funding_allocation_required",
|
|
92
|
+
};
|
|
93
|
+
const cost = await getProcessingCostContext(stripe, {
|
|
94
|
+
paymentIntentId: id(payment.payment.payment_intent),
|
|
95
|
+
});
|
|
96
|
+
if (cost.status === "not_ready")
|
|
97
|
+
return cost;
|
|
98
|
+
if (cost.currency !== group.currency || cost.gross !== invoice.amount_paid)
|
|
99
|
+
return {
|
|
100
|
+
status: "not_ready",
|
|
101
|
+
reason: "invoice_funding_allocation_required",
|
|
102
|
+
};
|
|
103
|
+
return cost;
|
|
104
|
+
}
|
|
105
|
+
//# sourceMappingURL=costRecovery-invoices.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"costRecovery-invoices.js","sourceRoot":"","sources":["../../src/client/costRecovery-invoices.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type Stripe from "stripe";
|
|
1
2
|
import type { Component, RunCtx } from "./helpers.js";
|
|
2
3
|
export type RecoveryScope = {
|
|
3
4
|
accountId: string;
|
|
@@ -47,6 +48,12 @@ export type RecoveryGroup = RecoveryGroupOptions & {
|
|
|
47
48
|
_creationTime: number;
|
|
48
49
|
amount: number;
|
|
49
50
|
pendingOperations: number;
|
|
51
|
+
invoiceItemId?: string;
|
|
52
|
+
invoiceFunding?: {
|
|
53
|
+
sourceChargeId: string;
|
|
54
|
+
sourceGross: number;
|
|
55
|
+
sourceProcessingFee: number;
|
|
56
|
+
};
|
|
50
57
|
status: "open" | "sealed" | "collecting" | "releasing" | "collected" | "released";
|
|
51
58
|
};
|
|
52
59
|
export type RecoveryReservation = {
|
|
@@ -63,12 +70,46 @@ export type RecoveryReservation = {
|
|
|
63
70
|
}[];
|
|
64
71
|
status: "reserved" | "collected" | "released" | "empty";
|
|
65
72
|
};
|
|
66
|
-
/**
|
|
73
|
+
/** Host authorizes policy and scope. Provider methods verify invoice outcomes. */
|
|
67
74
|
export declare class CostRecoveryClient {
|
|
68
75
|
private readonly component;
|
|
69
|
-
|
|
76
|
+
private readonly provider?;
|
|
77
|
+
constructor(component: Component, provider?: (() => Stripe) | undefined);
|
|
70
78
|
private mutate;
|
|
71
79
|
private query;
|
|
80
|
+
/** Host authorizes the account, scope and invoice group; call from an action. */
|
|
81
|
+
attachInvoice(ctx: RunCtx, opts: RecoveryScope & {
|
|
82
|
+
groupKey: string;
|
|
83
|
+
}): Promise<{
|
|
84
|
+
group: RecoveryGroup;
|
|
85
|
+
invoiceItemId: string;
|
|
86
|
+
invoiceStatus: Stripe.Invoice.Status | null;
|
|
87
|
+
}>;
|
|
88
|
+
/** Re-read Stripe; keep unpaid items reserved. Repeat until isDone after terminal outcomes. */
|
|
89
|
+
reconcileInvoice(ctx: RunCtx, opts: RecoveryScope & {
|
|
90
|
+
groupKey: string;
|
|
91
|
+
releaseUncollectible?: boolean;
|
|
92
|
+
}): Promise<{
|
|
93
|
+
isDone: boolean;
|
|
94
|
+
group: RecoveryGroup;
|
|
95
|
+
invoiceItemId: string;
|
|
96
|
+
invoiceStatus: Stripe.Invoice.Status | null;
|
|
97
|
+
}>;
|
|
98
|
+
/** Reconcile a returned funding charge without changing the original cost claims. */
|
|
99
|
+
rollbackInvoice(ctx: RunCtx, opts: RecoveryScope & {
|
|
100
|
+
groupKey: string;
|
|
101
|
+
revision: number;
|
|
102
|
+
}): Promise<{
|
|
103
|
+
status: "not_ready";
|
|
104
|
+
paymentIntentId: string;
|
|
105
|
+
reason: import("./index.js").ProcessingCostNotReadyReason;
|
|
106
|
+
} | {
|
|
107
|
+
status: "ready";
|
|
108
|
+
claim: RecoveryClaim;
|
|
109
|
+
} | {
|
|
110
|
+
status: "not_ready";
|
|
111
|
+
reason: "invoice_funding_allocation_required";
|
|
112
|
+
}>;
|
|
72
113
|
recordClaim(ctx: RunCtx, opts: RecoveryObservation): Promise<RecoveryClaim>;
|
|
73
114
|
reserve(ctx: RunCtx, opts: RecoveryGroupOptions & {
|
|
74
115
|
operationKey: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"costRecovery.d.ts","sourceRoot":"","sources":["../../src/client/costRecovery.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAGtD,MAAM,MAAM,aAAa,GAAG;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AACF,MAAM,MAAM,mBAAmB,GAAG,aAAa,GAAG;IAChD,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AACF,MAAM,MAAM,aAAa,GAAG,mBAAmB,GAAG;IAChD,GAAG,EAAE,MAAM,CAAC;IACZ,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,UAAU,GAAG,UAAU,GAAG,MAAM,CAAC;CACxC,CAAC;AACF,MAAM,MAAM,eAAe,GAAG,aAAa,GAAG;IAC5C,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AACF,MAAM,MAAM,oBAAoB,GAAG,aAAa,GAAG;IACjD,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;CACnB,GAAG,CACE;IACE,UAAU,EAAE,YAAY,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,mBAAmB,EAAE,MAAM,CAAC;CAC7B,GACD;IACE,UAAU,EAAE,SAAS,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B,CACJ,CAAC;AACJ,MAAM,MAAM,aAAa,GAAG,oBAAoB,GAAG;IACjD,GAAG,EAAE,MAAM,CAAC;IACZ,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,iBAAiB,EAAE,MAAM,CAAC;IAC1B,MAAM,EACJ,MAAM,GAAG,QAAQ,GAAG,YAAY,GAAG,WAAW,GAAG,WAAW,GAAG,UAAU,CAAC;CAC7E,CAAC;AACF,MAAM,MAAM,mBAAmB,GAAG;IAChC,GAAG,EAAE,MAAM,CAAC;IACZ,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACrE,MAAM,EAAE,UAAU,GAAG,WAAW,GAAG,UAAU,GAAG,OAAO,CAAC;CACzD,CAAC;AACF,
|
|
1
|
+
{"version":3,"file":"costRecovery.d.ts","sourceRoot":"","sources":["../../src/client/costRecovery.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,13 @@
|
|
|
1
|
+
import { readInvoiceFunding, attachRecoveryInvoice, } from "./costRecovery-invoices.js";
|
|
1
2
|
import { runMutationOrThrow } from "./helpers.js";
|
|
2
3
|
import { componentRef } from "./webhooks/helpers.js";
|
|
3
|
-
/**
|
|
4
|
+
/** Host authorizes policy and scope. Provider methods verify invoice outcomes. */
|
|
4
5
|
export class CostRecoveryClient {
|
|
5
6
|
component;
|
|
6
|
-
|
|
7
|
+
provider;
|
|
8
|
+
constructor(component, provider) {
|
|
7
9
|
this.component = component;
|
|
10
|
+
this.provider = provider;
|
|
8
11
|
}
|
|
9
12
|
async mutate(ctx, path, args) {
|
|
10
13
|
return (await runMutationOrThrow(ctx, componentRef(this.component, `costRecovery/${path}`), args));
|
|
@@ -12,6 +15,70 @@ export class CostRecoveryClient {
|
|
|
12
15
|
async query(ctx, path, args) {
|
|
13
16
|
return (await ctx.runQuery(componentRef(this.component, `costRecovery/queries/${path}`), args));
|
|
14
17
|
}
|
|
18
|
+
/** Host authorizes the account, scope and invoice group; call from an action. */
|
|
19
|
+
async attachInvoice(ctx, opts) {
|
|
20
|
+
if (!this.provider)
|
|
21
|
+
throw new Error("Invoice recovery requires a Stripe client.");
|
|
22
|
+
const group = await this.getGroup(ctx, { groupKey: opts.groupKey });
|
|
23
|
+
return attachRecoveryInvoice(this.provider(), group, opts, (invoiceItemId) => this.mutate(ctx, "mutations/bindInvoiceItem", {
|
|
24
|
+
groupKey: opts.groupKey,
|
|
25
|
+
invoiceItemId,
|
|
26
|
+
}));
|
|
27
|
+
}
|
|
28
|
+
/** Re-read Stripe; keep unpaid items reserved. Repeat until isDone after terminal outcomes. */
|
|
29
|
+
async reconcileInvoice(ctx, opts) {
|
|
30
|
+
if (!this.provider)
|
|
31
|
+
throw new Error("Invoice recovery requires a Stripe client.");
|
|
32
|
+
const group = await this.getGroup(ctx, { groupKey: opts.groupKey });
|
|
33
|
+
const receipt = await attachRecoveryInvoice(this.provider(), group, opts, (invoiceItemId) => this.mutate(ctx, "mutations/bindInvoiceItem", {
|
|
34
|
+
groupKey: opts.groupKey,
|
|
35
|
+
invoiceItemId,
|
|
36
|
+
}), false);
|
|
37
|
+
const outcome = receipt.invoiceStatus === "paid"
|
|
38
|
+
? "collect"
|
|
39
|
+
: receipt.invoiceStatus === "void" ||
|
|
40
|
+
(receipt.invoiceStatus === "uncollectible" &&
|
|
41
|
+
opts.releaseUncollectible === true)
|
|
42
|
+
? "release"
|
|
43
|
+
: null;
|
|
44
|
+
if (!outcome)
|
|
45
|
+
return { ...receipt, isDone: false };
|
|
46
|
+
return {
|
|
47
|
+
...receipt,
|
|
48
|
+
...(await this.finish(ctx, { groupKey: opts.groupKey, outcome })),
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
/** Reconcile a returned funding charge without changing the original cost claims. */
|
|
52
|
+
async rollbackInvoice(ctx, opts) {
|
|
53
|
+
if (!this.provider)
|
|
54
|
+
throw new Error("Invoice recovery requires a Stripe client.");
|
|
55
|
+
const stripe = this.provider();
|
|
56
|
+
const group = await this.getGroup(ctx, { groupKey: opts.groupKey });
|
|
57
|
+
const receipt = await attachRecoveryInvoice(stripe, group, opts, (invoiceItemId) => this.mutate(ctx, "mutations/bindInvoiceItem", {
|
|
58
|
+
groupKey: opts.groupKey,
|
|
59
|
+
invoiceItemId,
|
|
60
|
+
}), false);
|
|
61
|
+
if (receipt.group.status !== "collected" ||
|
|
62
|
+
receipt.invoiceStatus !== "paid")
|
|
63
|
+
throw new Error("Invoice rollback requires verified collection.");
|
|
64
|
+
const cost = await readInvoiceFunding(stripe, receipt.group);
|
|
65
|
+
if (cost.status === "not_ready")
|
|
66
|
+
return cost;
|
|
67
|
+
await this.mutate(ctx, "mutations/bindInvoiceFunding", {
|
|
68
|
+
groupKey: opts.groupKey,
|
|
69
|
+
sourceChargeId: cost.chargeId,
|
|
70
|
+
sourceGross: cost.gross,
|
|
71
|
+
sourceProcessingFee: cost.processingFee,
|
|
72
|
+
});
|
|
73
|
+
return {
|
|
74
|
+
status: "ready",
|
|
75
|
+
claim: await this.rollback(ctx, {
|
|
76
|
+
groupKey: opts.groupKey,
|
|
77
|
+
returnedPrincipal: cost.principalReturned,
|
|
78
|
+
revision: opts.revision,
|
|
79
|
+
}),
|
|
80
|
+
};
|
|
81
|
+
}
|
|
15
82
|
recordClaim(ctx, opts) {
|
|
16
83
|
return this.mutate(ctx, "mutations/record", opts);
|
|
17
84
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"costRecovery.js","sourceRoot":"","sources":["../../src/client/costRecovery.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"costRecovery.js","sourceRoot":"","sources":["../../src/client/costRecovery.ts"],"names":[],"mappings":"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"}
|
package/dist/client/index.js
CHANGED
|
@@ -501,7 +501,7 @@ export class BetterStripe {
|
|
|
501
501
|
return providerReads.getCouponFromStripe(this.stripe(), opts);
|
|
502
502
|
}
|
|
503
503
|
get costRecovery() {
|
|
504
|
-
return new CostRecoveryClient(this.component);
|
|
504
|
+
return new CostRecoveryClient(this.component, () => this.stripe());
|
|
505
505
|
}
|
|
506
506
|
async getProcessingCostContext(_ctx, opts) {
|
|
507
507
|
return processingCostsImpl.getProcessingCostContext(this.stripe(), opts);
|
package/dist/client/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/client/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/client/index.ts"],"names":[],"mappings":"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"}
|