@mj-biz-apps/orders-server 5.19.0 → 5.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 (51) hide show
  1. package/dist/BillComWebhookExtension.d.ts +46 -0
  2. package/dist/BillComWebhookExtension.d.ts.map +1 -0
  3. package/dist/BillComWebhookExtension.js +220 -0
  4. package/dist/BillComWebhookExtension.js.map +1 -0
  5. package/dist/CheckoutServerExtension.d.ts +13 -1
  6. package/dist/CheckoutServerExtension.d.ts.map +1 -1
  7. package/dist/CheckoutServerExtension.js +56 -4
  8. package/dist/CheckoutServerExtension.js.map +1 -1
  9. package/dist/__tests__/BillComWebhookExtension.test.d.ts +2 -0
  10. package/dist/__tests__/BillComWebhookExtension.test.d.ts.map +1 -0
  11. package/dist/__tests__/BillComWebhookExtension.test.js +166 -0
  12. package/dist/__tests__/BillComWebhookExtension.test.js.map +1 -0
  13. package/dist/__tests__/CheckoutServerExtension.test.js +104 -1
  14. package/dist/__tests__/CheckoutServerExtension.test.js.map +1 -1
  15. package/dist/__tests__/billcom-actions.test.d.ts +2 -0
  16. package/dist/__tests__/billcom-actions.test.d.ts.map +1 -0
  17. package/dist/__tests__/billcom-actions.test.js +89 -0
  18. package/dist/__tests__/billcom-actions.test.js.map +1 -0
  19. package/dist/__tests__/server-extensions-manifest.test.js +6 -0
  20. package/dist/__tests__/server-extensions-manifest.test.js.map +1 -1
  21. package/dist/custom/action-params.d.ts +31 -0
  22. package/dist/custom/action-params.d.ts.map +1 -0
  23. package/dist/custom/action-params.js +69 -0
  24. package/dist/custom/action-params.js.map +1 -0
  25. package/dist/custom/apply-access-override-decision.action.d.ts +22 -0
  26. package/dist/custom/apply-access-override-decision.action.d.ts.map +1 -0
  27. package/dist/custom/apply-access-override-decision.action.js +53 -0
  28. package/dist/custom/apply-access-override-decision.action.js.map +1 -0
  29. package/dist/custom/poll-external-payments.action.d.ts +25 -0
  30. package/dist/custom/poll-external-payments.action.d.ts.map +1 -0
  31. package/dist/custom/poll-external-payments.action.js +98 -0
  32. package/dist/custom/poll-external-payments.action.js.map +1 -0
  33. package/dist/custom/send-document.action.d.ts.map +1 -1
  34. package/dist/custom/send-document.action.js +3 -1
  35. package/dist/custom/send-document.action.js.map +1 -1
  36. package/dist/custom/send-external-invoices.action.d.ts +27 -0
  37. package/dist/custom/send-external-invoices.action.d.ts.map +1 -0
  38. package/dist/custom/send-external-invoices.action.js +92 -0
  39. package/dist/custom/send-external-invoices.action.js.map +1 -0
  40. package/dist/generated/graphql-schemas/__mj_BizAppsOrders.d.ts +714 -0
  41. package/dist/generated/graphql-schemas/__mj_BizAppsOrders.d.ts.map +1 -1
  42. package/dist/generated/graphql-schemas/__mj_BizAppsOrders.js +6963 -3214
  43. package/dist/generated/graphql-schemas/__mj_BizAppsOrders.js.map +1 -1
  44. package/dist/index.d.ts +1 -0
  45. package/dist/index.d.ts.map +1 -1
  46. package/dist/index.js +23 -1
  47. package/dist/index.js.map +1 -1
  48. package/dist/server-extensions-manifest.d.ts.map +1 -1
  49. package/dist/server-extensions-manifest.js +6 -0
  50. package/dist/server-extensions-manifest.js.map +1 -1
  51. package/package.json +10 -4
