@fantastic.dev/better-stripe 0.9.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.
Files changed (128) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/MIGRATION.md +12 -0
  3. package/README.md +29 -1
  4. package/dist/client/billing/checkout.d.ts +1 -0
  5. package/dist/client/billing/checkout.d.ts.map +1 -1
  6. package/dist/client/billing/checkout.js +5 -1
  7. package/dist/client/billing/checkout.js.map +1 -1
  8. package/dist/client/billing/providerReads.d.ts +18 -0
  9. package/dist/client/billing/providerReads.d.ts.map +1 -0
  10. package/dist/client/billing/providerReads.js +15 -0
  11. package/dist/client/billing/providerReads.js.map +1 -0
  12. package/dist/client/billing/subscriptions.d.ts +1 -1
  13. package/dist/client/billing/subscriptions.d.ts.map +1 -1
  14. package/dist/client/billing/subscriptions.js.map +1 -1
  15. package/dist/client/connect/payoutSnapshot.d.ts +28 -0
  16. package/dist/client/connect/payoutSnapshot.d.ts.map +1 -0
  17. package/dist/client/connect/payoutSnapshot.js +81 -0
  18. package/dist/client/connect/payoutSnapshot.js.map +1 -0
  19. package/dist/client/connect/transfers.d.ts.map +1 -1
  20. package/dist/client/connect/transfers.js +13 -32
  21. package/dist/client/connect/transfers.js.map +1 -1
  22. package/dist/client/core/accounts.d.ts +12 -23
  23. package/dist/client/core/accounts.d.ts.map +1 -1
  24. package/dist/client/core/accounts.js +5 -1
  25. package/dist/client/core/accounts.js.map +1 -1
  26. package/dist/client/core/idempotency.d.ts +5 -0
  27. package/dist/client/core/idempotency.d.ts.map +1 -0
  28. package/dist/client/core/idempotency.js +10 -0
  29. package/dist/client/core/idempotency.js.map +1 -0
  30. package/dist/client/index.d.ts +31 -25
  31. package/dist/client/index.d.ts.map +1 -1
  32. package/dist/client/index.js +29 -52
  33. package/dist/client/index.js.map +1 -1
  34. package/dist/client/settlement/allocation.d.ts +30 -0
  35. package/dist/client/settlement/allocation.d.ts.map +1 -0
  36. package/dist/client/settlement/allocation.js +71 -0
  37. package/dist/client/settlement/allocation.js.map +1 -0
  38. package/dist/client/settlement/commissions.d.ts +27 -0
  39. package/dist/client/settlement/commissions.d.ts.map +1 -0
  40. package/dist/client/settlement/commissions.js +69 -0
  41. package/dist/client/settlement/commissions.js.map +1 -0
  42. package/dist/client/settlement/execution.d.ts +27 -0
  43. package/dist/client/settlement/execution.d.ts.map +1 -0
  44. package/dist/client/settlement/execution.js +70 -0
  45. package/dist/client/settlement/execution.js.map +1 -0
  46. package/dist/client/settlement/reconciliation.d.ts +10 -0
  47. package/dist/client/settlement/reconciliation.d.ts.map +1 -0
  48. package/dist/client/settlement/reconciliation.js +73 -0
  49. package/dist/client/settlement/reconciliation.js.map +1 -0
  50. package/dist/client/settlement/settleSale.d.ts +21 -0
  51. package/dist/client/settlement/settleSale.d.ts.map +1 -0
  52. package/dist/client/settlement/settleSale.js +27 -0
  53. package/dist/client/settlement/settleSale.js.map +1 -0
  54. package/dist/client/settlement/verifiedSale.d.ts +25 -0
  55. package/dist/client/settlement/verifiedSale.d.ts.map +1 -0
  56. package/dist/client/settlement/verifiedSale.js +100 -0
  57. package/dist/client/settlement/verifiedSale.js.map +1 -0
  58. package/dist/client/webhooks/asyncHooks.d.ts +5 -0
  59. package/dist/client/webhooks/asyncHooks.d.ts.map +1 -0
  60. package/dist/client/webhooks/asyncHooks.js +20 -0
  61. package/dist/client/webhooks/asyncHooks.js.map +1 -0
  62. package/dist/component/_generated/component.d.ts +80 -0
  63. package/dist/component/_generated/component.d.ts.map +1 -1
  64. package/dist/component/schema.d.ts +67 -0
  65. package/dist/component/schema.js +4 -0
  66. package/dist/component/schema.js.map +1 -1
  67. package/dist/component/settlement/mutations.d.ts +47 -0
  68. package/dist/component/settlement/mutations.d.ts.map +1 -0
  69. package/dist/component/settlement/mutations.js +104 -0
  70. package/dist/component/settlement/mutations.js.map +1 -0
  71. package/dist/component/settlement/queries.d.ts +29 -0
  72. package/dist/component/settlement/queries.d.ts.map +1 -0
  73. package/dist/component/settlement/queries.js +35 -0
  74. package/dist/component/settlement/queries.js.map +1 -0
  75. package/dist/component/settlement/schema.d.ts +99 -0
  76. package/dist/component/settlement/schema.d.ts.map +1 -0
  77. package/dist/component/settlement/schema.js +35 -0
  78. package/dist/component/settlement/schema.js.map +1 -0
  79. package/dist/react/workflows/Checkout.d.ts +3 -1
  80. package/dist/react/workflows/Checkout.d.ts.map +1 -1
  81. package/dist/react/workflows/Checkout.js +3 -2
  82. package/dist/react/workflows/Checkout.js.map +1 -1
  83. package/dist/react/workflows/Payouts.d.ts +3 -18
  84. package/dist/react/workflows/Payouts.d.ts.map +1 -1
  85. package/dist/react/workflows/Payouts.js +2 -2
  86. package/dist/react/workflows/Payouts.js.map +1 -1
  87. package/docs/react-workflows.md +5 -2
  88. package/docs/settlement.md +158 -0
  89. package/package.json +2 -1
  90. package/src/client/billing/checkout-idempotency.test.ts +82 -0
  91. package/src/client/billing/checkout.ts +6 -1
  92. package/src/client/billing/providerReads.test.ts +60 -0
  93. package/src/client/billing/providerReads.ts +30 -0
  94. package/src/client/billing/subscriptions.ts +1 -8
  95. package/src/client/connect/payoutSnapshot.test.ts +91 -0
  96. package/src/client/connect/payoutSnapshot.ts +130 -0
  97. package/src/client/connect/transfers.test.ts +15 -4
  98. package/src/client/connect/transfers.ts +13 -42
  99. package/src/client/core/account-idempotency.test.ts +78 -0
  100. package/src/client/core/accounts.ts +18 -25
  101. package/src/client/core/idempotency.test.ts +10 -0
  102. package/src/client/core/idempotency.ts +11 -0
  103. package/src/client/index.ts +84 -103
  104. package/src/client/settlement/allocation.test.ts +98 -0
  105. package/src/client/settlement/allocation.ts +110 -0
  106. package/src/client/settlement/commissions.test.ts +103 -0
  107. package/src/client/settlement/commissions.ts +125 -0
  108. package/src/client/settlement/execution.test.ts +186 -0
  109. package/src/client/settlement/execution.ts +134 -0
  110. package/src/client/settlement/reconciliation.ts +119 -0
  111. package/src/client/settlement/settleSale.ts +59 -0
  112. package/src/client/settlement/verifiedSale.test.ts +139 -0
  113. package/src/client/settlement/verifiedSale.ts +159 -0
  114. package/src/client/webhooks/asyncHooks.ts +38 -0
  115. package/src/client/webhooks/processors.test.ts +9 -9
  116. package/src/component/_generated/api.ts +4 -0
  117. package/src/component/_generated/component.ts +100 -0
  118. package/src/component/schema.ts +8 -0
  119. package/src/component/settlement/mutations.ts +119 -0
  120. package/src/component/settlement/queries.ts +38 -0
  121. package/src/component/settlement/schema.ts +45 -0
  122. package/src/component/settlement-claims.test.ts +77 -0
  123. package/src/react/components/EmbeddedDisputes.render.test.tsx +2 -2
  124. package/src/react/index.payment-element.test.ts +22 -37
  125. package/src/react/workflows/Checkout.test.tsx +30 -0
  126. package/src/react/workflows/Checkout.tsx +10 -3
  127. package/src/react/workflows/Payouts.test.tsx +33 -0
  128. package/src/react/workflows/Payouts.tsx +21 -15
