@fantastic.dev/better-stripe 0.20.0 → 0.21.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 (62) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/README.md +28 -1
  3. package/dist/client/connect/payoutReceipt.d.ts +53 -0
  4. package/dist/client/connect/payoutReceipt.d.ts.map +1 -0
  5. package/dist/client/connect/payoutReceipt.js +185 -0
  6. package/dist/client/connect/payoutReceipt.js.map +1 -0
  7. package/dist/client/connect/payoutReconciliation.d.ts +38 -0
  8. package/dist/client/connect/payoutReconciliation.d.ts.map +1 -0
  9. package/dist/client/connect/payoutReconciliation.js +110 -0
  10. package/dist/client/connect/payoutReconciliation.js.map +1 -0
  11. package/dist/client/payoutPolicy.d.ts +6 -0
  12. package/dist/client/payoutPolicy.d.ts.map +1 -1
  13. package/dist/client/payoutPolicy.js +8 -0
  14. package/dist/client/payoutPolicy.js.map +1 -1
  15. package/dist/component/_generated/component.d.ts +39 -0
  16. package/dist/component/_generated/component.d.ts.map +1 -1
  17. package/dist/component/earnings/triggers.d.ts +50 -2
  18. package/dist/component/earnings/triggers.d.ts.map +1 -1
  19. package/dist/component/payoutRelease/allocation.d.ts +1 -0
  20. package/dist/component/payoutRelease/allocation.d.ts.map +1 -1
  21. package/dist/component/payoutRelease/allocation.js +3 -0
  22. package/dist/component/payoutRelease/allocation.js.map +1 -1
  23. package/dist/component/payoutRelease/fees.d.ts +22 -0
  24. package/dist/component/payoutRelease/fees.d.ts.map +1 -0
  25. package/dist/component/payoutRelease/fees.js +73 -0
  26. package/dist/component/payoutRelease/fees.js.map +1 -0
  27. package/dist/component/payoutRelease/helpers.d.ts +4 -0
  28. package/dist/component/payoutRelease/helpers.d.ts.map +1 -1
  29. package/dist/component/payoutRelease/mutations.d.ts +23 -0
  30. package/dist/component/payoutRelease/mutations.d.ts.map +1 -1
  31. package/dist/component/payoutRelease/mutations.js +17 -0
  32. package/dist/component/payoutRelease/mutations.js.map +1 -1
  33. package/dist/component/payoutRelease/queries.d.ts +16 -0
  34. package/dist/component/payoutRelease/queries.d.ts.map +1 -1
  35. package/dist/component/payoutRelease/queries.js +10 -0
  36. package/dist/component/payoutRelease/queries.js.map +1 -1
  37. package/dist/component/payoutRelease/schema.d.ts +38 -2
  38. package/dist/component/payoutRelease/schema.d.ts.map +1 -1
  39. package/dist/component/payoutRelease/schema.js +11 -0
  40. package/dist/component/payoutRelease/schema.js.map +1 -1
  41. package/dist/component/schema.d.ts +25 -1
  42. package/dist/component/schema.js +2 -1
  43. package/dist/component/schema.js.map +1 -1
  44. package/docs/accounts-v2-preview.md +39 -1
  45. package/docs/react-workflows.md +31 -0
  46. package/docs/settlement.md +74 -3
  47. package/package.json +1 -1
  48. package/src/client/connect/payoutAllocation.test.ts +36 -3
  49. package/src/client/connect/payoutReceipt.test.ts +312 -0
  50. package/src/client/connect/payoutReceipt.ts +287 -0
  51. package/src/client/connect/payoutReconciliation.test.ts +385 -0
  52. package/src/client/connect/payoutReconciliation.ts +174 -0
  53. package/src/client/payoutPolicy.ts +16 -0
  54. package/src/component/_generated/api.ts +2 -0
  55. package/src/component/_generated/component.ts +38 -0
  56. package/src/component/payout-fees.test.ts +224 -0
  57. package/src/component/payoutRelease/allocation.ts +6 -0
  58. package/src/component/payoutRelease/fees.ts +93 -0
  59. package/src/component/payoutRelease/mutations.ts +17 -0
  60. package/src/component/payoutRelease/queries.ts +11 -0
  61. package/src/component/payoutRelease/schema.ts +12 -0
  62. package/src/component/schema.ts +2 -0
package/CHANGELOG.md CHANGED
@@ -14,6 +14,18 @@
14
14
  - Remove internal tracker references from public documentation and add a
15
15
  regression check that prevents their reintroduction.
16
16
 