@@ -0,0 +1,46 @@
1
+ import type { Application } from 'express';
2
+ import { type IMetadataProvider, type UserInfo } from '@memberjunction/core';
3
+ import { BaseServerExtension, type ExtensionHealthResult, type ExtensionInitResult, type ServerExtensionConfig } from '@memberjunction/server-extensions-core';
4
+ export declare class BillComWebhookExtension extends BaseServerExtension {
5
+ Initialize(app: Application, config: ServerExtensionConfig): Promise<ExtensionInitResult>;
6
+ Shutdown(): Promise<void>;
7
+ HealthCheck(): Promise<ExtensionHealthResult>;
8
+ private resolveSystemUser;
9
+ }
10
+ export interface BillComWebhookRequest {
11
+ rawBody: string;
12
+ headers: Record<string, string | undefined>;
13
+ providerId: string;
14
+ }
15
+ /** Transport-agnostic so it can be tested without Express. Exported for that reason. */
16
+ export declare function HandleBillComWebhook(req: BillComWebhookRequest, res: {
17
+ status(code: number): {
18
+ json(body: unknown): unknown;
19
+ };
20
+ }, context: () => {
21
+ provider: IMetadataProvider | undefined;
22
+ user: UserInfo | undefined;
23
+ }, runPoll?: (providerId: string, provider: IMetadataProvider, user: UserInfo) => Promise<void>): Promise<void>;
24
+ /**
25
+ * A NOTIFICATION MUST NOT RECORD CASH THE SCHEDULED JOB IS NOT YET ALLOWED TO RECORD.
26
+ *
27
+ * This route used to call the poll with `Preview: false` outright. Both jobs ship Disabled and in
28
+ * Preview precisely so Finance reads one run before any money moves, and merging this branch is
29
+ * supposed to turn nothing on — but the route is enabled in the server config, so the day somebody
30
+ * registered the Bill.com subscription and set the secret, the first `invoice.updated` event would
31
+ * have captured a real payment and posted Dr Cash / Cr A/R before anyone had approved a preview.
32
+ *
33
+ * So the webhook now follows the job rather than overriding it: it polls only when the scheduled poll
34
+ * job is Active AND out of Preview. Anything else is logged and ignored, because a webhook-driven
35
+ * preview writes nothing and nobody reads its output — the scheduled run is where a preview belongs.
36
+ */
37
+ export declare function PollJobIsLive(job: {
38
+ Status: string | null;
39
+ Configuration: string | null;
40
+ } | null | undefined): {
41
+ Live: boolean;
42
+ Why: string;
43
+ };
44
+ /** Tree-shaking anchor — call from the server bootstrap. */
45
+ export declare function LoadBillComWebhookExtension(): void;
46
+ //# sourceMappingURL=BillComWebhookExtension.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BillComWebhookExtension.d.ts","sourceRoot":"","sources":["../src/BillComWebhookExtension.ts"],"names":[],"mappings":"AA0BA,OAAO,KAAK,EAAE,WAAW,EAAqB,MAAM,SAAS,CAAC;AAC9D,OAAO,EAAiC,KAAK,iBAAiB,EAAE,KAAK,QAAQ,EAAkC,MAAM,sBAAsB,CAAC;AAG5I,OAAO,EAAE,mBAAmB,EAAE,KAAK,qBAAqB,EAAE,KAAK,mBAAmB,EAAE,KAAK,qBAAqB,EAAE,MAAM,wCAAwC,CAAC;AAO/J,qBACa,uBAAwB,SAAQ,mBAAmB;IAC/C,UAAU,CAAC,GAAG,EAAE,WAAW,EAAE,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAmBzF,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAIzB,WAAW,IAAI,OAAO,CAAC,qBAAqB,CAAC;IAO1D,OAAO,CAAC,iBAAiB;CAO5B;AAED,MAAM,WAAW,qBAAqB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC;IAC5C,UAAU,EAAE,MAAM,CAAC;CACtB;AAED,wFAAwF;AACxF,wBAAsB,oBAAoB,CACtC,GAAG,EAAE,qBAAqB,EAC1B,GAAG,EAAE;IAAE,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG;QAAE,IAAI,CAAC,IAAI,EAAE,OAAO,GAAG,OAAO,CAAA;KAAE,CAAA;CAAE,EAC/D,OAAO,EAAE,MAAM;IAAE,QAAQ,EAAE,iBAAiB,GAAG,SAAS,CAAC;IAAC,IAAI,EAAE,QAAQ,GAAG,SAAS,CAAA;CAAE,EACtF,OAAO,GAAE,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,iBAAiB,EAAE,IAAI,EAAE,QAAQ,KAAK,OAAO,CAAC,IAAI,CAAkB,GAC7G,OAAO,CAAC,IAAI,CAAC,CAoCf;AAuCD;;;;;;;;;;;;GAYG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE;IAAE,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GAAG,IAAI,GAAG,SAAS,GAAG;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAK7I;AA0CD,4DAA4D;AAC5D,wBAAgB,2BAA2B,IAAI,IAAI,CAElD"}
@@ -0,0 +1,220 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ /**
8
+ * @fileoverview `OrdersBillComWebhook` — POST /webhooks/billcom/:providerId, mounted before auth.
9
+ *
10
+ * WHAT A BILL.COM WEBHOOK CAN AND CANNOT DO FOR US. Bill.com publishes invoice events
11
+ * (created/updated/archived/restored) signed HMAC-SHA256 over the raw body, and NO payment-received
12
+ * event; an `invoice.updated` carries no receivable-payment id. So the poll (`Orders.PollExternalPayments`)
13
+ * stays the source of truth for cash, and this route does exactly one thing with a VERIFIED
14
+ * notification: run that poll for the provider named in the URL, now, instead of at the next tick.
15
+ * Unverified notifications do nothing — the only thing this endpoint can make us do is call Bill.com,
16
+ * and an unauthenticated way to make us do that is a way to exhaust our API budget.
17
+ *
18
+ * RAW BODY, LIKE THE PAYMENT WEBHOOK. A JSON parser upstream re-serialises the body and invalidates
19
+ * every signature, so this route parses nothing before verifying.
20
+ *
21
+ * RESPOND FIRST, POLL AFTER. Bill.com retries a non-200 with exponential backoff and disables a
22
+ * subscription that keeps failing. A poll can take longer than a webhook client waits, so the route
23
+ * returns 202 as soon as the signature verifies and runs the poll detached, logging its outcome.
24
+ *
25
+ * REGISTERING THE SUBSCRIPTION IS A SETUP STEP, NOT CODE: `POST /v3/subscriptions` in Bill.com with
26
+ * `notificationUrl = https://<host>/webhooks/billcom/<PaymentProviderID>` and `events` = the four
27
+ * invoice events, then put the returned `securityKey` where the provider's `CredentialsRef` points
28
+ * (`<REF>_WEBHOOK_SECRET`).
29
+ *
30
+ * @module @mj-biz-apps/orders-server
31
+ */
32
+ import BodyParser from 'body-parser';
33
+ import { LogError, LogStatus, Metadata, RunView } from '@memberjunction/core';
34
+ import { UserCache } from '@memberjunction/generic-database-provider';
35
+ import { RegisterClass, UUIDsEqual } from '@memberjunction/global';
36
+ import { BaseServerExtension } from '@memberjunction/server-extensions-core';
37
+ import { OrdersPollExternalPaymentsOperation } from '@mj-biz-apps/orders-entities';
38
+ import { IsPaymentRelevant, ResolvePaymentProvider } from '@mj-biz-apps/orders-core-entities-server';
39
+ const MAX_BODY = '1mb';
40
+ const UUID = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;
41
+ let BillComWebhookExtension = class BillComWebhookExtension extends BaseServerExtension {
42
+ async Initialize(app, config) {
43
+ const route = `${config.RootPath.replace(/\/+$/, '')}/:providerId`;
44
+ app.post(route, BodyParser.raw({ type: '*/*', limit: MAX_BODY }), async (req, res) => {
45
+ await HandleBillComWebhook({
46
+ // Raw bytes under the raw parser, a string if something already decoded it — the same
47
+ // reading as PaymentWebhookHandler. Never re-serialised: that would break the signature.
48
+ rawBody: typeof req.body === 'string' ? req.body : String(req.body ?? ''),
49
+ headers: flattenHeaders(req.headers),
50
+ providerId: String(req.params?.providerId ?? ''),
51
+ }, res, () => ({ provider: Metadata.Provider, user: this.resolveSystemUser() }));
52
+ });
53
+ LogStatus(`[Orders] Bill.com webhook route registered at POST ${route}`);
54
+ return { Success: true, Message: 'Orders Bill.com webhook mounted (unauthenticated, raw body, signature-verified; a verified event triggers the payment poll).', RegisteredRoutes: [`POST ${route}`] };
55
+ }
56
+ async Shutdown() {
57
+ // Nothing held open.
58
+ }
59
+ async HealthCheck() {
60
+ const user = this.resolveSystemUser();
61
+ return user
62
+ ? { Healthy: true, Name: 'OrdersBillComWebhook' }
63
+ : { Healthy: false, Name: 'OrdersBillComWebhook', Details: { Reason: "MJ's system user does not resolve, so every Bill.com notification will be refused." } };
64
+ }
65
+ resolveSystemUser() {
66
+ try {
67
+ return UserCache.Instance.GetSystemUser() ?? undefined;
68
+ }
69
+ catch {
70
+ return undefined;
71
+ }
72
+ }
73
+ };
74
+ BillComWebhookExtension = __decorate([
75
+ RegisterClass(BaseServerExtension, 'OrdersBillComWebhook')
76
+ ], BillComWebhookExtension);
77
+ export { BillComWebhookExtension };
78
+ /** Transport-agnostic so it can be tested without Express. Exported for that reason. */
79
+ export async function HandleBillComWebhook(req, res, context, runPoll = defaultRunPoll) {
80
+ if (!UUID.test(req.providerId)) {
81
+ res.status(404).json({ received: false, reason: 'unknown provider' });
82
+ return;
83
+ }
84
+ const { provider, user } = context();
85
+ if (!provider || !user) {
86
+ // 500, not 4xx: the notification is real and we want it retried once startup is fixed.
87
+ LogError("A Bill.com webhook arrived but MJ's system user or provider could not be resolved; refusing so Bill.com retries.");
88
+ res.status(500).json({ received: false });
89
+ return;
90
+ }
91
+ let driver;
92
+ try {
93
+ driver = await ResolvePaymentProvider(req.providerId, provider, user);
94
+ }
95
+ catch (err) {
96
+ LogError(`Bill.com webhook for provider ${req.providerId}: ${err instanceof Error ? err.message : String(err)}`);
97
+ res.status(404).json({ received: false, reason: 'provider not configured' });
98
+ return;
99
+ }
100
+ if (driver.Config.TypeCode !== 'BillCom') {
101
+ res.status(404).json({ received: false, reason: 'not a Bill.com provider' });
102
+ return;
103
+ }
104
+ const verdict = await driver.VerifyWebhook(req.rawBody, req.headers);
105
+ if (!verdict.Valid) {
106
+ LogError(`Bill.com webhook for provider ${req.providerId} refused: ${verdict.Reason ?? 'signature invalid'}`);
107
+ res.status(401).json({ received: false });
108
+ return;
109
+ }
110
+ const event = driver.ParseWebhookEvent(req.rawBody);
111
+ const relevant = !event || IsPaymentRelevant(event.Kind);
112
+ // Acknowledge now; Bill.com's retry clock is short and a poll is not.
113
+ res.status(202).json({ received: true, polled: relevant, kind: event?.Kind ?? null });
114
+ if (!relevant)
115
+ return;
116
+ void runPoll(req.providerId, provider, user).catch((err) => LogError(`Bill.com webhook-triggered poll for ${req.providerId} failed: ${err instanceof Error ? err.message : String(err)}`));
117
+ }
118
+ /** The Action behind `Orders — Poll External Payments`, whose scheduled job governs this route. */
119
+ const POLL_ACTION_ID = 'B8C4D3E2-0A5F-4D72-9E3B-6F2A8C4D0B11';
120
+ /** That Action's `Preview` input param. Seeded by V202609272103; the job's Configuration names it. */
121
+ const POLL_PREVIEW_PARAM_ID = 'B8C4D3E2-0A5F-4D72-9E3B-6F2A8C4D0B13';
122
+ const SCHEDULED_JOB_ENTITY = 'MJ: Scheduled Jobs';
123
+ /**
124
+ * Is this job's `Preview` param set to something the action will read as true?
125
+ *
126
+ * MUST AGREE WITH `boolParam` (packages/Server/src/custom/action-params.ts), which is what actually
127
+ * decides whether the scheduled run previews. It accepts a real boolean as well as 'true', '1', 'yes'
128
+ * and 'y', and every one of those is a spelling a person can put in the Configuration JSON. This used
129
+ * to be a regex for `"Value": "true"` over the whole blob, which disagreed with `boolParam` on three
130
+ * of them — each disagreement a job that previews while this route records cash — and matched ANY
131
+ * param's value rather than Preview's, so a MaxCount of "true" would have blocked a live job.
132
+ *
133
+ * ABSENT MEANS NOT PREVIEWING, which is the action's own default (`preview = !!input?.Preview`);
134
+ * the two have to answer the same way or the gate is worse than no gate.
135
+ */
136
+ function previewParamIsTrue(configuration) {
137
+ let parsed;
138
+ try {
139
+ parsed = JSON.parse(configuration ?? '');
140
+ }
141
+ catch {
142
+ // Unreadable configuration is not permission to record money.
143
+ return true;
144
+ }
145
+ const params = parsed?.Params;
146
+ if (!Array.isArray(params))
147
+ return false;
148
+ const preview = params.find((x) => typeof x?.ActionParamID === 'string' && UUIDsEqual(x.ActionParamID, POLL_PREVIEW_PARAM_ID));
149
+ if (!preview)
150
+ return false;
151
+ const raw = preview.Value;
152
+ if (raw == null || raw === '')
153
+ return false;
154
+ if (typeof raw === 'boolean')
155
+ return raw;
156
+ return ['true', '1', 'yes', 'y'].includes(String(raw).trim().toLowerCase());
157
+ }
158
+ /**
159
+ * A NOTIFICATION MUST NOT RECORD CASH THE SCHEDULED JOB IS NOT YET ALLOWED TO RECORD.
160
+ *
161
+ * This route used to call the poll with `Preview: false` outright. Both jobs ship Disabled and in
162
+ * Preview precisely so Finance reads one run before any money moves, and merging this branch is
163
+ * supposed to turn nothing on — but the route is enabled in the server config, so the day somebody
164
+ * registered the Bill.com subscription and set the secret, the first `invoice.updated` event would
165
+ * have captured a real payment and posted Dr Cash / Cr A/R before anyone had approved a preview.
166
+ *
167
+ * So the webhook now follows the job rather than overriding it: it polls only when the scheduled poll
168
+ * job is Active AND out of Preview. Anything else is logged and ignored, because a webhook-driven
169
+ * preview writes nothing and nobody reads its output — the scheduled run is where a preview belongs.
170
+ */
171
+ export function PollJobIsLive(job) {
172
+ if (!job)
173
+ return { Live: false, Why: 'no scheduled poll job is installed' };
174
+ if ((job.Status ?? '').trim().toLowerCase() !== 'active')
175
+ return { Live: false, Why: `the scheduled poll job is ${job.Status?.trim() || 'not active'}` };
176
+ if (previewParamIsTrue(job.Configuration))
177
+ return { Live: false, Why: 'the scheduled poll job is still in Preview' };
178
+ return { Live: true, Why: 'the scheduled poll job is live' };
179
+ }
180
+ /**
181
+ * THE MOST RESTRICTIVE POLL JOB WINS, not whichever row the database happened to return first.
182
+ *
183
+ * One job covers every provider today (the shipped row names no `PaymentProviderID`), but the poll
184
+ * takes one and this route is per-provider, so a site that splits the job per provider is an ordinary
185
+ * configuration. Reading `Results[0]` of an unordered view then answered with an arbitrary job's
186
+ * state — provider A live would have let a notification for provider B record cash while B's own job
187
+ * was still in Preview. With no way to tell from here which job governs which provider, every
188
+ * installed poll job has to agree before this route writes anything.
189
+ */
190
+ async function pollIsLive(provider, user) {
191
+ const rv = new RunView(provider);
192
+ const r = await rv.RunView({ EntityName: SCHEDULED_JOB_ENTITY, ExtraFilter: `Configuration LIKE '%${POLL_ACTION_ID}%'`, Fields: ['Status', 'Configuration'], OrderBy: 'Name', ResultType: 'simple' }, user);
193
+ const jobs = r.Results ?? [];
194
+ if (!jobs.length)
195
+ return PollJobIsLive(null);
196
+ const verdicts = jobs.map((j) => PollJobIsLive(j));
197
+ const blocked = verdicts.find((v) => !v.Live);
198
+ return blocked ?? verdicts[0];
199
+ }
200
+ async function defaultRunPoll(providerId, provider, user) {
201
+ const live = await pollIsLive(provider, user);
202
+ if (!live.Live) {
203
+ LogStatus(`[Orders] Bill.com notification for ${providerId} acknowledged but NOT polled: ${live.Why}. Nothing was recorded.`);
204
+ return;
205
+ }
206
+ const result = await new OrdersPollExternalPaymentsOperation().Execute({ PaymentProviderID: providerId, Preview: false }, { provider, user });
207
+ const out = result.Output;
208
+ LogStatus(`[Orders] Bill.com webhook-triggered poll for ${providerId}: ${out?.Message ?? result.ErrorMessage ?? 'no result'}`);
209
+ }
210
+ function flattenHeaders(headers) {
211
+ const flat = {};
212
+ for (const [key, value] of Object.entries(headers))
213
+ flat[key.toLowerCase()] = Array.isArray(value) ? value.join(',') : value;
214
+ return flat;
215
+ }
216
+ /** Tree-shaking anchor — call from the server bootstrap. */
217
+ export function LoadBillComWebhookExtension() {
218
+ void BillComWebhookExtension;
219
+ }
220
+ //# sourceMappingURL=BillComWebhookExtension.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BillComWebhookExtension.js","sourceRoot":"","sources":["../src/BillComWebhookExtension.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,13 @@
1
- import type { Application } from 'express';
1
+ import type { Application, Response } from 'express';
2
2
  import { BaseServerExtension, type ExtensionHealthResult, type ExtensionInitResult, type ServerExtensionConfig } from '@memberjunction/server-extensions-core';