@@ -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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"}
@@ -0,0 +1,30 @@
1
+ import type { SplitTransfer } from "../core/fees.js";
2
+ export type SaleAllocationOptions = {
3
+ gross: number;
4
+ processingFee: number;
5
+ /** Inclusive sale fee, with actual Stripe processing as its floor. */
6
+ feeBasisPoints?: number | null;
7
+ creatorAccountId: string;
8
+ affiliate?: {
9
+ destinationAccountId: string;
10
+ basisPoints?: number;
11
+ fixedAmount?: number;
12
+ };
13
+ collaborators?: {
14
+ destinationAccountId: string;
15
+ basisPoints: number;
16
+ }[];
17
+ };
18
+ export type SaleAllocation = {
19
+ gross: number;
20
+ processingFee: number;
21
+ sellingFee: number;
22
+ platformNet: number;
23
+ affiliateNet: number;
24
+ creatorNet: number;
25
+ collaboratorNet: number;
26
+ transfers: SplitTransfer[];
27
+ };
28
+ /** Pure fee-first allocation. Fixed amounts are minor units of the sale currency. */
29
+ export declare function allocateSale(opts: SaleAllocationOptions): SaleAllocation;
30
+ //# sourceMappingURL=allocation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"allocation.d.ts","sourceRoot":"","sources":["../../../src/client/settlement/allocation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,MAAM,MAAM,qBAAqB,GAAG;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;IACtB,sEAAsE;IACtE,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,gBAAgB,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE;QACV,oBAAoB,EAAE,MAAM,CAAC;QAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,aAAa,CAAC,EAAE;QAAE,oBAAoB,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CACzE,CAAC;AACF,MAAM,MAAM,cAAc,GAAG;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,aAAa,EAAE,CAAC;CAC5B,CAAC;AAeF,qFAAqF;AACrF,wBAAgB,YAAY,CAAC,IAAI,EAAE,qBAAqB,GAAG,cAAc,CAsExE"}
@@ -0,0 +1,71 @@
1
+ const basisPoints = (n) => {
2
+ if (!Number.isSafeInteger(n) || n < 0 || n > 10000)
3
+ throw new Error("Share must be an integer from 0 to 10000 basis points.");
4
+ return n;
5
+ };
6
+ const units = (n) => {
7
+ if (!Number.isSafeInteger(n) || n < 0)
8
+ throw new Error("Amounts must be non-negative safe integer currency units.");
9
+ return n;
10
+ };
11
+ const share = (amount, rate) => Number((BigInt(amount) * BigInt(basisPoints(rate))) / 10000n);
12
+ /** Pure fee-first allocation. Fixed amounts are minor units of the sale currency. */
13
+ export function allocateSale(opts) {
14
+ const gross = units(opts.gross), processingFee = units(opts.processingFee);
15
+ if (processingFee > gross || !opts.creatorAccountId)
16
+ throw new Error("Invalid gross amount, processing fee or creator account.");
17
+ const rate = basisPoints(opts.feeBasisPoints ?? 0);
18
+ const sellingFee = Math.max(processingFee, Number((BigInt(gross) * BigInt(rate) + 5000n) / 10000n));
19
+ const net = gross - sellingFee;
20
+ const affiliate = opts.affiliate;
21
+ if (affiliate &&
22
+ (!affiliate.destinationAccountId ||
23
+ (affiliate.fixedAmount !== undefined &&
24
+ affiliate.basisPoints !== undefined)))
25
+ throw new Error("Choose one affiliate amount or percentage and a destination.");
26
+ const affiliateNet = affiliate
27
+ ? Math.min(net, affiliate.fixedAmount !== undefined
28
+ ? units(affiliate.fixedAmount)
29
+ : share(net, affiliate.basisPoints ?? 0))
30
+ : 0;
31
+ const creatorRemainder = net - affiliateNet;
32
+ const collaborators = opts.collaborators ?? [];
33
+ if (collaborators.reduce((sum, r) => sum + basisPoints(r.basisPoints), 0) >
34
+ 10000)
35
+ throw new Error("Collaborator shares exceed the creator remainder.");
36
+ const seen = new Set();
37
+ const transfers = collaborators.map((r) => {
38
+ if (!r.destinationAccountId || seen.has(r.destinationAccountId))
39
+ throw new Error("Collaborator destinations must be nonempty and unique.");
40
+ seen.add(r.destinationAccountId);
41
+ return {
42
+ destinationAccountId: r.destinationAccountId,
43
+ role: "other",
44
+ amount: share(creatorRemainder, r.basisPoints),
45
+ };
46
+ });
47
+ const collaboratorNet = transfers.reduce((sum, r) => sum + r.amount, 0);
48
+ const creatorNet = creatorRemainder - collaboratorNet;
49
+ transfers.unshift({
50
+ destinationAccountId: opts.creatorAccountId,
51
+ role: "store",
52
+ amount: creatorNet,
53
+ });
54
+ if (affiliate)
55
+ transfers.push({
56
+ destinationAccountId: affiliate.destinationAccountId,
57
+ role: "affiliate",
58
+ amount: affiliateNet,
59
+ });
60
+ return {
61
+ gross,
62
+ processingFee,
63
+ sellingFee,
64
+ platformNet: sellingFee - processingFee,
65
+ affiliateNet,
66
+ creatorNet,
67
+ collaboratorNet,
68
+ transfers,
69
+ };
70
+ }
71
+ //# sourceMappingURL=allocation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"allocation.js","sourceRoot":"","sources":["../../../src/client/settlement/allocation.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ import type Stripe from "stripe";
2
+ import type { Component, RunCtx } from "../helpers.js";
3
+ export type CommissionTerm = "forever" | "one_time";
4
+ export type CommissionSelectionOptions = {
5
+ subscriptionId: string;
6
+ invoiceId: string;
7
+ affiliateAccountId?: string;
8
+ term?: CommissionTerm;
9
+ maxHistoryPages?: number;
10
+ };
11
+ export type CommissionDecision = {
12
+ eligible: boolean;
13
+ term: CommissionTerm;
14
+ firstPaidInvoiceId: string;
15
+ claimKey: string;
16
+ replay: boolean;
17
+ };
18
+ export type CommissionSelection = ({
19
+ status: "ready";
20
+ } & CommissionDecision) | {
21
+ status: "not_payable";
22
+ eligible: false;
23
+ reason: string;
24
+ };
25
+ /** Durable selection only. Replay returns the same award key; execute through settleSale. */
26
+ export declare function selectCommissionInvoice(stripe: Stripe, component: Component, ctx: RunCtx, opts: CommissionSelectionOptions): Promise<CommissionSelection>;
27
+ //# sourceMappingURL=commissions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"commissions.d.ts","sourceRoot":"","sources":["../../../src/client/settlement/commissions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AACjC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAIvD,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG,UAAU,CAAC;AACpD,MAAM,MAAM,0BAA0B,GAAG;IACvC,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B,CAAC;AACF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE,cAAc,CAAC;IACrB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;CACjB,CAAC;AACF,MAAM,MAAM,mBAAmB,GAC3B,CAAC;IAAE,MAAM,EAAE,OAAO,CAAA;CAAE,GAAG,kBAAkB,CAAC,GAC1C;IAAE,MAAM,EAAE,aAAa,CAAC;IAAC,QAAQ,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAO/D,6FAA6F;AAC7F,wBAAsB,uBAAuB,CAC3C,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,SAAS,EACpB,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,0BAA0B,GAC/B,OAAO,CAAC,mBAAmB,CAAC,CAyF9B"}
@@ -0,0 +1,69 @@
1
+ import { runMutationOrThrow } from "../helpers.js";
2
+ import { componentRef } from "../webhooks/helpers.js";
3
+ import { isBetterStripeError, throwStripeError } from "../errors.js";
4
+ /** Durable selection only. Replay returns the same award key; execute through settleSale. */
5
+ export async function selectCommissionInvoice(stripe, component, ctx, opts) {
6
+ try {
7
+ const invoice = await stripe.invoices.retrieve(opts.invoiceId);
8
+ const pointer = invoice.parent?.subscription_details?.subscription;
9
+ if ((typeof pointer === "string" ? pointer : pointer?.id) !==
10
+ opts.subscriptionId)
11
+ throwStripeError("INVALID_CONFIGURATION", "Invoice does not belong to this subscription.");
12
+ if (invoice.status !== "paid" || invoice.amount_paid <= 0)
13
+ return {
14
+ status: "not_payable",
15
+ eligible: false,
16
+ reason: "invoice_not_paid_or_zero",
17
+ };
18
+ const stored = (await ctx.runQuery(componentRef(component, "settlement/queries/getCommissionTerm"), { subscriptionId: opts.subscriptionId }));
19
+ let firstPaidInvoiceId = stored?.firstPaidInvoiceId ?? invoice.id;
20
+ const term = stored?.term ?? opts.term ?? "forever";
21
+ if (!stored && term === "one_time") {
22
+ const max = opts.maxHistoryPages ?? 100;
23
+ if (!Number.isInteger(max) || max < 1 || max > 1000)
24
+ throwStripeError("INVALID_CONFIGURATION", "Invalid invoice history page bound.");
25
+ let cursor, earliest = Infinity, complete = false;
26
+ for (let i = 0; i < max; i++) {
27
+ const batch = await stripe.invoices.list({
28
+ subscription: opts.subscriptionId,
29
+ status: "paid",
30
+ limit: 100,
31
+ starting_after: cursor,
32
+ });
33
+ for (const row of batch.data)
34
+ if (row.amount_paid > 0) {
35
+ const paid = row.status_transitions.paid_at ?? row.created;
36
+ if (paid < earliest ||
37
+ (paid === earliest && row.id < firstPaidInvoiceId)) {
38
+ earliest = paid;
39
+ firstPaidInvoiceId = row.id;
40
+ }
41
+ }
42
+ if (!batch.has_more) {
43
+ complete = true;
44
+ break;
45
+ }
46
+ const next = batch.data[batch.data.length - 1]?.id;
47
+ if (!next || next === cursor)
48
+ throwStripeError("STRIPE_API_ERROR", "Invoice pagination did not advance.");
49
+ cursor = next;
50
+ }
51
+ if (!complete || !Number.isFinite(earliest))
52
+ throwStripeError("INVALID_CONFIGURATION", "First paid invoice could not be established from complete history.");
53
+ }
54
+ const decision = (await runMutationOrThrow(ctx, componentRef(component, "settlement/mutations/claimCommissionInvoice"), {
55
+ subscriptionId: opts.subscriptionId,
56
+ invoiceId: invoice.id,
57
+ firstPaidInvoiceId,
58
+ affiliateAccountId: opts.affiliateAccountId,
59
+ term,
60
+ }));
61
+ return { status: "ready", ...decision };
62
+ }
63
+ catch (error) {
64
+ if (isBetterStripeError(error))
65
+ throw error;
66
+ throwStripeError("STRIPE_API_ERROR", "Could not select subscription commission invoice.");
67
+ }
68
+ }
69
+ //# sourceMappingURL=commissions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"commissions.js","sourceRoot":"","sources":["../../../src/client/settlement/commissions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ import type Stripe from "stripe";
2
+ import type { SplitTransfer } from "../core/fees.js";
3
+ import type { Component, RunCtx } from "../helpers.js";
4
+ export type ResolvedSettlement = {
5
+ sourceChargeId: string;
6
+ paymentIntentId?: string;
7
+ sourceInvoiceId?: string;
8
+ gross: number;
9
+ currency: string;
10
+ processingFee: number;
11
+ platformNet: number;
12
+ adjustmentAmount?: number;
13
+ transfers: SplitTransfer[];
14
+ paymentId?: string;
15
+ };
16
+ export type SettlementResult = ResolvedSettlement & {
17
+ status: "settled";
18
+ executedTransfers: {
19
+ stripeTransferId: string;
20
+ destinationAccountId: string;
21
+ role: string;
22
+ amount: number;
23
+ }[];
24
+ };
25
+ /** Shared transfer engine for webhook splits and verified, host-resolved allocations. */
26
+ export declare function executeResolvedTransfers(stripe: Stripe, component: Component, ctx: RunCtx, opts: ResolvedSettlement): Promise<SettlementResult>;
27
+ //# sourceMappingURL=execution.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execution.d.ts","sourceRoot":"","sources":["../../../src/client/settlement/execution.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AACjC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAGvD,MAAM,MAAM,kBAAkB,GAAG;IAC/B,cAAc,EAAE,MAAM,CAAC;IACvB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,SAAS,EAAE,aAAa,EAAE,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AACF,MAAM,MAAM,gBAAgB,GAAG,kBAAkB,GAAG;IAClD,MAAM,EAAE,SAAS,CAAC;IAClB,iBAAiB,EAAE;QACjB,gBAAgB,EAAE,MAAM,CAAC;QACzB,oBAAoB,EAAE,MAAM,CAAC;QAC7B,IAAI,EAAE,MAAM,CAAC;QACb,MAAM,EAAE,MAAM,CAAC;KAChB,EAAE,CAAC;CACL,CAAC;AAQF,yFAAyF;AACzF,wBAAsB,wBAAwB,CAC5C,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,SAAS,EACpB,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,kBAAkB,GACvB,OAAO,CAAC,gBAAgB,CAAC,CAyF3B"}
@@ -0,0 +1,70 @@
1
+ import { sourceTransfers, matchingTransfer, recordSettlementTransfer, } from "./reconciliation.js";
2
+ import { runMutationOrThrow } from "../helpers.js";
3
+ import { componentRef } from "../webhooks/helpers.js";
4
+ /** Shared transfer engine for webhook splits and verified, host-resolved allocations. */
5
+ export async function executeResolvedTransfers(stripe, component, ctx, opts) {
6
+ const saved = (await runMutationOrThrow(ctx, componentRef(component, "settlement/mutations/reserveSettlementAllocation"), opts));
7
+ const claim = {
8
+ sourceChargeId: saved.sourceChargeId,
9
+ paymentIntentId: saved.paymentIntentId,
10
+ sourceInvoiceId: saved.sourceInvoiceId,
11
+ gross: saved.gross,
12
+ currency: saved.currency,
13
+ processingFee: saved.processingFee,
14
+ platformNet: saved.platformNet,
15
+ adjustmentAmount: saved.adjustmentAmount,
16
+ transfers: saved.transfers,
17
+ paymentId: saved.paymentId,
18
+ };
19
+ const existing = ((await ctx.runQuery(componentRef(component, "connect/queries/listTransfersByCharge"), { sourceChargeId: claim.sourceChargeId })) ?? []);
20
+ let provider = await sourceTransfers(stripe, claim.sourceChargeId);
21
+ if (claim.transfers.some((leg) => leg.amount > 0 &&
22
+ !existing.some((t) => t.destinationAccountId === leg.destinationAccountId &&
23
+ t.role === leg.role) &&
24
+ !matchingTransfer(provider, claim, leg))) {
25
+ provider = [
26
+ ...new Map([
27
+ ...provider,
28
+ ...(await sourceTransfers(stripe, claim.sourceChargeId, true)),
29
+ ].map((t) => [t.id, t])).values(),
30
+ ];
31
+ }
32
+ const executedTransfers = [];
33
+ for (const leg of claim.transfers) {
34
+ if (leg.amount === 0)
35
+ continue;
36
+ const recorded = existing.find((t) => t.destinationAccountId === leg.destinationAccountId &&
37
+ t.role === leg.role);
38
+ if (recorded &&
39
+ (recorded.amount !== leg.amount || recorded.currency !== claim.currency))
40
+ throw new Error("Recorded transfer conflicts with immutable settlement.");
41
+ let transferId = recorded?.stripeTransferId;
42
+ if (!transferId) {
43
+ const recovered = matchingTransfer(provider, claim, leg);
44
+ const transfer = recovered ??
45
+ (await stripe.transfers.create({
46
+ amount: leg.amount,
47
+ currency: claim.currency,
48
+ destination: leg.destinationAccountId,
49
+ source_transaction: claim.sourceChargeId,
50
+ transfer_group: claim.sourceChargeId,
51
+ metadata: {
52
+ bsRole: leg.role,
53
+ bsSourceCharge: claim.sourceChargeId,
54
+ },
55
+ }, {
56
+ idempotencyKey: `bs_split_${claim.sourceChargeId}_${leg.destinationAccountId}_${leg.role}`,
57
+ }));
58
+ transferId = transfer.id;
59
+ await recordSettlementTransfer(component, ctx, claim, leg, transfer);
60
+ }
61
+ executedTransfers.push({
62
+ stripeTransferId: transferId,
63
+ destinationAccountId: leg.destinationAccountId,
64
+ role: leg.role,
65
+ amount: leg.amount,
66
+ });
67
+ }
68
+ return { ...claim, status: "settled", executedTransfers };
69
+ }
70
+ //# sourceMappingURL=execution.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execution.js","sourceRoot":"","sources":["../../../src/client/settlement/execution.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import type Stripe from "stripe";
2
+ import type { SplitTransfer } from "../core/fees.js";
3
+ import type { Component, RunCtx } from "../helpers.js";
4
+ import type { ResolvedSettlement } from "./execution.js";
5
+ export declare function sourceTransfers(stripe: Stripe, sourceChargeId: string, legacy?: boolean): Promise<Stripe.Transfer[]>;
6
+ export declare function matchingTransfer(provider: Stripe.Transfer[], claim: ResolvedSettlement, leg: SplitTransfer): Stripe.Transfer;
7
+ export declare function recordSettlementTransfer(component: Component, ctx: RunCtx, claim: ResolvedSettlement, leg: SplitTransfer, transfer: Stripe.Transfer): Promise<void>;
8
+ /** Recover provider-success/ledger-failure legs before sizing refunds or disputes. */
9
+ export declare function recoverSettlementTransfers(stripe: Stripe, component: Component, ctx: RunCtx, sourceChargeId: string): Promise<void>;
10
+ //# sourceMappingURL=reconciliation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reconciliation.d.ts","sourceRoot":"","sources":["../../../src/client/settlement/reconciliation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AACjC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAGvD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACzD,wBAAsB,eAAe,CACnC,MAAM,EAAE,MAAM,EACd,cAAc,EAAE,MAAM,EACtB,MAAM,UAAQ,GACb,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAwB5B;AACD,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,EAC3B,KAAK,EAAE,kBAAkB,EACzB,GAAG,EAAE,aAAa,mBAwBnB;AACD,wBAAsB,wBAAwB,CAC5C,SAAS,EAAE,SAAS,EACpB,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,kBAAkB,EACzB,GAAG,EAAE,aAAa,EAClB,QAAQ,EAAE,MAAM,CAAC,QAAQ,iBAkB1B;AACD,sFAAsF;AACtF,wBAAsB,0BAA0B,CAC9C,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,SAAS,EACpB,GAAG,EAAE,MAAM,EACX,cAAc,EAAE,MAAM,iBA0BvB"}
@@ -0,0 +1,73 @@
1
+ import { runMutationOrThrow } from "../helpers.js";
2
+ import { componentRef } from "../webhooks/helpers.js";
3
+ export async function sourceTransfers(stripe, sourceChargeId, legacy = false) {
4
+ const rows = [];
5
+ let cursor;
6
+ const charge = legacy ? await stripe.charges.retrieve(sourceChargeId) : null;
7
+ const created = charge && charge.created <= Math.floor(Date.now() / 1000)
8
+ ? { gte: charge.created }
9
+ : undefined;
10
+ for (let page = 0; page < 100; page++) {
11
+ const batch = await stripe.transfers.list({
12
+ ...(legacy ? { created } : { transfer_group: sourceChargeId }),
13
+ limit: 100,
14
+ starting_after: cursor,
15
+ });
16
+ rows.push(...batch.data);
17
+ if (!batch.has_more)
18
+ return rows;
19
+ const next = batch.data[batch.data.length - 1]?.id;
20
+ if (!next || next === cursor)
21
+ throw new Error("Settlement transfer reconciliation did not advance.");
22
+ cursor = next;
23
+ }
24
+ throw new Error("Settlement transfer reconciliation exceeded its page bound; review before retrying.");
25
+ }
26
+ export function matchingTransfer(provider, claim, leg) {
27
+ const matches = provider.filter((t) => (typeof t.destination === "string"
28
+ ? t.destination
29
+ : t.destination?.id) === leg.destinationAccountId &&
30
+ (t.metadata.bsRole ?? t.metadata.role) === leg.role &&
31
+ (t.metadata.bsSourceCharge ?? t.metadata.storeSaleChargeId) ===
32
+ claim.sourceChargeId);
33
+ if (matches.length > 1 ||
34
+ matches.some((t) => t.amount !== leg.amount ||
35
+ t.currency !== claim.currency ||
36
+ t.source_transaction !== claim.sourceChargeId))
37
+ throw new Error("Provider transfers conflict with claimed settlement; manual review required.");
38
+ return matches[0];
39
+ }
40
+ export async function recordSettlementTransfer(component, ctx, claim, leg, transfer) {
41
+ await runMutationOrThrow(ctx, componentRef(component, "connect/mutations/upsertTransfer"), {
42
+ stripeTransferId: transfer.id,
43
+ sourceChargeId: claim.sourceChargeId,
44
+ sourceInvoiceId: claim.sourceInvoiceId,
45
+ destinationAccountId: leg.destinationAccountId,
46
+ amount: leg.amount,
47
+ currency: claim.currency,
48
+ role: leg.role,
49
+ status: "paid",
50
+ paymentId: claim.paymentId,
51
+ reversedAmount: transfer.amount_reversed ?? 0,
52
+ });
53
+ }
54
+ /** Recover provider-success/ledger-failure legs before sizing refunds or disputes. */
55
+ export async function recoverSettlementTransfers(stripe, component, ctx, sourceChargeId) {
56
+ const claim = (await ctx.runQuery(componentRef(component, "settlement/queries/getSettlementAllocation"), { sourceChargeId }));
57
+ if (!claim || typeof claim.sourceChargeId !== "string")
58
+ return;
59
+ let provider = await sourceTransfers(stripe, sourceChargeId);
60
+ if (claim.transfers.some((leg) => leg.amount > 0 && !matchingTransfer(provider, claim, leg)))
61
+ provider = [
62
+ ...new Map([
63
+ ...provider,
64
+ ...(await sourceTransfers(stripe, sourceChargeId, true)),
65
+ ].map((t) => [t.id, t])).values(),
66
+ ];
67
+ for (const leg of claim.transfers) {
68
+ const transfer = matchingTransfer(provider, claim, leg);
69
+ if (transfer)
70
+ await recordSettlementTransfer(component, ctx, claim, leg, transfer);
71
+ }
72
+ }
73
+ //# sourceMappingURL=reconciliation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reconciliation.js","sourceRoot":"","sources":["../../../src/client/settlement/reconciliation.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ import type Stripe from "stripe";
2
+ import type { SplitTransfer } from "../core/fees.js";
3
+ import type { Component, RunCtx } from "../helpers.js";
4
+ import { getVerifiedSale, type VerifiedSaleOptions } from "./verifiedSale.js";
5
+ import { type SettlementResult } from "./execution.js";
6
+ export type SettleSaleOptions = VerifiedSaleOptions & {
7
+ allocation: {
8
+ gross: number;
9
+ currency: string;
10
+ processingFee: number;
11
+ platformNet: number;
12
+ adjustmentAmount?: number;
13
+ transfers: SplitTransfer[];
14
+ };
15
+ paymentId?: string;
16
+ onSettled?: (result: SettlementResult) => Promise<void>;
17
+ };
18
+ export declare function settleSale(stripe: Stripe, component: Component, ctx: RunCtx, opts: SettleSaleOptions): Promise<SettlementResult | Exclude<Awaited<ReturnType<typeof getVerifiedSale>>, {
19
+ status: "ready";
20
+ }>>;
21
+ //# sourceMappingURL=settleSale.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"settleSale.d.ts","sourceRoot":"","sources":["../../../src/client/settlement/settleSale.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AACjC,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAGvD,OAAO,EAAE,eAAe,EAAE,KAAK,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAC9E,OAAO,EAEL,KAAK,gBAAgB,EACtB,MAAM,gBAAgB,CAAC;AACxB,MAAM,MAAM,iBAAiB,GAAG,mBAAmB,GAAG;IACpD,UAAU,EAAE;QACV,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,EAAE,MAAM,CAAC;QACjB,aAAa,EAAE,MAAM,CAAC;QACtB,WAAW,EAAE,MAAM,CAAC;QACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,SAAS,EAAE,aAAa,EAAE,CAAC;KAC5B,CAAC;IACF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,gBAAgB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACzD,CAAC;AACF,wBAAsB,UAAU,CAC9B,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,SAAS,EACpB,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,iBAAiB,GACtB,OAAO,CACN,gBAAgB,GAChB,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC,EAAE;IAAE,MAAM,EAAE,OAAO,CAAA;CAAE,CAAC,CAC5E,CA4BA"}
@@ -0,0 +1,27 @@
1
+ import { componentRef } from "../webhooks/helpers.js";
2
+ import { throwStripeError } from "../errors.js";
3
+ import { getVerifiedSale } from "./verifiedSale.js";
4
+ import { executeResolvedTransfers, } from "./execution.js";
5
+ export async function settleSale(stripe, component, ctx, opts) {
6
+ const sale = await getVerifiedSale(stripe, opts);
7
+ if (sale.status !== "ready")
8
+ return sale;
9
+ const prior = (await ctx.runQuery(componentRef(component, "settlement/queries/getSettlementAllocation"), {
10
+ sourceChargeId: sale.chargeId,
11
+ }));
12
+ const allocation = prior ?? opts.allocation;
13
+ if (allocation.gross !== sale.gross ||
14
+ allocation.currency !== sale.currency ||
15
+ allocation.processingFee !== sale.processingFee)
16
+ throwStripeError("INVALID_CONFIGURATION", "Allocation must use verified payment currency, gross and actual processing cost.");
17
+ const result = await executeResolvedTransfers(stripe, component, ctx, {
18
+ ...opts.allocation,
19
+ sourceChargeId: sale.chargeId,
20
+ paymentIntentId: sale.paymentIntentId,
21
+ sourceInvoiceId: sale.invoiceId,
22
+ paymentId: opts.paymentId,
23
+ });
24
+ await opts.onSettled?.(result);
25
+ return result;
26
+ }
27
+ //# sourceMappingURL=settleSale.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"settleSale.js","sourceRoot":"","sources":["../../../src/client/settlement/settleSale.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAE,eAAe,EAA4B,MAAM,mBAAmB,CAAC;AAC9E,OAAO,EACL,wBAAwB,GAEzB,MAAM,gBAAgB,CAAC;AAaxB,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,MAAc,EACd,SAAoB,EACpB,GAAW,EACX,IAAuB;IAKvB,MAAM,IAAI,GAAG,MAAM,eAAe,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACjD,IAAI,IAAI,CAAC,MAAM,KAAK,OAAO;QAAE,OAAO,IAAI,CAAC;IACzC,MAAM,KAAK,GAAG,CAAC,MAAM,GAAG,CAAC,QAAQ,CAC/B,YAAY,CAAC,SAAS,EAAE,4CAA4C,CAAC,EACrE;QACE,cAAc,EAAE,IAAI,CAAC,QAAQ;KAC9B,CACF,CAA4B,CAAC;IAC9B,MAAM,UAAU,GAAG,KAAK,IAAI,IAAI,CAAC,UAAU,CAAC;IAC5C,IACE,UAAU,CAAC,KAAK,KAAK,IAAI,CAAC,KAAK;QAC/B,UAAU,CAAC,QAAQ,KAAK,IAAI,CAAC,QAAQ;QACrC,UAAU,CAAC,aAAa,KAAK,IAAI,CAAC,aAAa;QAE/C,gBAAgB,CACd,uBAAuB,EACvB,kFAAkF,CACnF,CAAC;IACJ,MAAM,MAAM,GAAG,MAAM,wBAAwB,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE;QACpE,GAAG,IAAI,CAAC,UAAU;QAClB,cAAc,EAAE,IAAI,CAAC,QAAQ;QAC7B,eAAe,EAAE,IAAI,CAAC,eAAe;QACrC,eAAe,EAAE,IAAI,CAAC,SAAS;QAC/B,SAAS,EAAE,IAAI,CAAC,SAAS;KAC1B,CAAC,CAAC;IACH,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC,CAAC;IAC/B,OAAO,MAAM,CAAC;AAChB,CAAC"}