17
+ ## [0.21.0](https://github.com/FantasticDevHQ/better-stripe/compare/v0.20.1...v0.21.0) (2026-10-15)
18
+
19
+ ### Features
20
+
21
+ - **payouts:** reconcile verified payout outcomes and fees ([#187](https://github.com/FantasticDevHQ/better-stripe/issues/187)) ([7f14edb](https://github.com/FantasticDevHQ/better-stripe/commit/7f14edb93dcc2c7808f1e3e3f3a8dbe2ff84ad3d))
22
+
23
+ ## [0.20.1](https://github.com/FantasticDevHQ/better-stripe/compare/v0.20.0...v0.20.1) (2026-10-15)
24
+
25
+ ### Documentation
26
+
27
+ - record live saved-card verification and sandbox setup ([#178](https://github.com/FantasticDevHQ/better-stripe/issues/178)) ([18d8b30](https://github.com/FantasticDevHQ/better-stripe/commit/18d8b30cd739c90e68508bd4d119297dc219da5c))
28
+
17
29
  ## [0.20.0](https://github.com/FantasticDevHQ/better-stripe/compare/v0.19.0...v0.20.0) (2026-10-15)
18
30
 
19
31
  ### Features
package/README.md CHANGED
@@ -42,6 +42,9 @@ deadline-expiry API. See [policy setup and limits](docs/settlement.md#recipient-
42
42
  A [recipient funding reader](docs/settlement.md#verified-recipient-funding-receipts)
43
43
  verifies original and reversal receipts, maturity, and exact settlement amounts;
44
44
  received credit is kept distinct from still-unpaid entitlement.
45
+ A [payout receipt and reconciliation API](docs/settlement.md#verified-payout-receipts-and-reconciliation)
46
+ verifies actual bank-payout debits and returns, adopts an attempted claim's
47
+ provider outcome, and books its net payout fees once.
45
48
  The component also has an internal transactional claim ledger for reservations
46
49
  and paid allocations. Automatic combined release and adoption of existing
47
50
  balances still require the separate release boundary; schedule controls and
@@ -49,7 +52,7 @@ claim primitives alone do not enforce a minimum.
49
52
 
50
53
  ## Status
51
54
 
52
- **Version**: `0.20.0` <!-- x-release-please-version --> (pre-1.0). API may change between minor versions until 1.0.
55
+ **Version**: `0.21.0` <!-- x-release-please-version --> (pre-1.0). API may change between minor versions until 1.0.
53
56
 
54
57
  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.
55
58
 
@@ -131,6 +134,13 @@ existing integration to this API version.
131
134
 
132
135
  The component ships committed Convex codegen output at `src/component/_generated/{api,component,dataModel,server}.ts` — consumers reach the bindings via the `./_generated/component` subpath export. The example app also commits its own codegen at `example/convex/_generated/`. Running `pnpm dev` (which wraps `convex dev`) regenerates these automatically when the schema or function definitions change, but only against the live dev deployment and only while the dev server is watching.
133
136
 
137
+ The example resolves the workspace package through `dist/`. After changing
138
+ component source, regenerate library bindings with `pnpm codegen:lib`, run
139
+ `pnpm build`, then deploy the rebuilt component from the example directory with
140
+ `pnpm exec convex dev --once`. Run `pnpm codegen:example` afterward. Code generation
141
+ alone does not prove that a newly added function is mounted; invoke a representative
142
+ query or action against the development deployment before running financial tests.
143
+
134
144
  If you add, remove, or rename a query/mutation/action on a branch without the dev server watching — or after a rebase — regenerate explicitly before committing:
135
145
 
136
146
  ```bash
@@ -1649,6 +1659,23 @@ Creation and browser confirmation are not settlement proof. Customer-account
1649
1659
  operations require Accounts v2 support in the sandbox or merchant account; the
1650
1660
  [customer preview guide](docs/accounts-v2-preview.md) explains eligibility.
1651
1661
 
1662
+ #### Live sandbox verification, 2026-10-15
1663
+
1664
+ The public intent APIs and `SaveCard` passed real Stripe test-mode verification
1665
+ at commit `332d49c`, merged in [PR #166](https://github.com/FantasticDevHQ/better-stripe/pull/166).
1666
+ Browser 3DS failure, retry on the same SetupIntent, and successful authentication
1667
+ passed. A card saved for `off_session` use then succeeded on a later PaymentIntent;
1668
+ all successful test payments were refunded. Provider checks also covered customer
1669
+ ownership, redisplay permission, idempotent retries and declines.
1670
+
1671
+ The initial `non_connect_platform_accounts_v2_access_blocked` error was resolved
1672
+ by enabling Connect in the intended Connect test sandbox. The browser flow used
1673
+ `2026-09-30.endive`; separate API checks also passed on `2026-09-30.preview`.
1674
+ This does not establish customer-only preview eligibility for another account.
1675
+ See the [sandbox setup findings](docs/accounts-v2-preview.md#connect-sandbox-setup-findings-2026-10-15),
1676
+ [authentication and reuse results](docs/react-workflows.md#live-authentication-and-reuse-results-2026-10-15),
1677
+ and [uploaded screenshots and provider records](https://github.com/FantasticDevHQ/better-stripe/pull/166#issuecomment-6185124292).
1678
+
1652
1679
  ## Component history and currency summaries
1653
1680
 
1654
1681
  See the [read contract guide](docs/read-contracts.md) for reactive product, price and payout
@@ -0,0 +1,53 @@
1
+ import type Stripe from "stripe";
2
+ import type { PayoutStatus } from "../../component/connect/validators.js";
3
+ export type RecipientPayoutReceiptOptions = {
4
+ accountId: string;
5
+ stripePayoutId: string;
6
+ /** Required when adopting a provider payout into a previously attempted claim. */
7
+ operationKey?: string;
8
+ };
9
+ export type PayoutReceiptTransaction = {
10
+ id: string;
11
+ amount: number;
12
+ fee: number;
13
+ net: number;
14
+ currency: string;
15
+ status: "available" | "pending";
16
+ created: number;
17
+ availableOn: number;
18
+ type: string;
19
+ };
20
+ export type RecipientPayoutReceipt = {
21
+ status: "not_ready";
22
+ accountId: string;
23
+ stripePayoutId: string;
24
+ reason: "debit_unavailable" | "debit_pending" | "return_unavailable" | "return_pending" | "provider_changed" | "reversal_allocation_required" | "currency_allocation_required";
25
+ } | {
26
+ status: "ready";
27
+ accountId: string;
28
+ stripePayoutId: string;
29
+ operationKey?: string;
30
+ amount: number;
31
+ currency: string;
32
+ providerStatus: PayoutStatus;
33
+ automatic: boolean;
34
+ method: string;
35
+ type: string;
36
+ sourceType: string;
37
+ destinationId: string;
38
+ created: number;
39
+ arrivalDate: number;
40
+ debit: PayoutReceiptTransaction;
41
+ credit?: PayoutReceiptTransaction;
42
+ returnedPrincipal: number;
43
+ returnedNet: number;
44
+ observedAt: number;
45
+ };
46
+ /**
47
+ * Read-only provider receipts, not unpaid entitlement or authorization to release
48
+ * a reservation. Fees remain separate from principal and must be accounted for
49
+ * by the payout/recovery ledger. Manual payout receipts do not identify the
50
+ * original transfers that funded them. Host authorizes access to this account.
51
+ */
52
+ export declare function getRecipientPayoutReceipt(stripe: Stripe, options: RecipientPayoutReceiptOptions): Promise<RecipientPayoutReceipt>;
53
+ //# sourceMappingURL=payoutReceipt.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"payoutReceipt.d.ts","sourceRoot":"","sources":["../../../src/client/connect/payoutReceipt.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AACjC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAC1E,MAAM,MAAM,6BAA6B,GAAG;IAC1C,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,kFAAkF;IAClF,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,CAAC;AACF,MAAM,MAAM,wBAAwB,GAAG;IACrC,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,WAAW,GAAG,SAAS,CAAC;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AACF,MAAM,MAAM,sBAAsB,GAC9B;IACE,MAAM,EAAE,WAAW,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EACF,mBAAmB,GACnB,eAAe,GACf,oBAAoB,GACpB,gBAAgB,GAChB,kBAAkB,GAClB,8BAA8B,GAC9B,8BAA8B,CAAC;CACpC,GACD;IACE,MAAM,EAAE,OAAO,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,YAAY,CAAC;IAC7B,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,wBAAwB,CAAC;IAChC,MAAM,CAAC,EAAE,wBAAwB,CAAC;IAClC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAqFN;;;;;GAKG;AACH,wBAAsB,yBAAyB,CAC7C,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,6BAA6B,GACrC,OAAO,CAAC,sBAAsB,CAAC,CA2IjC"}
@@ -0,0 +1,185 @@
1
+ function id(value) {
2
+ return typeof value === "string"
3
+ ? value
4
+ : value &&
5
+ typeof value === "object" &&
6
+ "id" in value &&
7
+ typeof value.id === "string"
8
+ ? value.id
9
+ : undefined;
10
+ }
11
+ function safeInteger(value) {
12
+ if (!Number.isSafeInteger(value))
13
+ throw new Error("Payout receipt requires safe integer amounts and timestamps.");
14
+ return value;
15
+ }
16
+ function timestamp(value) {
17
+ if (safeInteger(value) < 0)
18
+ throw new Error("Payout receipt timestamp is invalid.");
19
+ return value;
20
+ }
21
+ function currency(value) {
22
+ if (value.length !== 3 || !/^[a-z]{3}$/.test(value))
23
+ throw new Error("Payout receipt currency is invalid.");
24
+ }
25
+ function fingerprint(p) {
26
+ return JSON.stringify([
27
+ p.id,
28
+ p.amount,
29
+ p.currency,
30
+ p.status,
31
+ p.automatic,
32
+ p.method,
33
+ p.type,
34
+ p.source_type,
35
+ id(p.destination),
36
+ id(p.balance_transaction),
37
+ id(p.failure_balance_transaction),
38
+ id(p.reversed_by),
39
+ p.created,
40
+ p.arrival_date,
41
+ p.metadata?.bsPayoutClaim,
42
+ ]);
43
+ }
44
+ function transaction(t, expectedId, payoutId, amount, types) {
45
+ if (t.id !== expectedId ||
46
+ id(t.source) !== payoutId ||
47
+ t.amount !== amount ||
48
+ !types.includes(t.type))
49
+ throw new Error("Payout transaction receipt identity or principal does not match.");
50
+ safeInteger(t.amount);
51
+ safeInteger(t.fee);
52
+ safeInteger(t.net);
53
+ if (safeInteger(t.amount - t.fee) !== t.net)
54
+ throw new Error("Payout transaction receipt net amount does not match.");
55
+ if (!["available", "pending"].includes(t.status) ||
56
+ ("balance_type" in t && t.balance_type !== "payments"))
57
+ throw new Error("Payout transaction receipt balance is unsupported.");
58
+ currency(t.currency);
59
+ return {
60
+ id: t.id,
61
+ amount: t.amount,
62
+ fee: t.fee,
63
+ net: t.net,
64
+ currency: t.currency,
65
+ status: t.status,
66
+ created: timestamp(t.created),
67
+ availableOn: timestamp(t.available_on),
68
+ type: t.type,
69
+ };
70
+ }
71
+ /**
72
+ * Read-only provider receipts, not unpaid entitlement or authorization to release
73
+ * a reservation. Fees remain separate from principal and must be accounted for
74
+ * by the payout/recovery ledger. Manual payout receipts do not identify the
75
+ * original transfers that funded them. Host authorizes access to this account.
76
+ */
77
+ export async function getRecipientPayoutReceipt(stripe, options) {
78
+ const scope = {
79
+ accountId: options.accountId,
80
+ stripePayoutId: options.stripePayoutId,
81
+ };
82
+ if (!/^acct_\w+$/.test(scope.accountId) ||
83
+ scope.accountId.trim() !== scope.accountId ||
84
+ scope.accountId.length > 80 ||
85
+ !/^po_\w+$/.test(scope.stripePayoutId) ||
86
+ scope.stripePayoutId.trim() !== scope.stripePayoutId ||
87
+ scope.stripePayoutId.length > 100)
88
+ throw new Error("Invalid recipient payout identity.");
89
+ if (options.operationKey !== undefined &&
90
+ (!options.operationKey.trim() ||
91
+ options.operationKey.length > 180 ||
92
+ /[\r\n]/.test(options.operationKey)))
93
+ throw new Error("Invalid payout claim identity.");
94
+ const request = { stripeAccount: scope.accountId };
95
+ const readPayout = () => stripe.payouts.retrieve(scope.stripePayoutId, {}, request);
96
+ const payout = await readPayout();
97
+ if (payout.id !== scope.stripePayoutId)
98
+ throw new Error("Provider payout identity does not match.");
99
+ if (safeInteger(payout.amount) <= 0)
100
+ throw new Error("Payout receipt principal is invalid.");
101
+ currency(payout.currency);
102
+ timestamp(payout.created);
103
+ timestamp(payout.arrival_date);
104
+ if (!["pending", "in_transit", "paid", "failed", "canceled"].includes(payout.status) ||
105
+ typeof payout.automatic !== "boolean" ||
106
+ !["standard", "instant"].includes(payout.method) ||
107
+ !["bank_account", "card"].includes(payout.type) ||
108
+ !["card", "bank_account", "fpx"].includes(payout.source_type) ||
109
+ !id(payout.destination))
110
+ throw new Error("Payout receipt state is unsupported.");
111
+ if (options.operationKey !== undefined &&
112
+ payout.metadata?.bsPayoutClaim !== options.operationKey)
113
+ throw new Error("Provider payout claim identity does not match.");
114
+ if (options.operationKey !== undefined &&
115
+ (payout.automatic ||
116
+ payout.method !== "standard" ||
117
+ payout.type !== "bank_account"))
118
+ throw new Error("Provider payout does not match a standard manual bank claim.");
119
+ if (payout.reversed_by != null)
120
+ return {
121
+ status: "not_ready",
122
+ ...scope,
123
+ reason: "reversal_allocation_required",
124
+ };
125
+ const debitId = id(payout.balance_transaction);
126
+ if (!debitId)
127
+ return { status: "not_ready", ...scope, reason: "debit_unavailable" };
128
+ const debit = transaction(await stripe.balanceTransactions.retrieve(debitId, {}, request), debitId, payout.id, -payout.amount, ["payout"]);
129
+ if (debit.currency !== payout.currency)
130
+ return {
131
+ status: "not_ready",
132
+ ...scope,
133
+ reason: "currency_allocation_required",
134
+ };
135
+ if (debit.status !== "available" ||
136
+ debit.availableOn > Math.floor(Date.now() / 1000))
137
+ return { status: "not_ready", ...scope, reason: "debit_pending" };
138
+ let credit;
139
+ if (payout.status === "failed" || payout.status === "canceled") {
140
+ const creditId = id(payout.failure_balance_transaction);
141
+ if (!creditId)
142
+ return { status: "not_ready", ...scope, reason: "return_unavailable" };
143
+ if (creditId === debitId)
144
+ throw new Error("Payout return receipt cannot also be the original debit.");
145
+ credit = transaction(await stripe.balanceTransactions.retrieve(creditId, {}, request), creditId, payout.id, payout.amount, ["payout_failure", "payout_cancel"]);
146
+ if (credit.currency !== payout.currency)
147
+ return {
148
+ status: "not_ready",
149
+ ...scope,
150
+ reason: "currency_allocation_required",
151
+ };
152
+ if (credit.status !== "available" ||
153
+ credit.availableOn > Math.floor(Date.now() / 1000))
154
+ return { status: "not_ready", ...scope, reason: "return_pending" };
155
+ }
156
+ else if (payout.failure_balance_transaction != null) {
157
+ return { status: "not_ready", ...scope, reason: "provider_changed" };
158
+ }
159
+ const verified = await readPayout();
160
+ if (fingerprint(payout) !== fingerprint(verified))
161
+ return { status: "not_ready", ...scope, reason: "provider_changed" };
162
+ return {
163
+ status: "ready",
164
+ ...scope,
165
+ ...(payout.metadata?.bsPayoutClaim
166
+ ? { operationKey: payout.metadata.bsPayoutClaim }
167
+ : {}),
168
+ amount: payout.amount,
169
+ currency: payout.currency,
170
+ providerStatus: payout.status,
171
+ automatic: payout.automatic,
172
+ method: payout.method,
173
+ type: payout.type,
174
+ sourceType: payout.source_type,
175
+ destinationId: id(payout.destination),
176
+ created: payout.created,
177
+ arrivalDate: payout.arrival_date,
178
+ debit,
179
+ ...(credit ? { credit } : {}),
180
+ returnedPrincipal: credit?.amount ?? 0,
181
+ returnedNet: credit?.net ?? 0,
182
+ observedAt: Date.now(),
183
+ };
184
+ }
185
+ //# sourceMappingURL=payoutReceipt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"payoutReceipt.js","sourceRoot":"","sources":["../../../src/client/connect/payoutReceipt.ts"],"names":[],"mappings":"AAsDA,SAAS,EAAE,CAAC,KAAc;IACxB,OAAO,OAAO,KAAK,KAAK,QAAQ;QAC9B,CAAC,CAAC,KAAK;QACP,CAAC,CAAC,KAAK;YACH,OAAO,KAAK,KAAK,QAAQ;YACzB,IAAI,IAAI,KAAK;YACb,OAAO,KAAK,CAAC,EAAE,KAAK,QAAQ;YAC9B,CAAC,CAAC,KAAK,CAAC,EAAE;YACV,CAAC,CAAC,SAAS,CAAC;AAClB,CAAC;AACD,SAAS,WAAW,CAAC,KAAa;IAChC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC;QAC9B,MAAM,IAAI,KAAK,CACb,8DAA8D,CAC/D,CAAC;IACJ,OAAO,KAAK,CAAC;AACf,CAAC;AACD,SAAS,SAAS,CAAC,KAAa;IAC9B,IAAI,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;IAC1D,OAAO,KAAK,CAAC;AACf,CAAC;AACD,SAAS,QAAQ,CAAC,KAAa;IAC7B,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC;QACjD,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;AAC3D,CAAC;AACD,SAAS,WAAW,CAAC,CAAgB;IACnC,OAAO,IAAI,CAAC,SAAS,CAAC;QACpB,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,MAAM;QACR,CAAC,CAAC,QAAQ;QACV,CAAC,CAAC,MAAM;QACR,CAAC,CAAC,SAAS;QACX,CAAC,CAAC,MAAM;QACR,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,WAAW;QACb,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC;QACjB,EAAE,CAAC,CAAC,CAAC,mBAAmB,CAAC;QACzB,EAAE,CAAC,CAAC,CAAC,2BAA2B,CAAC;QACjC,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC;QACjB,CAAC,CAAC,OAAO;QACT,CAAC,CAAC,YAAY;QACd,CAAC,CAAC,QAAQ,EAAE,aAAa;KAC1B,CAAC,CAAC;AACL,CAAC;AACD,SAAS,WAAW,CAClB,CAA4B,EAC5B,UAAkB,EAClB,QAAgB,EAChB,MAAc,EACd,KAAe;IAEf,IACE,CAAC,CAAC,EAAE,KAAK,UAAU;QACnB,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,QAAQ;QACzB,CAAC,CAAC,MAAM,KAAK,MAAM;QACnB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;QAEvB,MAAM,IAAI,KAAK,CACb,kEAAkE,CACnE,CAAC;IACJ,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IACtB,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACnB,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACnB,IAAI,WAAW,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG;QACzC,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;IAC3E,IACE,CAAC,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC;QAC5C,CAAC,cAAc,IAAI,CAAC,IAAI,CAAC,CAAC,YAAY,KAAK,UAAU,CAAC;QAEtD,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;IACxE,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IACrB,OAAO;QACL,EAAE,EAAE,CAAC,CAAC,EAAE;QACR,MAAM,EAAE,CAAC,CAAC,MAAM;QAChB,GAAG,EAAE,CAAC,CAAC,GAAG;QACV,GAAG,EAAE,CAAC,CAAC,GAAG;QACV,QAAQ,EAAE,CAAC,CAAC,QAAQ;QACpB,MAAM,EAAE,CAAC,CAAC,MAAiC;QAC3C,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC;QAC7B,WAAW,EAAE,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC;QACtC,IAAI,EAAE,CAAC,CAAC,IAAI;KACb,CAAC;AACJ,CAAC;AACD;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,MAAc,EACd,OAAsC;IAEtC,MAAM,KAAK,GAAG;QACZ,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,cAAc,EAAE,OAAO,CAAC,cAAc;KACvC,CAAC;IACF,IACE,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC;QACnC,KAAK,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,KAAK,CAAC,SAAS;QAC1C,KAAK,CAAC,SAAS,CAAC,MAAM,GAAG,EAAE;QAC3B,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;QACtC,KAAK,CAAC,cAAc,CAAC,IAAI,EAAE,KAAK,KAAK,CAAC,cAAc;QACpD,KAAK,CAAC,cAAc,CAAC,MAAM,GAAG,GAAG;QAEjC,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;IACxD,IACE,OAAO,CAAC,YAAY,KAAK,SAAS;QAClC,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE;YAC3B,OAAO,CAAC,YAAY,CAAC,MAAM,GAAG,GAAG;YACjC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;QAEtC,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;IACpD,MAAM,OAAO,GAAG,EAAE,aAAa,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC;IACnD,MAAM,UAAU,GAAG,GAAG,EAAE,CACtB,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;IAC7D,MAAM,MAAM,GAAG,MAAM,UAAU,EAAE,CAAC;IAClC,IAAI,MAAM,CAAC,EAAE,KAAK,KAAK,CAAC,cAAc;QACpC,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;IAC9D,IAAI,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC;QACjC,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;IAC1D,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC1B,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC1B,SAAS,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IAC/B,IACE,CAAC,CAAC,SAAS,EAAE,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC,QAAQ,CAC/D,MAAM,CAAC,MAAM,CACd;QACD,OAAO,MAAM,CAAC,SAAS,KAAK,SAAS;QACrC,CAAC,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC;QAChD,CAAC,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC;QAC/C,CAAC,CAAC,MAAM,EAAE,cAAc,EAAE,KAAK,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC;QAC7D,CAAC,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC;QAEvB,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;IAC1D,IACE,OAAO,CAAC,YAAY,KAAK,SAAS;QAClC,MAAM,CAAC,QAAQ,EAAE,aAAa,KAAK,OAAO,CAAC,YAAY;QAEvD,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;IACpE,IACE,OAAO,CAAC,YAAY,KAAK,SAAS;QAClC,CAAC,MAAM,CAAC,SAAS;YACf,MAAM,CAAC,MAAM,KAAK,UAAU;YAC5B,MAAM,CAAC,IAAI,KAAK,cAAc,CAAC;QAEjC,MAAM,IAAI,KAAK,CACb,8DAA8D,CAC/D,CAAC;IACJ,IAAI,MAAM,CAAC,WAAW,IAAI,IAAI;QAC5B,OAAO;YACL,MAAM,EAAE,WAAW;YACnB,GAAG,KAAK;YACR,MAAM,EAAE,8BAA8B;SACvC,CAAC;IACJ,MAAM,OAAO,GAAG,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC;IAC/C,IAAI,CAAC,OAAO;QACV,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,mBAAmB,EAAE,CAAC;IACxE,MAAM,KAAK,GAAG,WAAW,CACvB,MAAM,MAAM,CAAC,mBAAmB,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,EAAE,OAAO,CAAC,EAC/D,OAAO,EACP,MAAM,CAAC,EAAE,EACT,CAAC,MAAM,CAAC,MAAM,EACd,CAAC,QAAQ,CAAC,CACX,CAAC;IACF,IAAI,KAAK,CAAC,QAAQ,KAAK,MAAM,CAAC,QAAQ;QACpC,OAAO;YACL,MAAM,EAAE,WAAW;YACnB,GAAG,KAAK;YACR,MAAM,EAAE,8BAA8B;SACvC,CAAC;IACJ,IACE,KAAK,CAAC,MAAM,KAAK,WAAW;QAC5B,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;QAEjD,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,CAAC;IACpE,IAAI,MAA4C,CAAC;IACjD,IAAI,MAAM,CAAC,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;QAC/D,MAAM,QAAQ,GAAG,EAAE,CAAC,MAAM,CAAC,2BAA2B,CAAC,CAAC;QACxD,IAAI,CAAC,QAAQ;YACX,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,oBAAoB,EAAE,CAAC;QACzE,IAAI,QAAQ,KAAK,OAAO;YACtB,MAAM,IAAI,KAAK,CACb,0DAA0D,CAC3D,CAAC;QACJ,MAAM,GAAG,WAAW,CAClB,MAAM,MAAM,CAAC,mBAAmB,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,EAAE,OAAO,CAAC,EAChE,QAAQ,EACR,MAAM,CAAC,EAAE,EACT,MAAM,CAAC,MAAM,EACb,CAAC,gBAAgB,EAAE,eAAe,CAAC,CACpC,CAAC;QACF,IAAI,MAAM,CAAC,QAAQ,KAAK,MAAM,CAAC,QAAQ;YACrC,OAAO;gBACL,MAAM,EAAE,WAAW;gBACnB,GAAG,KAAK;gBACR,MAAM,EAAE,8BAA8B;aACvC,CAAC;QACJ,IACE,MAAM,CAAC,MAAM,KAAK,WAAW;YAC7B,MAAM,CAAC,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;YAElD,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC;IACvE,CAAC;SAAM,IAAI,MAAM,CAAC,2BAA2B,IAAI,IAAI,EAAE,CAAC;QACtD,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,kBAAkB,EAAE,CAAC;IACvE,CAAC;IACD,MAAM,QAAQ,GAAG,MAAM,UAAU,EAAE,CAAC;IACpC,IAAI,WAAW,CAAC,MAAM,CAAC,KAAK,WAAW,CAAC,QAAQ,CAAC;QAC/C,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,kBAAkB,EAAE,CAAC;IACvE,OAAO;QACL,MAAM,EAAE,OAAO;QACf,GAAG,KAAK;QACR,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,aAAa;YAChC,CAAC,CAAC,EAAE,YAAY,EAAE,MAAM,CAAC,QAAQ,CAAC,aAAa,EAAE;YACjD,CAAC,CAAC,EAAE,CAAC;QACP,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,cAAc,EAAE,MAAM,CAAC,MAAsB;QAC7C,SAAS,EAAE,MAAM,CAAC,SAAS;QAC3B,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,UAAU,EAAE,MAAM,CAAC,WAAW;QAC9B,aAAa,EAAE,EAAE,CAAC,MAAM,CAAC,WAAW,CAAE;QACtC,OAAO,EAAE,MAAM,CAAC,OAAO;QACvB,WAAW,EAAE,MAAM,CAAC,YAAY;QAChC,KAAK;QACL,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC7B,iBAAiB,EAAE,MAAM,EAAE,MAAM,IAAI,CAAC;QACtC,WAAW,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;QAC7B,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE;KACvB,CAAC;AACJ,CAAC"}
@@ -0,0 +1,38 @@
1
+ import type Stripe from "stripe";
2
+ import type { Infer } from "convex/values";
3
+ import type { claimDoc } from "../../component/payoutRelease/schema.js";
4
+ import type { Component, RunCtx } from "../helpers.js";
5
+ import { type RecipientPayoutReceipt } from "./payoutReceipt.js";
6
+ export type PayoutReconciliationOptions = {
7
+ accountId: string;
8
+ ownerKey: string;
9
+ operationKey: string;
10
+ stripePayoutId?: string;
11
+ /** Complete discovery only. Exhausting this budget never adopts a partial match. */
12
+ maxPages?: number;
13
+ };
14
+ type Claim = Infer<typeof claimDoc>;
15
+ export type PayoutReconciliation = {
16
+ status: "terminal";
17
+ claim: Claim;
18
+ } | {
19
+ status: "updated";
20
+ claim: Claim;
21
+ receipt: Extract<RecipientPayoutReceipt, {
22
+ status: "ready";
23
+ }>;
24
+ } | {
25
+ status: "held";
26
+ reason: "not_found" | "not_attempted" | "payout_unidentified" | "multiple_matches" | "history_incomplete" | "provider_changed" | "fee_allocation_required" | "source_allocation_required" | Extract<RecipientPayoutReceipt, {
27
+ status: "not_ready";
28
+ }>["reason"];
29
+ };
30
+ /**
31
+ * Recover provider outcomes without creating or retrying a payout. Host must
32
+ * authorize account/owner/operation. A complete metadata match plus scoped
33
+ * receipts is required for adoption; no match never proves money did not move.
34
+ * Fees and principal are persisted together in the component transaction.
35
+ */
36
+ export declare function reconcileRecipientPayout(stripe: Stripe, component: Component, ctx: RunCtx, options: PayoutReconciliationOptions): Promise<PayoutReconciliation>;
37
+ export {};
38
+ //# sourceMappingURL=payoutReconciliation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"payoutReconciliation.d.ts","sourceRoot":"","sources":["../../../src/client/connect/payoutReconciliation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AACjC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yCAAyC,CAAC;AAGxE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAGvD,OAAO,EAEL,KAAK,sBAAsB,EAC5B,MAAM,oBAAoB,CAAC;AAC5B,MAAM,MAAM,2BAA2B,GAAG;IACxC,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,oFAAoF;IACpF,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AACF,KAAK,KAAK,GAAG,KAAK,CAAC,OAAO,QAAQ,CAAC,CAAC;AACpC,MAAM,MAAM,oBAAoB,GAC5B;IAAE,MAAM,EAAE,UAAU,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAAE,GACpC;IACE,MAAM,EAAE,SAAS,CAAC;IAClB,KAAK,EAAE,KAAK,CAAC;IACb,OAAO,EAAE,OAAO,CAAC,sBAAsB,EAAE;QAAE,MAAM,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;CAC/D,GACD;IACE,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EACF,WAAW,GACX,eAAe,GACf,qBAAqB,GACrB,kBAAkB,GAClB,oBAAoB,GACpB,kBAAkB,GAClB,yBAAyB,GACzB,4BAA4B,GAC5B,OAAO,CAAC,sBAAsB,EAAE;QAAE,MAAM,EAAE,WAAW,CAAA;KAAE,CAAC,CAAC,QAAQ,CAAC,CAAC;CACxE,CAAC;AA2CN;;;;;GAKG;AACH,wBAAsB,wBAAwB,CAC5C,MAAM,EAAE,MAAM,EACd,SAAS,EAAE,SAAS,EACpB,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,2BAA2B,GACnC,OAAO,CAAC,oBAAoB,CAAC,CA+E/B"}
@@ -0,0 +1,110 @@
1
+ import { validateIdentity } from "../../component/payoutRelease/helpers.js";
2
+ import { addSummaryAmounts } from "../../component/earnings/arithmetic.js";
3
+ import { runMutationOrThrow } from "../helpers.js";
4
+ import { componentRef } from "../webhooks/helpers.js";
5
+ import { getRecipientPayoutReceipt, } from "./payoutReceipt.js";
6
+ async function discover(stripe, opts, claim, maxPages) {
7
+ const request = { stripeAccount: opts.accountId };
8
+ const created = {
9
+ gte: Math.max(0, Math.floor(claim.attemptedAt / 1000) - 60),
10
+ };
11
+ const matches = new Set();
12
+ let cursor;
13
+ let firstId;
14
+ for (let page = 0; page < maxPages; page++) {
15
+ const result = await stripe.payouts.list({ limit: 100, created, ...(cursor ? { starting_after: cursor } : {}) }, request);
16
+ if (page === 0)
17
+ firstId = result.data[0]?.id;
18
+ for (const payout of result.data)
19
+ if (payout.metadata?.bsPayoutClaim === opts.operationKey)
20
+ matches.add(payout.id);
21
+ if (!result.has_more) {
22
+ const head = await stripe.payouts.list({ limit: 1, created }, request);
23
+ if (head.data[0]?.id !== firstId)
24
+ return { status: "held", reason: "provider_changed" };
25
+ if (matches.size > 1)
26
+ return { status: "held", reason: "multiple_matches" };
27
+ if (!matches.size)
28
+ return { status: "held", reason: "payout_unidentified" };
29
+ return { status: "found", stripePayoutId: [...matches][0] };
30
+ }
31
+ const next = result.data[result.data.length - 1]?.id;
32
+ if (!next || next === cursor)
33
+ return { status: "held", reason: "history_incomplete" };
34
+ cursor = next;
35
+ }
36
+ return { status: "held", reason: "history_incomplete" };
37
+ }
38
+ /**
39
+ * Recover provider outcomes without creating or retrying a payout. Host must
40
+ * authorize account/owner/operation. A complete metadata match plus scoped
41
+ * receipts is required for adoption; no match never proves money did not move.
42
+ * Fees and principal are persisted together in the component transaction.
43
+ */
44
+ export async function reconcileRecipientPayout(stripe, component, ctx, options) {
45
+ validateIdentity(options);
46
+ const maxPages = options.maxPages ?? 10;
47
+ if (!Number.isInteger(maxPages) || maxPages < 1 || maxPages > 100)
48
+ throw new Error("Payout discovery page budget must be between 1 and 100.");
49
+ if (!ctx.runMutation)
50
+ throw new Error("Payout reconciliation requires a Convex ctx with runMutation.");
51
+ const identity = {
52
+ accountId: options.accountId,
53
+ ownerKey: options.ownerKey,
54
+ operationKey: options.operationKey,
55
+ };
56
+ const claim = (await ctx.runQuery(componentRef(component, "payoutRelease/queries/get"), identity));
57
+ if (!claim)
58
+ return { status: "held", reason: "not_found" };
59
+ if (claim.status === "rejected" || claim.status === "canceled")
60
+ return { status: "terminal", claim };
61
+ if (claim.attemptedAt === undefined)
62
+ return { status: "held", reason: "not_attempted" };
63
+ if (claim.stripePayoutId &&
64
+ options.stripePayoutId &&
65
+ claim.stripePayoutId !== options.stripePayoutId)
66
+ throw new Error("Payout receipt identity conflicts with the durable claim.");
67
+ let payoutId = claim.stripePayoutId ?? options.stripePayoutId;
68
+ if (!payoutId) {
69
+ const result = await discover(stripe, options, claim, maxPages);
70
+ if (result.status === "held")
71
+ return result;
72
+ payoutId = result.stripePayoutId;
73
+ }
74
+ const receipt = await getRecipientPayoutReceipt(stripe, {
75
+ accountId: options.accountId,
76
+ stripePayoutId: payoutId,
77
+ operationKey: options.operationKey,
78
+ });
79
+ if (receipt.status !== "ready")
80
+ return { status: "held", reason: receipt.reason };
81
+ if (receipt.amount !== claim.amount || receipt.currency !== claim.currency)
82
+ throw new Error("Payout receipt money does not match the durable claim.");
83
+ if (receipt.created * 1000 < claim.attemptedAt - 60000 ||
84
+ receipt.created * 1000 > Date.now() + 60000)
85
+ throw new Error("Payout receipt predates its durable attempt or has an invalid creation time.");
86
+ // Current claims use the default card source balance. Other rails need a
87
+ // persisted allocation contract before a provider receipt can be adopted.
88
+ if (receipt.sourceType !== "card")
89
+ return { status: "held", reason: "source_allocation_required" };
90
+ const fee = addSummaryAmounts(receipt.debit.fee, receipt.credit?.fee ?? 0);
91
+ if (fee < 0)
92
+ return { status: "held", reason: "fee_allocation_required" };
93
+ const saved = (await runMutationOrThrow(ctx, componentRef(component, "payoutRelease/mutations/recordOutcome"), {
94
+ ...identity,
95
+ stripePayoutId: receipt.stripePayoutId,
96
+ amount: receipt.amount,
97
+ currency: receipt.currency,
98
+ providerStatus: receipt.providerStatus,
99
+ debitTransactionId: receipt.debit.id,
100
+ debitFee: receipt.debit.fee,
101
+ ...(receipt.credit
102
+ ? {
103
+ returnTransactionId: receipt.credit.id,
104
+ returnFee: receipt.credit.fee,
105
+ }
106
+ : {}),
107
+ }));
108
+ return { status: "updated", claim: saved, receipt };
109
+ }
110
+ //# sourceMappingURL=payoutReconciliation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"payoutReconciliation.js","sourceRoot":"","sources":["../../../src/client/connect/payoutReconciliation.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,7 @@
1
+ import { type PayoutReconciliationOptions } from "./connect/payoutReconciliation.js";
2
+ export type * from "./connect/payoutReconciliation.js";
3
+ import { type RecipientPayoutReceiptOptions } from "./connect/payoutReceipt.js";
4
+ export type * from "./connect/payoutReceipt.js";
1
5
  import { type TransferReceiptOptions } from "./connect/transferReceipt.js";
2
6
  export type * from "./connect/transferReceipt.js";
3
7
  import type Stripe from "stripe";
@@ -27,6 +31,8 @@ export declare class PayoutPolicyClient {
27
31
  private readonly component;
28
32
  private readonly provider;
29
33
  constructor(component: Component, provider: () => Stripe);
34
+ reconcilePayout(ctx: RunCtx, opts: PayoutReconciliationOptions): Promise<import("./payoutPolicy.js").PayoutReconciliation>;
35
+ payoutReceipt(opts: RecipientPayoutReceiptOptions): Promise<import("./payoutPolicy.js").RecipientPayoutReceipt>;
30
36
  transferReceipt(ctx: RunCtx, opts: TransferReceiptOptions): Promise<import("./payoutPolicy.js").TransferFundingReceipt>;
31
37
  get(ctx: RunCtx, scope: PayoutPolicyScope): Promise<PayoutPolicy | null>;
32
38
  operation(ctx: RunCtx, args: PayoutPolicyScope & {
@@ -1 +1 @@
1
- {"version":3,"file":"payoutPolicy.d.ts","sourceRoot":"","sources":["../../src/client/payoutPolicy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"payoutPolicy.d.ts","sourceRoot":"","sources":["../../src/client/payoutPolicy.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,5 @@
1
+ import { reconcileRecipientPayout, } from "./connect/payoutReconciliation.js";
2
+ import { getRecipientPayoutReceipt, } from "./connect/payoutReceipt.js";
1
3
  import { getTransferFundingReceipt, } from "./connect/transferReceipt.js";
2
4
  import { runMutationOrThrow } from "./helpers.js";
3
5
  import { componentRef } from "./webhooks/helpers.js";
@@ -34,6 +36,12 @@ export class PayoutPolicyClient {
34
36
  this.component = component;
35
37
  this.provider = provider;
36
38
  }
39
+ reconcilePayout(ctx, opts) {
40
+ return reconcileRecipientPayout(this.provider(), this.component, ctx, opts);
41
+ }
42
+ payoutReceipt(opts) {
43
+ return getRecipientPayoutReceipt(this.provider(), opts);
44
+ }
37
45
  transferReceipt(ctx, opts) {
38
46
  return getTransferFundingReceipt(this.provider(), this.component, ctx, opts);
39
47
  }
@@ -1 +1 @@
1
- {"version":3,"file":"payoutPolicy.js","sourceRoot":"","sources":["../../src/client/payoutPolicy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"payoutPolicy.js","sourceRoot":"","sources":["../../src/client/payoutPolicy.ts"],"names":[],"mappings":"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"}