3
+ /**
4
+ * Hosts load the element from their own origin with `<script type="module">`, and a
5
+ * cross-origin module script is refused by the browser without `Access-Control-Allow-Origin`.
6
+ * The bundle is public, static and carries no credentials, so any origin may read it. This is
7
+ * deliberately not the widget's `allowedOrigins`: the script is fetched before the page names
8
+ * a widget, and the POST routes still apply each widget's origin policy.
9
+ */
10
+ export declare function setElementAssetCorsHeaders(res: Pick<Response, 'setHeader'>): void;
3
11
  interface CheckoutEdgeSettings {
4
12
  /** Email of the named checkout service principal; falls back to the system user. */
5
13
  ServiceUserEmail?: string;
@@ -76,6 +84,10 @@ export declare class CheckoutServerExtension extends BaseServerExtension {
76
84
  private handleDraft;
77
85
  private handlePaymentIntent;
78
86
  private handleComplete;
87
+ /** The account step's outcome for a completed checkout, asking the host again only after a failure. */
88
+ private handleAccount;
89
+ /** Sets the password of the account this checkout created. The password is passed on, never logged. */
90
+ private handleAccountPassword;
79
91
  /** Fixed-window limiter over a bounded, insertion-ordered map. */
80
92
  private rateLimitExceeded;
81
93
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"CheckoutServerExtension.d.ts","sourceRoot":"","sources":["../src/CheckoutServerExtension.ts"],"names":[],"mappings":"AAmDA,OAAO,KAAK,EAAE,WAAW,EAAmC,MAAM,SAAS,CAAC;AAI5E,OAAO,EACH,mBAAmB,EACnB,KAAK,qBAAqB,EAC1B,KAAK,mBAAmB,EACxB,KAAK,qBAAqB,EAC7B,MAAM,wCAAwC,CAAC;AAuDhD,UAAU,oBAAoB;IAC1B,oFAAoF;IACpF,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,mEAAmE;IACnE,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,+CAA+C;IAC/C,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,2DAA2D;IAC3D,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;;OAIG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACnC;AAED,0FAA0F;AAC1F,wBAAgB,mCAAmC,CAC/C,QAAQ,EAAE,IAAI,CAAC,oBAAoB,EAAE,uBAAuB,CAAC,EAC7D,GAAG,GAAE,MAAM,CAAC,UAAwB,GACrC,OAAO,CAQT;AAOD,qBACa,uBAAwB,SAAQ,mBAAmB;IAC5D,OAAO,CAAC,QAAQ,CAA4B;IAC5C,OAAO,CAAC,WAAW,CAA6D;IAChF,OAAO,CAAC,wBAAwB,CAAS;IACzC,OAAO,CAAC,QAAQ,CAAe;IAC/B,OAAO,CAAC,UAAU,CAAK;IAEV,UAAU,CAAC,GAAG,EAAE,WAAW,EAAE,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IA+CzF,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAIzB,WAAW,IAAI,OAAO,CAAC,qBAAqB,CAAC;IAa1D,+FAA+F;YACjF,WAAW;IAyCzB,8EAA8E;YAChE,eAAe;IAe7B;;;;;OAKG;YACW,iBAAiB;IAsD/B,gFAAgF;IAChF,OAAO,CAAC,eAAe;IAevB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,cAAc;IAQtB,mFAAmF;IACnF,OAAO,CAAC,oBAAoB;IAI5B;;;;OAIG;YACW,eAAe;IA6B7B;;;;OAIG;YACW,aAAa;IA4C3B,OAAO,CAAC,aAAa;IASrB,OAAO,CAAC,wBAAwB;IAMhC,OAAO,CAAC,wBAAwB;IAWhC,OAAO,CAAC,WAAW;YAOL,wBAAwB;YAaxB,gBAAgB;YAahB,WAAW;YAcX,mBAAmB;YAYnB,cAAc;IAc5B,kEAAkE;IAClE,OAAO,CAAC,iBAAiB;IAkBzB;;;OAGG;IACH,OAAO,CAAC,QAAQ;IAIhB;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;CAkB5B;AAED,0FAA0F;AAC1F,wBAAgB,2BAA2B,IAAI,IAAI,CAElD"}
1
+ {"version":3,"file":"CheckoutServerExtension.d.ts","sourceRoot":"","sources":["../src/CheckoutServerExtension.ts"],"names":[],"mappings":"AAqDA,OAAO,KAAK,EAAE,WAAW,EAAyB,QAAQ,EAAE,MAAM,SAAS,CAAC;AAI5E,OAAO,EACH,mBAAmB,EACnB,KAAK,qBAAqB,EAC1B,KAAK,mBAAmB,EACxB,KAAK,qBAAqB,EAC7B,MAAM,wCAAwC,CAAC;AAsDhD;;;;;;GAMG;AACH,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,IAAI,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,IAAI,CAGjF;AAWD,UAAU,oBAAoB;IAC1B,oFAAoF;IACpF,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,mEAAmE;IACnE,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,+CAA+C;IAC/C,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,2DAA2D;IAC3D,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;;;OAIG;IACH,qBAAqB,CAAC,EAAE,OAAO,CAAC;CACnC;AAED,0FAA0F;AAC1F,wBAAgB,mCAAmC,CAC/C,QAAQ,EAAE,IAAI,CAAC,oBAAoB,EAAE,uBAAuB,CAAC,EAC7D,GAAG,GAAE,MAAM,CAAC,UAAwB,GACrC,OAAO,CAQT;AAOD,qBACa,uBAAwB,SAAQ,mBAAmB;IAC5D,OAAO,CAAC,QAAQ,CAA4B;IAC5C,OAAO,CAAC,WAAW,CAA6D;IAChF,OAAO,CAAC,wBAAwB,CAAS;IACzC,OAAO,CAAC,QAAQ,CAAe;IAC/B,OAAO,CAAC,UAAU,CAAK;IAEV,UAAU,CAAC,GAAG,EAAE,WAAW,EAAE,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAmDzF,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAIzB,WAAW,IAAI,OAAO,CAAC,qBAAqB,CAAC;IAa1D,+FAA+F;YACjF,WAAW;IAyCzB,8EAA8E;YAChE,eAAe;IAe7B;;;;;OAKG;YACW,iBAAiB;IAsD/B,gFAAgF;IAChF,OAAO,CAAC,eAAe;IAevB,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,cAAc;IAQtB,mFAAmF;IACnF,OAAO,CAAC,oBAAoB;IAI5B;;;;OAIG;YACW,eAAe;IA6B7B;;;;OAIG;YACW,aAAa;IA4C3B,OAAO,CAAC,aAAa;IASrB,OAAO,CAAC,wBAAwB;IAMhC,OAAO,CAAC,wBAAwB;IAWhC,OAAO,CAAC,WAAW;YAOL,wBAAwB;YAaxB,gBAAgB;YAahB,WAAW;YAmBX,mBAAmB;YAYnB,cAAc;IAkB5B,uGAAuG;YACzF,aAAa;IAY3B,uGAAuG;YACzF,qBAAqB;IAcnC,kEAAkE;IAClE,OAAO,CAAC,iBAAiB;IAkBzB;;;OAGG;IACH,OAAO,CAAC,QAAQ;IAIhB;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;CAkB5B;AAED,0FAA0F;AAC1F,wBAAgB,2BAA2B,IAAI,IAAI,CAElD"}
@@ -32,6 +32,8 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
32
32
  * `allowedOrigins`, a browser request from any other origin is refused AND receives no
33
33
  * CORS grant (so the browser blocks the response either way). With no allowlist
34
34
  * configured, any origin is allowed — the distribution slug remains the access control.
35
+ * The element bundle (`GET {RootPath}/element/main.js`) is the exception: it is public
36
+ * static code, served to every origin (`setElementAssetCorsHeaders`).
35
37
  * 4. TURNSTILE — when the widget sets `requireTurnstile`, session initialization and
36
38
  * completion demand a Cloudflare Turnstile token, verified server-side against the secret
37
39
  * named by `Settings.TurnstileSecretEnvVar`. Required-but-unconfigured verifies as a 503,
@@ -59,7 +61,7 @@ import { LogError, LogStatus, RunView } from '@memberjunction/core';
59
61
  import { UserCache } from '@memberjunction/generic-database-provider';
60
62
  import { RegisterClass } from '@memberjunction/global';
61
63
  import { BaseServerExtension, } from '@memberjunction/server-extensions-core';
62
- import { CheckoutSessionService, EscapeText } from '@mj-biz-apps/orders-core-entities-server';
64
+ import { CheckoutSessionService, EnsureCheckoutAccount, EscapeText, HasCheckoutAccountStep, SetCheckoutAccountPassword, } from '@mj-biz-apps/orders-core-entities-server';
63
65
  import { randomBytes } from 'node:crypto';
64
66
  import { existsSync } from 'node:fs';
65
67
  import { createRequire } from 'node:module';
@@ -101,6 +103,17 @@ function resolveCheckoutElementDir() {
101
103
  }
102
104
  return null;
103
105
  }
106
+ /**
107
+ * Hosts load the element from their own origin with `<script type="module">`, and a
108
+ * cross-origin module script is refused by the browser without `Access-Control-Allow-Origin`.
109
+ * The bundle is public, static and carries no credentials, so any origin may read it. This is
110
+ * deliberately not the widget's `allowedOrigins`: the script is fetched before the page names
111
+ * a widget, and the POST routes still apply each widget's origin policy.
112
+ */
113
+ export function setElementAssetCorsHeaders(res) {
114
+ res.setHeader('Access-Control-Allow-Origin', '*');
115
+ res.setHeader('Cross-Origin-Resource-Policy', 'cross-origin');
116
+ }
104
117
  /** Bounded size of the rate-limit map — oldest windows evict first. */
105
118
  const RATE_CACHE_MAX = 50_000;
106
119
  const CHECKOUT_SESSION_ENTITY = 'MJ_BizApps_Orders: Checkout Sessions';
@@ -134,10 +147,12 @@ let CheckoutServerExtension = class CheckoutServerExtension extends BaseServerEx
134
147
  const elementDir = resolveCheckoutElementDir();
135
148
  if (elementDir) {
136
149
  app.get(`${root}/element/main.js`, (_req, res) => {
150
+ setElementAssetCorsHeaders(res);
137
151
  res.type('application/javascript').sendFile(path.join(elementDir, 'main.js'));
138
152
  });
139
153
  if (shouldServeCheckoutElementSourceMap(this.settings)) {
140
154
  app.get(`${root}/element/main.js.map`, (_req, res) => {
155
+ setElementAssetCorsHeaders(res);
141
156
  res.type('application/json').sendFile(path.join(elementDir, 'main.js.map'));
142
157
  });
143
158
  }
@@ -148,6 +163,8 @@ let CheckoutServerExtension = class CheckoutServerExtension extends BaseServerEx
148
163
  [`${root}/draft`, (req, res) => this.handleDraft(req, res)],
149
164
  [`${root}/payment-intent`, (req, res) => this.handlePaymentIntent(req, res)],
150
165
  [`${root}/complete`, (req, res) => this.handleComplete(req, res)],
166
+ [`${root}/account`, (req, res) => this.handleAccount(req, res)],
167
+ [`${root}/account/password`, (req, res) => this.handleAccountPassword(req, res)],
151
168
  ];
152
169
  for (const [path, handler] of routes) {
153
170
  // CORS preflight: answered per-widget after the origin gate resolves the policy.
@@ -160,7 +177,7 @@ let CheckoutServerExtension = class CheckoutServerExtension extends BaseServerEx
160
177
  }
161
178
  const hostPath = `${root}/:slug`;
162
179
  app.get(hostPath, (req, res) => this.handleGetHost(req, res));
163
- LogStatus(`[Orders] Checkout edge registered at GET ${hostPath} and POST ${root}/{initialize,draft,payment-intent,complete}`);
180
+ LogStatus(`[Orders] Checkout edge registered at GET ${hostPath} and POST ${root}/{initialize,draft,payment-intent,complete,account,account/password}`);
164
181
  return {
165
182
  Success: true,
166
183
  Message: 'Orders anonymous checkout edge mounted (public GET host, rate-limited POSTs, origin-gated, optional Turnstile).',
@@ -466,7 +483,12 @@ let CheckoutServerExtension = class CheckoutServerExtension extends BaseServerEx
466
483
  const clientSessionKey = typeof req.body?.clientSessionKey === 'string' ? req.body.clientSessionKey : '';
467
484
  const email = typeof req.body?.email === 'string' ? req.body.email : '';
468
485
  const lines = Array.isArray(req.body?.lines) ? req.body.lines : [];
469
- const result = await CheckoutSessionService.UpdateDraft(sessionId, clientSessionKey, email, lines, user);
486
+ // Passed through unchecked: UpdateDraft keeps the attribution only when it reads as one, and
487
+ // judges the answers against the widget's own questions.
488
+ const result = await CheckoutSessionService.UpdateDraft(sessionId, clientSessionKey, email, lines, user, {
489
+ Attribution: req.body?.attribution,
490
+ Answers: req.body?.answers,
491
+ });
470
492
  res.status(result.Success ? 200 : 400).json(result);
471
493
  }
472
494
  async handlePaymentIntent(req, res) {
@@ -489,7 +511,37 @@ let CheckoutServerExtension = class CheckoutServerExtension extends BaseServerEx
489
511
  const sessionId = typeof req.body?.sessionId === 'string' ? req.body.sessionId : '';
490
512
  const clientSessionKey = typeof req.body?.clientSessionKey === 'string' ? req.body.clientSessionKey : '';
491
513
  const result = await CheckoutSessionService.CompleteCheckout(sessionId, clientSessionKey, user);
492
- res.status(result.Success ? 200 : 409).json(result);
514
+ if (!result.Success) {
515
+ res.status(409).json(result);
516
+ return;
517
+ }
518
+ // The confirmation is answered without waiting on the host's identity provider. When a host
519
+ // registered an account step, the widget asks for it next through /checkout/account.
520
+ res.status(200).json(HasCheckoutAccountStep() ? { ...result, AccountStep: true } : result);
521
+ }
522
+ /** The account step's outcome for a completed checkout, asking the host again only after a failure. */
523
+ async handleAccount(req, res) {
524
+ const user = this.resolveActingUser();
525
+ if (!user) {
526
+ res.status(500).json({ Success: false, ErrorMessage: 'Checkout is not ready — the service principal is unavailable.' });
527
+ return;
528
+ }
529
+ const sessionId = typeof req.body?.sessionId === 'string' ? req.body.sessionId : '';
530
+ const clientSessionKey = typeof req.body?.clientSessionKey === 'string' ? req.body.clientSessionKey : '';
531
+ const result = await EnsureCheckoutAccount(sessionId, clientSessionKey, user);
532
+ res.status(result.Success ? 200 : 400).json(result);
533
+ }
534
+ /** Sets the password of the account this checkout created. The password is passed on, never logged. */
535
+ async handleAccountPassword(req, res) {
536
+ const user = this.resolveActingUser();
537
+ if (!user) {
538
+ res.status(500).json({ Success: false, ErrorMessage: 'Checkout is not ready — the service principal is unavailable.' });
539
+ return;
540
+ }
541
+ const sessionId = typeof req.body?.sessionId === 'string' ? req.body.sessionId : '';
542
+ const clientSessionKey = typeof req.body?.clientSessionKey === 'string' ? req.body.clientSessionKey : '';
543
+ const result = await SetCheckoutAccountPassword(sessionId, clientSessionKey, req.body?.password, user);
544
+ res.status(result.Success ? 200 : 400).json(result);
493
545
  }
494
546
  // ─── Infrastructure ──────────────────────────────────────────────────────
495
547
  /** Fixed-window limiter over a bounded, insertion-ordered map. */
@@ -1 +1 @@
1
- {"version":3,"file":"CheckoutServerExtension.js","sourceRoot":"","sources":["../src/CheckoutServerExtension.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CheckoutServerExtension.js","sourceRoot":"","sources":["../src/CheckoutServerExtension.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=BillComWebhookExtension.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BillComWebhookExtension.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/BillComWebhookExtension.test.ts"],"names":[],"mappings":""}